Solaris のシステム管理 (セキュリティサービス)

パスワード管理

SEAM をインストールすると、2 つのパスワードを持つことになります。通常の Solaris パスワードと Kerberos パスワードです。これらのパスワードは同じでも、異なっていてもかまいません。

通常、Kerberos 以外のコマンド (login など) は、PAM を使用して Kerberos と UNIX の両方で認証するように設定できます。2 つのパスワードが異なっている場合は、ログインで適切な認証を得るために両方のパスワードを入力する必要があります。2 つのパスワードが同じ場合は、UNIX 用に入力した最初のパスワードが Kerberos で使用されます。

ただし、UNIX と Kerberos に同じパスワードを使用すると、セキュリティを損うおそれがあります。つまり、他人が Kerberos パスワードを入手した場合、UNIX パスワードも安全ではありません。しかし、UNIX と Kerberos に同じパスワードを使用したとしても、Kerberos 環境ではパスワードがネットワークを超えて送信されることはないため、Kerberos 認証のないサイトに比べて安全です。通常、どの方法を選ぶかは、サイトごとの方針に従います。

Kerberos では、Kerberos パスワードだけを使用して、ユーザーの識別を検証します。Kerberos では、パスワードの所有者以外のユーザーに Kerberos パスワードを知られた場合、 セキュリティが保証されなくなります。そのユーザーが所有者になることができるためです。そのユーザーは、パスワードの所有者として電子メールを送信したり、所有者のファイルの読み込み、編集、または削除を行ったり、所有者として別のホストにログインしたりできます。この場合、正しいユーザーを識別することは不可能です。したがって、適切なパスワードを選択し、その秘密を保持することは極めて重要です。パスワードは、システム管理者を含め誰にも教えてはいけません。また、パスワードは頻繁に変更してください。他人に知られた可能性のある場合は特に変更が必要です。

パスワード選択のヒント

パスワードには、キーボードから入力できるほとんどの文字を使用できます。ただし、Ctrl キーと Return キーは使用できません。良いパスワードとは、覚えやすく、しかも他人が簡単に推定できないパスワードです。悪いパスワードの例を次に示します。

良いパスワードとは 8 文字以上の長さで、大文字、小文字、数字、句読記号などが混在しているものです。次に例を示します。


注意 – 注意 –

これらの例は使用しないでください。マニュアルの例に使用されているパスワードは侵入者が最初に試みるパスワードです。


パスワードの変更方法

Kerberos パスワードは次の 2 つの方法で変更できます。

パスワードを変更しても、変更がシステム全体に伝播されるまでには、ある程度の時間が必要です (特に大規模なネットワークでは)。システムの設定方法によりますが、この時間は数分から 1 時間以上になることがあります。パスワードを変更したあとすぐに新しい Kerberos チケットを取得する場合は、新しいパスワードをまず試してください。新しいパスワードが有効でない場合は、以前のパスワードを使用して再度試してください。

Kerberos V5 では、システム管理者が有効なパスワードの基準をユーザーごとに設定できます。この基準は、ユーザーごとのポリシーに定義できます。デフォルトのポリシーを使用することもできます。ポリシーの詳細は、ポリシーの管理 を参照してください。

たとえば、ユーザー jenniferjenpol ポリシーでは、パスワードは 8 文字以上で、2 種類以上の文字が混在すると定義されているとします。その場合、パスワードとして「sloth」を入力すると、kpasswd によって拒否されます。


% kpasswd
kpasswd: Changing password for jennifer@ENG.EXAMPLE.COM.
Old password:   <jennifer が既存のパスワードを入力する>
kpasswd: jennifer@ENG.EXAMPLE.COM's password is controlled by
the policy jenpol
which requires a minimum of 8 characters from at least 2 classes 
(the five classes are lowercase, uppercase, numbers, punctuation,
and all other characters).
New password: <jennifer が「sloth」と入力する>
New password (again):  <jennifer が再び「sloth」と入力する>
kpasswd: New password is too short.
Please choose a password which is at least 4 characters long. 

次に、jennifer はパスワードとして「slothrop49」を入力します。「slothrop49」は長さが 8 文字以上で、2 種類の文字 (数字と小文字) が混在しているため基準に合っています。


% kpasswd
kpasswd: Changing password for jennifer@ENG.EXAMPLE.COM.
Old password:  <jennifer が既存のパスワードを入力する>
kpasswd: jennifer@ENG.EXAMPLE.COM's password is controlled by
the policy jenpol
which requires a minimum of 8 characters from at least 2 classes 
(the five classes are lowercase, uppercase, numbers, punctuation,
and all other characters).
New password:  <jennifer が「slothrop49」と入力する>
New password (again):  <jennifer が「slothrop49」と再度入力する>
Kerberos password changed.

例 — パスワードを変更する

次の例では、ユーザー davidpasswd を使用して、UNIX および Kerberos のパスワードを変更します。


% passwd
	passwd:  Changing password for david
	Enter login (NIS+) password:         <現在の UNIX パスワードを入力する>

	New password:                        <新しい UNIX パスワードを入力する>

	Re-enter password:                   <新しい UNIX パスワードを確認する>

	Old KRB5 password:                   <現在の Kerberos パスワードを入力する>

	New KRB5 password:                   <新しい Kerberos パスワードを入力する>

	Re-enter new KRB5 password:          <新しい Kerberos パスワードを確認する>

この例では、passwd により、UNIX パスワードと Kerberos パスワードが要求されます。ただし、PAM モジュールで try_first_pass が設定されていると、Kerberos パスワードは自動的に UNIX パスワードと同じ内容に設定されます。これはデフォルトの設定です。 この場合、ユーザー davidkpasswd を使用して、次の例で示すように Kerberos パスワードを変更する必要があります。

次の例では、ユーザー davidkpasswd を使用して、Kerberos パスワードだけを変更します。


% kpasswd
kpasswd: Changing password for david@ENG.EXAMPLE.COM.
Old password:           <現在の Kerberos パスワードを入力する>

New password:           <新しい Kerberos パスワードを入力する>

New password (again):   <新しい Kerberos パスワードを確認する>

Kerberos password changed.
 

次の例では、ユーザー david が、Kerberos 主体 david/admin (有効な UNIX ユーザーではない) のパスワードを変更します。kpasswd を使用する必要があります。


% kpasswd david/admin
kpasswd:  Changing password for david/admin.
Old password:		   	     <現在の Kerberos パスワードを入力する>

New password:			       <新しい Kerberos パスワードを入力する>

New password (again):	   <新しい Kerberos パスワードを再度入力する>

Kerberos password changed.