How to Setup Passwordless SSH Login

Secure Shell (SSH) é um protocolo de rede criptográfica usado para conexão segura entre um cliente e um servidor e suporta vários mecanismos de autenticação. Os dois mecanismos mais populares são autenticação baseada em senhas e autenticação baseada em chave pública.

neste tutorial, vamos mostrar-lhe como configurar uma autenticação baseada em chaves SSH, bem como como se ligar ao seu servidor Linux sem introduzir uma senha.,

configurar a autenticação SSH sem senhas #

para configurar uma autenticação SSH sem senhas no Linux tudo o que você precisa fazer é gerar uma chave de autenticação pública e adicioná-la às máquinas remotas ~/.ssh/authorized_keys ficheiro.

as seguintes etapas irão descrever o processo para configurar a autenticação SSH sem senhas:

  1. verifique se existe um par de chaves SSH.

    antes de gerar um novo par de chaves SSH, verifique primeiro se já tem uma chave SSH na sua máquina cliente porque não quer sobrepor as suas chaves existentes.,

    Execute o seguinte comando ls para ver se as chaves SSH estão presentes:

    ls -al ~/.ssh/id_*.pub

    Se não existem teclas, você pode usar os e avance para o próximo passo ou para o backup (cópia de segurança as chaves antigas e gerar uma nova.

    Se você ver No such file or directory ou no matches found isso significa que você não tem uma chave SSH e você pode continuar com a próxima etapa e gerar uma nova.

  2. gerar um novo par de chaves SSH.,

    O seguinte comando irá gerar um novo 4096 bits de chave SSH par com o seu endereço de e-mail como comentário:

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

    Pressione Enter para aceitar o local padrão do arquivo e nome do arquivo:

    Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

    em seguida, ssh-keygen ferramenta vai pedir que você digite uma senha segura. Se deseja usar a frase-senha, depende de si, se optar por usar a frase-senha, obterá uma camada extra de segurança., Na maioria dos casos, desenvolvedores e administradores de sistemas usam SSH sem uma frase-senha porque eles são úteis para processos totalmente automatizados. Se não quiser usar uma frase-senha, basta carregar em Enter.,

    Enter passphrase (empty for no passphrase):

    toda A interação parecido com este:

    certifique-se de que as chaves SSH são gerados você pode listar suas novas chaves privadas e públicas com:

    ls ~/.ssh/id_*
    /home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub
  3. Copiar a chave pública

    Agora que você tem gerado um par de chaves SSH, a fim de ser capaz de acessar o servidor sem uma senha, você precisa copiar a chave pública para o servidor que você deseja gerenciar.,

    A maneira mais fácil de copiar a sua chave pública para o seu servidor é usar um comando chamado . Em sua máquina local tipo de terminal:

    ssh-copy-id remote_username@server_ip_address

    Você será solicitado a inserir o remote_username senha:

    remote_username@server_ip_address's password:

    uma Vez que o usuário é autenticado, a chave pública será acrescentado para o utilizador remoto authorized_keys arquivo e a conexão será fechada.,

    Se por algum motivo o ssh-copy-id utilitário não está disponível no seu computador local, você pode usar o seguinte comando para copiar a chave pública:

    cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
  4. início de sessão para o servidor usando chaves SSH

    Depois de concluir as etapas acima, você deve ser capaz de fazer logon no servidor remoto sem ser solicitado para uma senha.

    para testá-lo, basta tentar entrar no seu servidor através de SSH:

    ssh remote_username@server_ip_address

    Se tudo correu bem, você será logado imediatamente.,

desactivar a autenticação de senha do SSH #

para adicionar uma camada extra de segurança ao seu servidor, poderá desactivar a autenticação de senha do SSH.

Antes de desactivar a autenticação de senha do SSH, certifique-se que consegue entrar no seu servidor sem uma senha e que o utilizador com quem se está a registar tem privilégios de sudo.,torials descrevem como configurar o sudo acesso:

  • Como criar sudo usuário no Ubuntu
  • Como criar sudo usuário no CentOS
  • Como criar sudo usuário no Debian
  1. faça login em seu servidor remoto com chaves SSH, ou como um usuário com privilégios sudo ou root:

    ssh sudo_user@server_ip_address
  2. Abra o ficheiro de configuração do SSH /etc/ssh/sshd_config, procure as seguintes diretrizes e modificar como segue:

    /etc/ssh/sshd_config
    PasswordAuthentication noChallengeResponseAuthentication noUsePAM no

    uma Vez que você é feito salve o arquivo e reinicie o serviço de SSH.,

    No Ubuntu ou Debian, servidores, execute o seguinte comando:

    sudo systemctl restart ssh

    No CentOS ou Fedora servidores, execute o seguinte comando:

    sudo systemctl restart sshd

Conclusão #

neste tutorial você aprendeu como configurar uma chave SSH, base de autenticação, permitindo que você faça o login em seu servidor remoto sem fornecer uma senha de usuário. Você pode adicionar a mesma chave para vários serviços remotos.

também lhe mostramos como desactivar a autenticação de senha SSH e adicionar uma camada extra de segurança ao seu servidor.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *