Come limitare il numero di accessi attivi per utente?


12

Come posso limitare il numero di accessi attivi per utente?

L'ho già visto su vari server in precedenza e mi chiedevo come avrei potuto configurarlo da solo. Forse in questi casi, questo è stato ottenuto limitando il numero di accessi SSH attivi per utente? E immagino che sarebbe la strada da percorrere. Come lo configurerei?

Risposte:


10

/etc/security/limits.conf, almeno su Debian. Il percorso può variare leggermente in base alla distribuzione. C'è un esempio nel file per limitare tutti i membri del studentgruppo a 4 accessi (commentati):

#<domain>      <type>   <item>          <value>
@student       -        maxlogins       4

Potresti fare *invece di un gruppo, ma assicurati di non colpire gli utenti che non vuoi limitare (ad esempio, un membro dello staff)


3
Per googler veloci: @studentindica i membri del gruppo "studente". Per limitare solo l'utente "studente", rimuovere " @" dall'inizio.
Peter - Ripristina Monica il

5

Secondo l' uomo di limits.confvoi è possibile impostare restrizioni in /etc/security/limits.conf:

maxsyslogins 
maximum number of all logins on system 

Quindi puoi impostare (2 accessi):

* hard maxsyslogins 2

In un altro post si dice di non usare /etc/security/limits.conf. Non sono riuscito a trovare nulla di correlato a questo, tranne che il valore impostato nel /etc/security/limits.d/*.conffile sovrascriverà lo stesso valore in /etc/security/limits.conf.

Da man pag di pam_limits :

Per impostazione predefinita, i limiti sono tratti dal file di configurazione /etc/security/limits.conf. Quindi vengono letti i singoli file * .conf dalla directory /etc/security/limits.d/. I file vengono analizzati uno dopo l'altro nell'ordine delle impostazioni internazionali "C". L'effetto dei singoli file è lo stesso che se tutti i file fossero concatenati insieme nell'ordine di analisi. Se un file di configurazione viene esplicitamente specificato con un'opzione del modulo, i file nella directory sopra non vengono analizzati.


maxsyslogins è il limite totale, non quello per utente che è stato chiesto ...
Gert van den Berg

1

Sui moderni sistemi GNU / Linux, pam_limitspuò limitare il numero di sessioni per utente.

Per limitare il numero di sessioni per utente, puoi aggiungere voci a un file in /etc/limits.d/(ad esempio /etc/limits.d/maxlogins.conf)

# Some of the lines in this sample might conflict and overwrite each other
# The whole range is included to illustrate the possibilities
#limit users in the users group to two logins each
@users       -       maxlogins     2
#limit all users to three logins each
*            -       maxlogins     3
#limit all users except root to 20 simultaneous logins in total
*            -       maxsyslogins     20
#limit in the users group to 5 logins in total
%users       -       maxlogins     2
#limit all users with a GID >= 1000 to two logins each
1000:        -       maxlogins     2
#limit user johndoe to one login
johndoe      -       maxlogins     2

Altri sistemi operativi e sistemi simili a Unix senza il modulo pam_limits sarebbero diversi.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.