Solaris Secure Shell は、遠隔ホストへの接続を認証するために、公開鍵とパスワードの方式を提供します。公開鍵認証は、パスワード認証よりも強力な認証メカニズムです。これは、非公開鍵がネットワーク上を移動しないためです。
認証方式は、次の順序で試されます。構成が認証方式を満たさないときは、次の方式が試されます。
GSS-API – mech_krb5 (Kerberos V) や mech_dh (AUTH_DH) などの GSS-API メカニズムの資格を使用して、クライアントとサーバーを認証します。GSS-API の詳細については、『Oracle Solaris セキュリティーサービス開発ガイド』の「GSS-API の紹介」を参照してください。
ホストに基づく認証 – ホスト鍵と rhosts ファイルを使用します。クライアントの RSA および DSA 公開/非公開ホスト鍵を使用してクライアントを認証します。rhosts ファイルを使用して、ユーザーに対してクライアントを承認します。
公開鍵認証 – RSA および DSA 公開/非公開鍵によってユーザーを認証します。
パスワード認証 – PAM を使用してユーザーを認証します。v2 でのキーボード認証方式では、PAM による任意のプロンプトが可能です。詳細については、sshd(1M) のマニュアルページの「SECURITY」のセクションを参照してください。
次の表では、遠隔ホストにログインしようとするユーザーを認証するための要件を示します。ユーザーは、ローカルホスト (クライアント) 上に存在します。遠隔ホスト (サーバー) は、sshd デーモンを実行しています。次の表は、Solaris Secure Shell の認証方式、互換性のあるプロトコルのバージョン、およびホストの要件の一覧です。
表 19–1 Solaris Secure Shell の認証方式
認証方式 (プロトコルのバージョン) |
ローカルホスト (クライアント) の要件 |
遠隔ホスト (サーバー) の要件 |
---|---|---|
GSS メカニズムのイニシエータの資格。 |
GSS メカニズムのアクセプタの資格。詳細については、「Solaris Secure Shell での GSS 資格の取得」を参照してください。 |
|
ユーザーアカウント /etc/ssh/ssh_host_rsa_key または /etc/ssh/ssh_host_dsa_key にローカルホストの非公開鍵 /etc/ssh/ssh_config 内で HostbasedAuthentication yes |
ユーザーアカウント /etc/ssh/known_hosts または ~/.ssh/known_hosts にローカルホストの公開鍵 /etc/ssh/sshd_config 内で HostbasedAuthentication yes /etc/ssh/sshd_config 内で IgnoreRhosts no /etc/ssh/shosts.equiv、/etc/hosts.equiv、~/.rhosts、または ~/.shosts にローカルホストのエントリ |
|
ユーザーアカウント ~/.ssh/id_rsa または ~/.ssh/id_dsa に非公開鍵 ~/.ssh/id_rsa.pub または ~/.ssh/id_dsa.pub にユーザーの公開鍵 |
ユーザーアカウント ~/.ssh/authorized_keys にユーザーの公開鍵 |
|
RSA 公開鍵 (v1) |
ユーザーアカウント ~/.ssh/identity に非公開鍵 ~/.ssh/identity.pub にユーザーの公開鍵 |
ユーザーアカウント ~/.ssh/authorized_keys にユーザーの公開鍵 |
ユーザーアカウント |
ユーザーアカウント パスワードの有効期限が切れたときの任意のプロンプトやパスワード変更など、PAM をサポートします。 |
|
ユーザーアカウント |
ユーザーアカウント PAM をサポートします。 |
|
.rhosts のみ (v1) |
ユーザーアカウント |
ユーザーアカウント /etc/ssh/sshd_config 内で IgnoreRhosts no /etc/ssh/shosts.equiv、/etc/hosts.equiv、~/.shosts、または ~/.rhosts にローカルホストのエントリ |
.rhosts と RSA (v1) (サーバーのみ) |
ユーザーアカウント /etc/ssh/ssh_host_rsa1_key にローカルホストの公開鍵 |
ユーザーアカウント /etc/ssh/ssh_known_hosts または ~/.ssh/known_hosts にローカルホストの公開鍵 /etc/ssh/sshd_config 内で IgnoreRhosts no /etc/ssh/shosts.equiv、/etc/hosts.equiv、~/.shosts、または ~/.rhosts にローカルホストのエントリ |