SSブログ

Oracle Directory Server Enterprise Edition(Windows)のインストール[Vol.4] [DSEE7]

ODSEEのインストールは今回の記事が最後です。
各種設定をDSCCから行いたいと思います。
IE8からhttps://dsee7m1.example.com:8443/dscc7/にアクセスします。
Directory Service Manager:dsee7
パスワード:********

まず、ロギングの設定です。
ログの種類としては、エラー、アクセス、監査の3つがあります。
エラーとアクセスはデフォルトで有効になっていますが、監査ログは無効になっています。
監査ログも運用では必要になりますから、有効化したいと思います。
また、ログの設計はディスクの容量に依存することがありますが、ディスクの容量が大きければそれほど細かく考える必要は無いと思います。

ディレクトリサーバーのタブをクリックします。
サーバーからdsee7m1.example.comをクリックします。
サーバー設定のタブをクリックします。
エラーロギングをクリックします。
1ヶ月分のログは保存する設定です。
①ログのローテーション欄
 ログファイルの最大数:100
 時間を基にしたログのローテーション:1日 00:00
 ログファイルのサイズが次の値を超えた場合のみローテーションする:100MB
 ファイルサイズを基にしたログのローテーション: サイズのみを基にしたログファイルの自動ローテーションは行わない

②ログの削除欄
 時間を基にしたログの削除:ログの経過時間を超えた場合にログファイルを削除する
 ログの経過時間の制限:32日
 ファイルサイズを基にしたログの削除:サイズを基にしたログファイルの自動削除は行わない
 空きディスク容量を基にしたログの削除: 空きディスク容量が次の値より少なくなった場合に削除する 1000MB
アクセスロギングも同様の設定を行います。
監査ロギングはデフォルトが無効なので「監査ロギングを有効にする」をクリックして有効化します。その後は、エラー、アクセスロギングと同じ設定をします。

次にクライアントの制御の設定を行います。
これは、LDAPの応答を定義するものです。
サーバー設定のLDAPタブをクリックします。
クライアント制御の設定
サイズ制限:2000エントリ→ 無制限
時間制限:3600秒→600秒
検索制限 :5000エントリ→ 無制限
アイドルタイムアウト:無制限
基本的に無制限化しています。時間制限だけ600秒(10分)にしています。
この時間を長くすると、サーバー設定のパフォーマンスにあるファイル記述子の最大数を大きくする必要があると思います。

次はanonymousの対策をします。
サンプルではanonymousの参照が可能になっています。
エントリの管理のアクセス制御タブをクリックします。
Anonymous read-search access が存在していますね?
Anonymous read-search access にチェックを入れ、削除ボタンをクリックします。
ACIの削除の確認が表示されます。
選択したACIを削除しますか?
OKをクリックします。
これでanonymousではdc=example,dc=comの下の情報は何も表示されなくなります。

次にパスワードポリシーについて設定したいと思います。
エントリの管理にあるパスワードポリシーをクリックします。
まず、デフォルトでは、パスワードポリシー互換モード: Directory Server 5 互換モード で
動作しているので、互換モードを解除します。
変更ボタンをクリックします。
「Directory Server 5 互換モード」から「Directory Server 6 移行モード」にアップグレードしますが表示されます。
OKをクリックします。
互換モードへのアップグレードの確認画面が表示されます。
OKをクリックします。
これでパスワードポリシー互換モードがDirectory Server 6 移行モードになりました。
さらにDirectory Server 6 モードに変更します。
変更ボタンをクリックします。
「Directory Server 6 移行モード」から「Directory Server 6 モード」にアップグレードしますが表示されます。
OKをクリックします。
互換モードへのアップグレードの確認が表示されます。
OKをクリックします。

