Como permitir usuários root e restritos no SSH?

0

É possível (e se sim, como) fazer o seguinte com openssh-server :

  • para poder autenticar root user com uma chave e sem senha
  • para poder autenticar um usuário non-root com uma chave e sem senha
  • para impedir que o usuário non-root efetue login como root com sua própria chave
  • para fazer isso com uma única instância de sshd , usando apenas um TCP port

E sim, estou muito ciente dos riscos da opção PermitRootLogin yes .

    
por Ulrik 12.10.2017 / 22:52

1 resposta

2

Isso deve funcionar "fora da caixa" e não exigir mais nada, colocando os usuários com chaves públicas em seu arquivo .ssh / authorized_keys para o usuário correspondente no servidor. (Se este arquivo não existe para o usuário, faça isso!)

A única coisa a ter em conta é que, se a chave pública do usuário não raiz for adicionada aos servidores root / .ssh / authorized_keys, esse usuário não-root poderá efetuar login como root no servidor - então, para evitar isso, simplesmente não adicione sua chave ao arquivo roots_keys.

Você já encontrou o PermitRootLogin - que, obviamente, precisa ser ativado no servidor. Você pode (opcionalmente) limitar quem pode logar de onde (se é que é) adicionando uma linha como "AllowUsers [email protected] [email protected] user2" - que só permitirá root e user1 de um determinado endereço IP, mas user2 pode efetuar login de qualquer lugar. Você pode estender isso com quantas combinações de usuário / ip forem necessárias.

    
por 12.10.2017 / 23:12