ネットワークセキュリティ設定
IPv6モジュールの無効化
IPv6を無効化する場合はNICの他にkernelモジュールも読み込まないようにする
# vim /etc/sysctl.conf
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
ソースルーティング対策
ソースルーティングはインターネットプロトコルメカニズムで、
IPパケットがアドレス一覧の情報を持ち運べるようにします。
このアドレスは、パケットが通過する必要のあるパスをルーターに知らせるものです。
ルートを移動する際にホップを記録するオプションもあります。
「ルート記録」と呼ばれるホップの記録は、宛先にソースまでの帰りのパスを提供します。
これによりソースは(つまり送信ホスト)、すべてもしくは一部のルーターのルーティングテーブルを無視して、
ルートを厳密もしくは緩やかに特定することができます。
これによりユーザーは、不正目的でネットワークトラフィックをリダイレクトすることが可能になります。
このため、ソースベースのルーティングは無効にする必要があります。
参考
https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/html/Security_Guide/sec-Securing_Network_Access.html
# vim /etc/sysctl.conf
net.ipv4.conf.all.accept_source_route = 0
逆方向パス転送
逆方向パス転送は、あるインターフェイスから着信したパケットが異なるインターフェイス経由で去ってしまうことを防ぐために使用されます。
送信ルートと着信ルートが異なる場合は、非対称ルーティングと呼ばれる場合もあります。
ルーターがパケットをこの方法でルート設定することはよくありますが、ほとんどのホストはこのようなことをする必要はないはずです。
例外として挙げられるのは、トラフィックをあるリンクで送信し、異なるサービスプロバイダーから別のリンクでトラフィックを受け取るアプリケーションです。
例えば、xDSL との組み合わせで専用回線を使っている場合や、3Gモデムを使ったサテライトリンクなどの場合です。
このようなシナリオが該当する場合は、着信インターフェイスで逆方向パス転送をオフにすることが必要になります。
つまり、これが必要だと分かっている場合を除いて、有効にしておくのが最善の方法です。
これは、ローカルサブネットからユーザーがIPアドレスをスプーフィングすることを防ぎ、DDoS 攻撃の機会を減らすためです。注記
Red Hat Enterprise Linux 7 はデフォルトで厳密な逆方向パス転送を使用します。
これは、RFC 3704 の Ingress Filtering for Multihomed Networks からの厳密な逆方向パスに関する推奨事項に準拠したものです。
現在これが適用されるのは、IPv4 のみです。
- 0 — ソース確認なし
- 1 — RFC3704 で定義された厳密モード
- 2 — RFC3704 で定義された緩やかなモード
# vim /etc/sysctl.conf
net.ipv4.conf.default.rp_filter = 1
SYN FLOOD攻撃対策
# vim /etc/sysctl.conf
net.ipv4.tcp_syncookies = 1
Smurf攻撃対策
# vim /etc/sysctl.conf
net.ipv4.icmp_echo_ignore_broadcasts = 1
設定の反映
sysctl設定ファイルは分散コンフィグでの管理をより明示的に行うようになっている
デフォルトのパラメータは/usr/lib/sysctl.d/*
にて管理されている
# /usr/lib/sysctl.d/00-system.conf
# /usr/lib/sysctl.d/50-default.conf
追加、変更する場合はsysctl.conf
かsysctl.d/<name>.conf
ファイルに記述し反映させる
反映
# sysctl -p
または再起動し確認する