アライド製のルータAR415SをIP8個用のルータとして最低設定を行う。
WANのIP:61.115.252.55/22 GW:61.115.255.254
LANのIP:61.122.218.214/29
WANからアクセス可ポート
TCP 22,25,53,80,443
UDP 37,53
ICMP
設定シリアルケーブルを使用。
マニュアルWeb上にある。
接続
INFO: Self tests beginning. INFO: RAM test beginning. PASS: RAM test, 32768k bytes found. INFO: Self tests complete. INFO: Downloading router software. Force EPROM download (Y) ? INFO: Initial download successful. INFO: Initialising Flash File System. INFO: Executing configuration script <flash:test01.cfg> INFO: Router startup complete login: manager Password: ***** <==defalt:friend
パスワード変更
Manager > set password Old password: ****** New password: ****** Confirm: *****
時刻の確認
Manager > show time System time is 08:55:12 on Wednesday 25-Jul-2007.
IPの設定
Manager > ENABLE IP Info (1005287): IP module has been enabled. Manager > ADD IP INT=ETH0 IP=61.115.252.55 MASK=255.255.252.0 Info (1005275): interface successfully added. Manager > ADD IP INT=VLAN1 IP=61.122.218.214 MASK=255.255.255.248 Manager > ADD IP ROUTE=0.0.0.0 MASK=0.0.0.0 INT=ETH0 NEXTHOP=61.115.255.254 Info (1005275): IP route successfully added.
デフォルトルートの削除
デフォルトルートは上書きではなく追加なので一度削除する。
del ip rou=0.0.0.0 mask=0.0.0.0 int=eth0 next=10.3.4.58
インターフェイスIPの表示
Manager > show ip int Interface Type IP Address Bc Fr PArp Filt RIP Met. SAMode IPSc Pri. Filt Pol.Filt Network Mask MTU VJC GRE OSPF Met. DBcast Mul. VLAN Tag VLAN Priority InvArp -------------------------------------------------------------------------------- LOCAL --- Not set - - - --- -- Pass -- --- --- Not set 1500 - --- -- --- --- none none - vlan1 Static 61.122.218.214 1 n On --- 01 Pass No --- --- 255.255.255.248 1500 - --- 0000000001 No Rec none none - eth0 Static 61.115.252.55 1 n On --- 01 Pass No --- --- 255.255.252.0 1500 - --- 0000000001 No Rec none none - --------------------------------------------------------------------------------
ファイルの保存
Manager > create config=dc01.cfg Info (1034003): Operation successful.
ファイルの確認
Manager > show file Filename Device Size Created Locks ----------------------------------------------------------------------------- 54281-04.rez flash 4857208 24-Mar-2007 19:48:21 0 feature.lic flash 39 24-Mar-2007 19:49:20 0 help.hlp flash 75892 24-Mar-2007 19:49:17 0 longname.lfn flash 17 15-Jun-2007 16:01:08 0 prefer.ins flash 64 24-Mar-2007 19:48:54 0 release.lic flash 32 24-Mar-2007 19:48:53 0 dc01.cfg flash 2464 25-Jul-2007 09:04:00 0 -----------------------------------------------------------------------------
ファイル内容の表示
Manager > show file=dc01.cfg File : dc01.cfg 1: 2:# Command Handler configuration 3: 4:# System configuration 5: 6:# TIMEZONE configuration 7: 8:# Flash memory configuration 9: 10:# LOADER configuration 11: 12:# User configuration 13:set user=manager pass=a6d7b66b15077f4***********719b8dff priv=manager lo=yes 14:set user=manager telnet=yes desc="Manager Account" 15: 16:# TTY configuration 17: 18:# ASYN configuration --More-- (<space> = next page, <CR> = one line, C = continuous, Q = quit)19:
起動時のConfigファイルの指定
設定した内容は.cfgがつくファイル名で保存して起動時に読み出すように設定する必要がある。
Manager > set config=dc01.cfg Info (1049003): Operation successful.
起動のConfigファイルの表示
Manager > show config Boot configuration file: flash:dc01.cfg (exists) Current configuration: None
フィルタの指定
ADD IP FILT=1 SO=0.0.0.0 SMA=0.0.0.0 DEST=61.122.218.208 DMA=255.255.255.248 AC=INCLUDE ENTRY=1 PROTO=TCP DPORT=22 ADD IP FILT=1 SO=0.0.0.0 SMA=0.0.0.0 DEST=61.122.218.208 DMA=255.255.255.248 AC=INCLUDE ENTRY=2 PROTO=TCP DPORT=25 ADD IP FILT=1 SO=0.0.0.0 SMA=0.0.0.0 DEST=61.122.218.208 DMA=255.255.255.248 AC=INCLUDE ENTRY=3 PROTO=TCP DPORT=53 ADD IP FILT=1 SO=0.0.0.0 SMA=0.0.0.0 DEST=61.122.218.208 DMA=255.255.255.248 AC=INCLUDE ENTRY=4 PROTO=TCP DPORT=80 ADD IP FILT=1 SO=0.0.0.0 SMA=0.0.0.0 DEST=61.122.218.208 DMA=255.255.255.248 AC=INCLUDE ENTRY=5 PROTO=TCP DPORT=443 #上記のままだとLANから接続したパケットの戻りを許可できないので、それを許可 ADD IP FILT=1 TY=TRAFFIC SO=0.0.0.0 SMA=0.0.0.0 DEST=61.122.218.208 DMA=255.255.255.248 AC=INCLUDE ENTRY=6 PROTO=TCP SESSION=ESTABLISHED ADD IP FILT=1 SO=0.0.0.0 SMA=0.0.0.0 DEST=61.122.218.208 DMA=255.255.255.248 AC=INCLUDE ENTRY=11 PROTO=UDP DPORT=53 #UDPはSESSIONという考え方がないので、ソースポートで許可 ADD IP FILT=1 SO=0.0.0.0 SMA=0.0.0.0 DEST=61.122.218.208 DMA=255.255.255.248 AC=INCLUDE ENTRY=12 PROTO=UDP SPORT=37 ADD IP FILT=1 SO=0.0.0.0 SMA=0.0.0.0 DEST=61.122.218.208 DMA=255.255.255.248 AC=INCLUDE ENTRY=13 PROTO=UDP SPORT=53 ADD IP FILT=1 SO=0.0.0.0 SMA=0.0.0.0 DEST=61.122.218.208 DMA=255.255.255.248 AC=INCLUDE ENTRY=99 PROTO=ICMP SET IP INT=ETH0 FILTER=1
フィルタの確認
Manager > show ip filter IP Filters -------------------------------------------------------------------------------- No. Filter Type Ent. Source Port Source Address Source Mask Session Size Dest. Port Dest. Address Dest. Mask Prot.(T/C) Options Pattern Type Act/Pol/Pri Logging Matches -------------------------------------------------------------------------------- 1 Traffic 1 Any Any Any Any Any 22:22 192.168.200.0 255.255.255.0 TCP Any General Include Off 0 2 --- Any Any --- Any --- 192.168.200.0 255.255.255.0 ICMP(**/**) Any General Include Off 0 Requests: 0 Passes: 0 Fails: 0 --------------------------------------------------------------------------------
フィルタの削除(エントリー)
Manager > del ip filt=1 entry=2
フィルタの削除(フィルター番号)
フィルタ番号は複数同一インターフェイスに設定できないので現行のフィルタを以下のコマンドで削除。
Manager > SET IP INT=ETH0 FILTER=NONE
フィルタ内容の変更
SET IP FILT=1 ENTRY=4 PROTO=TCP DPORT=443
一度「SET IP INT=ETH0 FILTER=1」してると変更時は特に必要ない。
HTTPポートについて HTTPポートはサポートしていないにも関わらず、アクセスするとパスワード認証の画面が表示されるので、それを表示しないようにする
DISABLE HTTP SERVER
IPフィルタでは内部からのパケットの戻りや、UDPの接続に気をつかわないといけないが、ファイアウォールではその点は考える必要がなくなる
・ファイアウォールの有効
enable firewall
・ファイアウォールポリシー「net」を作成(ポリシー名は任意)
create firewall policy="net"
・各IPインターフェイスの属性を定義(Private/Public)
add firewall policy="net" int=vlan1 type=private add firewall policy="net" int=eth0 type=public
・インターフェイス間でのICMP転送は許可
enable firewall policy="net" icmp_f=all
・ident、tcp代理応答を無効化
disable firewall policy="net" identproxy disable firewall policy="net" tcpsetupproxy
以上がファイアウォールの基本設定で、ここまでの設定によって
Private->Public への通信は全て許可、Publi->Privateへの通信は
全て遮断する動作となる。
この基本動作と異なる条件を付与する場合、ファイアウォールルールを追加。
・WAN -> LAN方向への 61.122.218.208/29 TCP 22 宛通信を許可するルール1を作成
add firewall policy="net" rule=1 ac=allow int=eth0 prot=tcp po=22 ip=61.122.218.208-61.122.218.215
・WAN -> LAN方向への 61.122.218.208/29 UDP 53 宛通信を許可するルール2を作成
add firewall policy="net" rule=2 ac=allow int=eth0 prot=udp po=53 ip=61.122.218.208-61.122.218.215
・pptpパススルー
ファームのバージョンが2.9.1-05以降は1行それ以前は2行必要。
確認は # show system
2.9.1-05以降
add firewall policy="net" rule=3 ac=allow int=eth0 prot=tcp po=pptp ip=61.122.218.208-61.122.218.215
2.9.1-05より前
add firewall policy="net" rule=3 ac=allow int=eth0 prot=tcp po=1723 ip=61.122.218.208-61.122.218.215 add firewall policy="net" rule=4 ac=allow int=eth0 prot=47 ip=61.122.218.208-61.122.218.215
注)2.9.1-05より前ではpptpのポートは番号1723で指定しGREプロトコルは番号で47で指定する必要がある。ポート名やプロトコル番号は不可また、GREはポート番号はない。
現在の設定の確認
Manager > show config dynamic # Command Handler configuration # System configuration # TIMEZONE configuration # Flash memory configuration # LOADER configuration # User configuration set user=manager pass=************************** priv=manager lo=yes set user=manager telnet=yes desc="Manager Account" # TTY configuration (略) # GRE configuration # IP configuration enable ip add ip int=vlan1 ip=xxx.xxx.xxx.214 mask=255.255.255.248 add ip int=eth0 ip=xxx.xxx.252.55 mask=255.255.252.0 add ip rou=0.0.0.0 mask=0.0.0.0 int=eth0 next=xxx.xxx.xxx.254 # IPv6 configuration # SWITCH (post-IP) configuration (略) # Firewall configuration enable firewall create firewall policy="net" disable firewall policy="net" identproxy enable firewall policy="net" icmp_f=all disable firewall policy="net" tcpsetupproxy add firewall policy="net" int=vlan1 type=private add firewall policy="net" int=eth0 type=public add firewall poli="net" ru=1 ac=allo int=eth0 prot=tcp po=22 ip=yyy.yyy.yyy.yyy-xxx.xxx.xxx.xxx add firewall poli="net" ru=2 ac=allo int=eth0 prot=tcp po=25 ip=yyy.yyy.yyy.yyy-xxx.xxx.xxx.xxx add firewall poli="net" ru=3 ac=allo int=eth0 prot=tcp po=53 ip=yyy.yyy.yyy.yyy-xxx.xxx.xxx.xxx add firewall poli="net" ru=4 ac=allo int=eth0 prot=tcp po=80 ip=yyy.yyy.yyy.yyy-xxx.xxx.xxx.xxx (略)
例えばipの現在の状態の表示
Manager > show config dynamic=ip # IP configuration enable ip add ip int=vlan1 ip=xxx.xxx.xxx.214 mask=255.255.255.248 add ip int=eth0 ip=xxx.xxx.xxx.xxx mask=255.255.252.0 add ip rou=0.0.0.0 mask=0.0.0.0 int=eth0 next=xxx.xxx.xxx.xxx
firewallの削除
# DELETE FIREWALL POLICY="net" rule=101
ポートVLAN
VLANを作成このときVLAN名はvlanxxは特別な名前のためVID=xxとxxのところを一致させる。このときVLAN名が「vlan」ではじまらないたとえば iseだったりするとVIDは任意の数値でよい
CREATE VLAN=vlan10 VID=10 CREATE VLAN=vlan20 VID=20
VLANをLANポートにマッピング
ADD VLAN=vlan10 PORT=1-2 ADD VLAN=vlan20 PORT=3-4
vlanにIPアドレスをマッピングただし同一IPは不可
ADD IP INT=vlan10 IP=192.168.1.254 MASK=255.255.255.0 ADD IP INT=vlan20 IP=192.168.2.254 MASK=255.255.255.0
FIREWALLを作成するこのときポリシーをVLANごとに作成する作成すればいいと思ったが、FIREWALLのPOLICY間の定義がないの以下のようなWarningが出た。
Manager > Warning (2077257): 04-Aug-2008 16:03:21 192.168.2.150 attempting to use non-policy interface. Manager > Info (1077257): 04-Aug-2008 16:04:32 192.168.2.150 stopped attempts to use non-policy interface. Info (1077257): 04-Aug-2008 16:04:32 192.168.2.150 stopped attempts to use non-policy interface.
以下の設定はだめ。
ENABLE FIREWALL CREATE FIREWALL POLICY=net1 CREATE FIREWALL POLICY=net2
そこでPOLICYをひとつにして、両方のVLANを同じPOLICYを適用し、VLAN間はipfilterでアクセスを拒否する。
ENABLE FIREWALL CREATE FIREWALL POLICY=net1
DISABLE FIREWALL POLICY=net1 IDENTPROXY disable firewall policy="net1" tcpsetupproxy
LANとWAN側を指定
ADD FIREWALL POLICY=net1 INT=vlan10 TYPE=PRIVATE ADD FIREWALL POLICY=net1 INT=vlan20 TYPE=PRIVATE ADD FIREWALL POLICY=net1 INT=eth0 TYPE=PUBLIC
ICMPを許可
enable firewall policy="net1" icmp_f=all
マルチNATを設定
ADD FIREWALL POLICY=net1 NAT=ENHANCED INT=vlan10 GBLINT=eth0 ADD FIREWALL POLICY=net1 NAT=ENHANCED INT=vlan20 GBLINT=eth0
ポートフォーワードの設定
アクセス許可アドレス:192.168.100.1-192.168.100.254
ポート:22
フォーワード先IP:192.168.1.252
ADD FIREWALL POLICY=net1 RULE=1 AC=ALLOW INT=eth0 PROTO=TCP \ GBLIP=192.168.10.200 GBLPORT=22 IP=192.168.1.252 PORT=22 REMOTEIP=192.168.100.1-192.168.100.254
ifフィルタの設定(VLAN10とVLAN20の通信を遮断)
VLANで分離してもルータのインターフェイスにそれぞれのネットワークの口があるので
ルーティング情報があるため通信できるそれをフィルタで遮断する。
VLAN20にはVLAN10からフィルタがないと通信できる。VALN10とVLAN20は別LANに過ぎずルータ接続しているだけ。
------------------------ | | | VLAN10<-->VLAN20 | ----+----------+-------- |DG/W |DG/W | |
あて先が192.168.2.0/24のパケットは通さない
add ip fil=1 so=0.0.0.0 ent=1 des=192.168.2.0 dm=255.255.255.0 ac=exclude
あて先が192.168.2.0/24以外のパケットは通過する。そうしないとeth0にパケットが流れない。
add ip fil=1 so=0.0.0.0 ent=2 ac=include
add ip fil=2 so=0.0.0.0 ent=1 des=192.168.1.0 dm=255.255.255.0 ac=exclude add ip fil=2 so=0.0.0.0 ent=2 ac=include add ip int=vlan10 ip=192.168.1.254 fil=1 add ip int=vlan20 ip=192.168.2.254 fil=2
タグVLAN
それぞれのルータのポート1にvlan10ポート2,3にvlan20を割り振りvlan接続にポート4を使用する。
Internet | | --+------------------------------- | | | ルータA | | etho | 4 3 2 1 | -------------+----+---+----+------ | | | | | vlan20 | | vlan10 | | | -------------+-------------------- |ルータB 4 | | 3 2 1 | ------------------+---+----+------ | | | | | vlan10 vlan20 ''構成図''
CREATE VLAN=vlan10 VID=10 CREATE VLAN=vlan20 VID=20
ポート4にはvlan10とVlan20両方パケットが流れるので両方追加するこのときタグをつけるので、FRAME=TAGGED を指定
ADD VLAN=vlan10 PORT=1 ADD VLAN=vlan10 PORT=4 FRAME=TAGGED ADD VLAN=vlan20 PORT=2-3 ADD VLAN=vlan20 PORT=4 FRAME=TAGGED
このときタグVLANはこれで利用できるがeth0からWANに出るためためにそれぞれに属するPCのゲートウェイをルータAのvlan10とvlan20に設定する必要がある
ADD IP INT=vlan10 IP=192.168.1.254 MASK=255.255.255.0 ADD IP INT=vlan20 IP=192.168.2.254 MASK=255.255.255.0
これでvlan10のPCゲートウェイは192.168.1.254 vlan20は192.168.2.254になる