구성 템플릿
CONFIG
# 基础配置:定义别名和默认认证方式
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: 내부 IP로 교체internal_port: 내부 포트로 교체external.ip: 외부 IP로 교체external_port: 외부 포트로 교체
연결 명령
BASHssh 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 권한 권장)