配置模板#
# 基礎配置:定義別名和默認認證方式
Host custom-alias
User your-username
PreferredAuthentications publickey
IdentityFile "path/to/your/private_key"
# 內網路由:通過 ping 檢測內網可達性
Match host custom-alias exec "ping -n 1 -w 100 internal.ip >nul 2>&1"
HostName internal.ip
Port internal_port
# 外網路由:內網不通時的備選方案
Match host custom-alias
HostName external.ip
Port external_port
使用步驟#
-
替換配置項
custom-alias
: 設置便於記憶的別名your-username
: 替換為登錄用戶名path/to/your/private_key
: 替換為私鑰文件路徑internal.ip
: 替換為內網 IPinternal_port
: 替換為內網端口external.ip
: 替換為外網 IPexternal_port
: 替換為外網端口
-
連接命令
ssh custom-alias
工作原理#
- SSH 客戶端收到
custom-alias
連接請求 - 按順序檢查 Match 條件:
- 先執行 ping 命令檢測內網連通性
- 如果內網可達,使用內網配置
- 如果內網不可達,使用外網配置
- 使用對應配置進行連接
注意事項#
- Windows 系統路徑使用反斜杠
\
- Linux/Mac 系統路徑使用正斜杠
/
- ping 命令參數:
- Windows:
ping -n 1 -w 100
- Linux/Mac:
ping -c 1 -W 1
- Windows:
- 確保配置文件權限正確(Linux/Mac 建議 600)
此文由 Mix Space 同步更新至 xLog
原始鏈接為 https://liuyaowen.cn/posts/default/202501021