投稿

ラベル(CentOS)が付いた投稿を表示しています

NginX+unicorn+Ruby on RailsでWebサーバ構築

昔はApache全盛だったみたいだけど、最近はNginxも流行っているということで Webサーバ構築にチャレンジ、で、なんかこじんまりアプリも開発してみようと思ったので Ruby on Rails やなんかも入れてみた。 もう少し大きな構成にするなら。DBサーバとWebサーバは最低限分けておかないと いけないんだけど、それはまた別の機会にやってみようと思います。 今回はCentOSだけど起動スクリプト部分以外Ubuntuでも大して手順は変わらなかった。 ●大まかな手順 1.ホスト名変更、IPアドレス変更 (1)IPアドレス設定 (2)ホスト名設定 (3)IPV6無効化 (4)設定変更反映 (5)変更内容確認 (6)作業用ユーザ追加 (7)httpと関連ポート開放 2.Gitインストール (1)インストール (2)git初期設定 3. メール送信サーバインストール(Gmail経由でメール送信できるようにする)  (1)postfixインストール確認  (2)必要ツールインストール  (3)postfix設定   ・設定ファイル編集   ・パスワードファイル作成   ・設定反映   ・postfix再起動、サービス登録  (4)送信テスト 4.Rubyインストール (1)rbenvインストール ・rbenv本体インストール ・Installコマンド ・必要ライブラリインストール (2)パス設定 (3)rbenv動作確認 (4)最新版Rubyインストール ・インストール ・バージョン確認 ・最新バージョンに設定 ・Ruby動作確認 5.ツール類インストール (1)gemsインストール (2)PostgresSQLインストール ・postgresSQLインストール ・サービス追加確認 ・postgresSQL設定 ・postgresSQL起動 ・プロジェクト用ユーザ作成 ・作業用ユーザ追加 ・pg_hda.confファイル編集(認証対応) ・postgres再起動 6.Rail...

CentOS7標準サーバ用設定

前回まとめた Ubuntuの手順 をベースにCentOS7用の手順もまとめた。 ConohaでUbuntuにするかCentOSにするかはまだ決めかねているけど 日本だと未だCentOSが強いので、まとめておいても損はない。 ちなみにCentOS7からコマンドが大きく変わっていた。 特にネットワークがらみのコマンドの改変はきつい。まぁいやなら net-tools入れればいいんだけど非推奨なので新しいやり方に 慣れていかないとね。 とりあえずひな形は簡単に作れそうになったので、ここから色々と やっていければと思います。 ●参考サイト https://centossrv.com/ http://www.server-world.info/query?os=CentOS_7&p=initial_conf http://qiita.com/mtaniuchi/items/7022d7225d07f7298c81 http://www.server-memo.net/centos-settings/centos7/firewalld-stop.html http://www.unix-power.net/centos7/firewalld.html http://dev.classmethod.jp/cloud/aws/centos7-initial-settings/ http://jetbeaver.hatenablog.com/entry/2015/05/10/114915 http://www.websec-room.com/2014/02/09/1822 http://server-setting.info/blog/sakura_vps_centos7_first_setup.html http://qiita.com/sion_cojp/items/115e1671fcbc8f214aee http://yokensaka.com/centos/?p=296 http://www.mk-mode.com/octopress/2014/08/07/centos-7-0-installation-of-chrootkit/ http://smiyasaka.com/CentOS7.0_64_minimal_serv...

Dockerをいじってみた。

