1 # Configuration file for Pluggable Authentication Modules (PAM).
3 # This file controls the authentication methods that login and other
4 # utilities use. See pam(8) for a description of its format.
6 # $FreeBSD: src/etc/pam.conf,v 1.6.2.18 2003/02/15 17:20:27 des Exp $
8 # service-name module-type control-flag module-path arguments
11 # auth: prompt for a password to authenticate that the user is
12 # who they say they are, and set any credentials.
13 # account: non-authentication based authorization, based on time,
15 # session: housekeeping before and/or after login.
16 # password: update authentication tokens.
18 # control-flag: How libpam handles success or failure of the module.
19 # required: success is required, and on failure all remaining
21 # requisite: success is required, and on failure no remaining
23 # sufficient: success is sufficient, and if no previous required
24 # module failed, no remaining modules are run.
25 # optional: ignored unless the other modules return PAM_IGNORE.
28 # Passed to the module; module-specific plus some generic ones:
29 # debug: syslog debug info.
30 # no_warn: return no warning messages to the application.
31 # use_first_pass: try authentication using password from the
32 # preceding auth module.
33 # try_first_pass: first try authentication using password from
34 # the preceding auth module, and if that fails
35 # prompt for a new password.
36 # use_mapped_pass: convert cleartext password to a crypto key.
37 # expose_account: allow printing more info about the user when
40 # Each final entry must say "required" -- otherwise, things don't
41 # work quite right. If you delete a final entry, be sure to change
42 # "sufficient" to "required" in the entry before it.
44 # If the user can authenticate with S/Key, that's sufficient; allow clear
45 # password. Try kerberos, then try plain unix password.
46 login auth sufficient pam_skey.so
47 login auth sufficient pam_opie.so no_fake_prompts
48 #login auth requisite pam_opieaccess.so
49 login auth requisite pam_cleartext_pass_ok.so
50 #login auth sufficient pam_kerberosIV.so try_first_pass
51 #login auth sufficient pam_krb5.so try_first_pass
52 login auth required pam_unix.so try_first_pass
53 login account required pam_unix.so
54 login password required pam_permit.so
55 login session required pam_permit.so
57 # Same requirement for ftpd as login
58 ftpd auth sufficient pam_skey.so
59 ftpd auth sufficient pam_opie.so no_fake_prompts
60 #ftpd auth requisite pam_opieaccess.so
61 ftpd auth requisite pam_cleartext_pass_ok.so
62 #ftpd auth sufficient pam_kerberosIV.so try_first_pass
63 #ftpd auth sufficient pam_krb5.so try_first_pass
64 ftpd auth required pam_unix.so try_first_pass
66 # OpenSSH with PAM support requires similar modules. The session one is
67 # a bit strange, though...
68 sshd auth sufficient pam_skey.so
69 sshd auth sufficient pam_opie.so no_fake_prompts
70 #sshd auth requisite pam_opieaccess.so
71 #sshd auth sufficient pam_kerberosIV.so try_first_pass
72 #sshd auth sufficient pam_krb5.so try_first_pass
73 sshd auth required pam_unix.so try_first_pass
74 sshd account required pam_unix.so
75 sshd password required pam_permit.so
76 sshd session required pam_permit.so
78 # "telnetd" is for SRA authenticated telnet only. Non-SRA uses 'login'
79 telnetd auth required pam_unix.so try_first_pass
82 xserver auth required pam_permit.so
84 # XDM is difficult; it fails or moans unless there are modules for each
85 # of the four management groups; auth, account, session and password.
86 xdm auth required pam_unix.so
87 #xdm auth sufficient pam_kerberosIV.so try_first_pass
88 #xdm auth sufficient pam_krb5.so try_first_pass
89 xdm account required pam_unix.so try_first_pass
90 xdm session required pam_deny.so
91 xdm password required pam_deny.so
93 # GDM (GNOME Display Manager)
94 gdm auth required pam_unix.so
95 #gdm auth sufficient pam_kerberosIV.so try_first_pass
96 #gdm auth sufficient pam_krb5.so try_first_pass
97 gdm account required pam_unix.so try_first_pass
98 gdm session required pam_permit.so
99 gdm password required pam_deny.so
102 imap auth required pam_unix.so try_first_pass
103 pop3 auth required pam_unix.so try_first_pass
105 # If we don't match anything else, default to using getpwnam().
106 other auth sufficient pam_skey.so
107 other auth required pam_unix.so try_first_pass
108 other account required pam_unix.so try_first_pass