ServersMan@VPS契約後にやったこと その1

Linuxサーバーについて勉強したかったのと、WordPressを使ってblogを運用してみたかったので、VPSを契約してみた。契約したのは、ServersMan@VPSのEntryプラン。OSはCentOSの64bitを選択した。
わからないことは沢山あるけど、とりあえずやったことをまとめておく。

作業用ユーザーを追加する

rootでログインした後

# useradd {user}
# passwd {user}
# usermod -G wheel {user}        // wheelグループに所属させる
公開鍵認証にする

ローカル環境にて

$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub
        // 表示された文字列をコピーする

作業用ユーザーでログインした後

$ mkdir ~/.ssh
$ vi ~/.ssh/authorized_keys
        // コピーした文字列を貼りつける

$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/authorized_keys
sshの設定

rootになってから

# vi /etc/ssh/sshd_config

Port xxxxx            // 使用するポートを指定する
PermitRootLogin no    // rootでのログインを禁止する
UsePAM no             // PAMを使わないようにする。ちょっとよくわからない

# /etc/init.d/sshd restart        // sshdを再起動する
rootになれるユーザーを制限する
# vi /etc/pam.d/su
auth           required        pam_wheel.so use_uid        // コメントアウトを外す
作業用ユーザーでsudoを使えるようにする
# visudo
%wheel  ALL=(ALL)       ALL        // コメントアウトを外す
rootのパスワードを無効化する
# passwd -l root
iptablesの設定

とりあえずはsshで使うポートとhttpの80番ポートだけ開けておく。

# 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
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport xxxxx -j ACCEPT        // sshで使用するポートを指定
-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

# /etc/rc.d/init.d/iptables restart        // iptablesを再起動する