さくら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



■おすすめサービス