Posso sobrescrever uma configuração dentro de sshd_config com uma configuração duplicada

5

Estou implementando um script de implantação básico e, para sshd_config, a única alteração que preciso fazer é PermitRootLogin yes para PermitRootLogin sem senha. Li os documentos e eles não mencionam isso, mas isso não quer dizer que seja impossível.

Posso especificar um segundo PermitRootLogin? Ou seja echo 'PermitRootLogin sem senha' > > / etc / ssh / sshd_config

Se sim, isso é seguro?

Atualizações com base em comentários:

1) Estou ciente de que eu poderia analisar o arquivo e alterar a variável. Minha dúvida ainda permanece embora.

    
por Neil Masters 04.03.2015 / 16:45

2 respostas

10

Não.

Você poderia simplesmente testar isso adicionando a linha e verificando se você pode efetuar login. Então, você pode comentar a primeira ocorrência, reiniciar o serviço e testar novamente.

Motivo: OpenSSH servconf.c tem a função process_server_config_line() nas linhas 991-1905 (para 7.6p1). Todas as diretivas globais são processadas somente na inicialização e as diretivas globais são processadas apenas uma vez. A configuração permanecerá como estava na primeira ocorrência.

Por outro lado, usando a mesma diretiva duas vezes pode levar a mal-entendidos.

Por favor, reconsidere a análise do arquivo. Você também pode substituir o arquivo inteiro, se aplicável.

    
por 04.03.2015 / 18:00
1

Não, a maioria das configurações usará apenas o primeiro valor que encontrar. a configuração do X11Forwarding é fácil de testar. Dito isto, você pode aproveitar as configurações de substituição por usuário para permitir a mesma coisa. Normalmente, eles são marcados na parte inferior e, portanto, funcionariam melhor com sua meta de anexação.

Dito isto, como os outros mencionaram sed seria uma solução muito mais limpa.

sed -i 's/PermitRootLogin yes/PermitRootLogin without-password/g' /etc/ssh/sshd_config
    
por 04.03.2015 / 18:16

Tags