Nie można uzyskać dostępu do udostępniania ekranu za pomocą tunelu ssh „open failed: administracyjnie zabronione: open failed”

1

Jestem w połowie 6-miesięcznej podróży z dala od komputera Mac w domu. Do wczoraj byłem w stanie zdalnie sterować tym Macem za pomocą Screen Sharing przez tunel ssh, ale nagle nie mogę się już połączyć.

Tak otwieram tunel

% ssh -v -p 2200  -l db -L 5901:127.0.0.1:5900 remotecomputer

Mogę sprawdzić, czy usługa działa na komputerze zdalnym

% telnet localhost 5900
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Can't assign requested address
Trying ::1...
Connected to localhost.
Escape character is '^]'.
RFB 003.889

Ale kiedy robię coś podobnego na moim lokalnym komputerze

% telnet 127.0.0.1 5901
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.

Jak zapewne zauważyłeś, włączyłem pełne rejestrowanie mojego połączenia ssh i to jest wyjście z ssh, kiedy wykonuję test z lokalnego komputera

debug1: Connection to port 5901 forwarding to 127.0.0.1 port 5900 requested.
debug1: channel 3: new [direct-tcpip]
channel 3: open failed: administratively prohibited: open failed
debug1: channel 3: free: direct-tcpip: listening port 5901 for 127.0.0.1 port 5900, connect from 127.0.0.1 port 58555, nchannels 4

Mam:

  1. kill (-9) wszystkie sshd na zdalnej maszynie
  2. zabił wszystkie ssh (-9) na lokalnym komputerze
  3. zrestartowano Udostępnianie Ekranu na zdalnym komputerze (sudo launchctl rozładował /System/Library/LaunchDaemons/com.apple.screensharing.plist)
  4. Szukał podejrzanych otwartych portów na obu urządzeniach sudo (lsof -i -P | grep -i 590)

Wszystko bezskutecznie. W końcu zdalnie zalogowałem się do routera i włączyłem przekierowanie portów z Internetu na zdalny komputer i mogę się połączyć w ten sposób (ale jest bardzo wolny i wcale nie jest bezpieczny).

Nie zmieniłem niczego (zawsze tak mówią…), ponieważ to zadziałało. Jedyne, co mogło się wydarzyć, to to, że zostawiłem uruchomioną funkcję ssh / Screen Sharing i miałem czkawkę sieciową, nie robiąc czystego wyjścia z czegoś.

Jakieś pomysły? Myślę, że ssh jest winowajcą, ale nie wiem, jak i dlaczego.

d-b
źródło
Znaleziono dziennik dla ssh i wszystko, co jest rejestrowane, gdy próbuję się połączyć, to 12 kwietnia.
d-b
Daniel: Nie mam problemów z otwarciem połączenia ssh, a twoje sugestie zwracają oczekiwany wynik. A może źle zrozumiałem twoją sugestię?
d-b
Próbowałem teraz z innymi tunelami, zarówno statycznymi (AFP), jak i dynamicznymi (proxy SOCKS) i obydwa zwracały komunikaty o błędach podobne do komunikatów opisanych powyżej dla VNC.
d-b
Próbowałem również zwiększyć parametr MaxSession w sshd_conf z 10 na 64. Jednak nie wiem, czy muszę zrestartować sshd, aby zmiana odniosła skutek. Problem polega na tym, że nie mogę tego zrobić zdalnie (czy mogę?).
d-b
Zrobiłem to, mój opis był tylko krótki. Chociaż czytelnicy zdają sobie sprawę, że od telnet localhost 5900 działa.
d-b