Die Konfiguration von pam_time.so wird ignoriert. Wie kann ich sie debuggen?

514
Georges Dupéron

Ich versuche, das pam_time.soModul zu verwenden, um die Zeiten einzuschränken, zu denen einige Benutzer möglicherweise verwenden sudo. Meine Konfigurationsänderungen scheinen jedoch keine Auswirkung zu haben. Wie kann ich dieses Problem debuggen? Kann meine Distribution den Standort ändern /etc/security/time.conf? Die pam.d/sudoDatei war bereits vorhanden, und wenn ich andere Zeilen auskommentiere, kann ich den Effekt sehen, aber die time.confDatei war nirgendwo vorhanden. /etcIch könnte also einfach die falsche Datei ändern.

Hier ist das, was ich bisher versucht habe.


Hier sind die Inhalte von /etc/security/time.conf:

sudo;*;*;!Al0830-1700 su;*;*;!Al0830-1700 

Und hier sind der Inhalt von /etc/pam.d/sudound /etc/pam.d/su(der Standardwert bei meiner Distribution, plus die erste Zeile, die geladen wird pam_time.so).

account required pam_time.so debug account required pam_unix.so auth sufficient pam_unix.so likeauth try_first_pass auth required pam_deny.so password requisite pam_unix.so nullok sha512 session required pam_env.so envfile=… session required pam_unix.so 

Wenn ich versuche zu verwenden sudo /bin/sh, journalctl -fdruckt:

août 09 13:53:15 nixos sudo[7454]: georges : TTY=pts/6 ; PWD=/home/georges ; USER=root ; COMMAND=/bin/sh août 09 13:53:15 nixos sudo[7454]: pam_unix(sudo:session): session opened for user root by (uid=0) 
  • Das debugIn /etc/pam.d/sudoscheint keine Wirkung zu haben
  • Einige Quellen im Internet verwenden account requisite pam_time.sostatt required, aber es macht für mich keinen Unterschied
  • pamtester -v sudo root open_sessionzeigt keine nützlichen Informationen an (und gelingt), pamtester -v sudo root authenticatelehnt aber mein Passwort ab, und das journalctlProtokoll zeigt dies, aber die Werte in time.confhaben keine Auswirkung:

    août 09 13:56:03 nixos unix_chkpwd[7965]: check pass; user unknown août 09 13:56:03 nixos unix_chkpwd[7965]: password check failed for user (root) 
  • Ich habe versucht, die auth sufficient pam_unix.so …Leitung zu entfernen, und Sudo-Zugriff wird verboten, ohne ein Passwort zu versuchen. Ich kenne die Änderungen in der /etc/pam.d/sudoArbeit. pam_time.sokann jedoch nicht als authModul verwendet werden (das journalctlProtokoll beschwert sich über ein fehlendes Symbol).

  • Ich habe versucht, den Computer neu zu starten, aber die Konfiguration wird immer noch ignoriert.
0

1 Antwort auf die Frage

0
Stefan

Das Problem liegt wahrscheinlich an zwei Platzhaltern.

sudo;*;*;!Al0830-1700

Laut Manpage kann es nur einmal verwendet werden: " Für diese Elemente kann der einfache Platzhalter '*' nur einmal verwendet werden. "

Um dies zu umgehen, können Sie Folgendes verwenden:

sudo;*;!root;!Al0830-1700

Dies gilt für alle Benutzer (außer root).

Edit : Scratch das, es funktioniert auf meinem System. Übrigens sollten Sie den Konto-Stack mit testenpamtester -v sudo username acct_mgmt

Sie sagen also, Ihre Antwort ist falsch? Blackwood vor 6 Jahren 0