200 lines
7 KiB
Diff
200 lines
7 KiB
Diff
From 0ec12ab21edeffbb58b2cb49081abeb8e2ac0cb1 Mon Sep 17 00:00:00 2001
|
|
From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
|
|
Date: Thu, 9 Oct 2014 00:55:31 +0200
|
|
Subject: [PATCH] Add Arch Linux PAM config files
|
|
|
|
---
|
|
configure.ac | 6 ++++--
|
|
data/Makefile.am | 12 ++++++++++++
|
|
data/pam-arch/gdm-autologin.pam | 10 ++++++++++
|
|
data/pam-arch/gdm-fingerprint.pam | 14 ++++++++++++++
|
|
data/pam-arch/gdm-launch-environment.pam | 10 ++++++++++
|
|
data/pam-arch/gdm-password.pam | 11 +++++++++++
|
|
data/pam-arch/gdm-pin.pam | 13 +++++++++++++
|
|
data/pam-arch/gdm-smartcard.pam | 14 ++++++++++++++
|
|
8 files changed, 88 insertions(+), 2 deletions(-)
|
|
create mode 100644 data/pam-arch/gdm-autologin.pam
|
|
create mode 100644 data/pam-arch/gdm-fingerprint.pam
|
|
create mode 100644 data/pam-arch/gdm-launch-environment.pam
|
|
create mode 100644 data/pam-arch/gdm-password.pam
|
|
create mode 100644 data/pam-arch/gdm-pin.pam
|
|
create mode 100644 data/pam-arch/gdm-smartcard.pam
|
|
|
|
diff --git a/configure.ac b/configure.ac
|
|
index 9cac4de..f4aeaeb 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -189,12 +189,13 @@ if test x$enable_split_authentication = xyes; then
|
|
fi
|
|
|
|
AC_ARG_WITH(default-pam-config,
|
|
- AS_HELP_STRING([--with-default-pam-config: One of redhat, openembedded, exherbo, lfs, none @<:@default=auto@:>@]))
|
|
+ AS_HELP_STRING([--with-default-pam-config: One of redhat, openembedded, exherbo, lfs, arch, none @<:@default=auto@:>@]))
|
|
dnl If not given, try autodetecting from release files (see NetworkManager source)
|
|
if test x$with_default_pam_config = x; then
|
|
AC_CHECK_FILE(/etc/redhat-release,with_default_pam_config="redhat")
|
|
AC_CHECK_FILE(/etc/fedora-release,with_default_pam_config="redhat")
|
|
AC_CHECK_FILE(/etc/exherbo-release,with_default_pam_config="exherbo")
|
|
+ AC_CHECK_FILE(/etc/arch-release,with_default_pam_config="arch")
|
|
AC_CHECK_FILE(/etc/lfs-release,with_default_pam_config="lfs")
|
|
dnl If not autodetected, default to none
|
|
if test x$with_default_pam_config = x; then
|
|
@@ -202,7 +203,7 @@ if test x$with_default_pam_config = x; then
|
|
fi
|
|
fi
|
|
case x$with_default_pam_config in
|
|
- xredhat|xopenembedded|xexherbo|xlfs|xnone) ;;
|
|
+ xredhat|xopenembedded|xexherbo|xlfs|xarch|xnone) ;;
|
|
*)
|
|
AC_MSG_ERROR([Invalid --with-default-pam-config ${with_default_pam_config}])
|
|
exit 1
|
|
@@ -212,6 +213,7 @@ AM_CONDITIONAL(ENABLE_REDHAT_PAM_CONFIG, test x$with_default_pam_config = xredha
|
|
AM_CONDITIONAL(ENABLE_OPENEMBEDDED_PAM_CONFIG, test x$with_default_pam_config = xopenembedded)
|
|
AM_CONDITIONAL(ENABLE_EXHERBO_PAM_CONFIG, test x$with_default_pam_config = xexherbo)
|
|
AM_CONDITIONAL(ENABLE_LFS_PAM_CONFIG, test x$with_default_pam_config = xlfs)
|
|
+AM_CONDITIONAL(ENABLE_ARCH_PAM_CONFIG, test x$with_default_pam_config = xarch)
|
|
|
|
AC_ARG_ENABLE(console-helper,
|
|
AS_HELP_STRING([--enable-console-helper],
|
|
diff --git a/data/Makefile.am b/data/Makefile.am
|
|
index 1b79bc3..341b779 100644
|
|
--- a/data/Makefile.am
|
|
+++ b/data/Makefile.am
|
|
@@ -140,6 +140,15 @@ pam_lfs_files = pam-lfs/gdm.pam \
|
|
$(NULL)
|
|
EXTRA_DIST += $(pam_lfs_files)
|
|
|
|
+pam_arch_files = pam-arch/gdm-autologin.pam \
|
|
+ pam-arch/gdm-launch-environment.pam \
|
|
+ pam-arch/gdm-fingerprint.pam \
|
|
+ pam-arch/gdm-smartcard.pam \
|
|
+ pam-arch/gdm-password.pam \
|
|
+ pam-arch/gdm-pin.pam \
|
|
+ $(NULL)
|
|
+EXTRA_DIST += $(pam_arch_files)
|
|
+
|
|
if ENABLE_REDHAT_PAM_CONFIG
|
|
pam_files = $(pam_redhat_files)
|
|
endif
|
|
@@ -152,6 +161,9 @@ endif
|
|
if ENABLE_LFS_PAM_CONFIG
|
|
pam_files = $(pam_lfs_files)
|
|
endif
|
|
+if ENABLE_ARCH_PAM_CONFIG
|
|
+pam_files = $(pam_arch_files)
|
|
+endif
|
|
|
|
EXTRA_DIST += \
|
|
$(dconf_db_files) \
|
|
diff --git a/data/pam-arch/gdm-autologin.pam b/data/pam-arch/gdm-autologin.pam
|
|
new file mode 100644
|
|
index 0000000..9f45c65
|
|
--- /dev/null
|
|
+++ b/data/pam-arch/gdm-autologin.pam
|
|
@@ -0,0 +1,10 @@
|
|
+auth requisite pam_nologin.so
|
|
+auth required pam_env.so
|
|
+auth optional pam_permit.so
|
|
+
|
|
+account include system-local-login
|
|
+
|
|
+password include system-local-login
|
|
+
|
|
+session optional pam_keyinit.so force revoke
|
|
+session include system-local-login
|
|
diff --git a/data/pam-arch/gdm-fingerprint.pam b/data/pam-arch/gdm-fingerprint.pam
|
|
new file mode 100644
|
|
index 0000000..a480861
|
|
--- /dev/null
|
|
+++ b/data/pam-arch/gdm-fingerprint.pam
|
|
@@ -0,0 +1,14 @@
|
|
+auth required pam_tally.so onerr=succeed file=/var/log/faillog
|
|
+auth required pam_shells.so
|
|
+auth requisite pam_nologin.so
|
|
+auth required pam_env.so
|
|
+auth required pam_fprintd.so
|
|
+auth optional pam_permit.so
|
|
+
|
|
+account include system-local-login
|
|
+
|
|
+password required pam_fprintd.so
|
|
+password optional pam_permit.so
|
|
+
|
|
+session optional pam_keyinit.so force revoke
|
|
+session include system-local-login
|
|
diff --git a/data/pam-arch/gdm-launch-environment.pam b/data/pam-arch/gdm-launch-environment.pam
|
|
new file mode 100644
|
|
index 0000000..618a7d3
|
|
--- /dev/null
|
|
+++ b/data/pam-arch/gdm-launch-environment.pam
|
|
@@ -0,0 +1,11 @@
|
|
+auth required pam_env.so
|
|
+auth optional pam_permit.so
|
|
+
|
|
+account include system-local-login
|
|
+
|
|
+password required pam_deny.so
|
|
+
|
|
+session optional pam_keyinit.so force revoke
|
|
+-session optional pam_systemd.so
|
|
+-session optional pam_ck_connector_so nox11
|
|
+session optional pam_permit.so
|
|
diff --git a/data/pam-arch/gdm-password.pam b/data/pam-arch/gdm-password.pam
|
|
new file mode 100644
|
|
index 0000000..8d34794
|
|
--- /dev/null
|
|
+++ b/data/pam-arch/gdm-password.pam
|
|
@@ -0,0 +1,11 @@
|
|
+auth include system-local-login
|
|
+auth optional pam_gnome_keyring.so
|
|
+
|
|
+account include system-local-login
|
|
+
|
|
+password include system-local-login
|
|
+password optional pam_gnome_keyring.so use_authtok
|
|
+
|
|
+session optional pam_keyinit.so force revoke
|
|
+session include system-local-login
|
|
+session optional pam_gnome_keyring.so auto_start
|
|
diff --git a/data/pam-arch/gdm-pin.pam b/data/pam-arch/gdm-pin.pam
|
|
new file mode 100644
|
|
index 0000000..135e205
|
|
--- /dev/null
|
|
+++ b/data/pam-arch/gdm-pin.pam
|
|
@@ -0,0 +1,13 @@
|
|
+auth requisite pam_pin.so
|
|
+auth include system-local-login
|
|
+auth optional pam_gnome_keyring.so
|
|
+
|
|
+account include system-local-login
|
|
+
|
|
+password include system-local-login
|
|
+password optional pam_pin.so
|
|
+password optional pam_gnome_keyring.so use_authtok
|
|
+
|
|
+session optional pam_keyinit.so force revoke
|
|
+session include system-local-login
|
|
+session optional pam_gnome_keyring.so auto_start
|
|
diff --git a/data/pam-arch/gdm-smartcard.pam b/data/pam-arch/gdm-smartcard.pam
|
|
new file mode 100644
|
|
index 0000000..ec6f75d
|
|
--- /dev/null
|
|
+++ b/data/pam-arch/gdm-smartcard.pam
|
|
@@ -0,0 +1,14 @@
|
|
+auth required pam_tally.so onerr=succeed file=/var/log/faillog
|
|
+auth required pam_shells.so
|
|
+auth requisite pam_nologin.so
|
|
+auth required pam_env.so
|
|
+auth required pam_pkcs11.so wait_for_card card_only
|
|
+auth optional pam_permit.so
|
|
+
|
|
+account include system-local-login
|
|
+
|
|
+password required pam_pkcs11.so
|
|
+password optional pam_permit.so
|
|
+
|
|
+session optional pam_keyinit.so force revoke
|
|
+session include system-local-login
|
|
--
|
|
2.1.2
|
|
|