Più modi per proteggere il server SSH

Più modi per proteggere il server SSH
Secure Shell è un protocollo di comunicazione di rete utilizzato per la comunicazione crittografata e l'amministrazione remota tra client e server. È un protocollo multiuso che può essere usato per fare molto di più della semplice somministrazione remota. Questo protocollo comunica in modo sicuro su una rete non sicura usando la crittografia asimmetrica. La crittografia asimmetrica è una forma di crittografia in cui le chiavi pubbliche e private vengono utilizzate per crittografare e decrittografare i dati. Per impostazione predefinita Ssh comunica attraverso la porta 22 ma può essere cambiato. In questo blog tratteremo diversi modi per proteggere Ssh server.

Modi diversi per proteggere il server SSH

Tutta l'impostazione di configurazione di Ssh Il server può essere fatto modificando ssh_config file. Questo file di configurazione può essere letto digitando il comando seguente nel terminale.

ubuntu@ubuntu: ~ $ cat/etc/ssh/ssh_config

Nota: prima di modificare questo file, è necessario avere privilegi di root.

Ora discutiamo di diversi modi per assicurarci Ssh server. Di seguito sono riportati alcuni metodi che possiamo applicare per fare il nostro Ssh server più sicuro

  • Modificando il default Ssh Porta
  • Utilizzando una password forte
  • Usando la chiave pubblica
  • Permettendo a un singolo IP di accedere
  • Disabilitare la password vuota
  • Usando il protocollo 2 per Ssh server
  • Disabilitando l'inoltro X11
  • Impostazione di un timeout inattivo
  • Impostazione di una password limitata

Ora discutiamo di tutti questi metodi uno per uno.

Modificando la porta SSH predefinita

Come descritto in precedenza, per impostazione predefinita Ssh Utilizza la porta 22 per la comunicazione. È molto più facile per gli hacker hackerare i tuoi dati se sanno quale porta viene utilizzata per la comunicazione. Puoi proteggere il tuo server modificando il valore predefinito Ssh porta. Per cambiare il Ssh Porta, aperto sshd_config File usando nano editor eseguendo il seguente comando in terminale.

ubuntu@ubuntu: ~ $ nano/etc/ssh/ssh_config

Trova la riga in cui il numero di porta è menzionato in questo file e rimuovi il # firmare prima "Porta 22" e modifica il numero di porta nella porta desiderata e salva il file.

Utilizzando una password forte

La maggior parte dei server viene violato a causa di una password debole. È più probabile che una password debole venga hackerata facilmente dagli hacker. Una password forte può rendere il tuo server più sicuro. Di seguito sono riportati i suggerimenti per una password forte

  • Usa una combinazione di lettere maiuscole e minuscole
  • Usa i numeri nella tua password
  • Usa una password lunga
  • Usa caratteri speciali nella tua password
  • Non utilizzare mai il tuo nome o la data di nascita come password

Utilizzo della chiave pubblica per proteggere il server SSH

Possiamo accedere al nostro Ssh server usando due modi. Uno sta usando la password e l'altro sta utilizzando la chiave pubblica. L'uso della chiave pubblica per l'accesso è molto più sicuro rispetto all'utilizzo di una password per accedere Ssh server.

Una chiave può essere generata eseguendo il seguente comando in terminale

ubuntu@ubuntu: ~ $ ssh-keygen

Quando esegui il comando sopra, ti chiederà di inserire il percorso per le chiavi private e pubbliche. La chiave privata sarà salvata da "Id_rsa" il nome e la chiave pubblica saranno salvati da “Id_Rsa.pub" nome. Per impostazione predefinita la chiave verrà salvata nella directory seguente

/home/nome utente/.SSH/

