導航:首頁 > 編程系統 > linuxpam認證

linuxpam認證

發布時間:2021-12-07 17:33:18

linux設置密碼復雜度的文件/etc/pam.d/system-auth,具體需要怎麼改

一、准備工作:

安裝 PAM 的 cracklib 模塊,cracklib 能提供額外的密碼檢查能力。

二、具體操作:

Debian、Ubuntu 或 Linux Mint 系統上:

代碼如下:


$ sudo apt-get install libpam-cracklib


CentOS、Fedora、RHEL 系統已經默認安裝了 cracklib PAM 模塊,所以在這些系統上無需執行上面的操作。

為了強制實施密碼策略,需要修改 /etc/pam.d 目錄下的 PAM 配置文件。一旦修改,策略會馬上生效。

注意:此教程中的密碼策略只對非 root 用戶有效,對 root 用戶無效。

策略設置:

1、禁止使用舊密碼

找到同時有 「password」 和 「pam_unix.so」 欄位並且附加有 「remember=5」 的那行,它表示禁止使用最近用過的5個密碼(己使用過的密碼會被保存在 /etc/security/opasswd 下面)。

Debian、Ubuntu 或 Linux Mint 系統上:

代碼如下:

$ sudo vi /etc/pam.d/common-password
password [success=1 default=ignore] pam_unix.so obscure sha512 remember=5


CentOS、Fedora、RHEL 系統上:

代碼如下:


$ sudo vi /etc/pam.d/system-auth
password sufficient pamunix.so sha512 shadow nullok tryfirstpass useauthtok remember=5

二、設置最短密碼長度

找到同時有 「password」 和 「pam_cracklib.so」 欄位並且附加有 「minlen=10」 的那行,它表示最小密碼長度為(10 - 類型數量)。這里的 「類型數量」 表示不同的字元類型數量。PAM 提供4種類型符號作為密碼(大寫字母、小寫字母、數字和標點符號)。如果密碼同時用上了這4種類型的符號,並且 minlen 設為10,那麼最短的密碼長度允許是6個字元。

Debian、Ubuntu 或 Linux Mint 系統上:

代碼如下:

$ sudo vi /etc/pam.d/common-password
password requisite pam_cracklib.so retry=3 minlen=10 difok=3

CentOS、Fedora、RHEL 系統上:

代碼如下:

$ sudo vi /etc/pam.d/system-auth
password requisite pam_cracklib.so retry=3 difok=3 minlen=10

三、設置密碼復雜度

找到同時有 「password」 和 「pam_cracklib.so」 欄位並且附加有 「ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1」 的那行,表示密碼必須至少包含一個大寫字母(ucredit),兩個小寫字母(lcredit),一個數字(dcredit)和一個標點符號(ocredit)。

Debian、Ubuntu 或 Linux Mint 系統上:

代碼如下:

$ sudo vi /etc/pam.d/common-password
password requisite pam_cracklib.so retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1

CentOS、Fedora、RHEL 系統上:

代碼如下:

$ sudo vi /etc/pam.d/system-auth
password requisite pam_cracklib.so retry=3 difok=3 minlen=10 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1

四、設置密碼過期期限

編輯 /etc/login.defs 文件,可以設置當前密碼的有效期限,具體變數如下所示:

代碼如下:

$ sudo vi /etc/login.defs
PASSMAXDAYS 150 PASSMINDAYS 0 PASSWARNAGE 7

這些設置要求用戶每6個月改變密碼,並且會提前7天提醒用戶密碼快到期了。

如果想為每個用戶設置不同的密碼期限,使用 chage 命令。下面的命令可以查看某個用戶的密碼限期:

代碼如下:


$ sudo chage -l xmolo
Last password change : Dec 30, 2013 Password expires :
never Password inactive : never Account expires :
never Minimum number of days between password change :
0 Maximum number of days between password change :
99999 Number of days of warning before password expires : 7


默認情況下,用戶的密碼永不過期。

五、下面的命令用於修改 xmolo 用戶的密碼期限:

代碼如下:

$ sudo chage -E 6/30/2014 -m 5 -M 90 -I 30 -W 14 xmolo

上面的命令將密碼期限設為2014年6月3日。另外,修改密碼的最短周期為5天,最長周期為90天。密碼過期前14天會發送消息提醒用戶,過期後帳號會被鎖住30天。

設置完後,驗證效果如下:

❷ Linux:PAM認證文件有什麼用

pam認證,建議你多做做有關認證方面的實驗,就能明白了。比如vsftpd虛擬用戶,就是基於pam認證的……

❸ Linux etc/pam.d/login文件是什麼意思

