Permissões no SSH causando problemas

2

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
    
por Oliver Joseph Ash 17.10.2012 / 01:42

2 respostas

1

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.

    
por 18.10.2012 / 22:15
5

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).

    
por 17.10.2012 / 03:05