Hoe te installeren en configureren van SSH-server op Debian Linux?

Het installeren en testen van de SSH-server

Je moet root zijn om het volgende te doen:…

su

  1. Installeer SSH-server

    apt install openssh-server
     

  2. Controleer of de server proces bestaat. Dit geeft aan dat de installatie goed verlopen.

    ps -A | grep sshd

    uitgang (of iets dergelijks): 1753 ? 00:00:00 sshd

     

  3. Installeer SSH Client naar de SSH-server verbinding te controleren

    apt install openssh-client

    Verbinding maken met localhost om verbinding te testen

    ssh localhost

    Ook inloggen met de interface IP-adres

    IP-adres ophalen

    ip addr

    SSH naar het ip adres

    ssh {ipaddress here}
     

De SSH-server beveiligen

Het is een goed idee om de SSH-server te beveiligen door root niet toe te staan ​​om in te loggen en login alleen te configureren met een openbare sleutel, d.w.z.. inloggen met wachtwoorden is niet toegestaan

Zorg ervoor dat u de volgende opdrachten uitvoert als uw gebruiker en niet als root:

  1. Navigeer naar de basismap van de gebruiker

    cd
     

  2. Controleer of .ssh bestaat

    ls -a
     

  3. Als .ssh bestaat niet, creëer het

    mkdir .ssh
     

  4. Stel de map toestemming om 700

    chmod 700 .ssh
     

  5. Maak het bestand Authorized_keys

    touch ./.ssh/authorized_keys
     

  6. Wijzig de machtiging voor het bestand Authorized_keys in 600

    chmod 600 ./.ssh/authorized_keys
     

  7. Open het bestand Authorized_keys

    nano ./.ssh/authorized_keys
     

  8. Plak uw openbare sleutel in het bestand

    U kunt uw openbare sleutel ophalen van de SSH-client. If the client is Windows 10 dan is het in de %USERPROFILE%/.ssh/id_rsa.pub het dossier. If the client is Debian then the public key is ~/.ssh/id_rsa.pub.

    Als uw openbare sleutel niet bestaat, genereer het op de clientcomputer

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

  9. Verander naar root

    su

  10. Configureer uw SSH-server om alleen aanmeldingen met openbare sleutels te accepteren en aanmelding voor root te voorkomen

    nano /etc/ssh/sshd_config

    Verwijder commentaar en/of bewerk de volgende regels

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

  11. Start de sshd-service opnieuw

    service sshd restart
     

  12. Probeer in te loggen als root vanaf uw SSH-client met wachtwoord

    ssh root@{ssh server ip address}

    uitgang: Permission denied (publickey).

     

  13. Probeer in te loggen als gebruikersnaam van uw SSH-client met wachtwoord

    ssh username@{ssh server ip address}

    uitgang: Permission denied (publickey).

     

  14. Probeer in te loggen als root vanaf uw SSH-client met behulp van de openbare sleutel

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

    uitgang: Permission denied (publickey).

     

  15. Log in als gebruikersnaam van uw SSH-client met behulp van de openbare sleutel

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

Als uw SSH-client een statisch IP-adres heeft, wilt u misschien overwegen dat alleen uw IP-adres kan inloggen op de SSH-server.