さくらVPS + CentOSの初期設定
さくらVPS + CentOSをサーバとして利用する際に、最初にやっておきたい基本的な設定について解説します。
1.rootのパスワードを変更する
登録完了メールの中に記載されていた、rootの初期パスワードを変更します。
# passwd
下記のようなメッセージが出てパスワードを2回聞かれるので同じパスワードを登録します。
Changing password for user root.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
2.ユーザーを作成する
rootで入ると、危険なので、ユーザーを作ります。
# adduser 作成するユーザー名
# passwd 作成するユーザー名
下記のようなメッセージが出てパスワードを2回聞かれるので同じパスワードを登録します。
Changing password for user 作成するユーザー名.
New UNIX password:
BAD PASSWORD: it is based on a dictionary word
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
3.ssh接続でのrootによるログインを禁止
直接rootユーザでログイン出来ると、rootユーザのパスワードが漏れると即システムを乗っ取られてしまうので、rootユーザが直接sshで接続出来ないように設定を行います。
# vi /etc/ssh/sshd_config
■変更前
#PermitRootLogin yes
■変更後
PermitRootLogin no
設定が完了したらsshdを再起動することで設定を反映させます。
# /etc/init.d/sshd restart
4.ファイアーウォールを構築する
パケットフィルタリング機能であるiptablesを使用して、Web等外部に公開するサービス以外のポートへのアクセスをブロックするようにします。下記の例では、SSH、HTTPだけに限定してポート解放しています。必要に応じてポート解放してください。
# vi /etc/sysconfig/iptables
*filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :RH-Firewall-1-INPUT - [0:0] -A INPUT -j RH-Firewall-1-INPUT -A FORWARD -j RH-Firewall-1-INPUT -A RH-Firewall-1-INPUT -i lo -j ACCEPT -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT -A RH-Firewall-1-INPUT -p 50 -j ACCEPT -A RH-Firewall-1-INPUT -p 51 -j ACCEPT -A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # SSH, HTTP -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited COMMIT
設定が完了したらiptablesを再起動することで設定を反映させます。
# /etc/rc.d/init.d/iptables restart
■おすすめサービス