Miglior approccio per limitare la sessione ssh remota

5

Utilizzando i seguenti file, ho tentato di limitare il login remoto SSH. Avendo mancanza di conoscenza in ambiente Linux, non conosco gli svantaggi e le vulnerabilità tra i seguenti modi. Quindi voglio sapere i lavori interni tra questi file e il processo.

Per favore, condividi la tua esperienza con me.

sshd_config    Ho trovato questo file ssh_config nella cartella / etc / ssh /. Se ho aggiunto la seguente riga. Potrei limitare l'accesso remoto dell'utente root e potrei consentire all'utente con cui voglio accedere con la sessione max desiderata.

vim /etc/ssh/ssh_config    
PermitRootLogin no
AllowUsers jack joe
MaxSessions 5

File HostDeny

È stato aggiunto l'IP dell'utente nel seguente file.

vim /etc/hosts.deny

192.168.5.*

Cartella PAM: Nella cartella PAM, ho aggiunto all'utente che non sono autorizzati ad autenticarsi per accedere a ssh remoto.

vi /etc/pam.d/ssh

auth required pam_listfile.so item=user sense=deny file=/etc/sshd/sshd.deny onerr=succeed

vi /etc/sshd/sshd.deny
    
posta ArunRaj 19.03.2014 - 08:22
fonte

3 risposte

6
PermitRootLogin no
AllowUsers jack joe
MaxSessions 5

Le prime 2 righe di quella configurazione mi sembrano perfette. Il terzo non è così necessario come se qualcuno si rompe nel tuo sistema, è sufficiente avere 1 shell per fare tutto il male.

In questo contesto, stai permettendo a due soli utenti di connettersi, il che significa che quegli utenti dovranno usare una password abbastanza sicura per non irrompere (almeno non facilmente).

Ci sono altre cose che puoi fare:

  • Se utilizzi un intervallo limitato di IP da cui ti colleghi al tuo computer, limita la porta 22 solo a questi intervalli. Elimina / rifiuta il resto.

  • In caso contrario, è possibile utilizzare GeoIP con iptables per Rifiuta tutti i Paesi dai quali non ti aspetti connessioni (o detto diversamente, ammetti solo quelli che ti aspetti).

  • Ci sono altri strumenti che potrebbero aiutarti: Fail2Ban è uno di questi. Ciò si verificherà con X tentativi configurabili con password errata nel tuo sistema, l'IP verrà bannato da iptables per un periodo di tempo (anche configurabile).

  • Ci sono centinaia di strumenti simili ma questo sarebbe un approccio abbastanza buono per avere una configurazione sostanzialmente coerente.

risposta data 19.03.2014 - 09:18
fonte
2

Si dovrebbe anche considerare di cambiare la porta su cui il demone SSH è in ascolto.

Sebbene si tratti più di un'offuscamento piuttosto che di una vera misura di sicurezza, riduce decisamente la quantità di voci di registro che è necessario dare un'occhiata, dato che non sei sotto costante bombardamento da parte di bot.

Esiste un altro concetto noto come Port knocking . L'idea è la stessa. Non aggiunge necessariamente sicurezza reale, ma mantiene puliti i file di registro.

Entrambe queste misure ti consentono di concentrarti sulle voci di registro più importanti e verificare se sembrano legittime.

    
risposta data 19.03.2014 - 14:00
fonte
1

File / etc / ssh / ssh_config è una configurazione globale per i client SSH. / etc / ssh / sshd_config serve per configurare il server SSH. Assicurati di modificare quello giusto.

Quando si specifica "AllowUsers", SSH nega automaticamente l'accesso da tutti gli utenti non elencati. Non è necessario un file PAM. Se hai letto la pagina man, dovresti saperlo. "man sshd_config".

Fail2ban è ottimo e lo uso da solo. L'esecuzione del servizio SSH su una porta non standard renderà i file di registro più puliti, ma a un costo operativo maggiore a causa della configurazione SSH non standard (è necessario specificare manualmente la porta o utilizzare il file di configurazione client, locale o globale).

    
risposta data 20.03.2014 - 08:30
fonte

Leggi altre domande sui tag