myServer
Debian Stretch VM(Windows 7 호스트의 VirtualBox에서 실행)에서 SSH를 통해 특정 원격 호스트( IP 라고 부르겠습니다 12.34.56.78
) 에 연결하고 싶습니다 . 이를 위해 저는 Android 스마트폰을 USB 모뎀으로 사용하는데 훌륭하게 작동합니다. 인터넷에 액세스하여 "ping" 및 HTTP/HTTPS 트래픽을 생성할 수 있으며 다음 명령을 사용하여 SSH 연결을 열 수도 있습니다.
ssh [email protected] -b a.b.c.d -p portNumber -i ~/.ssh/id_rsa
참고: a.b.c.d
이는 연결 시 USB 인터페이스에 할당된 동적 IP 주소입니다.
~/.ssh/config
작업을 더 쉽게 하기 위해 다음과 같이 입력할 수 있도록 모든 설정을 지정하고 싶습니다 ssh myServer
.
Host myServer
HostName 12.34.56.78
Port portNumber
# BindAddress a.b.c.d <== commented because this is part of the question
# BindInterface usb0 <== same as above
User httqm
IdentityFile ~/.ssh/id_rsa
- 줄 의 주석 처리를 제거하고 IP 주소를 지정할 수 있습니다 . 이는 작동하지만 동적이기
BindAddress
때문에 전체 SSH 명령줄에 비해 아무런 이득도 제공하지 않습니다.a.b.c.d
사용바인딩 인터페이스옵션( 제외
BindAddress
)은 다음 오류 메시지와 함께 실패합니다.~/.ssh/config: line 154: Bad configuration option: bindinterface ~/.ssh/config: terminating, 1 bad configuration options
이 BindInterface
지시어는 Openssh 7.7(https://www.openssh.com/releasenotes.html) 그리고 나는 가졌다:
$ dpkg -l openssh-client
openssh-client 1:7.4p1-10+deb9u6
이 문제를 해결하기 위해 몇 가지 솔루션을 고려하고 있습니다.
명령을 사용하여 모든 대상이 USB 인터페이스를 통과
ip route ...
하도록 경로를 정의합니다 .myServer
지금까지 나는 다음과 같은 명령을 시도했습니다.ip route add to 12.34.56.78 protocol static dev usb0
명령 자체는 오류를 반환하지 않지만 SSH 연결을 열 수 없으며 ssh myServer
ping도 할 수 없습니다.
12.34.56.78과 주고받는 모든 트래픽이 usb0 인터페이스를 통과하도록 Netfilter 규칙을 정의합니다. 그게 효과가 있을까요? 이 솔루션을 조사해야 합니까?
openssh-client
백포트에서 업그레이드(사용 가능한 경우)
무엇이 작동하고 작동하지 않는지(그리고 그 이유는 무엇인지) 설명해 주실 수 있나요? 짧은 명령줄을 사용하여 SSH 호스트에 연결하려는 목표를 어떻게 달성할 수 있습니까? 예를 들어 ssh myServer
내 소스 주소가 동적이라는 점을 고려하면 어떨까요?