SSH: "As permissões 0644 para 'my_key.pub' estão muito abertas."


21

Por que 0644isto é -rw-r--r--muito aberto para uma chave SSH? Também não consegui encontrar nenhuma permissão falsa no .sshdiretório ( 0700) ou no diretório inicial ( 0731).

Btw eu estou recebendo esse erro ao testar a paráfrase de uma chave via ssh-keygen -y -f my_key.pub

Cumprimentos

Respostas:


7

Você pode estar executando o ssh-keygen no arquivo errado. ssh-keygen -yopera em um arquivo de chave privada . Os arquivos ".pub" normalmente contêm a chave pública . Você provavelmente tem um arquivo com o nome my_key, sem qualquer extensão, e deve ser o modo 0600. Esse é o arquivo que deve conter a chave privada.

Para responder diretamente à sua pergunta, as chaves SSH são normalmente usadas para permitir a conexão com servidores remotos sem uma senha. A posse da chave privada permitirá que alguém faça login na sua conta em qualquer sistema que aceite a chave. O ssh-keygen e os outros utilitários ssh exigem que os arquivos de chave privada tenham permissões restritas porque os arquivos são sensíveis e precisam permanecer seguros.


11

0644 não deve ser muito aberto para uma chave pública, mas é muito aberto para sua chave privada.

Sua chave privada deve ter permissão, 0600enquanto sua chave pública tem permissão 0644.

A propósito, você também deve cuidar da permissão na .sshpasta. Deve ter a permissão 0700, para que somente você, o proprietário, tenha controle sobre a pasta.

Quanto ao seu diretório pessoal, a permissão de gravação não deve ser concedida ao grupo e a outros.

Executar chmod go-w /home/usernamedeve corrigir isso.


Absolutamente não siga estas instruções. NÃO é isso que você deve fazer. Isso também redefinirá todas as permissões do diretório inicial. Você SOMENTE deve modificar a .sshpasta e o id_rsapróprio arquivo, não todo o diretório pessoal!
niftylettuce

9

O único comando que você precisa executar é chmod 600 ~/.ssh/id_rsa. É isso aí.

Isso altera as permissões no arquivo para que o proprietário (você) possa lê-lo e gravá-lo, o que removerá a mensagem de erro recebida.


Atualizado @TwistyImpersonator
niftylettuce 24/10

0

As respostas acima são válidas, mas antes de executar qualquer uma chmodpara corrigir permissões, verifique se os seus IdentityFilenomes se ~/.ssh/configreferem à sua chave privada. Os iniciantes podem entender isso .pubincorretamente e se referir à chave pública (com extensão), levando ao mesmo erro (já que as permissões de arquivo da chave pública são muito abertas para uma chave privada).

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.