Linux Mint에서 SSH를 통해 터널을 성공적으로 설정했으며 웹을 탐색할 수 있습니다.
그러나 동일한 포트를 사용하여 ssh를 시도하면 다음과 같은 결과가 나타납니다.
프록시에 대한 연결을 설정할 수 없습니다. 네트워크에 연결할 수 없습니다. ssh_exchange_identification: 원격 호스트에 의해 연결이 닫혔습니다.
광산에서는 mate-network-properties
수동 프록시 구성을 선택했고 양말 호스트는 다음과 같습니다.127.0.0.1
그러면 SSH가 해당 프록시 정보를 사용하지 않는 이유는 무엇이며 해당 프록시를 사용하도록 할 수 있습니까?
답변1
터널을 파낼 필요가 없습니다 ssh
. ssh
중간 호스트에 연결한 다음 ssh
필요한 다른 곳에 연결할 수 있습니다 .
다음 플래그를 사용하여 가상 tty를 강제로 할당하면 단일 명령으로 이 작업을 수행할 수도 있습니다 -t
.
me@inside$ ssh -t intermediary ssh external
Last login: Fri Sep 21 14:13:25 2012 from intermediary
me@external$ logout
Connection to external closed.
Connection to intermediary closed.
me@inside$
유일한 단점은 SSH 세션이 여러 개 있다는 것입니다. 하지만 이것이 왜 문제가 되는지 정말 이해가 되지 않습니다.
답변2
@bahamat에 동의하세요. SOCKS 프록시를 사용하지 않고 ssh를 통해 직접 ssh를 사용하세요. .ssh/config
이를 자동화하는 방법이 있습니다 (중간자 호스트에서 netcat/에 대한 ssh 필요 ).nc
Host my-host-behind-the-firewall
ProxyCommand ssh my-ssh-front-server exec nc %h %p 2>/dev/null
이제 할 수 있다
ssh my-host-behind-the-firewall
실제로 작동한다. 이는 키를 사용하여 프런트 엔드 서버에 비밀번호 없이 액세스할 수 있는 경우 특히 편리합니다.
답변3
첫 번째 예:
# ssh -D 1080 [email protected]
두 번째 인스턴스는 양말5 프록시를 사용합니다.
$ cat /etc/tsocks.conf
....
server = 127.0.0.1
server_port = 1080
방사,
$ tsocks ssh [email protected]