2009年2月25日水曜日

IPtableでUbuntuのFirewallを構築する

[目標]
IPtableでUbuntuのFirewallを構築する


[環境]
Ubuntu Hardy Heron 8.04
VirtualBox 2.1.x
USB 104Key (US)


[したこと]

iptablesでサーバーのファイアウォールを構築する - Hatena::Diary::Ubuntu
http://d.hatena.ne.jp/Ubuntu/20080128/1201462048

上記リンクで公開されているスクリプトを利用

大変便利でしたありがとう!



inst_iptables.sh と iptables を同じディレクトリに作成する

長いほうのスクリプトを iptables という名前で保存する

$ vi iptables

XDMCP VNC 等を利用するための追記

# TCP177番ポート(XDMCP)へのアクセスを許可
#$IPTABLES -A INPUT -p udp --dport 177 -j ACCEPT
$IPTABLES -A INPUT -s $LOCALNET -p udp --dport 177 -j ACCEPT

# TCP5900番ポート(VNC)へのアクセスを許可
$IPTABLES -A INPUT -s $LOCALNET -p tcp --dport 5900 -j ACCEPT
#$IPTABLES -A INPUT -s $LOCALNET -p tcp --dport 5901 -j ACCEPT

# TCP631番ポート(CUPS)へのアクセスを許可
$IPTABLES -A INPUT -s $LOCALNET -p tcp --dport 631 -j ACCEPT

# TCP901番ポート(SWAT)へのアクセスを許可
$IPTABLES -A INPUT -s $LOCALNET -p tcp --dport 901 -j ACCEPT

# TCP3689番ポート(DAAP)へのアクセスを許可
$IPTABLES -A INPUT -s $LOCALNET -p tcp --dport 3689 -j ACCEPT

# TCP10000番ポート(Webmin)へのアクセスを許可
$IPTABLES -A INPUT -s $LOCALNET -p tcp --dport 10000 -j ACCEPT

# TCP41952番ポート(DNLA)へのアクセスを許可
$IPTABLES -A INPUT -s $LOCALNET -p tcp --dport 41952 -j ACCEPT

sambaを利用しているので

# 外部からのUDP137,138,TCP139,445番ポート(SMB)へのアクセスを許可
# ※Sambaサーバーを公開する場合のみ
の下4行を有効化する




短いほうのスクリプトを inst_iptables.sh という名前で保存する

$ vi inst_iptables.sh

以下2行削除
test -f $SCRIPTS/iptables || exit 1
sudo vim /etc/network/if-pre-up.d/iptables

最後の行に追記
sudo /etc/init.d/netwroking restart

inst_iptables.sh に実行権を付与
$ sudo chmod +x inst_iptables.sh

inst_iptables.sh と iptables が同じディレクトリにあることを確認

inst_iptables.sh の実行

$ sh inst_iptables.sh




[注意]

inst_iptables.sh と iptables が同じディレクトリにあることを確認

以下 リモートから設定して間違えると、ホストまで一人で歩いていかなければならない。

TCP22番ポート(SSH)へのアクセスをIPAddressを指定して許可する
$IPTABLES -A INPUT -s 192.168.0.2 -p tcp --dport 22 -j ACCEPT

TCP22番ポート(SSH)へのアクセスをLOCALHOSTの範囲を指定して許可する
# ※長いほうのスクリプト11行めで 変数$LOCALHOSTを定義している
$IPTABLES -A INPUT -s $LOCALHOST -p tcp --dport 22 -j ACCEPT


[その他]

先日インストールしたfirestarterは削除済み
削除理由
 WindowsからUbuntuにアクセスするとき サーバー名/ディレクトリ でアクセスできない
 WindowsからUbuntuにアクセスするとき IPアドレス/ディレクトリ でアクセスできる
 IPアドレスで指定するのはやりたくない

[参考]

iptablesでサーバーのファイアウォールを構築する - Hatena::Diary::Ubuntu
http://d.hatena.ne.jp/Ubuntu/20080128/1201462048

0 コメント: