Podobny problem
Kolejny możliwy trop
Miałem ten sam problem ~/.ssh/authorized_keysz używaniem permitopen.
Podczas autosshtworzenia tunelu potrzebuję dwóch portów:
- jeden do podłączenia (10000),
- jeden do monitorowania (10001).
Po stronie klienta
Dało mi to podobny problem z portem monitorowania:
autossh -M 10001 -o GatewayPorts=yes -o ServerAliveInterval=60 -o TCPKeepAlive=yes -T -N -R :10000:localhost:22 -i ~/.ssh/id_rsa user@remote
Miałem tę wiadomość (po 10 minutach):
channel 2: open failed: administratively prohibited: open failed
Po drugiej stronie
Mój /var/log/auth.logzawierał:
Received request to connect to host 127.0.0.1 port 10001, but the request was denied.
W mojej ~/.ssh/authorized_keys(odległej stronie) miałem to:
command="/home/user/tunnel",no-X11-forwarding,no-pty,permitopen="localhost:10000",permitopen="localhost:10001" ssh-rsa AAAA...
Jak to rozwiązać
Rozwiązałem ten problem, zastępując localhostinstancje 127.0.0.1:
command="/home/user/tunnel",no-X11-forwarding,no-pty,permitopen="127.0.0.1:10000",permitopen="127.0.0.1:10001" ssh-rsa AAAA...
Wydaje się, że SSH nie rozumie, że localhostjest to skrót do 127.0.0.1, stąd wiadomość w auth.logi wiadomość zabroniona administracyjnie .
Rozumiem tutaj, że administracyjnie oznacza „ze względu na określoną konfigurację po stronie serwera”.