SSH認証にgssapi-keyexまたはgssapi-with-micを使用する(公開鍵は許可されていません)

SSH認証にgssapi-keyexまたはgssapi-with-micを使用する(公開鍵は許可されていません)

当社はSSH公開鍵認証を無効にしているため、毎回パスワードを手動で入力する必要があります(変更する予定はありません/etc/ssh/sshd_config)。

ただし、認証gssapi-keyexgssapi-with-mic有効になります(ssh以下のデバッグ出力を参照)。

この場合、自動ログインを使用する方法は?
活用gssapi-keyexおよび/またはgssapi-with-mic認証できますか?

> ssh -v -o PreferredAuthentications=publickey hostxx.domainxx
OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to hostxx.domainxx [11.22.33.44] port 22.
debug1: Connection established.
debug1: identity file /home/me/.ssh/identity type -1
debug1: identity file /home/me/.ssh/id_rsa type -1
debug1: identity file /home/me/.ssh/id_dsa type 2
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3
debug1: match: OpenSSH_5.3 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.3
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'hostxx.domainxx' is known and matches the RSA host key.
debug1: Found key in /home/me/.ssh/known_hosts:2
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,password
debug1: No more authentication methods to try.
Permission denied (gssapi-keyex,gssapi-with-mic,password).

ベストアンサー1

おそらく。

  • 標準ログインプロセスを介してまたは手動で(kinitWindows用MIT Kerberos)クライアントシステムからプリンシパルのチケットを取得できますか?
  • サーバーにKerberosプリンシパルがありますか?それともこれを提供できますか?次のようにする必要があります。host/[email protected]
  • GSSAPIクライアントで認証が有効になっていますか?
  • クライアントは、DNS TXTリソースレコードまたはローカルマッピングを介してサーバーがどのゾーンに属しているかを知っていますか?

「はい」と言うとみんな以上、おめでとうございます。お使いいただけますGSSAPIAuthentication

  • 設定によっては、資格情報の委任を有効にする必要があります。

テストステップ:(
前提:ドメイン= example.com、ゾーン=例.COM)

  1. kinit [email protected]
    • pam_krb5理想的には、これは適切なpam_sss場合は標準ログインプロセスを介して行われます。auth_provider = krb5pam stack
  2. kvno host/[email protected]
    • デバッグ段階です。有効なキャッシュがある場合、またはサポートされているオブジェクトと通信している場合、これsshは自動的に行われます。sshdgssapi-with-micgssapi-keyex
  3. dig _kerberos.example.com txt返す必要があります"EXAMPLE.COM"
    • あるいは、マッピングを[domain_realm]asの一部に保存することもできますが、このアプローチはスケーラビリティが優れています。/etc/krb5.conf.example.com = EXAMPLE.COMdns
  4. ssh -o GSSAPIAuthentication=yes [email protected]
    • サーバーからプリンシパル以外のユーザー名でログインするには、それをマップする場所を知る必要があります。ここでは詳しく説明しません。

おすすめ記事