pam用來驗證登陸用的配置文件
每次登陸系統的時候或者更改密碼的時候都要先經過
pam驗證,驗證的規則就是在這裡面定義的,如果符合才讓你登陸。

❹ linux中的PAM到底是什麼 如何使用配置呢 麻煩說的通俗點

簡單地說,PAM主要是由一組共享庫文件(也就是後綴名為.so文件)和一些配置文件組成的用於系統服務授權的一套東西,其中,PAM 就是 Pluggable Authentication Moles 這幾個英文單詞的縮寫。當你在請求服務的時候,具有PAM認證功能的應用程序將與這些.so文件進行交互,以便得知是否可以授權給發起請求的用戶來使用服務,比如su, vsftp, httpd,等。如果認證成功了,那麼這個用戶便可以使用服務或完成命令,如果認證失敗了,那麼這個用戶將不能使用服務,同時,PAM將向指定的log文件寫入警告信息。我們可以將PAM看作是一個中間裁判,它不依賴於任何應用或服務。你完全可以升級這些應用或服務而不必管PAM的共享庫的更新或升級,反之亦然。所以它非常的靈活。

❺ 利用linux pam實現安全驗證與管理

大家都知道現在很多電腦軟體都有限制用戶登陸失敗次數的限制,Linux也是如此,當你登錄失敗多次後就可以限制用戶登錄,從而起到保護電腦安全的作用,通過PAM模塊即可實現,下面隨我一起來了解下吧。 Linux有一個pam_tally2.so的PAM模塊,來限定用戶的登錄失敗次數,如果次數達到設置的閾值,則鎖定用戶。 編譯PAM的配置文件# vim /etc/pam.d/login #%PAM-1.0 auth required pam_tally2.so deny=3 lock_time=300 even_deny_root root_unlock_time=10 auth [user_unknown=ignore success=ok ignoreignore=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 required pam_loginuid.so session include system-auth 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 各參數解釋 even_deny_root 也限制root用戶; deny 設置普通用戶和root用戶連續錯誤登陸的最大次數,超過最大次數,則鎖定該用戶 unlock_time 設定普通用戶鎖定後,多少時間後解鎖,單位是秒; root_unlock_time 設定root用戶鎖定後,多少時間後解鎖,單位是秒; 此處使用的是 pam_tally2 模塊,如果不支持 pam_tally2 可以使用 pam_tally 模塊。另外,不同的pam版本,設置可能有所不同,具體使用方法,可以參照相關模塊的使用規則。 在#%PAM-1.0的下面,即第二行,添加內容,一定要寫在前面,如果寫在後面,雖然用戶被鎖定,但是只要用戶輸入正確的密碼,還是可以登錄的! 最終效果如下圖 這個只是限制了用戶從tty登錄,而沒有限制遠程登錄,如果想限制遠程登錄,需要改SSHD文件# vim /etc/pam.d/sshd #%PAM-1.0 auth required pam_tally2.so deny=3 unlock_time=300 even_deny_root root_unlock_time=10 auth include system-auth account required pam_nologin.so account include system-auth password include system-auth session optional pam_keyinit.so force revoke session include system-auth session required pam_loginuid.so 同樣是增加在第2行! 查看用戶登錄失敗的次數 [root@node100 pam.d]# pam_tally2 --user RedHat Login Failures Latest failure From redhat 7 07/16/12 15:18:22 tty1 解鎖指定用戶 [root@node100 pam.d]# pam_tally2 -r -u redhat Login Failures Latest failure From redhat 7 07/16/12 15:18:22 tty1 這個遠程ssh的時候,沒有提示,我用的是Xshell,不知道其它終端有沒提示,只要超過設定的值,輸入正確的密碼也是登陸不了的! 上面就是Linux通過PAM模塊限制用戶登錄次數的方法,最好設置下,以免別人用工具破解你的電腦,竊取你的隱私信息。

❻ Linux的PAM認證問題。標準的PAM應用程序怎樣將用戶名和明文的密碼傳給PAM服務模塊

自己也寫了一個pam認證模塊,用函數pam_get_authtok可以獲取到登錄用戶輸入的明文口令。

❼ 系統之家Linux如何通過PAM限制用戶登錄失敗次數怎麼辦

