簡述PAM模塊認證
成都創新互聯公司是一家業務范圍包括IDC托管業務,網絡空間、主機租用、主機托管,四川、重慶、廣東電信服務器租用,南充服務器托管,成都網通服務器托管,成都服務器租用,業務范圍遍及中國大陸、港澳臺以及歐美等多個國家及地區的互聯網數據服務公司。Pam可插拔的認證模塊
接口文件在/etc/pam.d/目錄下
調用的模塊文件 /lib/security目錄下
模塊的配置文件/etc/security/目錄下
日志信息存放在/var/log/secrue
網絡中的很多用戶需要對我們的服務器進行遠程管理、FTP登錄等等,服務器需要對用戶進行認證
通過PAM調用與之服務相對應的接口文件進行模塊認證。
PAM服務文件
格式:
Tyep control 模塊
Type 有這幾類
auth 驗證是否有這個賬號
account 賬號是否過期
password 改變口令的時候對密碼的長短、是否是字典里的進行驗證
session 回話控制
control :
required 必須通過,
如果沒有通過 ,徹底否定 ,而且還要看后續模塊
如果通過 ,且還要看后續模塊
requisite 必須通過,
如果沒有通過 ,徹底否定 ,而且不看后續模塊
如果通過 ,且還要看后續模塊
sufficient 如果沒有通過 ,不否定 ,而且看后續模塊
只要有一個通過 通過
optional
Include (共同調用的接口文件,包含很多模塊)
常用的PAM模塊
pam_access.so 控制訪問者地址與賬號名稱
pam_lisffile.so 控制訪問者的賬號名稱或登錄位置
pam_limits.so 控制位用戶分配的資源
pam_rootok.so 對管理員無條件允許通過
pam_userdb.so 設定獨立用戶賬號數據庫認證
等等
下面通過幾個小例子說明一下
1、不允許普通用戶登錄服務器
打開sshd的接口文件 /etc/pam.d/login 如下,調用了pam_nologin.so模塊,且是必須驗證的
查看關于pam_nologin.so模塊的說明文檔知道,在/etc/目錄下新建一個nologin文件就可以了
touch /etc/nologin
用user1在通過ssh登錄一下試試,登不進去了,如下:
(由于login文件里也調用了該模塊,所以在本機上所有用戶也登陸不了了)
2、限制用戶user1只能從192.168.101.3上SSH登錄 模塊為pam_access.so
vim /etc/pam.d/sshd --編輯ssh的接口文件sshd如下
和pam_access.so模塊有個像對應的配置文件access.conf
vim /etc/security/access.conf 添加如下一行
+ : user1 : 192.168.101.3
- : user1 : all 表示不允許從其它地方ip登錄
其中”+“表示授權 ”user1“ 授權的用戶 ”192.168.101.3“ 表示來源
從192.168.101.3的登錄,授權成功
日志如下:
pam_access(sshd:session): access denied for user `user1' from `192.168.101.103'
從其它的ip登錄,拒絕
PAM: pam_open_session(): Permission denied
如果是只有user1能從192.168.101.180登錄
將”- : user1 : all “改為“- : all : all ”
3、限制user1賬號本地終端的登錄次數為2次 模塊pam_limits.so
vim /etc/security/limits.conf 添加如下一句
user1 - maxlogins 2
”-“ 表示hard和soft都一樣 (關于語法格式,配置文件里有說明)
vim /etc/pam.d/login --編輯login接口文件添加如下:
session required pam_limits.so
用user1登錄三次,第三次被拒絕如下:
4、在我的用戶中凡是在test組中的用戶都能ssh,不是改組的用戶不能SSH 模塊pam_listfile.so (基于額外的文件)
vim /etc/pam.d/sshd 添加如下:
session required pam_listfile.so item=group sense=allow file=/etc/grouptest onerr=succeed
--額外文件為/etc/grouptest 如果沒有這個文件,無限制
新建改文件,并添加test組
echo "test" > /etc/grouptest
User1在test組能登錄,user2不在,不能登錄
5、只允許root從安全的終端登錄即不允許從tty1登錄 模塊pam_securetty.so
vim /etc/securetty
刪除 tty1
默認Login接口文件已經調用了該模塊
當root從終端1登錄時,如下
6、在本地不允許使用bash shell登錄 模塊 pam_shells.so
默認是在/etc/shells里列出的都能
[root@localhost pam.d]# vim /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh
將上述的/bin/bash 刪掉
vim /etc/pam.d/login 編輯登錄文件來調用該模塊 如下
session required pam_shells.so
這個驗證時好像有些小問題!!!!!
另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
新聞標題:簡述PAM模塊認證-創新互聯
文章分享:http://vcdvsql.cn/article24/gieje.html
成都網站建設公司_創新互聯,為您提供網頁設計公司、搜索引擎優化、App開發、網站制作、網站收錄、外貿建站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