GNU/Linux >> Linux Esercitazione >  >> Linux

Utilizzo del comando SSH nei sistemi Linux/Unix

Qualsiasi utente Linux attento alla sicurezza utilizzerà sempre il protocollo SSH durante la connessione ai server. Questo perché SSH è un protocollo sicuro che crittografa i dati o le informazioni inviate sulla rete. SSH ha sostituito i protocolli più vecchi e insicuri negli anni '90 come telnet e rlogin. In questa guida, esaminiamo l'utilizzo dei comandi SSH con esempi.

Per impostazione predefinita, SSH viene eseguito sulla porta TCP/IP 22

Verifica se il servizio SSH è in esecuzione su un sistema Linux

Se sei attualmente connesso a un sistema Linux e vuoi controllare se SSH è in esecuzione, esegui il comando

# systemctl status sshd

Risultato campione

Inoltre, puoi controllare che ssh sia in ascolto sulla porta 22 del tuo server usando netstat comando come mostrato

# netstat -pnltu

Risultato campione

Le due tecniche hanno confermato che il protocollo SSH è in esecuzione sulla porta 22.

Accesso a un sistema remoto tramite SSH

Per accedere a un sistema remoto come utente root da una macchina Linux, utilizzare la sintassi seguente:

# ssh root@host-ip-address 

Ad esempio, accederò a un PC Debian remoto IP 173.82.208.144

# ssh [email protected]

Se ti connetti per la prima volta, vedrai il seguente messaggio

Digita yes per aggiungere il server all'elenco di known_hosts situato in ~/.ssh/known_hosts

Ogni server è costituito da una chiave host che è una chiave crittografica. Questa chiave viene utilizzata per autenticare i sistemi utilizzando il protocollo SSH.

Successivamente, ti verrà richiesta la password del sistema remoto. Fornisci la password e premi "INVIO" per accedere al sistema.

Accesso a un sistema come utente normale

A volte, potresti voler accedere a un sistema remoto utilizzando l'account di un utente normale se l'accesso root remoto è disabilitato. per fare ciò, segui la sintassi seguente

# ssh username@host-ip-address

O

# ssh -l username host-ip-address

Per accedere come utente 'john' residente sul sistema Debian remoto, eseguire il comando

# ssh [email protected] 

Risultato campione

Puoi ottenere la stessa cosa usando il comando seguente.

# ssh -l john 173.82.208.144

Risultato campione

Configurazione dell'autenticazione senza password

A volte, potresti dover accedere costantemente ai tuoi sistemi remoti o potresti avere servizi che potrebbero richiedere l'accesso a questi sistemi. L'autenticazione tramite password può comportare perdite di tempo o ostacolare l'accesso alle applicazioni automatizzate che richiedono l'accesso ai sistemi remoti. Per questo motivo, è conveniente configurare un'autenticazione SSH senza password sui tuoi server remoti.

Passaggio 1:genera chiavi SSH

Il primo passo sarà generare chiavi SSH sul server usando il comando:

# ssh-keygen

Risultato campione


quando richiesto ad ogni passaggio, premi semplicemente 'INVIO' per mantenere le impostazioni predefinite

La chiave pubblica:id_rsa.pub – viene salvato in ~/.ssh/ directory

Fase 2:copia della chiave pubblica SSH sul client remoto

Il passaggio successivo consisterà nel copiare la chiave pubblica generata nel sistema client remoto. Per fare ciò, utilizzeremo ssh-copy-id comando. Il comando copia la chiave SSH sul client remoto come chiave autorizzata. Ciò consente successivi accessi automatici senza password.

# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

Risultato campione

Ora puoi accedere senza problemi al sistema Debian remoto senza che ti venga richiesta una password

Risultato campione

La chiave pubblica viene salvata nel sistema client in ~/.ssh/authorized_keys file.

ALCUNI PUNTI DA NOTARE

  1. I client SSH memorizzano le chiavi host sui sistemi a cui sono connessi. Queste chiavi sono denominate known host keys e sono memorizzati nel ~/.ssh/ directory.
  2. Le chiavi private – id_rsa dovrebbe essere accessibile solo all'utente root e non dovrebbe essere copiato su nessun sistema. Se divulgato a un'altra terza parte, ciò potrebbe portare ad attacchi man-in-the-middle in cui i sistemi client possono essere compromessi dagli hacker.

Linux
  1. Comando Linux Cat:utilizzo ed esempi

  2. Il comando AWK di Linux:esempi di sintassi di utilizzo di Linux e Unix

  3. Comando Linux df

  4. UNIX / Linux:10 esempi di comandi Netstat

  5. 10 Esempi di comandi Xargs in Linux / UNIX

comando mkdir in Linux/Unix

Comando Grep in Linux/UNIX

comando ls in Linux/UNIX

comando cp in Linux/UNIX

Trova comando in Linux/UNIX

Utilizzo dei comandi Telnet in Linux/Unix