ここで、サーバーを再起動します。
サーバー操作のタブをクリックします。
再起動ボタンをクリックします。
正常に再起動できたら、エントリの管理にあるパスワードポリシータブをクリックします。
グローバルパスワードポリシーをクリックします。
(すべて確認していません。誤りが含まれている可能性もあります。)
パスワードポリシーを設定します。
①パスワードの変更欄
 チェックする→パスワードリセット: 最初のログイン時とリセット後にパスワードの変更を要求
 チェックしなし→安全な変更
 チェックする→ユーザーが変更可能: ユーザーにパスワードの変更を許可
 チェックする→変更頻度: パスワード変更頻度の限度を設定
 変更間隔の最少日数: 0日
 チェックする→パスワードの再利用: ユーザーのパスワード再利用を禁止
 記憶するパスワードの数:3
※初回認証時には、パスワード変更が必要で、ユーザーがパスワードを変更できる。パスワードはいつでも変更可能で、変更したパスワードは過去3回分を保存し、再利用を禁止します。

②パスワードの有効期限欄
 チェックする→パスワードの有効期限: パスワードの有効期限を設定
 90日
 期限切れの警告:60日前 (ユーザーバインド時に送信)
 チェックしない→正常なログイン
※パスワードの有効期間は90日(=ユーザーの有効期間)、60日前に警告するので、パスワード変更してから30日で警告となる。期限切れのパスワードでログインは許可しない。


③パスワードコンテンツ欄
 パスワード保存スキーマ:SSHA
 パスワードの構文チェック:常に確認
 パスワードの最少文字数:8文字以上
 チェックしない→管理ユーザー
 チェックする→パスワード強度チェック: パスワード強度チェックを有効にする
 下にリストされている文字タイプを少なくとも2つ含むパスワードが必要
  小文字が少なくとも 1 文字
  大文字が少なくとも 1 文字
  数字が少なくとも 1 文字
  特殊文字が少なくとも 1 文字
 チェックしない→辞書の単語を基にしたパスワードを禁止
※パスワードはSSHAで暗号化し、パスワード更新時には、パスワードポリシーに合致するかチェックする。パスワードは8文字以上であることと小文字、大文字、数字、特殊文字が2つ以上が含まれていること。

④アカウントのロックアウト欄
 チェックする→アカウントのロックアウト: アカウントのロックアウトを有効化
 ロックアウトまでの失敗回数: 3
 失敗回数リセット:10 分後(最後に失敗したログインから)
 チェックしない→ロックアウト時間
※アカウントロックは10分間に3回の認証失敗でロックアウトする。ロックアウトが無限。

パスワードポリシーが設定できたので、アカウントを作成して、ポリシーの効果を確認してみます。アカウントの作成方法としてLDIFによる作成を行いたいと思います。
メモ帳等でC:\oracle\dsee7\dsInst\ldifにassimane.ldifを作成します。
assimane.ldifは以下のとおりです。
dn: uid=assimane, ou=People, dc=example,dc=com
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
cn: assimane
givenName: assimane
mail: assimane@example.com
userpassword: 1234567
sn: assimane
uid: assimane

上記のLDIFではパスワードが7桁(1234567)なので、登録はエラーになります。
コマンドプロンプトを開きます。
C:\Documents and Settings\dsee7> cd C:\oracle\dsee7\dsrk\bin
C:\oracle\dsee7\dsrk\bin> ldapmodify.exe -h localhost -p 389 -D "cn=directory manager" -w ******** -f C:\oracle\dsee7\dsInst\ldif\assimane.ldif -a
adding new entry uid=assimane, ou=People, dc=example,dc=com
ldap_add: Constraint violation
ldap_add: additional info: Password too short
パスワード長が短いため、登録できませんでした。

では、assimane.ldifのuserpasswordを以下のように修正します。
userpassword: 12345678

これで8文字はクリアしましたが、数字だけで構成されているので、文字種2つ以上を満たしません。では、登録して見ましょう。
C:\oracle\dsee7\dsrk\bin> ldapmodify.exe -h localhost -p 389 -D "cn=directory manager" -w ******** -f C:\oracle\dsee7\dsInst\ldif\assimane.ldif -a
adding new entry uid=assimane, ou=People, dc=example,dc=com
ldap_add: Constraint violation
ldap_add: additional info: invalid password syntax: no uppercase character
文字種の複雑性を満たせなかったので、登録できませんでした。

