Comment installer et configurer le serveur SSH sur Debian Linux?

Installation et test du serveur SSH

Vous devez être root pour effectuer les opérations suivantes…

su

  1. Installez serveur SSH

    apt install openssh-server
     

  2. Vérifiez si le processus serveur existe. Cela indique l'installation a été bien.

    ps -A | grep sshd

    Sortie (ou similaire): 1753 ? 00:00:00 sshd

     

  3. Installer le client SSH pour vérifier la connexion SSH Server

    apt install openssh-client

    Connectez-vous à localhost pour tester la connexion

    ssh localhost

    Identifiez-vous aussi avec l'adresse IP de l'interface

    Obtenir l'adresse IP

    ip addr

    SSH à l'adresse IP

    ssh {ipaddress here}
     

Sécurisation du serveur SSH

Il est une bonne idée de sécuriser le serveur SSH en prohibant root pour vous connecter et configurer la connexion que par i.e. clé publique. connexion à l'aide des mots de passe n'est pas autorisé

Assurez-vous d'exécuter les commandes suivantes en tant que votre utilisateur et non en tant que root

  1. Accédez à l'utilisateur répertoire

    cd
     

  2. Vérifiez si existe .ssh

    ls -a
     

  3. Si .ssh n'existe pas, créer

    mkdir .ssh
     

  4. Définissez l'autorisation de dossier 700

    chmod 700 .ssh
     

  5. Créez le fichier authorized_keys

    touch ./.ssh/authorized_keys
     

  6. L'autorisation de modification sur le fichier authorized_keys à 600

    chmod 600 ./.ssh/authorized_keys
     

  7. Ouvrez le fichier authorized_keys

    nano ./.ssh/authorized_keys
     

  8. Collez votre clé publique dans le fichier

    Vous pouvez obtenir votre clé publique du client SSH. If the client is Windows 10 alors il sera dans la %USERPROFILE%/.ssh/id_rsa.pub fichier. If the client is Debian then the public key is ~/.ssh/id_rsa.pub.

    Si votre clé publique n'existe pas, générer sur la machine client

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

  9. Changement à l'utilisateur root

    su

  10. Configurez votre serveur SSH pour accepter uniquement les connexions à clé publique et d'empêcher la connexion de root

    nano /etc/ssh/sshd_config

    Décommentez et / ou modifier les lignes suivantes

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

  11. Redémarrez le service sshd

    service sshd restart
     

  12. Essayez de vous connecter en tant que root de votre client SSH en utilisant le mot de passe

    ssh root@{ssh server ip address}

    Sortie: Permission denied (publickey).

     

  13. Essayez de vous connecter comme nom d'utilisateur de votre client SSH en utilisant le mot de passe

    ssh username@{ssh server ip address}

    Sortie: Permission denied (publickey).

     

  14. Essayez de vous connecter en tant que root de votre client SSH en utilisant la clé publique

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

    Sortie: Permission denied (publickey).

     

  15. Connectez-vous en tant que nom d'utilisateur de votre client SSH en utilisant la clé publique

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

Si votre client SSH dispose d'une adresse IP statique, vous pouvez considérer que votre adresse IP peut se connecter au serveur SSH.