Solaris のシステム管理 (第 2 巻)

パスワード管理

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

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

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

Kerberos では、Kerberos パスワードはユーザーの識別を行う唯一の情報です。Kerberos パスワードを他人に知られると、Kerberos セキュリティは無意味になります。その人が本人になり代わって「本人の」電子メールを送信したり、本人のファイルの読み取り、編集、削除などをしたり、本人として他のホストにログインしても、違いはだれにもわかりません。したがって、適切なパスワードを選択し、その秘密を保持することは極めて重要です。パスワードは、システム管理者を含め誰にも教えてはいけません。さらに、パスワードは頻繁に変更してください。他人に知られた可能性のある場合は特に変更が必要です。

パスワード選択のヒント

パスワードには、制御キーや Return キーなどを除き、入力できるキーであればどの文字でもほとんど使用できます。良いパスワードとは、覚え易く、しかも他人が簡単に推定できないものです。悪い例は次のようなものです。

良いパスワードとは少なくとも 8 文字からなり、大文字、小文字、番号、句読記号などが混在しているものです。次に例を挙げます。


注意 - 注意 -

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


パスワードの変更

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


注意 - 注意 -

kpasswd を使用するには、SEAS 3.0 リリースに含まれている SEAM 1.0 管理システムを使用する必要があります。さらに、プライバシサポートを読み込んで、このパスワードの変更要求を防止する必要があります。


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

Kerberos V5 では、システム管理者が有効なパスワードの基準をユーザーごとに設定できます。このような基準は、ユーザーごとに「ポリシー」セット (またはデフォルトポリシー) で定義します。たとえば、jenpol と呼ぶ jennifer のポリシーでは、パスワードは少なくとも 8 文字からなり、少なくとも 2 種類の文字が混在すると定義されているとします。その場合、パスワードとして sloth を入力すると、kpasswd によって拒否されます。


% kpasswd
kpasswd: Changing password for jennifer@ENG.ACME.COM.
Old password:   <jennifer が現在のパスワードを入力する>
kpasswd: jennifer@ENG.ACME.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.ACME.COM.
Old password:  <jennifer が現在のパスワードを入力する>
kpasswd: jennifer@ENG.ACME.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 パスワードと同じ内容に設定されます (これがデフォルトの設定です)。この場合、david が Kerberos パスワードを他のものに設定するには、次の例のように kpasswd を使用する必要があります。

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


% kpasswd
kpasswd: Changing password for david@ENG.ACME.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.