■お断り
・基本的に無保証です。自己責任にてお試しください。
・ご質問や問題点のご指摘は大歓迎です。何かありましたらお気軽にご連絡ください。

■目次


■Kerberos認証利用中、SSH接続時になぜかチケットがフォワードされない


1、/etc/ssh/sshd_config中に、次の設定を記述。(GSSAPI経由の認証を有効化)
/etc/ssh/sshd_config GSSAPIAuthentication yes
GSSAPICleanupCredentials yes

2、ローカル認証(PAM含む)よりKerberos認証を優先させたい場合は、次の設定を記述。
/etc/ssh/sshd_config KerberosAuthentication no
KerberosTicketCleanup yes

3、~/.ssh/config にチケットフォワーディングを許可する設定を記述
(これを忘れると2台め以降へのログイン時パスワードが必要になるばかりでなくNFSv4 with Kerberosのマウントができなくなる。)
~/.ssh/config GSSAPIDelegateCredentials yes
GSSAPIAuthentication yes

■PostgreSQLの認証にKerberosを利用する


1、/var/lib/pgsql/data/postgresql.confにKerberosの設定を記述
/var/lib/pgsql/data/postgresql.conf
# Kerberos
krb_server_keyfile = '/var/lib/pgsql/data/pgsql.krb5.key'               # (change requires restart)
krb_srvname = 'postgres'                 # (change requires restart)
krb_server_hostname = 'db1.****.****.jp' # empty string matches any keytab entry
                                         # (change requires restart)
#krb_caseins_users = off                 # (change requires restart)

2、kadminでpostgresのprincipalを作成し、キーを1で指定した場所に保存する
コマンド
> kadmin
Authenticating as principal root/admin@****.*****.JP with password.
Password for root/admin@****.*****.JP:
kadmin: addprinc -randkey postgres/db1.****.****.jp
kadmin: ktadd -k /var/lib/pgsql/data/pgsql.krb5.key postgres/db1.****.****.jp
kadmin: q

3、キーの所有権をpostgresに変更
(これを忘れると正しく設定していても認証に失敗する)
コマンド
chown postgres:postgres /var/lib/pgsql/data/pgsql.krb5.key