🏹

iptablesのポート制限の設定メモ

2024/11/16に公開

背景

iptablesでポート制限をすることがあったのでその設定をメモする。

環境

  • Ubuntu 24.04

iptabelsのインストール

以下を実行してインストールできる。

sudo apt-get install iptables iptables-persistent

iptablesの設定

以下の設定を行った。eno1についてDNS, SSH, HTTP, HTTPS, NTPのポートのみ許可する。他のloやdocker0に対して設定は行わない。

sudo iptables -F
sudo iptables -X
sudo iptables -Z

sudo iptables -P INPUT ACCEPT
sudo iptables -P OUTPUT ACCEPT
sudo iptables -P FORWARD DROP

sudo iptables -A INPUT -i eno1 -p udp --sport 53 -j ACCEPT
sudo iptables -A INPUT -i eno1 -p tcp --sport 53 -j ACCEPT
sudo iptables -A OUTPUT -o eno1 -p udp --dport 53 -j ACCEPT
sudo iptables -A OUTPUT -o eno1 -p tcp --dport 53 -j ACCEPT

sudo iptables -A INPUT -i eno1 -p tcp --sport 443 -j ACCEPT
sudo iptables -A OUTPUT -o eno1 -p tcp --dport 443 -j ACCEPT

sudo iptables -A INPUT -i eno1 -p tcp --sport 80 -j ACCEPT
sudo iptables -A OUTPUT -o eno1 -p tcp --dport 80 -j ACCEPT

sudo iptables -A INPUT -i eno1 -p tcp --sport 22 -j ACCEPT
sudo iptables -A OUTPUT -o eno1 -p tcp --dport 22 -j ACCEPT

sudo iptables -A INPUT -i eno1 -p udp --sport 123 -j ACCEPT
sudo iptables -A OUTPUT -o eno1 -p udp --dport 123 -j ACCEPT

sudo iptables -A INPUT -i eno1 -j DROP
sudo iptables -A OUTPUT -o eno1 -j DROP

sudo netfilter-persistent save

Discussion