自宅サーバ時代の「サーバ運用」
サーバの運用
このページは、ネットワーク構成図に基づいて、FedoreCore6(MainServer機)、FedoraCore4(SubmainServer機)、FedoraCore2(BackupServer機)で各々サーバを構築し、日々の「サーバ運用」の内容を記録したものです。
サーバー運用では、実際のサーバ運用で必要となる、awstatsによる「アクセス解析」とrsyncによる「サーバの同期」についてまとめています。
アクセス解析(awstats)
アクセス解析の設定方法と実際のawstatsの画面にリンクを張っています。
rsyncによるサーバの同期
サーバ群のどのコンピュータとどのように同期をとっているか説明しています。
rsyncによるサーバの同期
- (1) sshクライアントからRSA認証でログインできるための設定
-
MainServer機、SubmainServer機、BackupServer機が、お互いにsshでパスワードなしでログインできるように設定する。
① MainServer機→SubmainServer機の設定
[root@MainServer ~]# ssh-keygen -t rsa←パスフレーズなし鍵ペアの作成
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
f6:e0:98:71:d3:d9:c8:92:43:fc:40:95:a6:40:ec:36 root@MainServer.0gino.jp[root@MainServer ~]# scp ~/.ssh/id_rsa.pub 192.168.1.2:
root@192.168.1.2’s password:
id_rsa.pub 100% 406 0.4KB/s 00:00
[root@MainServer ~]# scp ~/.ssh/id_rsa.pub 192.168.1.3:
root@192.168.1.3’s password:
id_rsa.pub 100% 406 0.4KB/s 00:00
[root@MainServer ~]# slogin 192.168.1.2
root@192.168.1.2’s password:
Last login: Sun Nov 2 14:58:54 2008 from mainserver.0gino.jp
[root@SubmainServer ~]# mkdir .ssh
[root@SubmainServer ~]# cd .ssh/
[root@SubmainServer .ssh]# touch authorized_keys
[root@SubmainServer .ssh]# chmod 600 authorized_keys
[root@SubmainServer .ssh]# cat ~/id_rsa.pub >> authorized_keys
[root@SubmainServer .ssh]# rm ~/id_rsa.pub
rm: remove 通常ファイル `/root/id_rsa.pub’? y# slogin BackupServer
The authenticity of host ‘backupserver (192.168.1.3)’ can’t be established.
RSA key fingerprint is 97:a5:86:c0:5d:97:ff:5f:0c:9d:53:a7:f5:1d:37:5d.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘backupserver,192.168.1.3’ (RSA) to the list of known hosts.
root@backupserver’s password:以下のようにして、BackupServer側からMainServer側へRSA認証でログイン出来るように設定する。
[root@BackupServer root]# ssh-keygen -t rsa
[root@BackupServer root]# scp ~/.ssh/id_rsa.pub 192.168.1.1:
[root@MainServer ~]# cd .ssh/
[root@MainServer ~]# touch authorized_keys
[root@MainServer ~]# chmod 600 authorized_keys
[root@MainServer ~]# cat ~/id_rsa.pub >> authorized_keys
[root@MainServer ~]# rm ~/id_rsa.pub次に、同期先のサーバでSSHのログインを、鍵による認証のみにする。
そのために、を以下のように編集するが、rootでのログインを許可する。
[root@MainServer ~]# vi /etc/ssh/sshd_config
PasswordAuthentication no
PermitRootLogin yes - (2) cronによる定期的な同期をとる
-
BackupServer側からMainServer側のバックアップが5分おきに取れるように設定する。
# vi /etc/crontab
# auto backup from MainServer to BackupServer
*/5 * * * * root rsync -avz –delete -e ssh 192.168.1.1:/var/www/html /var/www
*/5 * * * * root rsync -avz –delete -e ssh 192.168.1.1:/home /
*/5 * * * * root rsync -avz –delete -e ssh 192.168.1.1:/var/lib/mysql /var/lib
*/5 * * * * root rsync -avz –delete -e ssh 192.168.1.1:/var/lib/awstats/ /var/lib# service crond restart