집에는 방화벽 뒤에서 Linux를 실행하는 NAS가 있습니다. Transmission GUI(포트 9091) 및 webmin(포트 10000)과 같은 일부 서비스를 사용하지만 포트 22의 SSH 터널을 통해 원격으로 액세스하고 싶습니다.
작업을 단순하게 유지하기 위해 가능한 한 많은 네트워크 연결 포트를 닫고 NAS에 대한 포트 22만 열고 싶습니다.
PuTTY(로컬 포트 10000, 원격.ip.address:10000)에서 터널 구성을 시도했지만 SSH 로그인에 성공한 후에도 여전히 방화벽 규칙이 실행되고 있는 것 같습니다. 이것이 SSH 터널링의 올바른 사용입니까?
답변1
방화벽에서 터널 포트를 열 필요가 없습니다. SSH 포트만 열면 끝입니다.
여러 가지 문제 중 하나가 발생할 수 있습니다.
- 로컬 포트가 이미 사용 중일 수 있습니다. netstat를 사용하여 포트가 사용 중인지 확인해보세요.
- 터널 포트에 연결하면 원격 주소가 아닌 localhost(127.0.0.1)임을 알 수 있습니다. 일부 소프트웨어는 이것을 좋아하지 않을 수 있습니다.
- 터널은 서버에서 닫힐 수 있습니다. 이 경우 터널이 작동하지 않습니다.
- 다른 호스트로 터널링하는 경우(remote.ip.address가 터널링하려는 호스트에 없음) SSH 서버의 AllowTcpForwarding 설정에 의해 차단될 수 있습니다.
- 동일한 호스트(remote.ip.address는 127.0.0.1이거나 서버의 다른 IP)의 포트로 터널링하는 경우 대상 소프트웨어로의 터널링이 마음에 들지 않을 수 있습니다. 예를 들어 일부 VNC 서버는 루프를 방지하기 위해 기본적으로 동일한 호스트 연결을 차단합니다.
디버그 플래그를 활성화한 상태로 연결해 보세요.
답변2
로그인이 필요한 VoIP 전화로 방화벽을 통과해야 할 때 다음을 사용합니다.
putty.exe -ssh username@publicip -pw password -L localport:privateip:destinationport