Faz alguma diferença criar a chave ssh como root ou como usuário?

1

Eu quero criar uma chave ssh, eu queria saber se faz alguma diferença quando eu crio a chave como root e quando eu a crio como usuário? como como usuário eu faço isso:

ssh-keygen -t rsa -C "[email protected]"

e ele será salvo em /home/user/.ssh/ v.s quando eu faço sudo su como o mesmo usuário de antes e, em seguida, crio minha chave ssh, então ele salvará as chaves em /root/.ssh

qual é a maneira correta de criar minha chave ssh, como root? ou como usuário? Obrigado

    
por Ladan Nekuii 03.05.2017 / 19:38

2 respostas

7

Não há diferença além de onde as chaves resultantes são armazenadas (e a propriedade do arquivo e o comentário da chave).

Note que você provavelmente deve evitar usar a conta root para coisas que não precisam estritamente de privilégios de superusuário, então criar chaves SSH para root raramente é necessário.

Em geral: crie a chave como o usuário que usará a chave.

Além disso, sobre sudo su , consulte " Existe alguma boa razão para rodar o sudo su? "

    
por 03.05.2017 / 19:45
0

Pelas cinco diretrizes de segurança da Agência Nacional de Segurança dos EUA (que incluo todas elas por motivo de aprendizado):

  1. Criptografar dados transmitidos sempre que possível .
  2. Minimize o software para minimizar a vulnerabilidade .
  3. Execute serviços de rede diferentes em sistemas separados .
  4. Configure ferramentas de segurança para melhorar a robustez do sistema .
  5. Use o princípio do menor privilégio .

O negrito se aplica ao post original.

Quando você cria uma chave SSH, um par é gerado

  • Chave pública, que termina com .pub. a chave pública reside no servidor.
  • Chave privada, que é um segredo e a decisão de criptografar a chave privada depende de quão grande o dano poderia ser se vazar, perder ou for roubado.

Não importa quem gerou a chave ou onde reside a chave privada. Contanto que você acesse o privateKey e o publicKey correspondente esteja incluído no arquivo authorized_keys no servidor. Como root, tente e autentique por um usuário privado privateKey:

~# ssh root@server -o PreferredAuthentications=publickey -i /home/user/.ssh/server_key

Também é bom incluir, você deve sempre usar ssh-keys e desativar a autenticação de senha do arquivo de configuração /etc/ssh/sshd_config .

~$ sudo cat /etc/ssh/sshd_config | grep PasswordAuthentication
#PasswordAuthentication yes
PasswordAuthentication no

e

$ sudo cat /etc/ssh/sshd_config | grep Pub
PubkeyAuthentication yes
    
por 04.05.2017 / 21:13

Tags