ssh "-P", para que é usada?

19

Em um script antigo (2001?) Para o sistema operacional Linux, encontrei o uso da -Popção para o sshcomando:

$ ssh -P host.domain -l user

Mas na sshpágina de manual não há menção de uma -Popção. No entanto, a execução ssh -P host.domainnão mostra nenhum aviso ou erro.

O que é isso? Poderia ser uma opção antiga / não documentada?

Gianluca Frustagli
fonte

Respostas:

26

Página de manual da versão antiga:

-P

Use porta não privilegiada. Com isso, você não pode usar as autenticações rhosts ou rsarhosts, mas pode ser usado para ignorar alguns firewalls que não permitem a passagem de portas de origem privilegiadas.

[...]

UsePrivilegedPort

Especifica se é necessário usar porta privilegiada ao conectar-se a outra extremidade. O padrão é yes se as autenticações rhosts ou rsarhosts estiverem ativadas.

Diretamente do código fonte:

            case 'P':       /* deprecated */
                    options.use_privileged_port = 0;
                    break;

Ele define a opção como 0, que parece ser o valor padrão, portanto, não faz nada. Ignorar opções obsoletas ajuda a compatibilidade com versões anteriores nos casos em que não afeta a funcionalidade ...

A /* deprecated */alteração data de 04/09/2002.


Até o código que citei acima (do openssh-portable 7.7) quase foi removido em um commit recente :

upstream: Descontinuar UsePrivilegedPort

agora que o suporte à execução de ssh (1) setuid foi removido, remova o código de suporte e limpe as referências a ele nas páginas de manual

Não enviamos ssh (1) o bit setuid desde 2002. Se alguém realmente precisar fazer conexões a partir de um número de porta baixo, isso pode ser implementado através de um pequeno proxy setmand do setuid.

ok markus @ jmc @ djm @

ID de confirmação do OpenBSD: d03364610b7123ae4c6792f5274bd147b6de717e

Ele ainda ignora a opção, mas nem mais define uma variável interna para acompanhá-la.

frostschutz
fonte