晴れときどき晴れ

プログラミングと日常についてマイペースにあげます

VPSの設定

sshの設定

以下の3つを設定します。

ポート番号の変更

パスワードログインの禁止

rootログインの禁止

ポート番号を変更することで、誰かに教えない限りそのポート番号は自分しか知らないことになります。ポート番号って一体いくつまで使えるんでしょうか??

一般的に使用されている 1〜1023
登録済み 1024〜49151
自由に使える 49152〜65535

*1

だそうです。
というわけで、設定を変更していきます。
設定ファイルを変更する時は、必ずバックアップをとりましょう!!
/etc/ssh/sshd_configを開いて、Port 好きな番号、PasswordAuthentication no、PermitRootLogin no*2に変更します。
変更を適用するにはservice sshd restartを打ち込みます。

firewallの設定

/etc/sysconfig/iptablesを作成します。
ドットインストールでは

*filter
:INPUT    DROP    [0:0]
:FORWARD  DROP    [0:0]
:OUTPUT   ACCEPT  [0:0]
:SERVICES -       [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 4 -j ACCEPT
-A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p tcp -m state --state NEW -j SERVICES
-A INPUT -p udp --sport 53 -j ACCEPT
-A INPUT -p udp --sport 123 --dport 123 -j ACCEPT
-A SERVICES -p tcp --dport ここには先ほど決めたsshのport番号 -j ACCEPT
-A SERVICES -p tcp --dport 80 -j ACCEPT
-A SERVICES -p tcp --dport 443 -j ACCEPT
COMMIT

のように設定を行っていました。
何が書いてあるかあまりよくわからないので、少し調べてみました*3
*4
*5

ホワイトリスト方式という概念で記述されているらしく、最初に外からの通信はシャットアウト、後に通していいものは記述するという感じでやっているみたいです。
とりあえずわかった部分だけ...

:INPUT    DROP    [0:0]
:FORWARD  DROP    [0:0]
:OUTPUT   ACCEPT  [0:0]

外部からマシンへのパケットは落とします。
マシンを経由するパケットは落とします。
マシンから通信する場合はOKという意味です。

-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 4 -j ACCEPT
-A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p tcp -m state --state NEW -j SERVICES
-A INPUT -p udp --sport 53 -j ACCEPT
-A INPUT -p udp --sport 123 --dport 123 -j ACCEPT
-A SERVICES -p tcp --dport ここには先ほど決めたsshのport番号 -j ACCEPT
-A SERVICES -p tcp --dport 80 -j ACCEPT
-A SERVICES -p tcp --dport 443 -j ACCEPT

自ホストに対する通信はOK*6
icmpでのエコーリクエストは毎秒4回までOK
わかりません!!
DNSポート(53)宛は通ってよし
NTPポート(123)宛は通ってよし
sshポート宛はOK
httpポート(80)はOK
httpsポート(443)はOK
ということみたいです。

*1:http://ja.wikipedia.org/wiki/%E3%83%9D%E3%83%BC%E3%83%88%E7%95%AA%E5%8F%B7

*2:sudoerの設定をしておいてください

*3:http://qiita.com/shimohiko/items/ec672655edb84578a82e

*4:http://kazmax.zpp.jp/cmd/i/iptables.8.html

*5:http://www.e-mist.com/articles/iptables_configuration_on_centos

*6:http://e-words.jp/w/E383ABE383BCE38397E38390E38383E382AF.html