SSH CentOSを使用してログインすると、pam_accessは機能しません。

SSH CentOSを使用してログインすると、pam_accessは機能しません。

私のコンピュータへのアクセスを設定するためにPAMを使用しています。 CentOS 7.6.1810(コア)を使用しています。私はPAMを使いたいです。設定を編集して、1か所でログインできる人を設定できるので/etc/security/access.confとても便利です。また、PAMがどのように機能するかを理解したいので、他の方法があることを知っていても使用しないことをお勧めします。現在、ttyを使用してログインしているユーザーにこの機能を提供できますが、sshを使用して使用することはできません。

以下に必要な設定ファイルを示します。

私の/etc/security/access.confファイルには次の行があります。

+:root:ALL
-:ALL:ALL

注:これはセキュリティ上の欠陥であることは認識していますが、システムを構成するときにのみこれを実行してください。一番上の行は削除します。

私の/etc/pam.d/systemauthファイルには次のものがあります。

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        required      pam_faildelay.so delay=2000000
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
auth        required      pam_deny.so

account     required      pam_unix.so
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 1000 quiet
account     required      pam_permit.so
account     required      pam_access.so

password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password    required      pam_deny.so

session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
-session     optional      pam_systemd.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so

そのラインに特別な注意を払ってくださいaccount require pam_access.so。これにより、含まれるすべてのポリシーが認証system-authに pam_access を使用します。

/etc/pam.d/sshd私のファイルの関連行は次のとおりです。

account    required     pam_nologin.so
account    include      system-auth
account    require      pam_access.so
account    include      password-auth

この行は、sshデーモンがログインにpam_accessを使用していることを確認する必要があります。

また、私の/etc/ssh/sshd_configファイルでpamを使用するかどうかを制御する行が正しく設定されていることを確認しました。特に私はこの行を持っていますUsePAM yes

最後に、これが機能していることをテストするために、root以外のアカウントでSSHを使用してログインしようとすると、次のログ出力が表示されます/var/log/secure

Oct  4 21:12:34 localhost sshd[3683]: Accepted keyboard-interactive/pam for pbeesly from 10.0.2.2 port 45250 ssh2
Oct  4 21:12:34 localhost sshd[3683]: pam_unix(sshd:session): session opened for user pbeesly by (uid=0)

pam_accessが機能しない理由を理解できません。たぶんここに何かが落ちたかもしれませんが、私は最初にシステム管理に触れました。どんな助けでも大変感謝します!

ベストアンサー1

おすすめ記事