- 更新日: 2013年4月1日
- CentOS & Linux
CentOS 6.4 インストール~設定手順の目次
CentOS 6.4 をインストールする機会がありましたので、その手順を備忘録としてまとめておきます。CentOS5までは何度もインストール経験があるのですが、自身でCentOS6を最初からインストール~設定まで全て通して行ったのは今回がはじめて。間違っている箇所の指摘や改善のご提案などがありましたら、ぜひよろしくお願いいたします。
【2013/09/09 追記】
2013/09/09 に、「CentOS6.4 インストール~設定手順の目次」で公開予定していた記事を全て公開いたしました。CentOS6.4 のインストールから設定までを通して読むことができますので、お役に立てることができたらぜひシェアをお願いいたします!
次の4つを目標とします
・SSH や iptables の設定をはじめとするセキュリティに関する対策。
・ログ管理とバックアップの環境を整える。
・Apache 上で Ruby on Rails のアプリケーションである Redmine を動かす。
・Apache 上で MySQL データベースの管理ツールである phpMyAdmin を動かす。
前提とした決めたこと
・ホスト名: centos
・ゲートウェイ(ルーター)のIPアドレス: 192.168.1.1
・ホスト(CentOSサーバー)のIPアドレス: 192.168.1.2(固定)
・DNSサーバー1つ目: 192.168.1.1
・DNSサーバー2つ目: 8.8.8.8
・サーバーの一般ユーザー名: username
・ローカル(Mac)の一般ユーザー名: localuser
という設定で進めます。
インストール
ネットワーク・初期設定
- ホストとネットワークの設定
- ping で通信テストと NetworkManager の削除
- CUI ログインに変更と X Window System 起動時の日本語化
- ユーザー・グループの作成と root 権限を制限する設定
- OS 再起動後、route, ifconfig, ping コマンドなどでネットワークの接続を確認
SSH 接続・iptables などセキュリティ設定
- SSH で公開鍵認証による接続の設定、 Mac で ssh-keygen し公開鍵をサーバーに保存
- SSH 接続クライアントの設定、 Macの ~/.ssh/config に SSH 接続の設定を書いておく
- SSH 接続での root によるログイン禁止と公開鍵認証を強制
- TCP Wrapper による SSH アクセス制御、 /etc/hosts.deny, /etc/hosts.allow の設定
- SSH 接続のポート番号を変更
- iptables (ファイアーウォール)の設定
- SSH クライアントの設定、 Windows・TeraTerm での SSH 接続設定
- SSH 接続で断続的に切断が多発するときの対処
サービス関連・yum リポジトリの追加設定など
セキュリティ設定の続き・セキュリティ対策ツールの導入
- telnet のインストールと設定
- sendmail をインストールして root 宛のメールを Gmail に転送設定
- kernel.panic を設定し、エラー時にサーバーを自動リブート
- IPv6を無効化
- サービス監視スクリプトを作成して cron に登録
- 不正アクセスのホスト拒否ツール denyhosts のインストールと設定
- ファイル改竄チェックツール Tripwire のインストールと設定
- アンチウイルスソフト Clam AntiVirus のインストールと設定
ログ管理の設定・ログ監視ツールの導入
各種サーバー用パッケージのインストール
- NTP サーバーのインストールと設定
- FTP サーバー(vsftpd)のインストールと設定
- FileZilla での SFTP 接続設定と Chroot 機能の設定
- Web サーバー(Apache, httpd)のインストールと設定
- DB サーバー(MySQL)のインストールと設定
- phpenv と php-build で PHP をインストールして管理
- rbenv と ruby-build で Ruby をインストールして管理
バックアップとリストア
ウェブアプリケーションを動かしてみる
- Ruby on Rails の環境を構築し Redmine をインストール
- Apache のバーチャルホストで Redmine を動作させる
- SELinux 有効(enforcing)で VirtualHost を /var/www/html 配下以外でも動作させる
- SELinux 有効(enforcing)で Apache + Passenger のもと Rails で Redmine を動作させる
- MySQL データベースの管理ツール phpMyAdmin をインストール
以上で、Redmine と phpMyAdmin を動かすという当初の目標は終了です。
以下は、補足的な情報です。興味があったり必要な場合はどうぞ。
サーバー監視ツールの導入
便利なツールなど
- CentOS & Linux の関連記事
- Job for nginx.service failedのNginxエラー
- upstream sent too big header while reading response header from upstream(Nginx/Rails)
- Can’t get information about user clamav(clamdエラー)
- STDERR: Exception in thread “main” java.lang.InternalErrorエラー
- Linuxサーバー容量を確認するコマンドdf,duをマスターする!
- rmでファイル削除後にdf -hで容量が減らない時の対処(Linux)
- Apacheをローカルネットワークのみに公開にする
- logwatchからのメールが来ないと思ったら…
- Linuxサーバの負荷や使用率を調査するコマンドと手順
- Bashの脆弱性もう一件CVE-2014-7169に対するパッチ適用
- 2件のコメント
急きょサーバー設定に携わることになりめちゃめちゃ参考にさせて頂きました。おかげで稼働できそうです。感謝です。ありがとうございました。
阿部さん、はじめまして。お読み頂きましてありがとうございます!参考になったのであれば、当方も大変嬉しく思います。今後もお役に立てる情報を発信していきたいと思います!