Pagina 1 di 2

Test per PAM

Inviato: mer 4 mar 2020, 10:39
da conraid
Sto provando PAM

Ho provato con questo esempio
https://www.tecmint.com/configure-pam-i ... ntu-linux/
a impedire il login di particolari utenti, ma naturalmente non funziona :)

Come potrei testarne il funzionamento?

Re: Test per PAM

Inviato: ven 6 mar 2020, 10:04
da rik70
conraid ha scritto:
mer 4 mar 2020, 10:39
Come potrei testarne il funzionamento?
Il classico modulo pam_limits?
Dal tuo utente:

Codice: Seleziona tutto

ulimit -r
dovrebbe restituirti '0'.

Se però aggiungi in /etc/security/limits.conf:

Codice: Seleziona tutto

<tuo_utente>	-	rtprio		95
oppure:

Codice: Seleziona tutto

@<gruppo_tuo_utente>	-	rtprio		95
il successivo

Codice: Seleziona tutto

ulimit -r
dovrebbe restituire '95'.

Re: Test per PAM

Inviato: ven 6 mar 2020, 11:14
da conraid
Così funziona, ora è 95.

Codice: Seleziona tutto

Dimenticavo di dire che SSH non riesco a farlo funzionare anche mettendo dentro /etc/security/access.conf 
+:root:127.0.0.1
+:conraid:ALL

# All other users should be denied to get access from all sources.
-:ALL:ALL
anche altri utenti si collegano.

In sshd.conf c'è use pam yes naturalmente

Re: Test per PAM

Inviato: ven 6 mar 2020, 11:37
da rik70
In effetti il controllo sui login - es. su tty - sembra non funzionare.

Re: Test per PAM

Inviato: ven 6 mar 2020, 12:00
da conraid
guardando nei log vedo questo

Codice: Seleziona tutto

Mar  6 11:23:53 thinkstar1 sshd[27388]: pam_unix(sshd:session): session opened for user prova by (uid=0)
Mar  6 11:23:55 thinkstar1 sshd[27388]: pam_unix(sshd:session): session closed for user prova
Mar  6 11:24:17 thinkstar1 sshd[1414]: pam_unix(sshd:session): session closed for user conraid
Mar  6 11:24:17 thinkstar1 sshd[24365]: pam_unix(sshd:session): session closed for user conraid
Mar  6 11:31:48 thinkstar1 sshd[27660]: pam_unix(sshd:session): session opened for user conraid by (uid=0)
Mar  6 11:31:48 thinkstar1 sshd[27660]: gkr-pam: unable to locate daemon control file
Mar  6 11:31:53 thinkstar1 sshd[27714]: pam_unix(sshd:session): session opened for user conraid by (uid=0)
Mar  6 11:31:53 thinkstar1 sshd[27714]: gkr-pam: unable to locate daemon control file
da quel che leggo in rete è un problema comune per un bug di gnome_keyring,
ho applicato la patch
https://gitlab.gnome.org/GNOME/gnome-che ... 46744d472e
e ora funziona

prova

Re: Test per PAM

Inviato: ven 6 mar 2020, 12:16
da conraid
Anche se la patch sembra agire solo sui messaggi di log, mh

Re: Test per PAM

Inviato: lun 9 mar 2020, 14:23
da rik70
conraid ha scritto:
ven 6 mar 2020, 12:16

Codice: Seleziona tutto

Mar  6 11:31:53 thinkstar1 sshd[27714]: gkr-pam: unable to locate daemon control file
Sì, quello non è un problema ed è determinato da

Codice: Seleziona tutto

session     optional      pam_gnome_keyring.so auto_start
in ''/etc/pam.d/system-auth". Se lo commenti dovrebbe sparire dal log, ma forse serve a qualche programma(portachiavi gnome?).

####################

Ma forse ci sono.
Credo serva aggiungere il modulo pam_access.so da qualche parte affinché il controllo degli accessi funzioni.

Ad esempio, in "/etc/pam.d/login" ho aggiunto:

Codice: Seleziona tutto

account         required        pam_access.so
subito prima di:

Codice: Seleziona tutto