Dopo aver creato una chiave pubblica, utilizzare questa chiave per configurare Ssh Accedi con la chiave. Dopo essersi assicurato che la chiave stia lavorando per accedere al tuo Ssh server, ora disabilita l'accesso basato sulla password. Questo può essere fatto modificando il nostro ssh_config file. Apri il file nell'editor desiderato. Ora rimuovi il # Prima "PassAterighenticazione Sì" e sostituirlo con

Passwordautenticazione n

Adesso tuo Ssh Il server è possibile accedere solo a chiave pubblica e l'accesso tramite password è stato disabilitato

Permettendo a un singolo IP di accedere

Per impostazione predefinita puoi Ssh nel tuo server da qualsiasi indirizzo IP. Il server può essere reso più sicuro consentendo a un singolo IP di accedere al server. Questo può essere fatto aggiungendo la seguente riga nel tuo ssh_config file.

Ascoltaddress 192.168.0.0

Questo bloccherà tutti gli IP per accedere al tuo Ssh server diverso dall'IP inserito (i.e. 192.168.0.0).

Nota: immettere l'IP della macchina al posto di “192.168.0.0 ".

Disabilitare la password vuota

Non consentire mai l'accesso Ssh Server con password vuota. Se è consentita la password vuota, è più probabile che il tuo server venga attaccato dagli aggressori della forza bruta. Per disabilitare l'accesso a password vuota, apri ssh_config file e apportare le seguenti modifiche

AmistEmptyPasswords n

Utilizzo del protocollo 2 per il server SSH

Protocollo precedente utilizzato per Ssh è ssh 1. Per impostazione predefinita il protocollo è impostato su SSH 2 ma se non è impostato su SSH 2, è necessario cambiarlo in SSH 2. Il protocollo SSH 1 ha alcuni problemi relativi alla sicurezza e questi problemi sono stati risolti nel protocollo SSH 2. Per cambiarlo, modifica ssh_config file come mostrato di seguito

Protocollo 2

Disabilitando l'inoltro X11

La funzione di inoltro X11 fornisce un'interfaccia utente grafica (GUI) del tuo Ssh server all'utente remoto. Se l'inoltro X11 non è disabilitato, quindi qualsiasi hacker, che ha violato la tua sessione SSH, può facilmente trovare tutti i dati nel server. Puoi evitarlo disabilitando l'inoltro X11. Questo può essere fatto cambiando il ssh_config file come mostrato di seguito

X11forwarding n

Impostazione di un timeout inattivo

Timeout inattivo significa che se non fai alcuna attività nel tuo Ssh server per un intervallo di tempo specifico, ti disconnetti automaticamente dal server

Possiamo migliorare le misure di sicurezza per il nostro Ssh server impostando un timeout inattivo. Per esempio Ssh Il tuo server e dopo un po 'di tempo ti impegni a svolgere altre attività e dimentica di logout della tua sessione. Questo è un rischio di sicurezza molto elevato per il tuo Ssh server. Questo problema di sicurezza può essere superato impostando un timeout inattivo. Il timeout inattivo può essere impostato modificando il nostro ssh_config file come mostrato di seguito

ClienaliveInterval 600

Impostando il timeout del minimo su 600, la connessione SSH verrà eliminata dopo 600 secondi (10 minuti) di non alcuna attività.

Impostazione di una password limitata

Possiamo anche fare il nostro Ssh Server Secure impostando un numero specifico di tentativi di password. Questo è utile contro gli aggressori della forza bruta. Possiamo impostare un limite per i tentativi di password modificando ssh_config file.

Maxauthtries 3

Riavvio del servizio SSH

Molti dei metodi di cui sopra devono riavviare Ssh servizio dopo averli applicati. Possiamo riavviare Ssh Servizio digitando il seguente comando nel terminale

ubuntu@ubuntu: ~ $ servizio ssh riavvio

Conclusione

Dopo aver applicato le modifiche di cui sopra al tuo Ssh server, ora il tuo server è molto più sicuro di prima e non è facile per un attaccante della forza bruta Ssh server.