Mudanças entre as edições de "Autenticação SSH por Chave Pública no Huawei"

De Wiki BPF
Ir para navegação Ir para pesquisar
 
Linha 68: Linha 68:
  
 
'''Autor''': [[Usuário:Erickandrade|Erick Andrade]]
 
'''Autor''': [[Usuário:Erickandrade|Erick Andrade]]
 +
[[Categoria:Segurança]]
 +
[[Categoria:Huawei]]
 +
[[Categoria:Infraestrutura]]
 +
[[Categoria:Boas Práticas]]

Edição atual tal como às 00h13min de 1 de agosto de 2026

Introdução

A autenticação baseada apenas em usuário e senha ainda é amplamente utilizada, porém está mais suscetível a ataques como força bruta, vazamento e reutilização de credenciais. Para aumentar a segurança do acesso aos equipamentos da infraestrutura, recomenda-se utilizar a autenticação por chaves SSH, que oferece um mecanismo mais robusto e confiável para identificação dos administradores.

Orientações importantes para a sua chave SSH RSA:

  1. Utilize chaves RSA com tamanho adequado;
  2. Proteja a chave privada com uma senha;
  3. Nunca compartilhe a chave privada;
  4. Revogue imediatamente chaves comprometidas;
  5. Restrinja algoritmos e métodos de autenticação.

Configurando

0 - Crie sua chave SSH pública e privada.

Se você ainda não possui um par de chaves SSH, gere um utilizando o comando abaixo em um servidor Linux ou pelo método de sua preferência. Caso já possua uma chave SSH compatível, basta reutilizá-la para este procedimento.

cd ~/.ssh
ssh-keygen -t rsa -b 4096 -f <nome-da-chave> -C "<comentario>"

Visualize sua chave pública.

cat <nome-da-chave>.pub

1 - Configure os métodos e chaves (aumento de compatibilidade).

Servidor

ssh server cipher aes128_gcm aes256_gcm aes128_ctr aes256_ctr
ssh server hmac sha2_256 sha2_512
ssh server publickey rsa rsa_sha2_256 rsa_sha2_512 ecc
ssh server key-exchange curve25519_sha256 ecdh_sha2_nistp256 dh_group16_sha512
ssh server dh-exchange min-len 2048
ssh server rsa-key min-length 2048
commit

Cliente

ssh client publickey
ssh client cipher
ssh client hmac
ssh client key-exchange
commit

2 - Importe a sua chave pública.

  1. Cada bloco é referente a um trecho de configuração sequencial que deve ser respeitado;
  2. No comando public-key-code begin pressione enter e cole a sua chave pública, incluindo o ssh-rsa e o comentário final, do mesmo jeito quando você visualizou com o comando cat no passo 0;
  3. A chave pública utilizada foi gerada apenas para o tutorial :)
rsa peer-public-key <nome-da-chave> encoding-type openssh
public-key-code begin
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCiOKoFlZrpLMVGb6tz0sQ+BP+mSJzm9PAhrqBz3KrAAZnsdSQB05QMXtmQstpTaOLf80/ZVpm5Zhi0EsfY7gDcZPCElJU0GD+SZaBB3fTAxkHqogxN0a4bBxd2J+e+yiIrh/QSpCBVwNBlnYFtkHbyz3TRsemMwPqJMB+qrC9PoYTxaURU4ZXP8KIDdwWJvBlU3tqq4l+wJVIkHNOGAwqztIYKlR50YDKD8x74bzexZL4YXkY7KOl/UWf2iR0S6LKm/ucq6G9qlN/9FmrWTUgYSUtbURec25kyHkNAebEhGEAYGLc6X3t5EKkVsVeueMEL6iRMpWCPiFMzU0yryJgdk5QXvFN3sRzXxU/fcshJey6lsDA+wNVp+RMsTVGfbAnasM/Oo/W5gz9dthnIQIQ4AKZks6At/OTvD0B/bZW0GA2fpQw4wNHEvBeyC5yGQay+uRpuwgojsO8W0YDc62MHXxPp75yu8ZUPjobbqtWWBHsL0hISVulMTZkkAffJfxJkxx2nXBbAyKbIPLwcOnogVbvZ1VD4tA6epoNzVBXObTNKCKDpvCIFELikjNGutFzHQ11R3qXgo5fnEhFRML2l77siZponJ0v7lsV1Nia9Izc91YxtOaRIp2I1+lhe+FQf65bvpjHytBZJWE2+/ju4AIGKDK8PLnvDd3miP+8v4Q== erickchave
public-key-code end
peer-public-key end
commit

3 - Defina o tipo da autenticação do usuário como rsa.

Preste bem atenção porque depois desse commit você não conseguirá mais realizar o acesso usando usuário e senha, se você estiver inseguro, use o comando commit trial 60, que manterá sua última alteração por 60 segundos. Então caso algo dê errado você terá acesso ao equipamento novamente em 1 minuto, mas se tudo der certo você faz o commit permanente. Durante o tempo do commit trial 60, você terá 1 minuto para realizar o teste de acesso via ssh usando o novo método configurado.

O commit trial lembra muito a função Safe Mode do Mikrotik, no caso do Huawei independente se você permanece com acesso ou não ao equipamento, as configurações são revertidas.

ssh user <usuario>
ssh user <usuario> authentication-type rsa
ssh user <usuario> assign rsa-key <nome-da-chave>
ssh user <usuario> service-type all
commit

4 - Troubleshooting

  1. Se houver a necessidade de realizar um troubleshooting para analisar as configurações, use os comandos abaixo.
  2. É importante ressaltar que programas de gerenciamento de acesso SSH (Putty, MobaXterm etc) precisam estar atualizados, caso contrário bugs e incompatibilidades podem surgir.
  3. Dependendo da versão do VRP utilizada, alguns comandos e suas sintaxes podem variar. Consulte a documentação correspondente à versão do seu equipamento antes de aplicar as configurações.
  4. Lembre-se de configurar a chave privada em seu programa de gerenciamento de acesso SSH, no caso do Putty gere uma nova chave no formato que ele aceita (.ppk).

Roteador

display ssh user-information <usuario>
display rsa peer-public-key brief
display rsa peer-public-key name <nome-da-chave>

Linux

ssh -i ~/.ssh/<nome-da-chave> -p <porta-ssh> <usuario>@<ip-do-equipamento>

Autor: Erick Andrade