22.6. OpenSSH サービスのキャッシュを提供するように SSSD を設定
SSSD(System Security Services Daemon) は、OpenSSH を含む複数のシステムサービスにインターフェイスを提供します。
本セクションでは、マシンおよびユーザーの SSH 鍵をキャッシュするように SSSD を設定する方法を説明します。
22.6.1. OpenSSH での SSSD の仕組み
OpenSSH は、SSH プロトコルの実装です。OpenSSH は、認証エンティティーを識別する public-private key pairs に基づいて、2 つのシステム間で暗号化された接続を作成します。詳細は、『システム管理者のガイド』のOpenSSHを参照してください。
SSSD は、マシンおよびユーザーの SSH 公開鍵の認証情報キャッシュとして機能します。この設定では、以下が行われます。
- OpenSSH は、SSSD を参照して、キャッシュされた鍵を確認するように設定されています。
- SSSD は Identity Management(IdM) ドメインを使用し、IdM は公開鍵とホスト情報を保存します。
注記
IdM ドメインの Linux マシンのみが、OpenSSH の鍵キャッシュとして SSSD を使用できます。Windows マシンなどの他のマシンはできません。
SSSD によるホストキーの管理方法
ホストキーを管理するには、SSSD は以下を実行します。
- ホストシステムからパブリックホストキーを取得します。
- ホストキーを
/var/lib/sss/pubconf/known_hosts
ファイルに保存します。 - ホストマシンで接続を確立します。
必要な設定手順については、「ホストキーに SSSD を使用するように OpenSSH の設定」 を参照してください。
SSSD によるユーザーキーの管理方法
ユーザーキーを管理するには、SSSD は以下を実行します。
- IdM ドメインのユーザーエントリーからユーザーの公開鍵を取得します。
- ユーザーキーを標準の認証鍵形式で
.ssh/sss_authorized_keys
ファイルに保存します。
必要な設定手順については、「ユーザーキーに SSSD を使用するように OpenSSH の設定」 を参照してください。
22.6.2. ホストキーに SSSD を使用するように OpenSSH の設定
ユーザーごとまたはシステム全体で設定を変更できます。
- 必要な設定ファイルを開きます。
- ユーザー固有の設定を変更するには
、~/.ssh/config
ファイルを開きます。 - システム全体の設定を変更するには、
/etc/ssh/sshd_config
ファイルを開きます。
ProxyCommand
オプションを使用して、SSH クライアント (必要な引数とホスト名のsss_ssh_knownhostsproxy
ユーティリティー) への接続に使用されるコマンドを指定します。sss_ssh_knownhostsproxy
の詳細は、sss_ssh_knownhostsproxy(1) の man ページを参照してください。GlobalKnownHostsFile
オプションを使用して SSSD ホストファイルの場所を指定します (/var/lib/sss/pubconf/known_hosts
)。このファイルは、デフォルトの OpenSSHknown_hosts
ファイルの代わりに使用されます。
以下の例では、SSH が SSSD ドメインで公開鍵を検索し、提供されたポートとホストに接続するように設定します。
ProxyCommand /usr/bin/sss_ssh_knownhostsproxy -p %p %h GlobalKnownHostsFile /var/lib/sss/pubconf/known_hosts
SSH の設定および設定ファイルの詳細は、ssh_config(5) の man ページを参照してください。
22.6.3. ユーザーキーに SSSD を使用するように OpenSSH の設定
システム全体の設定を変更できます。
/etc/ssh/sshd_config
ファイルを開きます。AuthorizedKeysCommand
オプションを使用して、ユーザーキーを取得するために実行するコマンドを指定します。AuthorizedKeysCommandUser
オプションを使用して、コマンドが実行されるアカウントのユーザーを指定します。
以下の例では、
ユーザー
アカウントで sss_ssh_authorizedkeys
ユーティリティーを実行するように SSH を設定します 。
AuthorizedKeysCommand /usr/bin/sss_ssh_authorizedkeys AuthorizedKeysCommandUser user
sss_ssh_authorizedkeys
の詳細は、sss_ssh_authorizedkeys(1) の man ページを参照してください。
SSH の設定および設定ファイルの詳細は、ssh_config(5) の man ページを参照してください。