Tenho uma pergunta sobre o ssh sem senha com uma pasta pessoal.
Eu criei uma conta comum/home/developers e vários usuários (desenvolvedorA,desenvolvedorB ...). Todos os desenvolvedores receberam a mesma pasta pessoal (/home/developers).
Como desenvolvedorA em sua máquina, fiz o seguinte:
- ssh-keygen -t rsa -f desenvolvedorA -C[e-mail protegido]
- (no servidor). adicionou o .pub ao arquivo do servidor /home/developers/.ssh/authorized_keys
- ssh desenvolvedorA@meuServidor -i desenvolvedorA
Estou pensando que o problema está relacionado às permissões, porque o arquivo autorizado_keys é propriedade dos desenvolvedores (-rw------- 1 desenvolvedores desenvolvedores 2033 11 de novembro 22:55 autorizado_keys )
Alguém tem uma solução para esse problema ou como fazer o ssh sem senha para vários usuários sem criar uma pasta pessoal para cada um deles.
Desde já obrigado pessoal
Responder1
Você só tem um usuário. Portanto, não é um problema de vários usuários. Certifique-se de que o diretório .ssh tenha o modo 700.
No entanto, você está fazendo errado de qualquer maneira. Você deve criar usuários diferentes para cada desenvolvedor e colocá-los em um grupo comum. Se eles precisarem trabalhar nos mesmos arquivos, você os torna graváveis por seu grupo comum e os coloca em um diretório que possui o sinalizador "definir ID do grupo" definido, para que tudo o que eles escreverem nele pertencerá ao grupo.
Responder2
Já que ele perguntou, ele deve ter seus motivos. Aqui estão algumas ideias:
- Certifique-se de que sua string de chave pública não esteja quebrada. Deve estar em uma linha contínua emauthorized_keys.
- As permissões devem ser rw-rr (644) para chaves_autorizadas.
- Verifique as permissões para ~/.ssh. Deveria ser rwx-- (700).
- Certifique-se também de que /etc/ssh/sshd_config contenha "PubkeyAuthentication yes".
Responder3
Na minha experiência, o ssh é muito específico em relação às permissões de arquivos e diretórios. O arquivo autorizado_keys deve ser 'rw-r--r--' e o diretório .ssh que o contém também deve ser acessível a todos (mas não gravável por todo o mundo). Isso significa o dicionário .ssh e o caminho completo do diretório que leva a isto.
Quando você não acerta, os logins de troca de chaves falham.
Mike
Responder4
@joebob acertou! Apenas mais alguns detalhes (observe sua última linha)
Deesta postagemvocê pode ver que o SSH se recusará a usar .ssh
a pasta em um diretório inicial compartilhado. No meu caso, olhando /var/log/messages
vejo:
10 de março 09:57:13 sshd[32249]: Autenticação recusada: propriedade ou modos incorretos para o diretório/home/
O site referenciado possui duas soluções para isso:
Corrigir permissões
chmod g-w /home/your_user chmod 700 /home/your_user/.ssh chmod 600 /home/your_user/.ssh/authorized_keys
Defina
StrictModes off
em seu/etc/ssh/ssh_config
(não recomendado)
Infelizmente estou em um caixa eletrônico de produção e não consigo testar nenhuma das soluções...Também estou procurando uma terceira opçãose possível, devido à configuração da nossa equipe, não posso alterar as permissões do diretório inicial... (modelo ruim - eu sei)