Encontrou a resposta neste tópico . Não foram as permissões nos arquivos / pastas SSH, mas sim a permissão do diretório de usuários.
Estou tentando o SSH da minha máquina local para o meu servidor. No passado, não precisei inserir uma senha porque minha chave pública estava no servidor em authorized_keys
. No entanto, hoje, creio que algumas permissões foram alteradas em alguns arquivos e estão solicitando uma senha toda vez que eu tento usar o SSH.
Quais são as permissões corretas / padrão para a pasta .ssh e seu conteúdo na minha máquina / servidor local?
Aqui estão minhas permissões atuais
Meu servidor
[root@server9987 .ssh]# ls -la
total 24
drwx------ 2 root root 4096 Oct 17 03:29 .
drwxr-x--- 7 root root 4096 Oct 17 03:29 ..
-rw------- 1 root root 397 Oct 16 19:11 authorized_keys
-rw------- 1 root root 1675 Oct 12 02:10 id_rsa
-rw------- 1 root root 398 Oct 12 02:10 id_rsa.pub
-rwxrwxrwx 1 root root 830 Oct 17 03:29 known_hosts
Minha máquina local
➜ .ssh l
total 32
drwx------ 6 Oliver staff 204 17 Oct 00:28 .
drwxr-xr-x 7 Oliver staff 238 16 Oct 17:28 ..
-rw------- 1 Oliver staff 332 16 Oct 17:28 config
-rw------- 1 Oliver staff 1766 13 Jul 11:13 id_rsa
-rw------- 1 Oliver staff 398 13 Jul 11:13 id_rsa.pub
-rw------- 1 Oliver staff 3312 17 Oct 00:28 known_hosts
Encontrou a resposta neste tópico . Não foram as permissões nos arquivos / pastas SSH, mas sim a permissão do diretório de usuários.
Você deseja que a chave privada seja legível apenas pelo proprietário. Geralmente, é uma boa ideia tornar tudo nessa pasta legível e gravável apenas pelo proprietário. No entanto, o arquivo que permite que outras pessoas façam login por meio de uma chave deve ser legível pelo usuário que está executando o daemon ssh.
geralmente:
find ~/.ssh -type f -exec chmod 600 {} \;
chmod 755 ~/.ssh
chmod 644 ~/.ssh/authorized_keys
Atualizar Permissões padrão para a pasta ~ / .ssh são 700 (openssh 5.9, gentoo) e alguns arquivos:
$ ll .ssh; ll -d .ssh
-rw-r--r-- 1 jaroslav jaroslav 406 Oct 17 04:32 known_hosts
drwx------ 2 jaroslav jaroslav 4096 Oct 17 04:32 .ssh
-rw------- 1 jaroslav jaroslav 1766 Oct 17 04:37 id_rsa
-rw------- 1 jaroslav jaroslav 395 Oct 17 04:37 id_rsa.pub
Isto é depois de mover o meu .ssh original para fora e executar ssh hostname.org ; ssh-keygen . Os arquivos criados pelos comandos openssh parecem não ser afetados por umask
Então, eu ainda estou certo, e os comentários / votos negativos não têm nada na minha resposta: '(.
O motivo pelo qual o .ssh pode ser 700 é porque o sshd é executado principalmente pelo root, que pode ler o que quiser, não importa o que aconteça. A razão pela qual o sshd é executado principalmente pelo root é porque o daemon precisa escutar em uma porta privilegiada (< 1024).
Tags ssh permissions