
ネットワークに IPv6 接続できるようになったので、IOS 用の基本的な IPv6 ファイアウォール構成を探しています。
以前は、NAT を利用して内部マシン (つまり、送信接続のみ) を「隠す」ことができましたが、ありがたいことに、NAT がその作業を行う必要がなくなりました。
小規模な内部ネットワークに適した IOS 構成 / ACL のセットは何ですか?
答え1
私が思いついた方法は次のとおりです。 うまく機能しますが、最適かどうかはわかりません。 ご提案をお待ちしています!
interface IncomingTunnel0
ipv6 traffic-filter exterior-in6 in
ipv6 traffic-filter exterior-out6 out
interface LocalLan0
ipv6 traffic-filter interior-in6 in
ipv6 traffic-filter interior-out6 out
ipv6 access-list exterior-in6
evaluate exterior-reflect sequence 1
permit ipv6 any host EXTERNAL_ROUTER_ADDRESS sequence 10
permit tcp any host INTERNAL_ROUTER_ADDRESS eq 22 sequence 11
permit tcp any host INTERNAL_SERVER_ADDRESS eq 22 sequence 100
permit icmp any any sequence 800
deny ipv6 any any sequence 1000
ipv6 access-list exterior-out6
sequence 10 permit ipv6 MY_ASSIGNED_SUBNET::/48 any reflect exterior-reflect
ipv6 access-list interior-in6
permit ipv6 fe80::/10 any
permit ipv6 INTERNAL_LAN_SUBNET::/64 any
ipv6 access-list interior-out6
permit ipv6 any any
再帰アクセス リストに詳しくない方のために説明すると、これはステートフルな接続追跡を行う方法です。言い換えると、これは発信接続への応答が戻ってくるようにするものです。
答え2
再帰アクセス リストの代わりに検査を使用することをお勧めします - 例:
ipv6 inspect name IPV6FIREWALLINSPECT tcp
ipv6 inspect name IPV6FIREWALLINSPECT udp
ipv6 inspect name IPV6FIREWALLINSPECT icmp
int IncomingTunnel0
ipv6 inspect IPV6FIREWALLINSPECT out
ipv6 traffic-filter IPV6FIREWALL in
ipv6 access-list IPV6FIREWALL
sequence 10 permit (explicit inbound traffic)
sequence 20 deny ipv6 any any
よりクリーンな設定。sho ipv6 inspect session は、戻りトラフィックが許可されているすべての送信セッションを表示します。