Ich habe das pam-auth-update
Tool verwendet, um einige Pam-Konfigurationsprofile zu aktivieren:
PAM configuration
PAM profiles to enable:
[*] encfs encrypted home directories
[*] Unix authentication
[*] Mount volumes for user
[*] GNOME Keyring Daemon - Login keyring management
[*] ConsoleKit Session Management
Alle Funktionen funktionieren wie erwartet, aber eines gibt es - die Mount volumes for user
Option scheint den su
Befehl zu beeinflussen .
Ich habe der /etc/security/pam_mount.conf.xml
Datei die folgende Zeile hinzugefügt :
<volume user="morfik" fstype="fuse" path="encfs#/media/Server/Dropbox.encfs/Dropbox/encrypted" mountpoint="/media/Server/Dropbox" />
und wenn ich ein Terminal su morfik
(als root) eingebe, sollte es keine Passwortabfrage geben, sondern ich sehe Folgendes:
# su morfik
reenter password for pam_mount:
Wenn ich die Mount volumes for user
Option im Menü oben deaktiviert habe, scheint alles Datei zu sein und das reenter password
verschwindet. Ich habe versucht, mit /etc/pam.d/
Dateien zu spielen , aber ich habe keine Erfahrung mit PAM und konnte es nicht zum Laufen bringen.
Weiß jemand, was in diesen Dateien geändert werden muss?
UPDATE # 1
Dies ist der Inhalt des /etc/pam.d
Verzeichnisses:
# ls -al /etc/pam.d/
total 104K
drwxr-xr-x 2 root root 4.0K Mar 21 16:21 ./
drwxr-xr-x 153 root root 12K Mar 21 16:11 ../
-rw-r--r-- 1 root root 197 Sep 8 2013 atd
-rw-r--r-- 1 root root 384 May 25 2012 chfn
-rw-r--r-- 1 root root 92 May 25 2012 chpasswd
-rw-r--r-- 1 root root 581 May 25 2012 chsh
-rw-r--r-- 1 root root 1.2K Mar 20 17:35 common-account
-rw-r--r-- 1 root root 1.3K Mar 20 17:35 common-auth
-rw-r--r-- 1 root root 1.5K Mar 20 17:35 common-password
-rw-r--r-- 1 root root 1.3K Mar 20 17:35 common-session
-rw-r--r-- 1 root root 1.2K Mar 20 17:35 common-session-noninteractive
-rw-r--r-- 1 root root 527 Jul 3 2012 cron
-rw-r--r-- 1 root root 69 Jul 16 2013 cups-daemon
-rw-r--r-- 1 root root 4.8K Mar 5 10:18 login
-rw-r--r-- 1 root root 92 May 25 2012 newusers
-rw-r--r-- 1 root root 520 Jul 22 2008 other
-rw-r--r-- 1 root root 147 Feb 13 07:15 passwd
-rw-r--r-- 1 root root 255 Oct 15 18:40 polkit-1
-rw-r--r-- 1 root root 84 Dec 27 12:40 samba
-rw-r--r-- 1 root root 2.1K Feb 15 03:11 sshd
-rw-r--r-- 1 root root 2.3K May 25 2012 su
-rw-r--r-- 1 root root 95 Jan 15 22:58 sudo
-rw-r--r-- 1 root root 108 Oct 19 23:42 xscreensaver
Es gibt keine Datei /etc/pam.d/system-auth
.
Ich habe überprüft, welche Dateien pam_mount
in ihrem Inhalt enthalten sind, und habe Folgendes erhalten:
# egrep -i pam_mount *
common-auth:auth optional pam_mount.so
common-session:session optional pam_mount.so
Der Inhalt der Dateien:
#
# /etc/pam.d/common-auth - authentication settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use the
# traditional Unix authentication mechanisms.
#
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules. See
# pam-auth-update(8) for details.
# here are the per-package modules (the "Primary" block)
auth sufficient pam_encfs.so
auth [success=1 default=ignore] pam_unix.so nullok_secure try_first_pass
# here's the fallback if no module succeeds
auth requisite pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth required pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth optional pam_mount.so
# end of pam-auth-update config
und:
#
# /etc/pam.d/common-session - session-related modules common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of modules that define tasks to be performed
# at the start and end of sessions of *any* kind (both interactive and
# non-interactive).
#
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules. See
# pam-auth-update(8) for details.
# here are the per-package modules (the "Primary" block)
session [default=1] pam_permit.so
# here's the fallback if no module succeeds
session requisite pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
session required pam_permit.so
# and here are more per-package modules (the "Additional" block)
session required pam_unix.so
session optional pam_mount.so
session optional pam_ck_connector.so nox11
# end of pam-auth-update config
UPDATE # 2
Ich benutze Debian-Tests. Ich habe versucht, die Position von zu ändern pam_mount
, aber es ist immer das gleiche. Ich habe einige Abschnitte des Handbuchs gelesen und es gab so etwas wie:
When "sufficient" is used in the second column, you must make sure that pam_mount is added before this entry. Otherwise pam_mount will not get executed should a previous PAM module succeed. Also be aware of the "include" statements. These make PAM look into the specified file. If there is a "sufficient" statement, then the pam_mount entry must either be in the included file before the "sufficient" statement or before the "include" statement.
Ich pam_mount
habe der /etc/pam.d/su
Datei sogar hinzugefügt , um zu überprüfen, ob dies einen Unterschied macht, aber das spielt keine Rolle. Wenn pam_mount
zuerst, wie sie sagen, anstelle einer Kennwortabfrage eine Eingabeaufforderung pam_mount password
angezeigt wird, wenn ich mich bei meinem System anmelde, und beim Versuch immer noch nach dem Kennwort gefragt wirdsu morfik
/etc/security/pam_mount.conf.xml
Datei jedoch eine Volume-Zeile hinzufüge , wird die Eingabeaufforderung angezeigt.Antworten:
Bin auf das gleiche Problem gestoßen.
Es stellt sich heraus, dass das Problem durch Hinzufügen der
disable_interactive
Option nebenpam_mount.so
in den Konfigurationsdateien (/etc/pam.d/common-{auth,session}
) behoben ist .Es kommt direkt danach
pam_mount.so
und die Optionen werden durch Leerzeichen getrennt (vomso
Dateinamen und zwischen jeweils zwei Optionen).Wenn der
pam_mount.so
Code bei einer Anmeldung ausgeführt wird, erhält er das Kennwort oben im Stapel und entschlüsselt Ihr Volume mit diesem Kennwort.Wenn Sie
su
von einer Root-Sitzung aus arbeiten, ist kein Kennwort erforderlich und Sie erhalten daherpam_mount.so
kein Kennwort. Ohne diedisable_interactive
Option wird also versucht, das Passwort zu erhalten.Wie Sie unter https://sourceforge.net/p/pam-mount/pam-mount/ci/master/tree/src/pam_mount.c , Zeile 493 sehen können,
pam_mount
wird glücklicherweise versucht, auch ohne Passwort fortzufahren ist gut, da das Passwort nicht benötigt wird, wenn das Volume bereits entsperrt und gemountet ist.quelle
encfs
mehr benutze . Ich habe gerade die Verzeichnisse erstellt und entsprechende PAM-Module installiert. Nach dem Hinzufügen von "disable_interactive" zu den beiden Dateien wurde die Kennwortabfrage nicht mehr angezeigt. Ich bin nicht sicher, ob die Meldung "Mount fehlgeschlagen" auf das Kennwort zurückzuführen ist oder ob es kein "encfs-Verzeichnis" gibt. Jedenfalls konnte ich den Benutzer ohne Passwort wechseln. Also akzeptiere ich diese Antwort.Raten Sie mal, aber sehen Sie sich Ihre
/etc/pam.d/*
Dateien an und stellen Sie sicher, dass alle PAM-Konfigurationenpam_mount
wie folgt eingerichtet sind:Dies scheint durch die
pam_mount.conf
Manpage gesichert zu sein :Auszug
HINWEIS: Die Reihenfolge der
/etc/pam.d/*
Konfigurationsdateien wird auch hier in diesem ArchLinux-Wiki-Thema mit dem Titel: Pam mount angegeben .Verweise
quelle
pam_mount
finden Sie einige Beispiele, wie Sie Ihre PAM-Bestellung mit diesem Modul strukturieren können. Können Sie sich das ansehen und mit Ihren/etc/pam.d/*
Dateien vergleichen? Ich gehe davon aus, dass Sie die PAM-Stapel ändern müssen. Können Sie dies ausführen,strace -s 2000 -o su.log su morfik
damit wir sehen können, welche Regeln es auslösen?