Centos
如何對 pam config 進行更改,以便進一步執行 authconfig 不會覆蓋它們?
我正在配置一個 CentOS7 主機(通過 ansible)執行
authconfig
. 現在我需要pam_exec
在設置中添加/配置模組,但它似乎不受authconfig
(參見man authconfig和/etc/sysconfig/authconfig
)的支持。恐怕(如某些 /etc/pam.d/*conf 標頭中所述)隨後的 authconfig 呼叫將覆蓋我的更改。
如何將特定的 pam 配置集成到 RedHat
authconfig
框架?
authconfig
只會更改/etc/pam.d/*-ac
文件中的 PAM 配置。這些文件不直接包含在單個服務的配置中,而是通過符號連結。例如,/etc/pam.d/system-auth-ac
預設情況下連結為/etc/pam.d/system-auth
,並且include
文件中的行喜歡/etc/pam.d/sshd
或/etc/pam.d/login
將始終使用名稱system-auth
,從不system-auth-ac
。
man authconfig
表示如果符號連結被修改,authconfig
將不會重新連結它們。因此,這是系統管理員可以注入自己的設置的地方。你有兩個選擇:
- 在相應行
pam_exec
之前或之後,將您添加到各個服務的 PAM 配置文件中。include
如果您只想pam_exec
申請特定服務,這是推薦的選項。pam_exec
(當使用者執行chfn
以更新他們自己的姓名/辦公室/電話號碼資訊時,您真的需要執行嗎?)include
或者用一個實際文件替換相應的連結,該文件包含您的pam_exec
然後include
行引用相應*-ac
文件。例如,如果您希望您
pam_exec
與所有使用 的服務一起執行password-auth
,您可以將/etc/pam.d/password-auth
符號連結(指向password-auth-ac
由 修改的authconfig
)替換為如下文件:auth include password-auth-ac account include password-auth-ac password include password-auth-ac session include password-auth-ac session required pam_exec.so <your parameters>
…假設您希望您
pam_exec
在會話階段結束。如果您想將其置於不同的階段,請根據您的需要進行編輯。