突貫工事で外部向けLinux鯖の立て直し

えっさほっさえっさほっさ


最高速で VMware Server 2 にて稼働する CentOS 5.5 を外部公開できるように仕上げました
今回は動作する最低限で、Samba sshd Apache vsftpd Postfix Dovecot をインストと設定
最低限に Samba が入ってるのは、conf ファイル編集をコンソールのviでやるより Windowsマシンからメモ帳で編集する方が早いからである


続く


ユーザーデータを VMware Server 2 で動いていたCentOSのHDDイメージから抜き出すため、
外部公開用CentOSとは別に新たに仮想マシンCentOSをインストールし、HDDイメージを /home としてマウントし、nicに 192.168.1.6 を設定する


パソコンおやじ さんのサイトより「Rsyncによるデータバックアップ」
http://www.aconus.com/~oyaji/backup/rsync.htm
このページを参考に、外部公開用のCentOSから以下のコマンドをタイプ

rsync -avz --exclude "bin/" --exclude "dev/" --exclude "etc/" --exclude "lib/" --exclude "usr/" -e ssh 192.168.1.6:/home/ /home/

192.168.1.6のCentOSの /home にあるファイルで bin dev etc lib usr のフォルダを除外したユーザーデータを、外部公開用CentOSの /home に持ってくるというもの


ユーザ作成は簡単だったけど、パスワード作成は手間なのでスクリプトにしようと考える
chpasswd を使った方法はうまくいかなかったので、passwd を使った方法を使うとする
clmemo@aka: Expect コマンドで passwd 変更
http://at-aka.blogspot.com/2009/02/expect-passwd.html
このブログ記事を参考にスクリプト書き換え

#!/bin/bash
user=$1
password=$2
passwd="passwd"

expect -c "
spawn $passwd $user
expect Enter\ ;  send $password; send \r
expect Retype\ ; send $password; send \r;
expect eof exit 0
"

そして、以下のコマンドをユーザの数だけぽちっとな
>> ./auto-passwd ”ユーザ” ”パスワード” <<


ユーザ作成とパスワード設定は完了、しかしそのままだと /home のUID・GIDが違ったものになってしまっているので、またしてもスクリプトに頼る
ユーザーディレクトリ作成(/~ユーザー名/) - CentOS自宅サーバー構築
http://centossrv.com/apache-userdir.shtml
ここの ユーザーディレクトリ一括作成スクリプト を書き変えて作成

#!/bin/bash
for user in `ls /home`
do
    id $user > /dev/null 2>&1
    if [ $? -eq 0 ] && [ -d /home/$user ]; then
        chown -R $user:$user /home/$user
        chmod 711 /home/$user
    fi
done

ものすごい突貫工事だな
後で足りない部分や調整をしなければ
ZZZzzz