過去問ドリル

LinuCレベル2 システムのセキュリティ 問17

システムのセキュリティ/iptablesやfirewalldによるパケットフィルタリング

Linuxホストで、あるNICで受信したIPv4パケットを別のNICへ転送(ルーティング)させるために必要なカーネルパラメータの設定として適切なものはどれか。

当サイトのオリジナル問題(LinuCレベル2の出題範囲「システムのセキュリティ」に対応。実際の試験問題ではありません)

正解:A

解説

Linuxは既定では自分宛てでないIPv4パケットを転送しないため、ルーターやNATゲートウェイとして使うにはnet.ipv4.ip_forwardを1にします。一時的にはsysctl -w net.ipv4.ip_forward=1や/proc/sys/net/ipv4/ip_forwardへの書き込みで変更でき、永続化するには/etc/sysctl.d/配下の設定ファイルに記述します。IPv6ではnet.ipv6.conf.all.forwardingが対応する設定です。転送を許可したうえで、iptablesのFORWARDチェインやfirewalldのポリシーで転送するパケットを制御します。

選択肢ごとの解説

  • A正しい。net.ipv4.ip_forwardを1にすると、IPv4パケットのインターフェース間の転送が有効になります。
  • B誤り。tcp_syncookiesはSYNフラッド攻撃への対策としてSYN Cookieを有効にする設定で、パケット転送とは関係ありません。
  • C誤り。icmp_echo_ignore_allを1にすると、pingのエコー要求に応答しなくなります。転送を有効にする設定ではありません。
  • D誤り。accept_redirectsはICMPリダイレクトを受け入れて経路を更新するかどうかの設定で、パケットの転送を有効にするものではありません。
LinuCレベル2の問題を演習モードで解く