啟用及限制遠端存取連線
Enable and Limit Remote Access Connectivity
以VTY access-class限制管理來源,搭配SSH-only與登入失敗限制。
基本拓撲 TOPOLOGY
原創示意圖 · 靜態拓撲設備與位址 ADDRESSING
先確認介面名稱,再開始設定| 設備 DEVICE | 介面 | IPv4 位址 | 子網路遮罩 | 預設閘道 |
|---|---|---|---|---|
| R1 | Gi0/0 | 192.168.25.1 | 255.255.255.0 | — |
| PC1 | Ethernet | 192.168.25.10 | 255.255.255.0 | 192.168.25.1 |
| PC2 | Ethernet | 192.168.25.20 | 255.255.255.0 | 192.168.25.1 |
查看線路對照表(3 條連線)
| 起點 | 終點 | 介面對照 |
|---|---|---|
| pc1 | sw1 | Ethernet ↔ Fa0/1 |
| pc2 | sw1 | Ethernet ↔ Fa0/2 |
| sw1 | r1 | Fa0/24 ↔ Gi0/0 |
這次練習,你會學到
- 將管理來源ACL附著VTY而非使用者資料介面。
- 測試允許與拒絕來源,保留Console。
- 辨識quiet-mode/login block可能鎖住管理者。
開始之前
- 具備本題涉及的 IPv4/IPv6 與子網路基礎,能在自己的隔離練習環境開啟 Console。
- 使用合法設備與軟體映像,先備份現有設定,介面名稱以自己的裝置為準。
適用環境與驗證狀態
ISR 1941 / IOS 15.x待驗證原創教案,尚未於實體設備驗證。依實際硬體、IOS/AireOS 版本與授權核對命令;介面名稱不可直接套用至正式設備。
循序操作 STEP BY STEP
在你自己的練習環境操作。命令複製不包含提示字元;所有輸出皆為示例。
01 先完成可用的SSH基準
沿用Discovery25的獨立labadmin帳號、金鑰、SSH2、login local與IP表;不是只看?語法就算完成。先在PC1與PC2各以自己的授權帳號成功開SSH,保留Console。此題只允許PC1來源192.168.25.10。
展開參考指令 R1 · 特權 EXEC
show ip ssh
show users
show running-config | section line沿用Discovery25的獨立labadmin帳號、金鑰、SSH2、login local與IP表;不是只看?語法就算完成。先在PC1與PC2各以自己的授權帳號成功開SSH,保留Console。此題只允許PC1來源192.168.25.10。
查看預期結果 範例輸出,非真實執行
兩個來源在限制前都能SSH,Console持續可用。02 建立管理來源標準ACL
標準ACL僅比對來源IPv4。先允許唯一PC1,再明確deny其他(implicit deny本來就存在,這裡明寫便於閱讀)。VTY access-class不同於介面的ip access-group。
展開參考指令 R1 · ACL設定
configure terminal
ip access-list standard VTY_ADMIN
10 permit host 192.168.25.10
20 deny any
end
show access-lists VTY_ADMIN標準ACL僅比對來源IPv4。先允許唯一PC1,再明確deny其他(implicit deny本來就存在,這裡明寫便於閱讀)。VTY access-class不同於介面的ip access-group。
查看預期結果 範例輸出,非真實執行
只有PC1來源被允許。03 套用所有實際VTY範圍
以下0-4僅適用存在該範圍的IOS;先show line確認,若也有5-15需相同配置。不在使用者資料介面套此ACL,因此正常資料轉送不會因這個VTY來源清單被同樣過濾。
展開參考指令 R1 · VTY設定
configure terminal
line vty 0 4
access-class VTY_ADMIN in
transport input ssh
login local
exec-timeout 5 0
end以下0-4僅適用存在該範圍的IOS;先show line確認,若也有5-15需相同配置。不在使用者資料介面套此ACL,因此正常資料轉送不會因這個VTY來源清單被同樣過濾。
查看預期結果 範例輸出,非真實執行
新的PC1 SSH允許,新的PC2 SSH被拒絕。既有session可能仍保留。04 用兩個來源各開新連線
在PC1/PC2各執行相同ssh,PC1應成功、PC2應拒絕。不要以既有PC2 session繼續可用誤判ACL無效,政策通常針對新連線。主機實際來源可能因NAT/多介面與IP表不同,需查show users。
展開參考指令 PC1 / PC2(各自執行) · OpenSSH client
ssh labadmin@192.168.25.1在PC1/PC2各執行相同ssh,PC1應成功、PC2應拒絕。不要以既有PC2 session繼續可用誤判ACL無效,政策通常針對新連線。主機實際來源可能因NAT/多介面與IP表不同,需查show users。
查看預期結果 範例輸出,非真實執行
新PC1成功、新PC2拒絕;確保不是兩者都因SSH本身故障失敗。05 選用:加入登入失敗限制
僅在專用隔離設備且Console可用時啟用:60秒內3次失敗,阻擋新login120秒。不同IOS對SSH/AAA支援有差異,先用?核對。不需故意暴力嘗試密碼;若做受控驗證,限自己的帳號且不鎖住別人。
展開參考指令 R1 · 全域設定
configure terminal
login block-for 120 attempts 3 within 60
end
show login僅在專用隔離設備且Console可用時啟用:60秒內3次失敗,阻擋新login120秒。不同IOS對SSH/AAA支援有差異,先用?核對。不需故意暴力嘗試密碼;若做受控驗證,限自己的帳號且不鎖住別人。
查看預期結果 範例輸出,非真實執行
show login列出監控與quiet-mode參數;未實測不得宣稱已阻擋攻擊。06 記錄限制並安全復原
撤回時透過Console移除VTY access-class,再按原設定決定是否保留SSH-only與timeout。取消本題login block-for的語法依?核對。保留則保存,切勿為解除鎖定開放公網Telnet。
展開參考指令 R1 · VTY設定
configure terminal
line vty 0 4
no access-class VTY_ADMIN in
end
show users撤回時透過Console移除VTY access-class,再按原設定決定是否保留SSH-only與timeout。取消本題login block-for的語法依?核對。保留則保存,切勿為解除鎖定開放公網Telnet。
查看預期結果 範例輸出,非真實執行
解除本題來源限制後,新連線依原SSH政策運作。確認你的設定 VERIFICATION
PC1/PC2的新SSH連線預期狀態 允許PC1、拒絕PC2。
需使用新的session與真實不同來源。
show login / show users預期狀態 登入來源與block參數合理。
既有session不能替代新連線驗收。
常見問題與排查
連允許主機也被拒絕
查實際來源IP、ACL順序、VTY範圍與login block quiet-mode,從Console解除錯誤規則。
IPv4限制了但IPv6仍可管理
IPv4 access-class不取代IPv6管理平面政策;若啟用IPv6,需另用平台支援的IPv6 ACL/VTY設計。
參考資料
依 CCNA v2.2 主題自行編寫之練習,非官方逐字教材。
發布版本 1 · 範例輸出供理解,指令尚待實機驗證。