以下はCiscoのルータ(うちのはちょっと古い2500シリーズ)の設定法です。 同じ型番のルータでも,ソフト(IOS)のバージョンが違うと, うまく使えないコマンドがあるようです。
まずルータにログインします。 パスワードを要求されたら,しかるべきパスワードを入れます。すると,
router>のようなプロンプトが出ますので,ここにいろいろ命令を入れます。 ヘルプは
? です。
実際に設定を見たり変えたりするには,特権モードに入らなければなりません。 そのための命令は en (enable) です。 つまり,本当は enable ですが,en だけでもかまいません。
en すると,またパスワードを聞いてきます。
これは特権モード用のパスワードです。
特権モードのプロンプトは router# のようになります。
まずは,どのような設定になっているか見てみましょう。
そのための命令は wr t (write terminal) です。
これは記録しておくといいでしょう。
! で始まる行はコメントです。
設定を変えてみましょう。そのためには conf t (configure terminal) と打ち込みます。すると,
Enter configuration commands, one per line. End with CNTL/Z.と言ってきて,プロンプトが
router(config)# に変わります。
この段階で設定できるのはルータ全体についてのものです。たとえば
特定のポートについての設定は,conf t した状態で, Ethernet0(LAN 側)についてなら int e 0 (interface ethernet0), Serial0(専用回線側)についてなら int s 0 (interface serial0) のように入れます。プロンプトがまた少し変わります。
以下は設定の例です。
router>en Password:cisco router#conf t Enter configuration commands, one per line. End with CNTL/Z. router(config)#enable password hogehoge router(config)#no ip domain-lookup router(config)#int e 0 router(config-if)#ip address 192.244.75.8 255.255.255.0 router(config-if)#ex router(config)#int s 0 router(config-if)#ip address 192.50.68.6 255.255.255.252 router(config-if)#ex router(config)#line vty 0 4 router(config-line)#password boofoowoo router(config-line)#login router(config-line)#ex router(config)#ex router#wr router#exline vty 0 4 からの数行は, 仮想端末 vty(要するに telnet の口)についての設定です。 これは,vty 0,vty 1,vty 2,vty 3,vty 4 について, パスワードを boofoowoo にしてログインを許可するという意味です。 最後の wr でこの設定を不揮発性メモリに書き込みます。 不揮発性メモリに書き込まなくてもすぐに設定は効果を発揮しますので, テストのためしばらく使っておかしくなかったら wr すればいいでしょう。
ルータでは, 各インターフェース(専用回線側,イーサネット側)について, 出・入の各方向について, パケットの種類(TCP,UDP,ICMP), 出発点・到達点のIPアドレス(の範囲), ポート(の範囲)などを指定して,アクセス制御をかけることができます。 この機能をちゃんと理解して使えば, ルータだけで基本的なファイアウォールを構築することができます。
一方,本格的なファイアウォールソフトや, ファイアウォール専用マシンでは,単なるアクセス制御だけでなく, ログ機能・暗号化機能・アドレス変換機能・プロキシ機能などが付いています。 特に暗号化機能は,企業の各支店などで同じソフトを使えば, インターネットをあたかもイントラネットのように安全に使えるというので, 最近はエクストラネットなどと呼んで持てはやされています。
大学等では, ルータでできるような基本的なアクセス制御だけで十分だと思います。 それ以上のことをすれば,使いにくくなるだけですから。 ただ,インターネットの渋滞緩和のためという別な理由で, プロキシ経由でないと外に出られないようなアクセス制御をかけることは, 特に学生用のマシンについては必要なことだと思います。
最低限,ルータにTelnetでログインできるのは 192.244.75.* の中からだけに制限する必要があります。そのためのアクセスリストは
access-list 12 permit 192.244.75.0 0.0.0.255のように書きます(12 はアクセスリストの番号で,他の値でもかまいません)。 実際にこれを設定するには次のように打ち込みます。
router>en Password:hogehoge router#conf t Enter configuration commands, one per line. End with CNTL/Z. router(config)#access-list 12 permit 192.244.75.0 0.0.0.255 router(config)#line vty 0 4 router(config-line)#access-class 12 in router(config-line)#ex router(config)#ex router#wr router#ex
アクセスリストを設定したなら,permit で明示的に許可された場合以外は, すべて deny(拒否)扱いになります。
次は一般のアクセス制御です。アクセスリスト番号が100番超の場合は, パケットの種類やポート番号も指定することができます。 たとえば以下の例をご覧ください。
access-list 101 deny ip 127.0.0.0 0.255.255.255 0.0.0.0 255.255.255.255 access-list 101 deny ip 192.244.75.0 0.0.0.255 0.0.0.0 255.255.255.255 access-list 101 permit icmp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255 access-list 101 permit tcp 0.0.0.0 255.255.255.255 192.244.75.1 0.0.0.0 eq 25 access-list 101 permit tcp 0.0.0.0 255.255.255.255 192.244.75.1 0.0.0.0 eq 80 access-list 101 permit tcp 0.0.0.0 255.255.255.255 192.244.75.0 0.0.0.255 gt 1023 access-list 101 permit udp 0.0.0.0 255.255.255.255 192.244.75.0 0.0.0.255 gt 1023
このアクセスリストを内向きに設定すれば,
なお,頭の2行は,127.0.0.1(ループバック)や 192.244.75.* という内側にしかない番号が外からやってくるのを禁止します。 これは IP spoofing といって, 外から内部者のような顔をして入ってくる悪者を切るための手段です。
実際にこれを設定するには次のように打ち込みます (頭の no access-list 101 は, すでに設定してあるものを消すという意味です)。
router>en Password:hogehoge router#conf t Enter configuration commands, one per line. End with CNTL/Z. router(config)#no access-list 101 router(config)#access-list 101 deny ip 127.0.0.0 0.255.255.255 0.0.0.0 255.255.255.255 router(config)#access-list 101 deny ip 192.244.75.0 0.0.0.255 0.0.0.0 255.255.255.255 router(config)#…… router(config)#int e 0 router(config-if)#ip access-group 101 out router(config-if)#ex router(config)#ex router#wr router#ex
MRTG を使えば簡単です。 そのためには SNMP をオンにしておかなければなりません。 最も簡単な設定は次の通りです。
router>en Password:hogehoge router#conf t Enter configuration commands, one per line. End with CNTL/Z. router(config)#snmp-server community public RO
★(追記)snmp のテストには UCD-SNMP パッケージが便利です。
インチキマルチホームとかいろいろするようになったので, インターネットへのデフォールトの経路にあるルータにちょっとトリックをしておきました。 デフォールトの経路をスタティックに与えてから, ルータがイーサネット側(内側)に rip を流さないという passive-interface ethernet 0 と, ルータ自身が rip を無視するという distance 255 を設定したわけです。 192.50.68.5 は専用線の向こう側にあるルータのこちら側です。
router>en Password:hogehoge router#conf t Enter configuration commands, one per line. End with CNTL/Z. router(config)#ip route 0.0.0.0 0.0.0.0 192.50.68.5 router(config)#router rip router(config-router)#passive-interface ethernet 0 router(config-router)#distance 255 router(config-router)#ex
次のファイルはほぼ現時点におけるうちのルータの設定例です (特権モードで wr t として表示されるものです)。 部分的に伏せ字があります。 おかしなところがあったら教えてください。
Cisco 以外(順不同,抜けあり)
IMnet接続用ルータの選定にあたって (1996年) には実績あるルータとして Cisco,Bay Networks,YAMAHA が挙げられていました。
リンクはご自由にどうぞ。
松阪大学 奥村晴彦 okumura@matsusaka-u.ac.jp
Last modified: Tue Mar 28 09:48:36 JST 2000