Autorizando usuários para SSH na máquina - onde configurar?

1

Ubuntu Trusty aqui. Estou tendo alguns problemas para decidir onde, no sistema, devo configurar quais usuários devem ser autorizados a usar o ssh na máquina e quais teclas eles podem usar.

Tradicionalmente, acabei de criar usuários de Linux com as respectivas pastas base e colocaria authorized_keys na pasta ~ / .ssh.

Parece que outra opção é usar a configuração do sshd também. Você pode definir AllowUsers e mesmo AuthorizedKeysFile com todas as chaves ssh suportadas. Estou usando este artigo como referência.

Agora, qual é a melhor prática aqui? Não devo especificar AllowUsers / AuthorizedKeysFile e deixar que a existência do usuário do SO e o arquivo authorized_keys decida se o usuário deve ser capaz de efetuar login ou não? Não devo usar o ~ / .ssh / authorized_keys do usuário? Devo ter ambos no lugar?

O primeiro faz o gerenciamento de configuração (através do Ansible no meu caso) um pouco mais simples, mas eu posso tê-lo em ambos os lugares, se necessário.

    
por Alexandr Kurilin 22.07.2014 / 23:16

1 resposta

3

A maneira mais comum é ~/.ssh/authorized_keys , ele permite que os usuários gerenciem suas próprias chaves. A menos que você esteja planejando migrar para um sistema de autenticação diferente (por exemplo, LDAP) algum dia, essa deve ser a sua escolha.

Lembre-se de que cada pasta ~/.ssh/ precisa ser chmod'd para 700 e chown'd para o respectivo usuário.

A propósito, se você gerencia muitos usuários, dê uma olhada na documentação useradd no diretório /etc/skel . Você pode querer colocar um padrão .ssh/authorized_keys lá.

    
por 07.08.2014 / 01:00