仕事でバタバタしていまして久しぶりの更新です。  今更ながら Docker をいじってます。 コンテナ が注目されだしているのと、 枯れてきたのでそろそろ 手を出して見ようかと思いまして  (実は敷居が高そうなので今まで避けてました(苦笑)) 調べてみるとHyper-VとかKVMとかの上でも動くそうで 技術者としては無精はいけませんな。反省です。 旧来の技術を組合せて、OS環境を1個の仮想アプリ的に 動かすみたいな技術らしく、コンテナ型仮想とか言われている みたいです。結構気軽にOS環境を準備できそうです。 ホントは自宅鯖でやりたいのですが自宅鯖買う お金がないので会社の検証環境で作業です。 早速、下記のサイトを見ながら構築してみることに http://www.atmarkit.co.jp/ait/kw/docker_nyumon.html ほかにも入門だとこんなんもあるみたいですね。 http://dotinstall.com/lessons/basic_docker 会社のCentOS環境は確か6.4だったんでCentOSで準備 ご親切な方がご丁寧にまとめてくださってました。 http://qiita.com/zwirky/items/991f61a231f4e198a320 作業はyumするだけです。拍子抜け、驚くほど 簡単にできちゃいました。ありえねぇ。 DockerFileの部分はまだまだこれから試してみるんですが こんなことされている方もいらっしゃったりするんで・・・ http://qiita.com/tukiyo3/items/5ef8f8b225fb33118311 http://hidemium.hatenablog.com/entry/2014/05/12/012245 触ってみて結論 例えばフリーのERPとかCRMとかとDockerを組み合わせれば 割合簡単に業務アプリを展開できちゃうんじゃないかと 思った次第、サーバを仮想化すれば保守期限とか気にせず アプリを使えるし、まさに究極の仮想化!! 以上でした。

ついでにDiceも入れてみた。

とりあえずDiceだけインストールしておきました。 とりあえずDDNSは生きていたみたいなんで継続して使いたいところですが 仮想マシンは常時起動していない有様やしな・・・・。必要に応じて稼動する サーバ・・・。接続できたらラッキー(笑)とかもいいかも。 ちょっと考えたほうがいいかもしれないですね。 参照: http://www.hi-ho.ne.jp/yoshihiro_e/dice/ http://jintaro.com/fedoracore5/fc5_dice.shtml http://d.hatena.ne.jp/kuni-pc/20080502/p1 ■Diceインストール(DDNS設定) 1:http://www.ieserver.net/でドメイン登録 ドメイン:hoge.dip.jp パス:hoge 2:Diceのダウンロード ・ダウンロード   [root@defaultimage src]# cd /usr/local/src/   [root@defaultimage src]# wget http://www.hi-ho.ne.jp/cgi-bin/user/yoshihiro_e/download.cgi?p=diced019   --12:48:43--  http://www.hi-ho.ne.jp/cgi-bin/user/yoshihiro_e/download.cgi?p=diced019    ~中略~   12:48:44 (1.71 MB/s) - `diced01914.tar.gz' を保存しました [1093163/1093163]  ←表示を確認する。 3:インストール ・展開   [root@defaultimage src]# tar zxvf diced01914.tar.gz   DiCE/   ~中略~   DiCE/plug-in/DnsTokyo.plg   ・Diceディレクトリの移動   [root@defaultimage src]# mv DiCE/ /usr/local/bin 4:設定 ・D...

遅ればせながらCentOS5.5へのアップグレード

Webサーバやらメールサーバを仮想環境で試そうとして放置状態になっていた CentOS5.3ですが、勉強がてらサーバ構築しようとおもいたちCentOS5.5をダウンロード しました。そしたらいきなりISOイメージがメディアチェックでひっかかりブチ切れ 別にCentOSのGUIインストールをしたいわけではないんで初のyumみよるOSアップデートを してみました。 OSまっさら状態なんでリスク0です(笑)。しかし、Linuxいじるの半年ぶり位ちゃうか? 大丈夫かと思いながらアップデートしてみるとものの30分ほどで作業自体は完了しました!! 簡単になったものですな(驚) CentOS5.3イメージをアップデート検証 参照: http://www.obenri.com/_minset_cent5/yum_cent5.html http://d.hatena.ne.jp/eth0jp/20100521/1274422354 1:アップデート作業 *当然ながらsu-コマンドでroot権限にて作業   [root@defaultimage ~]# yum -y update   Loaded plugins: fastestmirror   Determining fastest mirrors   ~中略~   yum.noarch 0:3.2.22-26.el5.centos   Complete! 2:リブート   [root@defaultimage ~]# sync   [root@defaultimage ~]# sync   [root@defaultimage ~]# sync   [root@defaultimage ~]# shutdown -r now 3:VersionUP確認   *suでroot権限にて作業   [root@defaultimage ~]# cat /etc/redhat-release   CentOS release 5.5 (Final)  ←きちんとCentOS5.5です。   [root@defaultimage ~]# una...

