Hur man installerar och konfigurera SSH-server på Debian Linux?

Installera och testa SSH-server

Du måste vara root för att göra följande…

su

  1. Installera SSH-server

    apt install openssh-server
     

  2. Kontrollera om serverprocessen existerar. Detta indikerar installationen gick bra.

    ps -A | grep sshd

    Produktion (eller liknande): 1753 ? 00:00:00 sshd

     

  3. Installera SSH Client att kontrollera SSH-server-anslutning

    apt install openssh-client

    Anslut till localhost för att testa anslutningen

    ssh localhost

    Också logga in med gränssnittet IP-adress

    Få IP-adress

    ip addr

    SSH till IP-adressen

    ssh {ipaddress here}
     

Säkra SSH-servern

Det är en bra idé att säkra SSH-servern genom att inte tillåta root att logga in och konfigurera inloggning endast med offentlig nyckel, dvs.. logga in med lösenord är inte tillåtet

Se till att köra följande kommandon som din användare och inte som root

  1. Navigera till användarens hemkatalog

    cd
     

  2. Kontrollera om .ssh existerar

    ls -a
     

  3. Om .ssh inte existerar, skapa det

    mkdir .ssh
     

  4. Ställ in mapp tillstånd att 700

    chmod 700 .ssh
     

  5. Skapa filen authorized_keys

    touch ./.ssh/authorized_keys
     

  6. Ändra behörighet för filen authorized_keys till 600

    chmod 600 ./.ssh/authorized_keys
     

  7. Öppna filen authorized_keys

    nano ./.ssh/authorized_keys
     

  8. Klistra in din publika nyckel i filen

    Du kan hämta din publika nyckel från SSH-klienten. If the client is Windows 10 då blir det i %USERPROFILE%/.ssh/id_rsa.pub fil. If the client is Debian then the public key is ~/.ssh/id_rsa.pub.

    Om din publika nyckel inte finns, generera den på klientdatorn

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

  9. Byt till rootanvändare

    su

  10. Konfigurera din SSH-server för att endast acceptera inloggningar med publika nyckel och förhindra inloggning för root

    nano /etc/ssh/sshd_config

    Avkommentera och/eller redigera följande rader

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

  11. Starta om sshd-tjänsten

    service sshd restart
     

  12. Försök att logga in som root från din SSH-klient med lösenord

    ssh root@{ssh server ip address}

    Produktion: Permission denied (publickey).

     

  13. Försök att logga in som användarnamn från din SSH-klient med lösenord

    ssh username@{ssh server ip address}

    Produktion: Permission denied (publickey).

     

  14. Försök att logga in som root från din SSH-klient med den publika nyckeln

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

    Produktion: Permission denied (publickey).

     

  15. Logga in som användarnamn från din SSH-klient med den publika nyckeln

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

Om din SSH-klient har en statisk IP-adress kanske du vill överväga att endast din IP-adress kan logga in på SSH-servern.