ルーター設定方法(YAMAHA RTX)パケットフィルター編
基本操作
ルーターへの接続は「TELNET」を利用します。
「TELNET」はWindows標準のものが利用できます。
ログインのユーザーモードは2段階になっています。
最初のログインは、一般ユーザーとしてのログインになります。
ルーターへログイン後、「administrator」としてもう一度ログインします。
一般ユーザーで利用できるコマンドは、内容を表示するコマンドだけです。
ルーターの設定変更は、「administrator」モードでなければできません。
設定の流れ
- ルーターへログイン
- Administratorでログイン
- コマンド入力
- save
- quit
- quit
設定手順
WindowsXPの場合の名称で説明します。
例として
ルーターのIPアドレス 「192.168.0.254」
ルーターのログインパスワード 「passwd」
ルーターのAdministratorのパスワード 「adminpasswd」
の場合で説明します。
「コマンドプロンプト」を起動。
下記コマンドを入力します。
telnet 192.168.0.254 ← 「telnet」に続いてスペース、ルーターのIPアドレスを入力し[ENTER]。 Password: passwd ← パスワードを求める表示がでます。ログインパスワードを入力し[ENTER]。 ※入力した文字は画面に何も表示されません。 xxxx> administrator ← ログイン後プロンプトが表示されます。「xxxx」は環境により表示は異なります。 「Administraotr」と入力し[ENTER]。 Password: adminpasswd ← パスワードを求める表示がでます。Administratorのパスワードを入力し[ENTER]。 ※入力した文字は画面に何も表示されません。 xxxx# ← プロンプトが表示されます。プロンプトのマークが「>」から「#」に変わります。
コマンドの入力を行います。
コマンドの入力が終わったら設定を保存します。
xxxx# save ← 設定保存のコマンド
ルーターからログアウトします。
xxxx# quit ← 「administrator」モードから抜けだし一般ユーザーのモードに戻ります。 xxxx> quit ← ルーターからログアウトします。
以上がルーターの基本的な設定手順です。
パケットフィルター(静的フィルター)
基本的な考え方
- パケットフィルターの適用対象は、各インターフェースの「in」と「out」それぞれに適用可能です。インターフェースとは、[LAN1]、[LAN2]、[pp1]、[pp2]、[tunnel1]、[tunnel2]等の事です。[LAN1]、[LAN2]... ← 物理的なLANポート
[pp1]、[pp2]... ← インターネット接続等で利用する、仮想的なポートです。
[tunnel1]、[tunnel2]... ← VPNで利用するトンネルの仮想的なポートです。イメージ的には、[LAN]の中に[pp]があり、[pp]の中に[tunnel]があるといった感じです。
- パケットフィルターの基本概念パケットフィルターとは、条件によりパケットを通過させる、させないを決めるものです。
<条件>
条件指定できるものは下記になります。・送信元IPアドレス
・送信先IPアドレス
・プロトコル
・送信元ポート
・送信先ポート上記条件の組み合わせでフィルタリング設定を行います。
フィルター適用パターン
- フィルターは設定順に適用されます。
- フィルターが何も適用されていない場合はすべてのパケットが通過します。
- フィルターを1行でも適用されている場合、フィルターの設定順で照らしあわせて、合致したらそのフィルターを適用します。
- 全てのフィルターに合致しないパケットは破棄されます。※重要
記述方法
フィルタリングルールを記述し、記述したフィルタリングルールをインターフェースに適用する記述をします。
- フィルタリングルールの記述
【書式】
ip filter <フィルター番号> <処理内容> <送信元IPアドレス> <送信先IPアドレス> <プロトコル> <送信元ポート> <送信先ポート>
<フィルター番号>: 自由につけられます。
<処理内容>: reject(破棄)、pass(通過)、pass-log(通過ログあり)
<送信元IPアドレス><送信先IPアドレス>: ネットワークアドレス、ホストアドレス等の指定
<プロトコル>: tcp、udp、esp、gre 等
<送信元ポート><送信先ポート>:1~65535
・主なポート
135 (RPC) ※リモートプロシージャーコール。以前ウイルスでよく利用されたポート 137-139 (netbios) ※Windows98/Meで利用される共有 445 (smb) ※Windows2000/XPで利用される共有 80 (http) ※WEBサーバー 443 (https) ※SSL 25 (smtp) ※送信メールサーバー 110 (pop3) ※受信メールサーバー 21 (ftp) ※FTPサーバー 20 (ftp-data) ※FTPデータ転送用 23 (telnet) ※TELNET 22 (ssh) ※SSH 53 (DNS) ※DNSサーバー 500 (IPSec) ※VPNのIPSecカプセルで利用されるUDPのポート 1723 (PPTP) ※VPNのPPTPカプセルで利用されるTCPのポート
フィルタリング設定で記述するのはほとんどの場合上記のような決まったポート番号です。
例)ip filter 1001 reject * 192.168.0.0/24 tcp * 135
上記例では、送信先IPアドレスが「192.168.0.0/24」、プロトコルが「tcp」、宛先ポートが「135」のパケットを破棄します。
「*」は全てを意味します。複数指定したい場合は「,」で区切り列挙するか、[-]で範囲指定します。
例)ip filter 1002 * 192.168.0.0/24 tcp,udp * 137-139
- フィルタリング適用の記述
【書式】
ip <適用インターフェース> secure filter <適用方向> <フィルター番号> <フィルター番号> <フィルター番号> ... 例)ip pp secure filter in 1001 1002 1003 1004 1999
上記例は[pp]インターフェースに適用方向が[in]、フィルターNO 1001 1002 1003 1004 1999 を適用する設定です。
設定例
インターネット接続に必要な最低限のフィルタリング設定です。
下記環境の場合で説明します。
ローカルネットワークが「192.168.0.0/24」
ルーターのIPアドレスが「192.168.0.254」
ルーターのインターネット側IPアドレスが「172.20.0.1」
ルーターのログインパスワードが「passwd」
ルーターのAdministratorのパスワードが「adminpasswd」
- ルーターへログインしAdministratorとしてログインします。
コマンドプロンプトを起動しtelnet 192.168.0.254 ← 「telnet」に続いてスペース、ルーターのIPアドレスを入力し[ENTER] Password: passwd ← パスワードを求める表示がでます。ログインパスワードを入力し[ENTER]。 ※入力した文字は画面に何も表示されません。 xxxx> administrator ← ログイン後プロンプトが表示されます。「xxxx」は環境により表示は異なります。 「Administraotr」と入力して[ENTER]。 Password: adminpasswd ← パスワードを求める表示がでます。Administratorのパスワードを入力し[ENTER]。 ※入力した文字は画面に何も表示されません。 xxxx# ← プロンプトが表示されます。プロンプトのマークが「>」から「#」に変わります。
- フィルタリングルールを入力します。 一行づつ入力し[ENTER]を押します。
xxxx# ip filter 1000 reject 10.0.0.0/8 * * * * xxxx# ip filter 1001 reject 172.16.0.0/12 * * * * xxxx# ip filter 1002 reject 192.168.0.0/16 * * * * xxxx# ip filter 1003 reject 192.168.0.0/24 * * * * ← ローカルネットワークアドレスを指定 xxxx# ip filter 1010 reject * 10.0.0.0/8 * * * xxxx# ip filter 1011 reject * 172.16.0.0/12 * * * xxxx# ip filter 1012 reject * 192.168.0.0/16 * * * xxxx# ip filter 1013 reject * 192.168.0.0/24 * * * ← ローカルネットワークアドレスを指定 xxxx# ip filter 1020 reject * * udp,tcp 135 * xxxx# ip filter 1021 reject * * udp,tcp * 135 xxxx# ip filter 1022 reject * * udp,tcp netbios_ns-netbios_ssn * xxxx# ip filter 1023 reject * * udp,tcp * netbios_ns-netbios_ssn xxxx# ip filter 1024 reject * * udp,tcp 445 * xxxx# ip filter 1025 reject * * udp,tcp * 445 xxxx# ip filter 1030 pass * * ah,esp xxxx# ip filter 1031 pass * * udp 500 * xxxx# ip filter 1032 pass * * udp * 500 xxxx# ip filter 1099 pass-log * 172.20.0.1 udp domain domain xxxx# ip filter 1199 pass * 192.168.0.0/24 * * * ← ローカルネットワークアドレスを指定 xxxx# ip filter 1999 pass * * * *
- フィルタリングルールを[pp]インターフェースに適用します。
ppインターフェースの番号選択xxxx# pp select 1 ← [pp]インターフェースが複数ある場合は該当する番号を入力。
[pp1]インターフェースの[in]にフィルタリング適用
xxxxpp1# ip pp secure filter in 1000 1001 1002 1003 1020 1021 1022 1023 1024 1025 1030 1031 1032 1099 1199
[pp1]インターフェースの[out]にフィルタリング適用
xxxxpp1# ip pp secure filter out 1010 1011 1012 1013 1020 1021 1022 1023 1024 1025 1999
- 不正パケット検知機能をONにしパケットを破棄する。
xxxxpp1# ip pp intrusion detection in on reject=on
- フィルタリングが適用されたパケットのログを残す設定に変更。
※[pass]のフィルターの場合は[pass-log]と記述されているものだけがlogに残る。xxxxpp1# syslog notice on
- 設定内容を保存します。
xxxxpp1# save
- ルーターからログアウトします。
xxxxpp1# quit xxxxpp1> quit
設定例の詳細説明
[in]用 インターネット側からのパケットを制限
送信元がプライベートアドレスからのパケットを破棄する。
xxxx# ip filter 1000 reject 10.0.0.0/8 * * * * ① xxxx# ip filter 1001 reject 172.16.0.0/12 * * * * ② xxxx# ip filter 1002 reject 192.168.0.0/16 * * * * ③ xxxx# ip filter 1003 reject 192.168.0.0/24 * * * * ④
① クラスAのプライベートアドレスからのパケットを破棄
② クラスBのプライベートアドレスからのパケットを破棄
③ クラスCのプライベートアドレスからのパケットを破棄
④ 自ローカルネットワークアドレスからのパケットを破棄 ※あり得ないパケット
[out]用 インターネット側へのパケットを制限
送信先がプライベートアドレスからのパケットを破棄する。
xxxx# ip filter 1010 reject * 10.0.0.0/8 * * * ① xxxx# ip filter 1011 reject * 172.16.0.0/12 * * * ② xxxx# ip filter 1012 reject * 192.168.0.0/16 * * * ③ xxxx# ip filter 1013 reject * 192.168.0.0/24 * * * ④
① クラスAのプライベートアドレス宛のパケットを破棄
② クラスBのプライベートアドレス宛のパケットを破棄
③ クラスCのプライベートアドレス宛のパケットを破棄
④ 自ローカルネットワークアドレス宛のパケットを破棄 ※あり得ないパケット
[in]用 インターネット側からのパケットを制限
RPCを利用するインターネット側からのパケットを破棄する。(ウイルス対策)
[out]用 インターネット側へのパケットを制限
RPCを利用するインターネット側へのパケットを破棄する。(ウイルス対策)
xxxx# ip filter 1020 reject * * udp,tcp 135 * ① xxxx# ip filter 1021 reject * * udp,tcp * 135 ②
① プロトコル[udp][tcp]、送信元ポート[135]のパケットを破棄
② プロトコル[udp][tcp]、送信先ポート[135]のパケットを破棄
[in]用 インターネット側からのパケットを制限
Windows98/Meの共有資源を利用するインターネット側からのパケットを破棄する。
[out]用 インターネット側へのパケットを制限
Windows98/Meの共有資源を利用するインターネット側へのパケットを破棄する。
xxxx# ip filter 1022 reject * * udp,tcp netbios_ns-netbios_ssn * ① xxxx# ip filter 1023 reject * * udp,tcp * netbios_ns-netbios_ssn ②
① プロトコル[udp][tcp]、送信元ポート[137]-[139]のパケットを破棄
② プロトコル[udp][tcp]、送信先ポート[137]-[139]のパケットを破棄
[in]用 インターネット側からのパケットを制限
Windows2000/XPの共有資源を利用するインターネット側からのパケットを破棄する。
[out]用 インターネット側へのパケットを制限
Windows2000/XPの共有資源を利用するインターネット側へのパケットを破棄する。
xxxx# ip filter 1024 reject * * udp,tcp 445 * ① xxxx# ip filter 1025 reject * * udp,tcp * 445 ②
① プロトコル[udp][tcp]、送信元ポート[445]のパケットを破棄
② プロトコル[udp][tcp]、送信先ポート[445]のパケットを破棄
[in]用 インターネット側からのパケットを許可
インターネット側からのVPN(IPSec)のパケットを通す。
xxxx# ip filter 1030 pass * * ah,esp ① xxxx# ip filter 1031 pass * * udp 500 * ② xxxx# ip filter 1032 pass * * udp * 500 ③
① プロトコル[ah][esp]のパケットを通す
② プロトコル[udp]、送信元ポート[500]のパケットを通す
③ プロトコル[udp]、送信先ポート[500]のパケットを通す
[in]用 インターネット側からのパケットを許可
インターネット側DNSへの問い合わせの返答パケットを通す。
※当方の環境ではルーターの外部DNSサーバーへのリレーの機能が下記フィルターを入れないと利用できなかった為に追加。
xxxx# ip filter 1099 pass-log * 172.20.0.1 udp domain domain ①
① 送信先がルーターのインターネット側アドレスのパケットは通す
[in]用 インターネット側からのパケットを許可
インターネット側からローカルネットワークアドレス宛のパケットを通す
xxxx# ip filter 1199 pass * 192.168.0.0/24 * * * ①
① 送信先がローカルネットワークアドレスのパケットは通す
[out]用 インターネット側へのパケットを許可
インターネット側へのパケットを通す
xxxx# ip filter 1999 pass * * * * ①
① 全てのパケットを通す
注意)
フィルタリングの適用順にパケットがフィルターされますので、合致しなかったパケットは次のフィルターで照合されて合致しなかったらまた次のフィルターへと進んでいきます。どれにも合致せずに最後まで到達したパケットは破棄されます。その為、最後にパケットを通過させるフィルターを入れる必要がでてきます。
[pp]インターフェース番号1を選択します。
xxxx# pp select 1
インターネット側からのパケットをフィルタリングします。
xxxxpp1# ip pp secure filter in 1000 1001 1002 1003 1020 1021 1022 1023 1024 1025 1030 1031 1032 1099 1199
[pp]インターフェースに適用方向が[in]でフィルター番号順にパケットフィルターを適用します。
インターネット向けのパケットをフィルタリングします。
xxxxpp1# ip pp secure filter out 1010 1011 1012 1013 1020 1021 1022 1023 1024 1025 1999
[pp]インターフェースに適用方向が[out]でフィルター番号順にパケットフィルターを適用します。
不正パケット検知機能をONにしパケットを破棄する。
xxxxpp1# ip pp intrusion detection in on reject=on
フィルタリングが適用されたパケットのログを残す設定に変更。
※[pass]のフィルターの場合は[pass-log]と記述されているものだけがlogに残る。
xxxxpp1# syslog notice on
設定内容を保存します。
xxxxpp1# save
administratorからログアウトします。
xxxxpp1# quit
ルーターからログアウトします。
xxxxpp1> quit
動的フィルター
静的フィルターを補完する形で適用します。
動的フィルターの基本的な考えは、通信が開始されたら扉を開き、その返答パケットは通して通信が完了したら扉を閉鎖します。
ちょっと言葉の使い方が適当でないかもしれませんが、イメージ的には上記のような感じです。
すこし内容がややこしいので今回は説明は致しません。詳しくはYAMAHAのNetvolanteサイトにて確認してください。