導入月日:2009/11/28
導入機器:VMwaer上の仮想ディスク
OS:CentOS 5.4
参考URL:CentOSで自宅サーバー構築
1. CentOSインストール
2. CentOS5インストール CentOS5固有
2. クライアント(Windows)からLinuxサーバーをリモート操作する
1. WindowsからSSHサーバーへリモート接続(Poderosaパスワード方式ログイン編) CentOS4/CentOS5
3. CentOS初期設定
2. CentOS5初期設定 CentOS5固有
■admin User 管理者
ID : Pass : OK
■wheel User 管理者(admin)に成れるUserID
・useradd User名
・passwd User名
・Pass入力
・Pass再入力
・chmod 711 /home/User名/
・usermod -G wheel User名
ID : Pass : OK
ID : Pass : OK 移行OK
■Chroot User 自身のホームディレクトリ以外を参照できないUser。
・chroot-useradd user名
・Pass入力
・Pass再入力
・chmod 711 /home/User名/
ID : Pass : OK 移行OK
■No login User SSHログインできないUser
・chroot-useradd user名 /sbin/nologin
・Pass入力
・Pass再入力
・chmod 711 /home/User名/
ID: Pass: OK blogアクセスはOK、データ欠落HDD障害
ID: Pass: OK blogアクセスはOK、一部アクセス×
ID: Pass: OK blogアクセスはOK、写真へのアクセス×
ID: Pass: OK index.htmlでアクセスOK
ID: Pass: OK
ID: Pass: OK 移行OK
ID: Pass: OK BBSへのアクセス移行OK
ID: Pass: OK 移行OK
ID: Pass: OK Gallryへのアクセス不可
ID: Pass:
ID: Pass:
ID: Pass:
以下折りたたみ
5. Perlモジュールを簡単にインストールできるようにする
1. Perlモジュールパッケージ管理システム導入(cpan2rpm) CentOS4/CentOS5
問題有 cpan2rpm導入までは旨く行くがモジュール導入時に旨く行かない、検索で解決
cpan2rpm --no-sign --install Time-modules
6. サーバー公開前のセキュリティ強化
1.ファイル改竄検知システム導入(Tripwire) CentOS4/CentOS5
サイトパスフレーズ2.rootkit検知ツール導入(chkrootkit) CentOS4/CentOS5
ローカルパスフレーズ
*.RPMforgeリポジトリ導入(RPMforge)
3.アンチウィルスソフト導入(Clam AntiVirus) CentOS4/CentOS5
4.ファイアウォール構築(iptables) CentOS4/CentOS5
7. システム時刻を自動的に合わせる
1.NTPサーバー構築 CentOS4/CentOS5
8. クライアント(Windows)からLinuxサーバーをリモート操作する
1.SSHサーバー構築(OpenSSH) CentOS4/CentOS5
■Telnetサーバー削除 まで設定2.WindowsからSSHサーバーへリモート接続(Poderosa鍵方式ログイン編) CentOS4/CentOS5
■管理者ユーザー鍵方式ログイン設定
■SSHサーバー設定
・SSH2でのみ接続を許可
・ログを/var/log/secureに記録する※CentOSデフォルトに合わせる
・rootでのログイン 禁止
・パスワードでのログイン 禁止
・パスワードなしでのログイン 禁止
■SSHアクセス制限 設定無し
(2)chroot設定有 管理者用ユーザー(wheelグループ所属ユーザー)を除いて、一般ユーザーが自身のホームディレクトリ以外を参照できないようにする。
■chrootユーザー作成※chroot設定時のみ
(1)chrootユーザー作成スクリプト作成
■SSHアクセス制限
内部(例:192.168.xx.XXX)と外部(例:xxx.xxxxxxxx.xx.xx)からのみ、SSHへのアクセスを許可する
・サーバー自身からのsshへのアクセスを許可
・内部(例:192.168.xx.XXXからのsshアクセスを許可)
・外部(例:xxx.xxxxxx.xx.xxからのsshアクセスを許可)
・sshへの全てのアクセスを禁止
今回はルーター設定はしない
ルーターからDHCP割り当てをしているため今回は設定しない
フレッツAsahiは固定アドレスのため今回は設定しない
12. 内部からドメイン名でサーバーにアクセスできるようにする
1.DNSサーバー構築(BIND) CentOS513. Linuxルーターでフレッツ・スクウェアへ接続できるようにする
設定しない
14. Webサーバーを公開する
1.Webサーバー構築(Apache) CentOS4/CentOS5
2.Webサーバー間通信内容暗号化(Apache+mod_SSL) CentOS4/CentOS5
3.ユーザーディレクトリ作成(/~ユーザー名/) CentOS4/CentOS5
http::/tachibana-net.jp/username/ にてアクセスできるように設定4.Webページパスワード制限(htpasswd) CentOS4/CentOS5
/etc/httpd/conf.d/UserDir.conf にて各ユーザーごとに設定
Alias /user名 /home/user名/www
・UserDir public_html UserDir www に変更
5.バーチャルホスト設定 CentOS4/CentOS5
xxxxxx-xxx.jp での設定OK6.Webサーバー間通信内容圧縮(mod_deflate) CentOS4/CentOS5
■内部向けDNSサーバーへドメイン名反映 保留
今回はFTPは使用しない
16. Windowsで作成したWebページをWebサーバーへアップロードする(scp使用)
1.WindowsからSSHサーバーへファイル転送(WinSCP) CentOS4/CentOS5
17. Webページへのアクセス統計をWebブラウザからみれるようにする
1.Apacheアクセスログ解析(AWStats) CentOS4/CentOS5
2.リファラスパム対策 CentOS4/CentOS5
xoopsの検索モジュールで対応する
20. 独自のメールアドレスをつくる(Postfix編)
1.メールサーバー構築(Postfix+Dovecot)CentOS4/CentOS5
(2)SMTP-Auth設定 SMTP-Auth用ユーザ名、パスワードにシステムのユーザ名、パスワードを使用する場合)2.メールサーバー間通信内容暗号化(OpenSSL+Postfix+Dovecot)CentOS4/CentOS5
22-2 メールデータ移行 CentOS4/CentOS5
■メールサーバー確認
・内部で同一ユーザ同士でメールの送受信
・内部で他ユーザ間でメールの送受信
・内部で外部(プロバイダのメールアドレス等)との送受信
・内部で携帯との送受信※
・外部(会社等)で同一ユーザ同士でメールの送受信
・外部(会社等)で他ユーザ間でメールの送受信
・外部(会社等)で外部(プロバイダのメールアドレス等)との送受信
・外部(会社等)で携帯との送受信※
■メール不正中継拒否テスト OK
■Postfix設定3.taRgreyによるスパム対策(taRgrey)CentOS5
#tlsmgr unix - - n 300 1 tlsmgr ← 行頭の#を削除
この項目は最初から#が削除されている
■サーバー証明書のインポート
インストールすると通信できなくなったため、今回は設定無し
4.メールサーバーでウィルス・スパムチェック(Postfix+Clam AntiVirus+SpamAssassin)CentOS4/CentOS5
5.バーチャルドメイン設定(Postfix&Dovecot+qmail&vpopmail)CentOS5
6.vpopmail用メールアカウント&メーリングリスト管理システム導入(Postfix+qmailadmin)CentOS5
7.メール自動返信機能導入(Vacation)CentOS4/CentOS5
8.メーリングリストサーバー構築(Postfix+Mailman)
9.Postfixログ解析ツール導入(pflogsumm)
22. メールサーバー共通
1.OP25B(Outbound Port 25 Blocking)対策 CentOS5
AsahiNetはメール送信時に使用するプロバイダがOP25Bを導入していない
2.メールデータ移行 CentOS4/CentOS5
3.複数ドメイン宛メールの集約(Fetchmail) CentOS4/CentOS5
今回は設定しない
設定なし
設定なし
設定なし
設定なし
設定なし
設定なし
30. データベースシステムを作る(MySQL編)
1.データベースサーバー構築(MySQL) CentOS4/CentOS5
User:
Pass:
2.MySQLデータベース自動バックアップ運用(mysqlhotcopy) CentOS4/CentOS5
3.MySQL用GUI設定ツール導入(phpMyAdmin) CentOS4/CentOS5
設定なし
33. コミュニティサイトを作る
1.コミュニティサイト構築(XOOPS Cube)CentOS4/CentOS5
設定なし
設定なし
1.バージョン管理システム構築(Subversion)CentOS5
36. サーバーの状態をブラウザから監視する(Nagios編)
1.統合監視システム構築(Nagios) CentOS5
2.リモートホストサービス監視(Nagios+nrpe) CentOS5
3.性能統計グラフ追加(Nagios+PNP) CentOS5
37. サーバーの状態をブラウザから監視する(RRDtool編)
1.サーバー監視システム構築(RRDtool+Cacti) CentOS5
2.Apacheアクセス統計監視グラフ追加(apachestats) CentOS5
(2)Apacheアクセス統計監視グラフ追加 が導入できていない
3.BINDアクセス統計監視グラフ追加(bind9-snmp) CentOS5
38. サーバーの状態をブラウザから監視する(MRTG編)
1.ネットワークトラフィック監視システム導入(NET-SNMP+MRTG) CentOS4/CentOS5
40. サーバー公開後のセキュリティ強化
1.不正アクセス検知システム導入(Snort+BASE+Oinkmaster) CentOS5
2.iptablesログ解析(IPTables log analyzer) CentOS4/CentOS5
3.ログ監視ツール導入(SWATCH) CentOS4/CentOS5
41. サーバーのファイルを自動的にバックアップする
1.自動バックアップ運用(tar+GnuPG+rsync/ftp) CentOS4/CentOS5
2.リアルタイムミラーリングツール導入(lsyncd+rsyncd) CentOS5
42. 外部から安全にLANへ接続できるようにする
1.VPNサーバー構築(OpenVPN) CentOS5
2.Windows上にVNCサーバー導入(UltraVNC)
44. 論理ボリューム操作
1.ハードディスク追加 CentOS5
追加HDD
・100GB /home
・100GB /var
・250GB /backup
2.ハードディスク削除 CentOS5
3.論理ボリューム追加 CentOS5
4.論理ボリューム削除 CentOS5
5.論理ボリュームサイズ拡大 CentOS5
6.論理ボリュームサイズ縮小 CentOS5