account         required        pam_nologin.so
Poi ho aggiunto questa regola in /etc/security/access.conf:

Codice: Seleziona tutto

-:test:tty2
e l'utente "test" non può più accedere via tty2. Il log riporta:

Codice: Seleziona tutto

Mar  9 14:13:08 current login: pam_access(login:account): access denied for user `test' from `tty2'
Mar  9 14:13:08 current login: Permission denied
Mentre, ad esempio, sulla tty3 accede senza problemi:

Codice: Seleziona tutto

Mar  9 14:13:20 current login: pam_unix(login:session): session opened for user test by LOGIN(uid=0)
Mar  9 14:13:20 current login: LOGIN ON tty3 BY test
Non so però se tutto questo sia corretto, anche se sembra funzionare senza intoppi.

Edit
Forse è meglio mettere `pam_access.so` dopo `pam_nologin.so`.

Re: Test per PAM

Inviato: lun 9 mar 2020, 15:18
da rik70
Per quanto riguarda la regola per controllare l'accesso via ssh, a me funziona se scritta in questo modo:

Codice: Seleziona tutto

account    required       pam_listfile.so \
	onerr=fail item=user sense=deny file=/etc/ssh/deniedusers
dove:

Codice: Seleziona tutto

cat /etc/ssh/deniedusers 
test
Log:

Codice: Seleziona tutto

sshd[12819]: pam_listfile(sshd:account): Refused user test for service sshd

Re: Test per PAM

Inviato: lun 9 mar 2020, 15:23
da conraid
Io ora ho

Codice: Seleziona tutto

auth required pam_listfile.so item=user sense=deny file=/etc/ssh/sshd.deny onerr=succeed
e basta, e funziona.
Prima forse sbagliavo qualcos'altro, ma mi sembrava ok, tranne il nome del file diverso.

Re: Test per PAM

Inviato: lun 9 mar 2020, 15:40
da rik70
conraid ha scritto:
lun 9 mar 2020, 15:23
Io ora ho

Codice: Seleziona tutto

auth required pam_listfile.so item=user sense=deny file=/etc/ssh/sshd.deny onerr=succeed
e basta, e funziona.
Prima forse sbagliavo qualcos'altro, ma mi sembrava ok, tranne il nome del file diverso.
A me con auth non va - solo account o session.
Il tuo log cosa dice?

Re: Test per PAM

Inviato: lun 9 mar 2020, 15:47
da conraid
Mar 9 15:46:53 thinkstar1 sshd[13973]: pam_listfile(sshd:auth): Refused user prova for service sshd

Re: Test per PAM

Inviato: lun 9 mar 2020, 15:47
da conraid
E c'è sempre gkr-pam: gnome-keyring-daemon didn't start properly
allora la patch serve a na sega :)

Re: Test per PAM

Inviato: lun 9 mar 2020, 15:49
da rik70
conraid ha scritto:
lun 9 mar 2020, 15:47
E c'è sempre gkr-pam: gnome-keyring-daemon didn't start properly
allora la patch serve a na sega :)
Sì.

Ma cosa fa, ti continua a chiedere la password o chiude la connessione?

Re: Test per PAM

Inviato: lun 9 mar 2020, 15:51
da conraid
rik70 ha scritto:
lun 9 mar 2020, 15:49
conraid ha scritto:
lun 9 mar 2020, 15:47
E c'è sempre gkr-pam: gnome-keyring-daemon didn't start properly
allora la patch serve a na sega :)
Sì.

Ma cosa fa, ti continua a chiedere la password o chiude la connessione?
Continua, per 3 volte.

Re: Test per PAM

Inviato: lun 9 mar 2020, 15:59
da rik70
conraid ha scritto:
lun 9 mar 2020, 15:51
Continua, per 3 volte.
Ok, e poi salta fuori di nuovo quel gkr.... etc. Perfetto, così anche da me.

Però, considera che se per caso l'utente ha guadagnato il login automatico su ssh per via di una chiave passata con ssh-copy-id, è in grado di bypassare il blocco via pam.

Se invece metti 'account' o 'session' al posto di 'auth', pialli all'istante anche lui e chiudi immediatamente la connessione :D 8)