터널링된 SSH 연결을 통해 VNC 연결을 생성할 때 오류가 발생합니다.
channel 3: open failed: administratively prohibited: open failed
터널링된 VNC 연결을 사용하여 연결하려는 호스트로 로컬로 로그인 하지 않은 경우에만 username
이런 일이 발생한다는 것을 발견했습니다. SSH 터널:
ssh -p 6000 -L 5901:127.0.0.1:5901 [email protected]
VNC 연결:
vncviewer localhost:1
/etc/ssh/sshd_config
설정을 사용하거나 사용하지 않고 설정을 조정해 보았습니다 AllowTunnel yes
. (변경할 때마다 ssh를 다시 시작했습니다 service ssh restart
. :) 그러나 원격 호스트에서 로컬 세션을 실행하면(즉, 로컬로 로그인한 경우) 오류가 사라집니다. username
이 행동을 본 사람이 있습니까? VNC를 원격으로 시작하고 로컬로 로그인하지 않고도 액세스할 수 있어야 할 것 같습니다.
답변1
찾고 있는 옵션은 아닙니다 AllowTunnel
( tun
VPN 및 장치를 사용한 레벨 3 전달용). 당신은 AllowTcpForwarding
ssh에서 TCP 트래픽의 로컬 및 원격 포트 전달을 처리합니다.
서버의 값을 확인하고 다음과 같이 변경합니다 yes
.
AllowTcpForwarding yes
답변2
이 오류를 일으키는 이름 확인 이유가 있습니다. 내 /etc/hosts에 다음과 같이 잘못된 서버 이름 IP 주소(localhost가 아님)가 있습니다.
127.0.0.1 localhost
192.168.2.45 server.domain.com server
그러나 구성된 서버 IP(및 host/dig 명령을 사용하여 확인된 DNS 이름)는 192.168.2.47입니다. 이전 IP 재구성으로 인한 단순 오타입니다. /etc/hosts를 수정한 후 터널 연결이 완벽하게 작동합니다.
ssh [email protected] -L 3456:127.0.0.1:5901
이상하게도 localhost 리터럴 IP를 사용하여 터널링을 했더니 실제 IP로 인해 오류가 발생했습니다. 릴리스: 우분투 16.04 LTS.