ssh configurações 'permitopen = “localhost: 4000”' não limita o encaminhamento de porta remota [duplicado]

2

Eu tenho um usuário especial no meu servidor, vamos chamá-lo de foo . Eu uso apenas para encaminhamento de porta.

O usuário .ssh/authorized_keys2 está configurado para impedir o login e abrir apenas uma porta específica:

no-pty,no-X11-forwarding,permitopen="localhost:4000",\
command="/bin/echo do-not-send-commands" ssh-rsa <long public key> bar@foobar

Além disso, o foo tem seu shell definido como /bin/false in /etc/passwd .

Não consigo fazer login na máquina (é o que eu quero):

$ ssh foo@remote
PTY allocation request failed on channel 0
Connection to remote closed.

Mas eu posso abrir portas. Curiosamente, posso abrir a porta 4000, mas também outras portas sem privilégios:

$ ssh -N -R 4001:localhost:22 foo@remote
> # connection established

Em remote com usuário bar , posso conectar:

$ ssh -p4001 bar@localhost
bar@localhost's password:
Last login: Fri Sep 26 09:23:45 2014 from localhost.localdomain
...

Why can user foo open port 4001, when I limited it to permitopen="localhost:4000"?

    
por Sebastian 26.09.2014 / 09:45

1 resposta

2

Ah, reler o manual revela a causa:

permitopen="host:port"
    Limit local ''ssh -L'' port forwarding....

Também mencionada neste apêndice L e amp; A intitulado: Como posso limitar o encaminhamento de porta ssh remoto ? .

    
por 26.09.2014 / 09:47