Red Hat Enterprise Linux Network Services and Security Administration Unit 9 - Account Management
學習目標
- passwd, NIS, LDAP...等身份認證機制
- PAM 可插拔的身份認證機制
Name Service Switch(NSS)# vi /etc/nsswitch.conf
passwd: files nis ldap
← order 由左而右
getent
getent
database
# getent
hosts
# getent passwd
← 提取帳號資訊# getent passwd alice
Pluggable Authentication Modules(PAM) 可插拔的身份認證
aplication 只要與PAM連接, 就能支援全部上游的的認證機制
PAM OperationPAM 的模組 /lib/security
PAM 設定檔 /etc/pam.d/
/etc/pam.d/ Files: Tests
auth 身份認證
account 帳號合不合法?有無被停用?
password 密碼變更
session login and logout 的 log
# cat /etc/pam.d/passwd
#%PAM-1.0
auth include system-auth
account include system-auth
password include system-auth
/etc/pam.d/Files: Control Values
requisted,全部做完才知道過還是不過
requisite,如果遇到不過的項目就馬上不過
sufficient,如果遇到過的項目就馬上過
Example# cat /etc/pam.d/login
#%PAM-1.0
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth include system-auth
account required pam_nologin.so
account include system-auth
password include system-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session optional pam_keyinit.so force revoke
session include system-auth
session required pam_loginuid.so
session optional pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open
session optional pam_ck_connector.so
The system_auth Filesystem_auth 應用比較廣,常被 include
pam_unix.so傳統的 NNS-based 認證
auth, account, password, session
Network Authentication其他網路的 login 模組
pam_krb5.so (Kerberos V tickets)
pam_ldap.so (LDAP binds)
pam_smb_auth.so (old SMB authentication)
pam_winbind.so (SMB through winbindd)
auth Modulespam_securetty.so 模組,限制管理員登入的入口只能在 /etc/securetty 裡有的才可以登入
pam_nologin.so 模組,只要/etc/nologin檔案存在,使用者也不是root時就不能login
pam_listfile.so 模組,只要在某個黑名單的檔案裡就不能登入, ex, /etc/vsftpd/ftpusers
Password Securitypam_unix.so MD5 password hashes
pam_unix.so shadow passwords
Password Policy
pam_cracklib.so 強度驗證
pam_tally.so 鎖帳號
session Moudlepam_limits.so 模組,設定檔 /etc/security/limits.conf 資源存取限制
pam_console.so 設定console登入使用者的週邊設備存取權限
pam_selinux.so SELinux
pam_mkhomedir.so 登入發現沒有家目錄,自動建家目錄
pam_rootok.so 只要是root執行這個程式不用問密碼
pam_xauth.so 圖形介面的身份驗證
PAM Troubleshooting/var/log/messages
/var/log/secure
PAM 存檔馬上生效,所以最好保留一個root的shell
以single模式登入忽略PAM
Lab 9 實作# faillog -u alice
← 看登入失敗次數,但不會計算# vi /etc/pam.d/system-auth
auth required pam_tally.so no_magic_root
acount required pam_tally.so deny=2 no_magic_root
# faillog -u alice ←
← 看登入失敗次數,已經可以計算登入失敗次數By SmallKen