「source-routeオプション付きIPパケット」をフィルタリングする機能の設定コマンド
(始点経路制御)意図的なIPデータグラムの 経路制御を行うためのIPパケットのオプション。必ず指定されたルートを通る
source-routeオプションは、フィルタリングをくぐり抜けるなどのアタック の道具にされる可能性があります。また、本来の目的で使われることはまれ であり、このオプションが付いているパケットを無条件に落としても実害は ほとんど無いということでフィルタリングの対象としています。
source-routeオプション付きIPパケットに対するフィルタリング
「終点IPアドレスがDirected Broadcastアドレス宛になっているIPパケット」をフィルタリングする機能の設定コマンドです。
directed broadcastパケットのフィルタリング
port 135 :
ポート135は実際のRPC通信で使うポートを動的に決めるポート・マッピングの役割を果たす。
port netbios_ns-netbios_ssn:
→ port 137-139:
137 netbios_ns MS-Windowsネットワーク / 名前解決
138 netbios_dgm MS-Windowsネットワーク / データグラム転送
139 netbios_ssn MS-Windowsネットワーク / ストリームデータ転送
port 445:
SMB2およびSMB3で利用されるデフォルトのTCPポート番号です。
ip filter 1010 reject * * udp,tcp 135 *
ip filter 1011 reject * * udp,tcp * 135
ip filter 1012 reject * * udp,tcp netbios_ns-netbios_ssn *
ip filter 1013 reject * * udp,tcp * netbios_ns-netbios_ssn
ip filter 1014 reject * * udp,tcp 445 *
ip filter 1015 reject * * udp,tcp * 445
ip filter 3000 pass * * * * *
設定や表示の対象となる相手先情報番号を選択する。
解除 no pp select コマンドはpp select none コマンドと同じ動作をする。
PP インタフェースでのキープアライブパケットの送信間隔と、回線断と判定するまでの再送回数および時間を設定する。
選択されている相手について常時接続するか否かを設定する。
選択されている相手について、[PPP,IPCP]の MS 拡張オプションを使うか否かを設定する。
IPCP の Microsoft 拡張オプションを使うように設定すると、DNS サーバーの IP アドレスと WINS(Windows Internet Name Service) サーバーの IP アドレスを、接続した相手である Windows マシンに渡すことができる。渡すための DNS サーバーや WINS サーバーの IP アドレスはそれぞれ、dns server コマンドおよびwins server コマンドで設定する。
off の場合は、DNS サーバーや WINS サーバーのアドレスを渡されても受け取らない。
選択されている相手について[PPP,CCP]圧縮方式を選択する。
ppに対するフィルタ
入力方向フィルタ
ip pp secure filter in 1020 1030 1031 1032 1033 1034 1035 2000 dynamic 201 202 203 204
ip filter 1020 reject IPアドレス * * * *
ip filter 1030 pass * * icmp * *
ip filter 1031 pass * IPアドレス tcpflag=0x0002/0x0017 * www
ip filter 1032 pass * IPアドレス tcpflag=0x0002/0x0017 * smtp
ip filter 1033 pass * IPアドレス tcp * port_num
ip filter 1034 pass * IPアドレス udp,tcp * domain
ip filter 1035 pass * IPアドレス tcpflag=0x0002/0x0017 * https
ip filter 2000 reject * *
1020 特定のIPアドレスに向けては全て拒否
1030 ping 応答は許可
1031 特定のIPアドレス wwwアクセス許可
tcpflag=0x0002/0x0017
tcpflag=flag_value/flag_mask、または tcpflag!=flag_value/flag_mask
0x0002 SYN
tcpflagの部分は、TCPのパケットのうちSYNフラグだけが立っているパケットを表します。このフィルターによって、コネクションの最初のパケットだけを通すことができます。
ファイアウォール機能
wwwサーバーを公開するためのフィルター。まず、トリガーのコネクションの最初のパケットを通すためのtcpflag
ip filter 1031 pass * IPアドレス tcpflag=0x0002/0x0017 * www
domain などの表記はニーモニックを表す YAMAHA mnemonic table 参照
動的フィルターを定義する。第 1 書式では、あらかじめルーターに登録されているアプリケーション名を指定する。
動的フィルターの定義
第 2 書式では、ユーザーがアクセス制御のルールを記述する。キーワードの filter、in、out の後には、ip filter コマンドで定義されたフィルター番号を設定する。
ip filter dynamic 201 * IPアドレス www
ip filter dynamic 202 * IPアドレス smtp
ip filter dynamic 203 * IPアドレス domain
ip filter dynamic 204 * IPアドレス https
静的フィルタは通信の通過、拒否を判断する。こちらの方が慣れ親しんでます。開けっ放しって感じですね。動的フィルタは指定した種類の通信があるときのみポートをあけ、通信が完了するとポートを閉じる動的なフィルタをいいます。
動的なフィルターでは通信の状態に応じてドアが開閉します。具体的には、通信が始まったらドアを開け、通信が終了したらドアを閉じます。通信がないときにはドアは閉まり、必要のない限りはドアが開くことはありません。
ファイアウォール機能
静的フィルタで、tcpflag=0x0002/0x0017 synだけ通す意味は以下記載
動的なフィルターでは、コネクションの最初のパケットがドアを開く契機になります。一度ドアが開くと、そのコネクションに属する往きと戻りのパケットが両方とも通過するようになります。静的なフィルターでは、往きと戻りのそれぞれの方向についてフィルターを設定する必要がありますが、動的なフィルターでは、往きの方向のフィルターだけを書けば、戻りのパケットも自動的に通るようになります。
動的なフィルターは、静的なフィルターよりも優先して動作します。すなわち、特定のコネクションに対応するドアが開いた後は、そのコネクションを静的なフィルターで制御することはできません。逆にいえば、コネクションの最初のパケットだけは、静的なフィルターで制御できます。
ファイアウォール機能
NATやIPマスカレードの典型的な用途は、プライベートアドレスを隠すことです。端末にはプライベートアドレスを割り当てますが、プライベートアドレスを使ってインターネットと通信することはできないので、端末の送信するパケットに含まれるプライベートアドレスをグローバルアドレスに書き換えます
nat descriptor
基本的に内側のアドレスから、外側のアドレスに向けてIPマスカレードする。
内側IP| -> |外側IP|としてアクセス
多くのケースでは、NATやIPマスカレードの外側をインターフェースの外側にする方が分かりやすい設定になりますが、ネットワークの構成によっては逆にせざるをえないこともあります。ヤマハルーターでは前者を「順方向」、後者を「逆方向」と呼びます。
順方向のIPマスカレード
nat descriptor log off
nat descriptor type 1100 masquerade
nat descriptor address outer 1100 グローバルIPアドレス
nat descriptor masquerade static 1100 1 IPアドレス tcp port_num
nat descriptor masquerade static 1100 2 IPアドレス tcp www
nat descriptor masquerade static 1100 3 IPアドレス tcp smtp
nat descriptor masquerade static 1100 4 IPアドレス tcp domain
nat descriptor masquerade static 1100 5 IPアドレス udp domain
nat descriptor masquerade static 1100 6 IPアドレス tcp https
変換の方式
masquerade
静的IP Masqueradeとは、IP Maqueradeの変換テーブルを事前に(固定的に )登録しておくことで、従来IP Masqueradeではプライベート側からしか セッションを始められなかったのをグローバル側からも可能にするものです。
NATディスクリプターを定義するときには必ず外側アドレスを設定する必要があります。コマンドとしては、nat descriptor address outerコマンドを使い、アドレスやアドレスの範囲を設定します。
NATディスクリプター
静的IPマスカレードのバインドを設定するためには、nat descriptor masquerade staticコマンドを使います。
NATディスクリプター