system-authとPassword-authのpam_systemd.so行はどこから来ましたか?

system-authとPassword-authのpam_systemd.so行はどこから来ましたか?

認証にSSSDを使用するようにサーバーを変換した後、SSHを介してサーバーに接続すると、次の行が長い(10〜20秒)中断を引き起こします/etc/pam.d/system-auth/etc/pam.d/password-auth

-session     optional      pam_systemd.so

この行を削除すると中断の問題が解決されましたが、もちろんauthconfig --update --enablesssd実行するたびにその行を含むファイルが再生成されます。

この行が生成されるのをどのように回避できますか?その原因は何ですか?削除し/etc/systemd/logind.confてやり直してもそのままですねauthconfig

system-authpassword-authマニュアルページにはpam_systemd有用な情報がないようですが、おそらくそれは私の意見かもしれません。

答え1

関連マニュアルページは を使って呼び出すことができますman authconfig

ELバリアントでは設定ファイルですが、/etc/sysconfig/authconfigマニュアルでは設定を指定しませんsystemd。 CentOS7/RHEL7authconfigでは /usr/share/authconfig/authconfig.py

command -v authconfig
ls -l /usr/bin/authconfig

/usr/share/authconfigこのファイルにはauthinfo.pyへの参照が含まれていますsystemd

cd /usr/share/authconfig
grep systemd *

このファイルには、「スタック」を定義する複数の配列があります。特に、セッションに指定された配列があります。人々はこの値を変更できます。本物到着間違った次に、変更が目的の効果をもたらしたかどうかをテストします。ただし、更新時にこのファイルを上書きすることもできます。

[True, SESSION, LOGIC_OPTIONAL, "systemd", []]

構成ラインを直接呼び出すのではなく、構成ラインを削除するスクリプトを作成できますauthconfig

#!/usr/bin/env bash
# 
# File: /usr/local/sbin/enable_sssd.sh
#
authconfig --update --enablesssd
sed -ie "/-session[[:space:]]\+optional[[:space:]]\+pam_systemd.so/d" /etc/pam.d/system-auth
sed -ie "/-session[[:space:]]\+optional[[:space:]]\+pam_systemd.so/d" /etc/pam.d/password-auth

PAMセッションソフトウェアはログインセッションを作成して削除します。したがって、PAMセッションハンドラは、utmp環境の変更、設定、Kerberosチケットの保存などのタスクを実行します。ただし、session sufficient pam_sss.soセッションも処理する必要があります。

関連情報