ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris 11.1 の管理: セキュリティーサービス Oracle Solaris 11.1 Information Library (日本語) |
パート II システム、ファイル、およびデバイスのセキュリティー
10. Oracle Solaris のセキュリティー属性 (参照)
22. Kerberos エラーメッセージとトラブルシューティング
Kerberos サービスが構成されている場合、パスワードを 2 つ持つことになります。 通常の Solaris パスワードと Kerberos パスワードです。これらのパスワードは同じでも、異なっていても構いません。
パスワードには、キーボードから入力できるほとんどの文字を使用できます。ただし、Ctrl キーと Return キーは使用できません。良いパスワードとは、覚えやすく、しかも他人が簡単に推定できないパスワードです。悪いパスワードの例を次に示します。
辞書に出てくる言葉
よく見られるありふれた名前
有名な人やキャラクタの名前
ユーザーの氏名またはユーザー名 (たとえば、名前を逆に綴る、2 度繰り返す)
配偶者の名前、子供の名前、ペットの名前
自分の誕生日や親戚の誕生日
社会保険番号、運転免許証番号、パスポート番号、またはこれに類した身分証明書番号
このドキュメントやほかのドキュメントに出てくるサンプルパスワード
良いパスワードとは 8 文字以上の長さで、大文字、小文字、数字、句読記号などが混在しているものです。次に例を示します。
「I2LMHinSF」などの短縮形。(「I too left my heart in San Francisco」と覚える)
「WumpaBun」、「WangDangdoodle!」など、発音しやすい意味のない語句
「6o'cluck」、「RrriotGrrrlsRrrule!」など、わざとスペルを間違えた語句
注意 - これらの例は使用しないでください。ドキュメントの例に使用されているパスワードは侵入者が最初に試みるパスワードです。 |
PAM が適切に構成されている場合、Kerberos パスワードは次の 2 つの方法で変更できます。
通常の UNIX の passwd コマンド。Kerberos サービスが構成されていると、passwd コマンドでも新しい Kerberos パスワードを求めるプロンプトが自動的に表示されます。
kpasswd の代わりに passwd を使用する利点は、UNIX と Kerbeors 両方のパスワードを同時に設定できることです。ただし、一般的には passwd コマンドで両方のパスワードを同時に変更する必要はありません。UNIX パスワードだけを変更して Kerberos パスワードは変更しなかったり、その逆であっても構いません。
注 - passwd コマンドの動作は、PAM モジュールの構成方法によって異なります。構成によっては、両方のパスワードを変更しなければならない場合があります。あるサイトでは UNIX パスワードの変更が必須であり、別のサイトでは Kerberos パスワードの変更が必須であるという場合があります。
kpasswd コマンド。kpasswd コマンドは、passwd コマンドと似ています。ただし、kpasswd コマンドでは、Kerberos パスワード以外は変更できません。UNIX パスワードを変更する場合は、passwd コマンドを使用する必要があります。
もう 1 つの違いは、kpasswd コマンドでは、有効な UNIX ユーザーではない Kerberos 主体のパスワードを変更できる点です。たとえば、david/admin は Kerberos 主体ですが、実際の UNIX ユーザーではありません。したがって、この場合は、passwd コマンドの代わりに kpasswd コマンドを使用する必要があります。
パスワードを変更しても、変更がシステム全体に伝播されるまでには、ある程度の時間が必要です (特に大規模なネットワークでは)。システムの設定方法によりますが、この時間は数分から 1 時間以上になることがあります。パスワードを変更したあとすぐに新しい Kerberos チケットを取得する場合は、新しいパスワードをまず試してください。新しいパスワードが有効でない場合は、以前のパスワードを使用して再度試してください。
Kerberos V5 プロトコルでは、システム管理者が有効なパスワードの基準をユーザーごとに設定できます。この基準は、ユーザーごとに設定された「ポリシー」 (またはデフォルトのポリシー) によって定義されます。ポリシーの詳細については、「Kerberos ポリシーの管理」を参照してください。
たとえば、ユーザー jennifer の jenpol ポリシーでは、パスワードは 8 文字以上で、2 種類以上の文字で構成されると定義されているとします。その場合、パスワードとして「sloth」を入力すると、kpasswd によって拒否されます。
% kpasswd kpasswd: Changing password for jennifer@ENG.EXAMPLE.COM. Old password: <Jennifer types her existing password> 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 types 'sloth'> New password (again): <Jennifer re-types '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 types her existing password> 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 types 'slothrop49'> New password (again): <Jennifer re-types 'slothrop49'> Kerberos password changed.
例 24-3 パスワードの変更方法
次の例では、ユーザー david が passwd を使用して、UNIX および Kerberos のパスワードを変更します。
% passwd passwd: Changing password for david Enter login password: <Type the current UNIX password> New password: <Type the new UNIX password> Re-enter password: <Confirm the new UNIX password> Old KRB5 password: <Type the current Kerberos password> New KRB5 password: <Type the new Kerberos password> Re-enter new KRB5 password: <Confirm the new Kerberos password>
passwd では、UNIX パスワードと Kerberos パスワードの両方が要求されることに注意してください。この動作は、デフォルトの構成です。この場合、次に示すように、ユーザー david は kpasswd を使用して自分の Kerberos パスワードを何か別のものに設定する必要があります。
次の例では、ユーザー david が kpasswd を使用して、自分の Kerberos パスワードのみを変更します。
% kpasswd kpasswd: Changing password for david@ENG.EXAMPLE.COM. Old password: <Type the current Kerberos password> New password: <Type the new Kerberos password> New password (again): <Confirm the new Kerberos password> Kerberos password changed.
次の例では、ユーザー david が、Kerberos 主体 david/admin (有効な UNIX ユーザーではない) のパスワードを変更します。kpasswd を使用する必要があります。
% kpasswd david/admin kpasswd: Changing password for david/admin. Old password: <Type the current Kerberos password> New password: <Type the new Kerberos password> New password (again): <Type the new Kerberos password> Kerberos password changed.
他人があなたのアカウントを使用して (あなたとして) ログインする必要がある場合、Kerberos を使用すれば、パスワードを公表せずにそれを実現できます。それには、ホームディレクトリに .k5login ファイルを格納します。.k5login ファイルは、アクセスを許可する各ユーザーに対応する、1 つ以上の Kerberos 主体の一覧です。(1 つの主体を 1 行に入力する必要があります)。
ユーザー david が次のような .k5login ファイルをホームディレクトリに格納しているとします。
jennifer@ENG.EXAMPLE.COM joe@EXAMPLE.ORG
このファイルによって、ユーザー jennifer と joe は david として振る舞うことができます。ただしそれには、その二人がすでにそれぞれのレルムにおいて Kerberos チケットを取得している必要があります。たとえば、jennifer は david として、david のマシン (boston) に david 自身のパスワードを入力せずにリモートログインできます。
図 24-1 アカウントへのアクセスを認可する .k5login ファイルの使用
david のホームディレクトリが、Kerberos V5 プロトコル経由で別の (3 つ目の) マシンから NFS マウントされている場合、jennifer がそのホームディレクトリにアクセスするには、彼女が転送チケットを所持している必要があります。転送可能チケットの使用例については、「Kerberos チケットの作成」を参照してください。
ネットワーク上のほかのマシンにログインする必要がある場合、それらのマシン上の .k5login ファイル内に自分の Kerberos 主体を追加します。
.k5login ファイルの使用は、次の理由により、パスワードを公表するよりもかなり安全です。
.k5login ファイルから特定の主体を削除することで、特定ユーザーのアクセス認可をいつでも無効にできます。
ホームディレクトリ内の .k5login ファイルにある名前の付いたユーザーの主体は、そのマシン (NFS 上などで .k5login ファイルを共有している場合には一連のマシン) 上のアカウントへの完全なアクセス権を持ちます。ただし、Kerberos サービスは、そのユーザー ID に基づいてアクセスを承認します。つまり、jennifer は、joe のマシンにログインして、そこでタスクを行えます。ただし、ftp や rlogin などの Kerberos プログラムを使用する場合は、自分自身のアカウントで使用します。
Kerberos は、チケットを取得したユーザーのログを保持しているため、システム管理者は、特定の時間に特定のユーザー ID を使用できるユーザーを、必要に応じて調べることができます。
.k5login ファイルの一般的な使い方の 1 つは、このファイルを root のホームディレクトリに格納し、ファイル内に記述された Kerberos 主体にそのマシンの root アクセス権限を与える、というものです。この構成により、システム管理者は、root パスワードを公表したり、root パスワードをネットワーク上で入力したりせずに、ローカルで root になることも、root としてリモートログインすることもできるようになります。
例 24-4 アカウントへのアクセスを認可する .k5login ファイルの使用
jennifer が、マシン boston.example.com に root としてログインするとします。彼女の主体名のエントリは boston.example.com 上の root のホームディレクトリ内の .k5login ファイルに含まれているため、彼女はここでもパスワードを入力する必要がありません。
% rlogin boston.example.com -l root -x This rlogin session is using DES encryption for all data transmissions. Last login: Thu Jun 20 16:20:50 from daffodil SunOS Release 5.7 (GENERIC) #2: Tue Nov 14 18:09:31 EST 1998 boston[root]%