では、assimane.ldifのuserpasswordを以下のように修正します。
userpassword: pw12345678

正常に登録できるか実行しましょう。
C:\oracle\dsee7\dsrk\bin> ldapmodify.exe -h localhost -p 389 -D "cn=directory manager" -w ******** -f C:\oracle\dsee7\dsInst\ldif\assimane.ldif -a
adding new entry uid=assimane, ou=People, dc=example,dc=com
ちゃんと登録できました。

では、自分自身の情報をldapsearch.exeで検索してみましょう。
C:\oracle\dsee7\dsrk\bin> ldapsearch.exe -h localhost -p 389 -D "uid=assimane,ou=People,dc=example,dc=com" -w ********** -b "uid=assimane,ou=People,dc=example,dc=com" objectclass=*
ldap_search: DSA is unwilling to perform
ldap_search: additional info: Password was reset and must be changed.
ここでもパスワードポリシーが効いています。
初回はパスワード変更が必要というポリシーです。

DSCCから状態を見て見ましょう。
エントリの管理の参照タブをクリックします。
[+]ou=Peopleを展開します。
[ ]uid=assimaneを選択して
エントリの編集をクリックします。
テキストビューのタブで表示を変えます。
読み取り専用属性の以下を確認します。
pwdreset: TRUE
この属性があるため、パスワード変更が必要になります。

パスワード変更の良いツールがありませんので、LDIFファイルでパスワード変更します。
C:\oracle\dsee7\dsInst\ldifにpassword.ldifを作成します。
dn: uid=assimane, ou=People, dc=example,dc=com
changetype: modify
replace: userpassword
userpassword: pw87654321

ユーザー登録時はDirectory Managerで実施しましたが、今回は自分自身でバインド(認証)し、更新するのがミソです。
C:\oracle\dsee7\dsrk\bin> ldapmodify.exe -h localhost -p 389 -D "uid=assimane,ou=People,dc=example,dc=com" -w ********** -f C:\oracle\dsee7\dsInst\ldif\password.ldif
modifying entry uid=assimane, ou=People, dc=example,dc=com

DSCCから状態を見て見ましょう。
エントリの管理の参照タブをクリックします。
[+]ou=Peopleを展開します。
[ ]uid=assimaneを選択して
エントリの編集をクリックします。
テキストビューのタブで表示を変えます。
読み取り専用属性の以下を確認します。
pwdresetは消えていますね。

自分自身の情報をldapsearch.exeで検索してみましょう。
C:\oracle\dsee7\dsrk\bin> ldapsearch.exe -h localhost -p 389 -D "uid=assimane,ou=People,dc=example,dc=com" -w ********** -b "uid=assimane,ou=People,dc=example,dc=com" objectclass=*
エラーは表示されませんが、何も見えません。
ACIを構成すれば、表示することが可能です。
さっそくACIを作成します。

エントリの管理のアクセス制御タブをクリックします。
構文からACIを新規作成をクリックします。
(target = ldap:///ou=People,dc=example,dc=com)
(targetscope = subtree)
(targetattr="*")
(version 3.0;
acl "People Self allow all";
allow (all)
(userdn = "ldap:///self")
;)
※上記は自分自身はすべての操作が可能

ACIが配置されるエントリ:
ou=People,dc=example,dc=com

ACIが設定できたら、検索してみます。
C:\oracle\dsee7\dsrk\bin> ldapsearch.exe -h localhost -p 389 -D "uid=assimane,ou=People,dc=example,dc=com" -w ********** -b "uid=assimane,ou=People,dc=example,dc=com" objectclass=*
version: 1
dn: uid=assimane, ou=People, dc=example,dc=com
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
cn: assimane
givenName: assimane
mail: assimane@example.com
sn: assimane
uid: assimane
userPassword: {SSHA}8rkHqgX4SrFiBgTrBlrJYW3IBhF1PORAMTgLDw==

ちゃんと見えましたね。

これでOracle Directory Server Enterprise Editionのインストールは完了です。
次回もお楽しみに!!

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

Facebook コメント

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。