私のコンピュータへのアクセスを設定するために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が機能しない理由を理解できません。たぶんここに何かが落ちたかもしれませんが、私は最初にシステム管理に触れました。どんな助けでも大変感謝します!