現在很多地方都有限制用戶登錄的功能,Linux也是如此,當你登錄失敗多次後就可以限制用戶登錄,從而起到保護電腦安全的作用,通過PAM模塊即可實現,下面隨小編一起來了解下吧。
Linux有一個pam_tally2.so的PAM模塊,來限定用戶的登錄失敗次數,如果次數達到設置的閾值,則鎖定用戶。
編譯PAM的配置文件#
vim
/etc/pam.d/login
#%PAM-1.0
auth
required
pam_tally2.so
deny=3
lock_time=300
even_deny_root
root_unlock_time=10
auth
[user_unknown=ignore
success=ok
ignoreignore=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
required
pam_loginuid.so
session
include
system-auth
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
各參數解釋
even_deny_root
也限制root用戶;
deny
設置普通用戶和root用戶連續錯誤登陸的最大次數,超過最大次數,則鎖定該用戶
unlock_time
設定普通用戶鎖定後,多少時間後解鎖,單位是秒;
root_unlock_time
設定root用戶鎖定後,多少時間後解鎖,單位是秒;
此處使用的是
pam_tally2
模塊,如果不支持
pam_tally2
可以使用
pam_tally
模塊。另外,不同的pam版本,設置可能有所不同,具體使用方法,可以參照相關模塊的使用規則。
在#%PAM-1.0的下面,即第二行,添加內容,一定要寫在前面,如果寫在後面,雖然用戶被鎖定,但是只要用戶輸入正確的密碼,還是可以登錄的!

❽ Linux PAM的system-auth只能對非root用戶生效,那麼如何對root密碼做強度限制呢

chage:密碼失效是通過此命令來管理的。
參數意思:
-m 密碼可更改的最小天數。為零時代表任何時候都可以更改密碼。
-M 密碼保持有效的最大天數。
-W 用戶密碼到期前,提前收到警告信息的天數。
-E 帳號到期的日期。過了這天,此帳號將不可用。
-d 上一次更改的日期
-I 停滯時期。如果一個密碼已過期這些天,那麼此帳號將不可用。
-l 例出當前的設置。由非特權用戶來確定他們的密碼或帳號何時過期。

例1
[root@localhost ~]# chage -l zhangy #查看用戶密碼設定情況
最近一次密碼修改時間 : 4月 27, 2013
密碼過期時間 : 從不
密碼失效時間 : 從不
帳戶過期時間 : 從不
兩次改變密碼之間相距的最小天數 :-1
兩次改變密碼之間相距的最大天數 :-1
在密碼過期之前警告的天數 :-1

[root@localhost ~]# chage -M 90 zhangy #密碼有效期90天

[root@localhost ~]# chage -d 0 zhangy #強制用戶登陸時修改口令

[root@localhost ~]# chage -d 0 -m 0 -M 90 -W 15 zhangy #強制用戶下次登陸時修改密碼,並且設置密碼最低有效期0和最高有限期90,提前15天發警報提示

例2

# chage -E '2014-09-30' test # test這個賬號的有效期是2014-09-30

( 參考http://linux.51yip.com/search/chage)

❾ linux下使用pam密碼策略 怎麼實現不讓使用前3次舊密碼

不知道你是那個發行版。
首先你的電腦要安裝pam_unix2.so模塊(一般默認都安裝了)
Redhat/Fedora/CentOS 系列的linux 編輯專 /etc/pam.d/system-auth
Debian/Ubentu/Suse 系列的linux 編輯 /etc/pam.d/common-auth把含有屬 pam_unix.so的這行編輯成:
password sufficient pam_unix.so use_authtok md5 shadow remember=3(默認的是13)
還有就是要創建一個舊密碼記錄文件/etc/security/opasswd,以及設置密碼生命周期

❿ linux 虛擬用戶auth required pam_userdb.so db=/etc/

require等於import,那個so是一個文件,最後一句是把路徑指定給db這個變數

閱讀全文

與linuxpam認證相關的資料

熱點內容
粵語電影迅雷下載 瀏覽:786
怎麼導入文件夾進u盤 瀏覽:732
stm8s103源程序 瀏覽:441
我能復制天賦葉天小說免費閱讀 瀏覽:49
經典南洋建國類小說 瀏覽:650
遺願清單app 瀏覽:419
溫州ug數控編程培訓哪個學校好 瀏覽:98
360收藏的網站不見了如何找回 瀏覽:457
電影39天完整版 瀏覽:902
星空衛視播放的日本恐怖片 瀏覽:494
手機重置後wlan怎麼添加網路名稱 瀏覽:608
谷歌商店下載舊版本 瀏覽:392
我老公的家庭教育師韓劇演員表 瀏覽:161
來一個電影網站都懂 瀏覽:715
蘋果備忘錄我存的文件 瀏覽:778
男女漏器官的台劇 瀏覽:728
那裡有合法小電影 瀏覽:76
微信放在哪個文件夾最隱私 瀏覽:271
文件掃描件製作軟體 瀏覽:419
一個女的變蛇了主角有一個女鬼叫北安 瀏覽:824

友情鏈接