您好,登錄后才能下訂單哦!
這篇文章跟大家分析一下“Linux系統pam的服務模塊及如何認證”。內容詳細易懂,對“Linux系統pam的服務模塊及如何認證”感興趣的朋友可以跟著小編的思路慢慢深入來閱讀一下,希望閱讀后能夠對大家有所幫助。下面跟著小編一起深入學習“Linux系統pam的服務模塊及如何認證”的知識吧。
PAM主要是由一組共享庫文件(也就是后綴名為.so文件)和一些配置文件組成的用于系統服務授權的一套東西。
一、常用的pam服務模塊
下面是Linux提供的PAM模塊列表(只是其中一部分),這其中包含模塊文件、模塊功能描述和相關配置文件,具體如下:
pam_access 提供logdaemon風格登錄控制 /etc/security/access.conf
pam_chroot 提供類似chroot命令的功能
pam_cracklib 對密碼的強度進行一定的檢查 庫文件libcrack和字典文件
/usr/lib/cracklib_dict
pam_deny 總是無條件地使認證失敗
pam_env 設置取消環境變量 /etc/security/pam_env.conf
pam_filter 對輸入輸出流進行過濾 filters
pam_ftp.so 對匿名ftp用戶進行認證
pam_group 當用戶在指定的終端上請求指定的 /etc/security/group.conf
服務時賦予該用戶相應的組權限
pam_issue 在提示用戶輸入用戶名之前顯示 /etc/issue
/etc/issue文件的內容
pam_krb4 對用戶密碼進行Kerberos認證相應的Kerberos庫文件
pam_lastlog 在用戶登錄成功后顯示關于 /var/log/lastlog
用戶上次登錄的信息,并維護
/var/log/lastlog文件。
pam_limits 限制用戶會話所能使用的系統資源 /etc/security/limits.conf
pam_listfile 根據指定的某個文件決定是否 例如/etc/ftpusers
允許或禁止提供服務
pam_mail 檢查用戶的郵箱中是否有新郵件 /var/spool/mail/xxxx
pam_mkhomedir 為用戶建立主目錄 /etc/skel/
pam_motd 顯示/etc/motd文件的內容 /etc/motd
pam_nologin 根據/etc/nologin文件的存在與否 /etc/nologin
來決定用戶認證是否成功
pam_permit 總是無條件地使認證成功
pam_pwdb 作為pam_unix_xxxx模塊的一個替代。/etc/pwdb.conf
使用Password Database通用接口進行認證。
pam_radius 提供遠程身份驗證撥入用戶服務(RADIUS)的認證
pam_rhosts_auth 利用文件/.rhosts和/etc/hosts.equiv和/.rhosts
/etc/hosts.equiv對用戶進行認證。
pam_rootok 檢查用戶是否為超級用戶,如果是超級用戶(uid=0)則無條件地通過認證。
pam_securetty 提供標準的Unix securetty檢查 /etc/securetty
pam_time 提供基于時間的控制,比如限制 /etc/security/time.conf
用戶只能在某個時間段內才能登錄
pam_unix 提供標準的Unix認證 /etc/passwd和/etc/shadow
pam_userdb 利用Berkeley DB數據庫來檢查用戶/密碼
pam_warn 利用syslog( )記錄一條告警信息
pam_wheel 只允許wheel組的用戶有超級用戶的存取權限
1、案例1(pam_access.so)
現有一賬號user1 只允許192.168.2.1 ssh登錄
(1)安裝pam
[root@huangzhong ~]# mount /dev/cdrom /media/cdrom/
[root@huangzhong ~]# cd /media/cdrom/Packages/
[root@huangzhong Packages]# ll |grep pam //過濾與pam相關的包
[root@huangzhong Packages]# yum install pam-1.1.1-13.el6.x86_64.rpm
(2)因為限制ssh登錄,所以這里要用到sshd模塊,因此要編輯/etc/pam.d/
[root@huangzhong ~]# cd /etc/pam.d/
[root@huangzhong pam.d]# vim sshd
(3)編輯access.so模塊的配置文件
[root@huangzhong pam.d]# vim /etc/security/access.conf
(4)測試驗證
//新建user1用戶
[root@huangzhong ~]# useradd user1
[root@huangzhong ~]# passwd user1
Changing password for user user1.
New password:
BAD PASSWORD: it is WAY too short
BAD PASSWORD: is too simple
Retype new password:
passwd: all authentication tokens updated successfully.
//在本地ssh登錄測試結果如下:
//在192.168.2.1上ssh登錄,結果如下:
在這里也可以通過查看日志信息,查看登錄的結果,所要查看的日志是:
[root@huangzhong ~]# tail -f /var/log/secure
2、案例2(pam_listfile.so)
在對Linux服務器進行管理時,只允許manager組的用戶可以管理,是通過ssh管理。
(1) 因為限制ssh登錄,所以這里要用到sshd模塊,因此要編輯/etc/pam.d/
[root@huangzhong ~]# cd /etc/pam.d/
[root@huangzhong pam.d]# vim sshd
(2) 創建manager組,并編輯一些用戶
[root@huangzhong pam.d]# vim /etc/manager
//創建用戶user2和user3,并給予口令
(3) 登錄測試
使用user1登錄測試
使用user2和user3登錄測試結果如下:
3、案例3(pam_limts.so)
限制user1,ssh在線的登陸次數為2次
(1) 因為限制ssh登錄,所以這里要用到sshd模塊,因此要編輯/etc/pam.d/
[root@huangzhong ~]# cd /etc/pam.d/
[root@huangzhong pam.d]# vim sshd
(2) 編輯/etc/security/limits.conf 文件
[root@huangzhong pam.d]# vim /etc/security/limits.conf
(3) 登錄測試
使用user1登錄3次測試結果如下:
查看日志信息如下:
[root@huangzhong pam.d]# tail -f /var/log/secure
關于Linux系統pam的服務模塊及如何認證就分享到這里啦,希望上述內容能夠讓大家有所提升。如果想要學習更多知識,請大家多多留意小編的更新。謝謝大家關注一下億速云網站!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。