KnowHow

技術的なメモを中心にまとめます。
検索にて調べることができます。

Linuxのfirewalldを使ってNATを構成する手順を教えてください。

登録日 :2024/10/25 21:01
カテゴリ :Linux

1 Linuxのfirewalldを使ってNATを構成する手順は以下の通りです:

IP転送を有効にする:

echo "net.ipv4.ip_forward=1" | sudo tee /etc/sysctl.d/99-ipforward.conf
sudo sysctl -p /etc/sysctl.d/99-ipforward.conf

firewalldを起動し、有効化する:

sudo systemctl start firewalld
sudo systemctl enable firewalld

外部インターフェースをexternalゾーンに割り当てる:

sudo firewall-cmd --zone=external --change-interface=<外部インターフェース名> --permanent

内部インターフェースをinternalゾーンに割り当てる:

sudo firewall-cmd --zone=internal --change-interface=<内部インターフェース名> --permanent

マスカレードを有効にする:

sudo firewall-cmd --zone=external --add-masquerade --permanent

内部ネットワークからのトラフィックを許可する:

sudo firewall-cmd --zone=internal --add-source=<内部ネットワークCIDR> --permanent

必要に応じて、ポートフォワーディングを設定する:

sudo firewall-cmd --zone=external --add-forward-port=port=<外部ポート>:proto=<プロトコル>:toport=<内部ポート>:toaddr=<内部IPアドレス> --permanent

設定を反映させる:

sudo firewall-cmd --reload

設定を確認する:

sudo firewall-cmd --list-all --zone=external
sudo firewall-cmd --list-all --zone=internal

これらの手順により、基本的なNAT構成が完了します。<外部インターフェース名>、<内部インターフェース名>、<内部ネットワークCIDR>などは、実際の環境に合わせて置き換えてください。また、ポートフォワーディングは必要に応じて設定してください。

設定後は、内部ネットワークからインターネットへの接続や、必要に応じて外部からの特定のサービスへのアクセスが可能になります。

2 FirewalldのNAT設定を確認するための具体的なステップは

FirewalldのNAT設定を確認するための具体的なステップは以下の通りです:
マスカレーディングの確認:

sudo firewall-cmd --zone=external --query-masquerade

このコマンドで、externalゾーンでマスカレーディングが有効かどうかを確認できます。
ポートフォワーディングの確認:

sudo firewall-cmd --zone=external --list-forward-ports

externalゾーンに設定されているポートフォワーディングのルールが表示されます。
ゾーンの全設定確認:

sudo firewall-cmd --zone=external --list-all

externalゾーンの全設定(マスカレーディングやポートフォワーディングを含む)が表示されます。
ダイレクトルールの確認:

sudo firewall-cmd --direct --get-all-rules

直接設定されたiptablesルールが表示されます。NATに関連するルールがある場合、ここに表示されます。

永続的な設定の確認:
上記のコマンドに --permanent オプションを追加することで、再起動後も適用される永続的な設定を確認できます。
例:

sudo firewall-cmd --zone=external --list-all --permanent

これらのステップを実行することで、FirewalldのNAT設定状況を包括的に確認することができます。特にexternalゾーンの設定とダイレクトルールを確認することが重要です。