GNU/Linux >> Linux Esercitazione >  >> Linux

Come configurare le chiavi SSH su Debian

Esistono 2 metodi per accedere a SSH, uno è basato su password e l'altro è basato su chiave. L'autenticazione basata su chiave SSH ha lo scopo di fornire un modo sicuro per accedere a un server con chiave privata e pubblica.

In questa guida imparerai i seguenti modi per proteggere la tua macchina Debian.

  1. Crea nuovo utente con privilegi sudo
  2. Disabilita l'autenticazione basata su password
  3. Genera chiavi SSH
  4. Configura la chiave SSH per l'utente
  5. Disabilita la richiesta della password durante l'utilizzo di sudo

Fase 1:crea un nuovo utente

Puoi saltare questo se hai già creato l'utente.

Crea un nuovo utente con password disabilitata utilizzando il seguente comando.

sudo adduser username --disabled-password

Segui le istruzioni e conferma con Y , che crea l'utente con la directory home dell'utente in /home/username .

Concedi l'accesso sudo al nuovo utente

Aggiungi il nuovo utente al gruppo sudo in modo che l'utente disponga dei privilegi di amministratore per eseguire i comandi.

sudo usermod -aG sudo username

Ora hai un nuovo utente con diritti sudo e password disabilitati.

Passaggio 2:Disattiva l'autenticazione tramite password per l'utente

Modifica il /etc/ssh/sshd_config per configurare l'autenticazione.

sudo nano /etc/ssh/sshd_config

Aggiungi quanto segue all'ultimo.

Match User username
    PasswordAuthentication no

Salva il file e riavvia SSH.

sudo systemctl restart ssh

Ora l'utente non può accedere utilizzando la password.

Fase 3:genera la chiave SSH

Accedi come l'utente che hai creato sopra.

sudo su username

Crea un nuovo .ssh directory per tenere i tasti ssh e navigare al suo interno.

Non usare sudo qui dentro.

mkdir .ssh
cd .ssh

Crea chiavi SSH.

ssh-keygen -m PEM -t rsa -b 4096 -C "your_email"

Qui ho usato PEM formato per generare una chiave basata su RSA. Se il -m PEM viene rimosso potrebbe generare la chiave OpenSSH.

Quando richiesto, fornisci il nome della chiave.

Salta la passphrase e completa la configurazione.

Ora dovresti avere 2 file all'interno della tua directory .ssh.

filename.pub
filename

Il filename.pub è la tua chiave pubblica e il filename è la tua chiave privata.

Fase 4:configura la chiave SSH per l'accesso SSH.

Per consentire la connessione SSH devi aggiungere la chiave pubblica al authorized_keys file.

cat filename.pub >> authorized_keys

Questo comando creerà un file chiamato authorized_keys e aggiungi il contenuto della chiave pubblica.

Copia il contenuto della chiave privata, puoi fare l'autenticazione al server usando questo.

cat filename

Questo comando restituisce il contenuto della tua chiave privata. Salvalo per l'autenticazione.

Passaggio 5:disabilita la richiesta della password durante l'utilizzo di sudo

Per impostazione predefinita, quando esegui comandi basati su sudo con un altro utente, il sistema richiede di inserire la password per l'utente.

Poiché non utilizziamo la password, dobbiamo disabilitarla.

Esci dalla shell utente e torna alla shell di root.

Esegui il comando per inserire visudo .

sudo visudo

Aggiungi quanto segue all'ultimo.

username ALL=(ALL) NOPASSWD: ALL

Salva il file ed esci.

Questo è tutto. Ora hai un utente che può accedere solo utilizzando le chiavi SSH.


Linux
  1. Come impostare le chiavi SSH

  2. Configura le chiavi SSH sul sistema Debian 9 - Come farlo?

  3. Come configurare le chiavi SSH su Ubuntu 16.04

  4. Come configurare le chiavi SSH su Ubuntu 18.04

  5. Come usare ssh come un altro utente

Come configurare le chiavi SSH su CentOS 7

Come configurare le chiavi SSH su Debian 9

Come configurare le chiavi SSH su Debian 10

Come impostare un IP statico su Debian 11

Come configurare le chiavi SSH su Debian 11 Linux

Come rendere un utente un amministratore in Debian 11