Amazon Linuxでiptables設定

週に1回は何か書こうとして始めてみたけど、書くほどの内容で無かったり、書くには労力が要る話だったりして、なかなか丁度いいネタがない。とはいえ、途絶えさせたくは無いので、書くほどの内容では無いが、とりあえずタイトルの内容で書く。

AWS EC2で、Amazon Linuxのインスタンスを作成したのだが、セキュリティ要件で通信制限することになった。本来は、セキュリティグループで設定するのだろうが、様々な事情でサーバ上のiptablesで制限することに。

とりあえず、ググりながらiptablesを設定してみた。
↓ 特定のIPへの送信以外を制限。

$ sudo iptables -A OUTPUT -d XX.XX.XX.XX -j ACCEPT
$ sudo iptables -P OUTPUT DROP

このままだと再起動したら元にに戻るので、設定を保存。

$ sudo service iptables save

これでサーバを再起動してみたけど、普通に通信できてしまう。。
ちょっと悩んで、そもそも自動起動のサービスにiptablesが設定されて無いのであった。

$ systemctl is-enabled iptables
disabled
$ sudo systemctl enable iptables
Created symlink from /etc/systemd/system/basic.target.wants/iptables.service to /usr/lib/systemd/system/iptables.service.
$ systemctl is-enabled iptables
enabled

ということで、実機をなかなか触る機会が無かったら、基本的なことを忘れているなーと思ったっていう話。

以上です。