Como instalar e configurar o servidor SSH no Debian Linux?

Instalar e testar o servidor SSH

Você precisa ser root para fazer o seguinte…

su

  1. Instalar o servidor SSH

    apt install openssh-server
     

  2. Verifique se existe o processo do servidor. Isto indica a instalação foi bem.

    ps -A | grep sshd

    Saída (ou similar): 1753 ? 00:00:00 sshd

     

  3. Instalar cliente SSH para verificar a conexão SSH Servidor

    apt install openssh-client

    Ligue para localhost para testar conexão

    ssh localhost

    Também login com o endereço IP da interface

    Obter endereço IP

    ip addr

    SSH para o endereço ip

    ssh {ipaddress here}
     

Protegendo o servidor SSH

É uma boa idéia para proteger o servidor SSH, não permitindo raiz para acessar e configurar o login apenas por isto é a chave pública. faça o login usando senhas não é permitido

Certifique-se de executar os seguintes comandos como o usuário e não como root

  1. Navegue até o diretório home do usuário

    cd
     

  2. Verifique se existe .ssh

    ls -a
     

  3. Se .ssh não existe, criá-lo

    mkdir .ssh
     

  4. Defina a permissão pasta para 700

    chmod 700 .ssh
     

  5. Criar o arquivo authorized_keys

    touch ./.ssh/authorized_keys
     

  6. Permissão Alterar no arquivo authorized_keys para 600

    chmod 600 ./.ssh/authorized_keys
     

  7. Abra o arquivo authorized_keys

    nano ./.ssh/authorized_keys
     

  8. Cole sua chave pública no arquivo

    Você pode obter a sua chave pública do cliente SSH. Se o cliente é o Windows 10 em seguida, será na %USERPROFILE%/.ssh/id_rsa.pub Arquivo. Se o cliente é Debian, em seguida, a chave pública é ~/.ssh/id_rsa.pub.

    Se sua chave pública não existe, gerá-lo na máquina do cliente

    ssh-keygen -t rsa -C "email@domain.com"
     

  9. Mudança para o usuário root

    su

  10. Configure seu servidor SSH para aceitar somente logins de chave pública e impedir o login para o root

    nano /etc/ssh/sshd_config

    Descomentar e / ou editar as seguintes linhas

    PermitRootLogin no
    StrictModes yes
    PubkeyAuthentication yes
    AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
    PasswordAuthentication no
     

  11. Reinicie o serviço sshd

    service sshd restart
     

  12. Tente fazer login como raiz do seu cliente SSH usando a senha

    ssh root@{ssh server ip address}

    Saída: Permission denied (publickey).

     

  13. Tente fazer o login como nome de usuário do seu cliente SSH usando a senha

    ssh username@{ssh server ip address}

    Saída: Permission denied (publickey).

     

  14. Tente fazer login como raiz do seu cliente SSH usando a chave pública

    ssh root@{ssh server ip address} -i .ssh/id_rsa

    Saída: Permission denied (publickey).

     

  15. Faça login como nome de usuário do seu cliente SSH usando a chave pública

    ssh username@{ssh server ip address} -i .ssh/id_rsa
     

Se o seu cliente SSH tem um endereço IP estático, então você pode querer considerar apenas o seu endereço de IP pode fazer o login com o servidor SSH.