路由器與防火墻配置命令
小明啊,你不是學計算機的嘛,叔叔家的路由器壞了,可以過來幫叔叔看看嗎
命令可以用縮寫,造就一堆容易造成歧義的縮寫,比如add
是address
的縮寫,sh
是shutdown
的縮寫。
默認為Cisco路由器和Cisco防火墻
視圖模式介紹
普通視圖 router>
特權視圖 router# #在普通模式下輸入enable
全局視圖 router(config)# #在特權模式下輸入config t
接口視圖 router(config-if)# #在全局模式下輸入int 接口名稱 例如int f0/0或int e0
路由協議視圖 router(config-route)# #在全局模式下輸入router 動態路由協議名稱
exit #從接口、協議、line等視圖模式下退回到全局配置模式,或從全局配置模式退回到特權模式
end #回到特權模式
router#reload #重新啟動路由器
1. 基本配置
router>en #enable的縮寫,進入特權模式
router#conf t #configure terminal的縮寫,進入全局配置模式
router(config)# hostname xxx #設置設備名稱
router(config)#enable password XXX #設置進入特權模式密碼(低級密碼,密碼可逆)
Router(config)#enable secret XXX #設置進入特權模式密碼(高級密碼,密碼不可逆)router(config)#no ip domain lookup #不允許路由器缺省使用DNS解析命令
router(config)# Service password-encrypt #對所有在路由器上輸入的口令進行暗文加密
router(config)#securityrouter(config)#line vty 0 4 #進入虛擬終端線路配置模式
router(config-line)#password xxx #設置telnet的密碼。沒有密碼遠程連接不了
router(config-line)#login #開啟登陸密碼router(config)#line con 0 #進入控制口的服務模式
router(config-line)#password xxx #設置console的密碼
router(config-line)#login #開啟密碼router#Logout #退出當前路由器登陸模式相對與windows的注銷
router#reload #重新啟動路由器(熱啟動)冷啟動就是關閉路由器再打開電源開關
2. 接口配置與網絡地址轉換
NAT:network address translation,網絡地址轉換
PAT:port address translation,端口地址轉換
router(config)#int s0 #進入接口配置模式。serial 0端口配置(如果是模塊化的路由器前面加上槽位編號,#例如serial0/0 代表這個路由器的0槽位上的第一個接口)
router(config-if)#ip add 10.9.9.1 255.255.255.0 #這里的add是address的縮寫,設置s0接口的ip地址,子網掩碼
router(config-if)#nameif outside#設置接口命名為outside
router(config-if)# security-level 0#設置接口的安全級別為0
router(config-if)#enca hdlc/ppp #捆綁鏈路協議 hdlc 或者 ppp。#思科缺省串口封裝的鏈路層協議是HDLC,所以在show run中不會顯示enca hdlc#如果要封裝為別的鏈路層協議例如PPP/FR/X25,show run才會顯示enca ppp等配置firewall(config)# int e0 #進入e0接口配置
firewall(config-if)# ip add 10.9.9.1 255.255.255.0 #設置e0接口的ip,netmask
firewall(config-if)# nameif inside #接口命名為inside,表示內部網絡
firewall(config-if)# end #回到特權模式
firewall# conf t #進入全局模式
firewall(config)# nat (inside) 101 10.9.9.0 255.255.255.0#配置inside接口的網絡地址轉換,指定轉換范圍10.9.9.0/24網段的數據包#穿越防火墻時將進行地址轉換,NAT標識ID為101
firewall(config)# global (outside) 101 192.168.9.9-192.168.9.102 netmask 255.255.255.0#配置outside接口的全局地址池,轉換NAT標識ID為101的所有數據包源IP地址#(需要與nat命令的NAT標識對應),分配出站的全局地址,范圍192.168.9.9-192.168.9.102。#比如來自內網10.9.9.2的數據包轉換成192.168.9.9作為外部地址。
firewall(config)# global (outside) 101 192.168.9.103 netmask 255.255.255.255#在上一條命令之后輸入這一條,表示當上一條global的全局地址全部分配完畢后,才使用這條命令的全局地址池firewall(config)# static (dmz,outside) 192.168.9.21 172.5.5.2#static [(internal_if_name,external_if_name)] global_ip local_ip[netmask network_mask][max_conns [em_limit]][norandomseq]#配置靜態網絡地址轉換,內部網絡接口名dmz,外部網絡接口名outside,#指定dmz區域的ip地址為172.5.5.2,轉換為防火墻外部區域的IP地址192.168.9.21firewall(config)# show run nat #查看正在運行的nat
firewall(config)# no nat (inside) 101 10.9.9.0 255.255.255.0 #刪除這條配置router(config)#int loopback #建立環回口(邏輯接口)模擬不同的本機網段
router(config-if)#ip add 192.168.1.1 255.255.255.255 #添加ip 地址和掩碼給環回口
router(config-if)#no sh #sh是shutdown的縮寫,開啟接口
router(config-if)#shutdown #管理性的關閉接口
3. 靜態路由與動態路由
(1)靜態路由
firewall(config)# route outside 0 0 10.9.9.13#route if_name ip_address netmask gateway_ip [metric]#ip_address為目的ip,metric為到gateway_ip的跳數#配置默認路由為10.9.9.13,從防火墻outside接口出站的所有數據包,通過默認路由到達外網router(config)#ip route 0.0.0.0 0.0.0.0 192.168.9.1#目的地址為0.0.0.0(任意地址),下一跳地址192.168.9.1
(2)動態路由
rip協議
router(config)#router rip #啟動rip協議
router(config-router)#network xxx.xxx.xxx.xxx #宣告自己的網段
router(config-router)#version 2 #轉換為rip 2版本
router(config-router)#no auto-summary #關閉自動匯總功能,rip V2才有作用
router(config-router)# passive-int 接口名 #啟動本路由器的那個接口為被動接口,該接口不會發送RIP更新
router(config-router)# nei xxx.xxx.xxx.xxx #neighbor的縮寫,廣播轉單播報文,指定鄰居的接收ip
igrp協議
router(config)#router igrp xxx #啟動igrp協議
router(config-router)#network xxx.xxx.xxx.xxx #宣告自己的網段
router(config-router)#variance xxx #調整倍數因子,使用不等價的負載均衡
eigrp協議
router(config)router eigrp xxx #啟動協議
router(config-router)#network xxx.xxx.xxx.xxx #宣告自己的網段
router(config-router)#variance xxx #調整倍數因子,使用不等價的負載均衡
router(config-router)#no auto-summary #關閉自動匯總功能
ospf協議
router(config)router ospf xxx #啟動協議啟動一個OSPF協議進程
router(config-router)network xxx.xxx.xxx.xxx area xxx #宣告自己的接口或網段,在ospf的區域中可以把不同接口宣告在不同區域中
router(config-router)router-id xxx.xxx.xxx.xxx #配置路由的id
router(config-router)aera xxx stub #配置xxx區域為末梢區域,加入這個區域的路由器全部要配置這個條命令
router(config-router)aera xxx stub no-summary #配置xxx區域為完全末梢區域,只在ABR上配置
router(config-router)aera xxx nssa #配置xxx區域為非純末梢區域(NSSA)加入這個區域的路由器全部要配置這個條命令
router(config-router)aera xxx nssa no-summary #配置xxx區域為完全非純末梢區域,只在ABR上配置,#并發布缺省路由信息給進入這個區域內的路由器
4. 保存配置
router#wr #write的縮寫,將RAM中的當前配置存儲到NVRAM中,下次路由器啟動就是執行保存的配置
router#Copy running-config startup-config #命令與write效果一樣
5. 查看命令
特權模式下:
router#show ip int br #brief的縮寫,查看當前的路由器的接口ip地址啟用情況
router#show ip route #查看當前的路由表
router#show ? #查看show命令用法
firewall(config)#show running-config nat #查看當前的 NAT 配置
firewall(config)#show running-config global #查看global命令配置
firewall#show config #查看防火墻配置
firewall#show run interface e0 #查看e0接口的nameif,security-level,ip address
6. 訪問控制列表
防火墻流量過濾只關注第一個初始化的數據包,而非響應包。防火墻接口沒有綁定ACL時,出站的流量默認是放行,入站流量默認說拒絕。那么,拒絕默認可以出站的流量,放行默認不能入站的流量,就需要通過配置訪問控制列表(Access Control List,ACL)實現流量過濾。
防火墻上的一個接口只能綁定一個ACL
#創建訪問控制規則
pixfirewall(config)# access-list acl_id [line line-num] deny|permit protocol source_addr source_mask [operator [port]] destination_addr destination_mask operator [port]acl_id 指定ACL名稱
deny|permit 拒絕|允許通過PIX防火墻的數據包
operator 有效的操作符有lt,gt,eq,neq,range
remark 添加到ACL中的注釋
text 用于remark注釋的正文show access-list #顯示ACL
clear access-list [acl_id] #刪除所有或指定條目的ACL
no access-list acl_id #刪除指定條目的ACL#綁定到防火墻的特定接口
pixfirewall(config)# access-group acl_id in interface interface_name#綁定一個ACL到一個接口show access-group acl_id in interface interface_name #顯示綁定在interface_name接口的ACL
clear access-group acl_id in interface interface_name #刪除acl_id標識的ACL中的所有條目
no access-group acl_id in interface interface_name #刪除綁定在接口上acl_id標識的ACL
示例:
pixfirewall(config)# access-list 101 extended permit icmp any any echo-reply#創建ACL,放行ping命令回顯數據包,標識ID為101
pixfirewall(config)# access-list 101 permit tcp any host 192.168.9.21 eq 23#創建ACL,放行所有到目的主機192.168.9.21且端口號為23的TCP協議數據包,標識ID為101
pixfirewall(config)# show access-list
access-list cached ACL log flows: total 0, denied 0 (deny-flow-max 4096)alert-interval 300
access-list 101; 2 elements
access-list 101 line 1 extended permit icmp any any echo-reply (hitcnt=0) 0x30901cd
access-list 101 line 2 extended permit tcp any host 192.168.9.21 eq telnet (hitcnt=0) 0x17597d2pixfirewall(config)# access-group 101 in interface outside#接口outside綁定標識為101的ACL
pixfirewall(config)# access-group 101 in interface dmz#接口dmz綁定標識為101的ACL
pixfirewall(config)# show run access-group
access-group 101 in interface outside
access-group 101 in interface dmz