web-dev-qa-db-ja.com

PAM / Kerberos認証(CVS用)を使用してLinuxで認証をキャッシュする方法は?

PAMとKerberos5を使用してWindowsActiveDirectoryサーバー上のLinuxユーザーパスワードを認証するLinuxサーバーがいくつかあります。使用するLinuxディストリビューションはCentOS6です。

1つのシステムには、CVSやSubversionなどのバージョン管理システムがいくつかあります。どちらもPAMを介してユーザーを認証し、ユーザーが通常のUnix応答を使用できるようにします。 WindowsADアカウント。

パスワード認証にKerberosの使用を開始して以来、クライアントマシンのCVSは接続の確立に非常に時間がかかることがよくあります。 CVSは、すべての要求(cvs diff、log、update ...など)でユーザーを認証します。

kerberosが使用する資格情報をキャッシュすることは可能ですか?ユーザーがcvsアクションを実行するたびにWindows ADサーバーに問い合わせる必要はありませんか?

PAM構成/etc/pam.d/system-authは次のようになります。

auth        required      pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        sufficient    pam_krb5.so use_first_pass
auth        required      pam_deny.so

account     required      pam_unix.so broken_shadow
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     [default=bad success=ok user_unknown=ignore] pam_krb5.so
account     required      pam_permit.so

password    requisite     pam_cracklib.so try_first_pass retry=3
password    sufficient    pam_unix.so md5 shadow nullok try_first_pass use_authtok
password    sufficient    pam_krb5.so use_authtok
password    required      pam_deny.so

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

' sssd 'というプログラムは、オフライン(およびキャッシュ)ログインの(Kerberos)資格情報をキャッシュできます。 sssdが正常に動作しているとき(つまり、オフラインでないとき)にキャッシュされたKerberos資格情報を使用するかどうかはわかりませんが、試してみる必要があります。

Sssdの詳細 ここ

2
wzzrd

PAMを介した認証には、常にこの問題があります。これを回避する唯一の方法は、サービス自体をkerberizeすることであり、認証を実装するためにpamスタックを使用することです。

これを行う1つの方法は、sshを使用してcvsリポジトリにアクセスし、kerberosを使用してsshへの認証を行うことです。 (google ssh GSSAPI)。

Cvsリポジトリをホストしているサーバーへのsshアクセスを許可したくない場合は、CVSサーバーのkerberizedバージョンがあります。例については、を参照してください。

http://compbio.soe.ucsc.edu/cvsdoc/cvs-manual/cvs_28.html