ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris 11.1 でのネームサービスおよびディレクトリサービスの作業 Oracle Solaris 11.1 Information Library (日本語) |
4. Oracle Solaris Active Directory クライアントの設定 (タスク)
nss_ad ネームサービスモジュールが AD からデータを取得する方法
11. LDAP クライアントと Oracle Directory Server Enterprise Edition の設定 (タスク)
いずれかの AD 相互運用性機能 (nss_ad を含む) を使用できるようにするには、その前に Oracle Solaris クライアントが AD ドメインに参加している必要があります。kclient ユーティリティーは、クライアントを AD に参加させるために使用されます。参加の操作中、kclient は、そのクライアント上に Kerberos v5 を構成します。それ以降は、nss_ad を使用すると、サポートされるデータベースの nsswitch.conf ファイル内のソースとして ad を指定することによって、ネームサービスリクエストを解決できます。nss_ad モジュールは、ホスト資格を使用して AD 内のネームサービス情報を検索します。
nss_ad モジュールは、DNS サーバーのレコードを使用して、ドメインコントローラやグローバルカタログサーバーなどの AD ディレクトリサーバーを自動検出します。そのため、DNS が Oracle Solaris クライアント上で正しく構成されている必要があります。nss_ad モジュールはまた、LDAP v3 プロトコルを使用して AD サーバーのネーミング情報にアクセスします。nss_ad はネイティブな AD スキーマで動作するため、AD サーバーのスキーマに変更は必要ありません。
nss_ad モジュールは現在、Windows ユーザーの Oracle Solaris システムへのログインをサポートしていません。このようなログインがサポートされるまで、このようなユーザーは、引き続き nis や ldap などの従来のバックエンドを使用してログインするようにしてください。
nss_ad を使用するには、idmap および svc:/system/name-service/cache サービスが有効になっている必要があります。nss_ad モジュールは、idmap サービスを使用して、Windows セキュリティー識別子 (SID)、UNIX ユーザー識別子 (UID)、およびグループ識別子 (GID) の間をマップします。
AD ユーザーおよびグループ名がすべて、ドメイン名で修飾されていることを確認してください (user@domain や group@domain など)。たとえば、dana が domain という名前のドメイン内の有効な Windows ユーザーである場合、getpwnam(dana) は失敗しますが、getpwnam(dana@domain) は成功します。
また、次の追加の規則も nss_ad モジュールに関連します。
AD と同様に、nss_ad は、ユーザーおよびグループ名の大文字と小文字が区別されないマッチングを実行します。
nss_ad モジュールは、UTF-8 ロケール、またはユーザーやグループの名前に ASCII 文字のみが存在するドメインでのみ使用してください。
既知の SID として、Windows の世界における汎用ユーザーまたは汎用グループを識別する一連の SID があります。これらはドメイン固有の SID ではなく、その値はすべての Windows オペレーティングシステムにわたって一定のままです。既知の SID の名前は、文字列 BUILTIN で修飾されます (たとえば、Remote Desktop Users@BUILTIN)。
nss_ad モジュールは、列挙をサポートしていません。そのため、それを使用する getpwent() および getgrent() インタフェースやコマンド (getent passwd や getent group など) は AD から情報を取得できません。
nss_ad モジュールは現在、passwd および group ファイルのみをサポートしています。nss_ad は、passwd エントリに従うほかのネームサービスデータベース (audit_user や user_attr など) をサポートしていません。ad バックエンドが (構成に基づいて) 処理された場合は、これらのデータベースに対して「NOT FOUND」が返されます。
nss_ad モジュールでは、Oracle Solaris クライアントがホスト解決に DNS を使用する必要があります。
手順については、「DNS クライアントを有効にする方法」を参照してください。
注 - AD ドメイン名は、domain 指令を使用して、または search 指令で指定された一覧内の最初の項目として指定する必要があります。
両方の指令が指定されている場合は、最後に指定されているものが優先されます。これは、idmap 自動検出機能が正しく機能するために必要です。
次の例では、dig コマンドは、名前と IP アドレスを使用して AD サーバーを解決できることを確認します。
# dig -x 192.168.11.22 +short myserver.ad.example # dig myserver.ad.example +short 192.168.11.22
# svccfg -s svc:/system/name-service/switch svc:/system/name-service/switch> setprop config/host = astring: "files dns" svc:/system/name-service/switch> select system/name-service/switch:default svc:/system/name-service/switch:default> refresh svc:/system/name-service/switch:default> quit
注 - ホスト解決のために nis や ldap などの追加のネームサービスを含めるには、それらを dns のあとに追加します。
例:
# svcs svc:/network/dns/client STATE STIME FMRI online Oct_14 svc:/network/dns/client:default
例:
# /usr/sbin/kclient -T ms_ad
# svccfg -s svc:/system/name-service/switch svc:/system/name-service/switch> setprop config/password = astring: "files nis ad" svc:/system/name-service/switch> setprop config/group = astring: "files nis ad" svc:/system/name-service/switch> select system/name-service/switch:default svc:/system/name-service/switch:default> refresh svc:/system/name-service/switch:default> quit
# svcadm enable idmap
# svcadm refresh name-service/switch
注 - ネームサービススイッチがリフレッシュされた場合は常に、必要に応じて nscd モジュールは自動的に再起動します。
例:
# getent passwd 'test_user@example' test_user@example:x:2154266625:2154266626:test_user:: # getent passwd 2154266625 test_user@example:x:2154266625:2154266626:test_user::