짧은 질문:
SSH를 통해 로컬 Unix 소켓(~/test.sock)에 어떻게 연결합니까? 소켓은 실제 SSH 서버로 전달됩니다. 분명히 작동하지 않으며 문서를 찾을 수 없습니다.
public> ssh /home/username/test.sock
"ssh: Could not resolve hostname: /home/username/test.sock: Name of service not known"
긴 질문:
제가 해결하려는 문제는 내 ( public
) 대학 서버 에서 local
NAT 뒤에 있고 대중에게 공개되지 않는 내 ( ) PC에 연결하는 것입니다.
표준 솔루션은 SSH 프록시/ local
터널을 생성하는 것입니다 public
.
local> ssh -NR 2222:localhost:22 public
하지만 정부가 항만 조성을 금지하고 있기 때문에 이는 불가능하다. 그래서 대신 UNIX 소켓을 사용하는 방법을 생각했는데 다음과 같이 작동합니다.
local> ssh -NR /home/username/test.sock:localhost:22 public
그런데 이제 SSH를 사용하여 어떻게 연결할 수 있나요?
답변1
답변2
작동하도록 풀 요청을 제출했지만 아직 병합하지 않았습니다.
답변3
나는 우연히 우연히 발견했다https://medium.com/@dperny/forwarding-the-docker-socket-over-ssh-e6567cfab160OpenSSH 6.7부터 소켓 전달이 가능하다는 점을 논의합니다.
주어진 예는 다음과 같습니다:
ssh -nNT -L $(pwd)/docker.sock:/var/run/docker.sock user@someremote
따라서 socat은 더 이상 필요하지 않습니다.