linux - adiciona uma senha a um usuário que já possui autenticação ssh

3

Eu tenho uma conta de usuário no meu servidor para o qual eu acesso através da autenticação de chave ssh. Eu quero dar um acesso temporário a essa conta para uma terceira pessoa. Eu estava planejando criar uma senha como um método de autenticação alternativo (portanto, o servidor estará acessível por senha ou por chave ssh), forneça a ela a terceira pessoa para executar um trabalho e exclua a senha assim que o trabalho for executado. feito.

Como posso criar (e excluir) essa senha?

    
por jim basquiat 29.10.2017 / 18:00

2 respostas

10

A resposta para a pergunta da senha é:

  • Edite o arquivo /etc/ssh/sshd_config para garantir que as senhas sejam ativadas.
PasswordAuthentication yes 
PermitEmptyPasswords no

Em seguida, reinicie o serviço ssh (HT - @tonioc). Isso funcionará para sistemas sysvinit:

/etc/init.d/ssh restart

E isso deve funcionar para sistemas systemd:

systemctl restart ssh

E depois:

  • Faça login com sua chave e altere a senha da conta se a senha estiver bloqueada.

Ou (melhor):

  • Adicione uma nova conta de usuário para o novo usuário e adicione esse usuário a qualquer grupo mínimo necessário para realizar a tarefa do novo usuário.

Ou (ainda melhor):

  • Adicione um novo usuário e peça-lhe uma chave pública
  • Adicione a chave ao arquivo ~/.ssh/authorized_keys se ele não souber copiá-lo.

No entanto, para o menor número de alterações, mas com pouca segurança, você pode simplesmente adicionar outra chave a:

~/.ssh/authorized_keys

no servidor.

Você pode ter quantas chaves desejar no arquivo authorized_keys. É uma chave por linha com opções pré-definidas.

Existem muitas opções que podem ser adicionadas ao arquivo authorized_keys .

Veja aqui

E / ou:

man authorized_keys

É claro que, como outros salientaram, não é uma boa ideia ter mais de um usuário por conta, a menos que seja gerenciado por uma equipe. Acesso ou acesso privilegiado temporário provavelmente não são uma boa ideia.

    
por 29.10.2017 / 18:05
4

1) em sshd_config, adicione o método PasswordAuthentication para este usuário:

Match User <thisusername>
  PasswordAuthentication yes

, em seguida, reinicie o serviço sshd.

2) defina a senha para este usuário usando (como root ou com sudo):

passwd <thisusername>

Quando o trabalho estiver concluído, altere PasswordAuthentication para no em sshd_config e (opcionalmente) altere a senha usando passwd novamente.

    
por 29.10.2017 / 18:35