プライベートネットワークでは、ユーザー名/パスワードログインのみを許可し、すべての外部ソースはキー/証明書ログインに制限したいとします。私は次のようにします:
RSAAuthentication yes
PubkeyAuthentication yes
PasswordAuthentication no
Match Address 10.0.0.*
PasswordAuthentication yes
しかし、攻撃者がそれを偽装して自分のローカルIP範囲内に表示させ、インターネットでユーザー名/パスワードログインを許可する方法はありますか?
答え1
IP なりすまし攻撃者が偽造されたIPソースアドレスを利用して発信者の身元を隠すか、他のコンピューティングシステムに偽装する技術だ。
しかし、この攻撃はインターネット経由で行われるにはほとんど「不可能」です。RFC1918次のブロックは、LAN環境でのみ使用するように定義されています。
Internet Assigned Numbers Authority(IANA)は、プライベート
インターネット用に次の3つのIPアドレス空間ブロックを予約します。10.0.0.0 - 10.255.255.255 (10/8 prefix) 172.16.0.0 - 172.31.255.255 (172.16/12 prefix) 192.168.0.0 - 192.168.255.255 (192.168/16 prefix)
これはまた、攻撃者がLAN内でIPアドレスをなりすました場合、インターネット上のISPがその要求を攻撃者に再ルーティングしないことを意味します。
セキュリティ層だけでは十分ではなく、ファイアウォールを制御できる場合、またはこのコンピュータがインターネットインターフェイスに直接接続されている場合は有効にすることをお勧めします。リバースパスフィルタリングLinux内部:
# sysctl -w net.ipv4.conf.all.rp_filter = 0
# sysctl -w net.ipv4.conf.default.rp_filter = 0
これにより、カーネルが入力したいインターフェイスの同じサブネットに確実に属さないパケットを自動的に破棄します。