基本OSイメージ作業まとめ

ここまででデフォルトのイメージはできたのでひとまずまとめ。 こいつをDVDなりに焼いておけば、コピーするだけでVirtualPC上での まっさらなサーバ完成状態を得ることができる。で、今後はWebサーバ 構築とメールサーバ構築+Webメールサーバかな? 1:インストール作業 ■CentOS5.4をVirtualPCにインストール 事前準備 ■CentOS5.4をVirtualPCにインストール その1 ■CentOS5.4をVirtualPCにインストール その2 ■CentOS5.4をVirtualPCにインストール その3 ■CentOS5.4をVirtualPCにインストール その4 ■CentOS5.4をVirtualPCにインストール その5 ■CentOS5.4をVirtualPCにインストール その6 ■CentOS5.4をVirtualPCにインストール その7 (1)CentOSイメージのダウンロード (2)ダウンロードしたファイルをチェックする。 (3)VirtualPCのマシン作成 (4)DVDイメージからOSインストール ・ホスト名、IPアドレス設定 ・rootパスワード設定 ・インストールアプリ選択 ・再起動 ・その他諸設定 2:インストール後設定 ■ CentOS5.4インストール後の設定 その1 (1)管理用ユーザ追加(管理用) (2)root昇格ユーザ限定設定 (3)SSH権限制限 ・sshd_configファイル編集 ・sshd再起動 ・ssh接続ユーザ制限 (4)接続制限 ・hosts.allowファイルを編集し内部からの接続を許可する。 ・hosts.denyファイルの編集 ・IPV6無効化 (5)プリントサーバサービス停止 (6)バッファオーバフロー防御 (7)不要サービス停止 (8)TeraTermをWindowsにインストール ■ CentOS5.4インストール後の設定 その2 (9)時刻設定 (10)パッチ適用 (11)証拠隠蔽ソフト確認ツールインストール ・chkrootkitダウンロード ・chkrootkit展開 ・chkrootkitインストール(指定ディレクトリへコピー) ・ダウンロード分残骸ファイル削除 ・コマン...

CentOSインストール後の設定その4

デフォルトのiptablesイメージを作成 基本は全てのサービスポートをとめておいて、サーバ毎に必要な ポートをオープンする。(サーバ構築編にて各ポートをオープンする。) *上位ルータについては必要最小限サービスをオープンにする。 参照サイト: http://centossrv.com/iptables.shtml http://www.linux.or.jp/JM/html/iptables/man8/iptables.8.html http://penguin.nakayosi.jp/linux/iptables.html http://www.atmarkit.co.jp/flinux/index/indexfiles/iptablesindex.html http://cyberam.dip.jp/linux_security/iptables/iptables_main.html (16)ファイアウォール設定(デフォルト:個別設定は各サーバ設定で) ・iptables設定 [root@hoge ~]# vi iptables.sh *ファイルを新規作成 ========================================================= #!/bin/bash # インタフェース名定義 LAN=eth0 # 内部ネットワークのネットマスク取得 LOCALNET_MASK=`ifconfig $LAN|sed -e 's/^.*Mask:\([^ ]*\)$/\1/p' -e d` # 内部ネットワークアドレス取得 LOCALNET_ADDR=`netstat -rn|grep $LAN|grep $LOCALNET_MASK|cut -f1 -d' '` LOCALNET=$LOCALNET_ADDR/$LOCALNET_MASK # ファイアウォール停止(すべてのルールをクリア) /etc/rc.d/init.d/iptables stop # デフォルトルール(以降のルールにマッチしなかった場合に適用するルール)設定 iptables -P INPUT   DROP   # 受信はすべて破棄 iptables -P OU...