Um problema semelhante
Outra possível pista
Eu tive o mesmo problema usando ~/.ssh/authorized_keyscom permitopen.
Como eu uso autosshpara criar um túnel, preciso de duas portas:
- um para conexão (10000),
- um para monitoramento (10001).
No lado do cliente
Isso me deu um problema semelhante com a porta de monitoramento:
autossh -M 10001 -o GatewayPorts=yes -o ServerAliveInterval=60 -o TCPKeepAlive=yes -T -N -R :10000:localhost:22 -i ~/.ssh/id_rsa user@remote
Eu recebi essa mensagem (após 10 minutos):
channel 2: open failed: administratively prohibited: open failed
No lado remoto
Meu /var/log/auth.logcontido:
Received request to connect to host 127.0.0.1 port 10001, but the request was denied.
No meu ~/.ssh/authorized_keys(lado remoto) eu tinha o seguinte:
command="/home/user/tunnel",no-X11-forwarding,no-pty,permitopen="localhost:10000",permitopen="localhost:10001" ssh-rsa AAAA...
Como resolver
Resolvi isso substituindo localhostinstâncias por 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...
Parece que o SSH não entende que localhosté um atalho para 127.0.0.1, portanto, a mensagem auth.loge a mensagem proibida administrativamente .
O que eu entendo aqui é que administrativamente significa "devido a uma configuração específica no lado do servidor".