RADIUS認証用に/etc/pam.d/sshd
を編集しました。私はこの行を追加しました:
auth required pam_radius_auth.so
また、私は次の行をコメントアウトしました:
@include common-auth
これで、Radiusサーバーが稼働している場合はRadiusを使用したSSH認証で問題ありませんが、RADIUSサーバーがダウンしている場合は、ローカルLinuxアカウントを使用するためのフォールバックはありません。
RADIUSサーバーに障害が発生したときにローカルLinuxアカウントにフォールバックできるようにファイルを編集する場所に関する提案はありますか?
Common-auth(pam_unix.so
を含む)を有効にし、「required」を「sufficient」に変更します。
auth sufficient pam_radius_auth.so
@include common-auth
auth [success=done default=bad authinfo_unavail=bad ignore=ignore] pam_radius_auth.so localifdown
@include common-auth
次のそれぞれの場合のpam_radius_authの結果:
| correct password (in Radius) | wrong (or UNIX) password
-----------------------+--------------------------------------+-------------------------
Radius Server is alive | PAM_SUCCESS | PAM_AUTHINFO_UNAVAIL
-----------------------+--------------------------------------+-------------------------
Radius Server is dead | PAM_IGNORE (with localifdown option)
-----------------------+--------------------------------------+-------------------------
結果として:
PAM_SUCCESS => done (Login success)
PAM_AUTHINFO_UNAVAIL => bad (Login failure)
PAM_IGNORE => ignore (continue to "common-auth")
注意事項があります。 pam_radius_auth.confのタイムアウト値が小さすぎると、Radiusサーバーから「アクセス拒否」を受信する前に「Radiusサーバーが停止しています」と判断されます。