Jinsi ya kufunga na configure SSH server juu ya Debian Linux?

Kufunga na upimaji SSH Server

You will need to be root to do the following

su

  1. Kufunga SSH Server

    apt install openssh-server
     

  2. Angalia kama mchakato server ipo. Hii inaonyesha kufunga akaenda vizuri.

    ps -A | grep sshd

    pato (au zinazofanana): 1753 ? 00:00:00 sshd

     

  3. Kufunga SSH mteja kuangalia uhusiano SSH Server

    apt install openssh-client

    Unganisha na kupangisha karibu mtihani uhusiano

    ssh localhost

    Pia kuingia kwa IP interface

    Kupata Anwani ya IP

    ip addr

    SSH kwa anwani ya IP

    ssh {ipaddress here}
     

Securing the SSH Server

It is a good idea to secure the SSH server by disallowing root to login and configuring login only by public key i.e. login using passwords is not allowed

Ensure to execute the following commands as your user and not as root

  1. Navigate to the user home directory

    cd
     

  2. Angalia kama .ssh ipo

    ls -a
     

  3. Kama .ssh haipo, kuunda

    mkdir .ssh
     

  4. Kuweka folder ruhusa ya 700

    chmod 700 .ssh
     

  5. Kujenga authorized_keys faili

    touch ./.ssh/authorized_keys
     

  6. Badilisha ruhusa ya authorized_keys faili 600

    chmod 600 ./.ssh/authorized_keys
     

  7. Fungua authorized_keys faili

    nano ./.ssh/authorized_keys
     

  8. Bandika muhimu yako ya umma katika faili

    Unaweza kupata ufunguo wako wa umma kutoka SSH mteja. Kama mteja ni Windows 10 basi itakuwa katika %USERPROFILE%/.ssh/id_rsa.pub file. Kama mteja ni Debian kisha ufunguo wa umma ni ~/.ssh/id_rsa.pub.

    If your public key does not exist, generate it on the client machine

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

  9. Change to root user

    su

  10. Configure your SSH server to accept only public key logins and prevent login for root

    nano /etc/ssh/sshd_config

    Uncomment and/or edit the following lines

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

  11. Restart the sshd service

    service sshd restart
     

  12. Try logging in as root from your SSH client using password

    ssh root@{ssh server ip address}

    pato: Permission denied (publickey).

     

  13. Try logging in as username from your SSH client using password

    ssh username@{ssh server ip address}

    pato: Permission denied (publickey).

     

  14. Try logging in as root from your SSH client using the public key

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

    pato: Permission denied (publickey).

     

  15. Log in as username from your SSH client using the public key

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

If your SSH client has a static IP address then you may want to consider only your IP address can login to the SSH server.