ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Solaris のシステム管理 (IP サービス) Oracle Solaris 10 8/11 Information Library (日本語) |
1. Oracle Solaris TCP/IP プロトコル群 (概要)
5. TCP/IP ネットワークサービスと IPv4 アドレス指定の構成 (作業)
10. TCP/IP と IPv4 の詳細 (リファレンス)
DHCP クライアントプロトコルはネットワーク構成情報をどのように管理するか
DHCPv4 クライアントはネットワーク構成情報をどのように管理するか
DHCPv6 クライアントはネットワーク構成情報をどのように管理するか
DHCP クライアントで使用する ifconfig コマンドオプション
複数のネットワークインタフェースを備えた DHCP クライアントシステム
DHCPv4 クライアントが特定のホスト名を要求できるようにする方法
18. DHCP コマンドと DHCP ファイル (リファレンス)
21. IP セキュリティーアーキテクチャー (リファレンス)
25. Oracle Solaris の IP フィルタ (概要)
29. モバイル IP のファイルおよびコマンド (リファレンス)
Oracle Solaris システムでは、ネームサービスとして、DNS、NIS、NIS+、およびローカルファイルストア (/etc/inet/hosts) がサポートされます。これらのネームサービスを使用するためには、ある程度の事前構成が必要です。使用するネームサービスを指定するために、ネームサービススイッチ構成ファイル (nsswitch.conf(4) を参照) も正しく設定してください。
ネームサービスのクライアントとしてシステムを構成しないと、DHCP クライアントシステムでネームサービスを使用することはできません。デフォルトでは、システムのインストール時に異なる構成を指定しないかぎり、ローカルファイルだけが使用されます。
次の表は、DHCP に関連する考慮事項をネームサービスごとに要約したものです。表には、クライアントの設定に役立つ情報へのリンクが含まれています。
表 16-1 DHCP クライアントシステムに対するネームサービスクライアント設定情報
|
DHCP クライアントである Oracle Solaris システムで NIS+ ネームサービスを使用できます。ただし、DHCP サーバーが毎回異なるアドレスを提供する可能性があると、NIS+ のセキュリティー強化機能の 1 つである Data Encryption Standard (DES) 資格の作成が部分的に省略されます。セキュリティーのためには、常に同じアドレスを提供するように DHCP サーバーを構成してください。つまり、DHCP を使用しない NIS+ クライアントを設定する際に、クライアント固有の DES 資格を NIS+ サーバーに追加します。nisclient スクリプトや nisaddcred コマンドを使用するなど、資格を作成する方法はいくつかあります。
NIS+ 資格を生成するためには、クライアントが静的なホスト名をもち、資格の作成と格納ができなければなりません。NIS+ と DHCP を使用するクライアントを設定するときは、すべての DHCP クライアントのホスト名に使用できる同一の資格を作成する必要があります。この方法では、DHCP クライアントがどのような IP アドレスと、関連するホスト名を受け取っても、同じ DES 資格を使用できます。
次に、すべての DHCP ホスト名に使用できる同一の資格を作成する方法を示します。この手順は、DHCP クライアントで使用されるホスト名が分かる場合にのみ使用できます。たとえば、DHCP サーバーがそれらのホスト名を生成する場合、クライアントが受け取る可能性のあるホスト名が分かります。
NIS+ クライアントになる DHCP クライアントシステムは、NIS+ ドメイン内にある別の NIS+ クライアントシステムに属する資格を使用する必要があります。この手順では、当該システムのみの資格が生成され、その資格は当該システムにログインしたスーパーユーザーだけに適用されます。DHCP クライアントシステムにログインするほかのユーザーには、NIS+ サーバー内で固有の独自の資格が必要です。これらの資格は、『Solaris のシステム管理 (ネーミングとディレクトリサービス : NIS+ 編)』に示されている手順に従って作成されます。
# nisgrep nisplus-client-name cred.org_dir > /tmp/file
このコマンドは、NIS+ クライアント用の cred.org_dir テーブルエントリを一時ファイルに書き込みます。
あるいは、テキストエディターを使用します。
公開鍵と非公開鍵をコピーする必要があります。両者とも、コロンで区切られた数字と文字からなる長い文字列です。この情報は、次のステップでコマンドに貼り付けられます。
# nistbladm -a cname=" dhcp-client-name@nisplus-domain" auth_type=DES \ auth_name="unix.dhcp-client-name@nisplus-domain" \ public_data=copied-public-key \ private_data=copied-private-key
copied-public-key には、一時ファイルからコピーした公開鍵情報を貼り付けます。copied-private-key には、一時ファイルからコピーした非公開鍵情報を貼り付けます。
# rcp nisplus-client-name:/var/nis/NIS_COLD_START /var/nis # rcp nisplus-client-name:/etc/.rootkey /etc # rcp nisplus-client-name:/etc/defaultdomain /etc
「permission denied (アクセスが拒否された)」というメッセージを受信した場合、システムはリモートコピーを許可するように設定されていない可能性があります。この場合には、通常のユーザーとしてこれらのファイルを中間の場所にコピーします。次に、スーパーユーザーとして、中間の場所にあるファイルを DHCP クライアントシステムの適切な場所にコピーします。
# cp /etc/nsswitch.nisplus /etc/nsswitch.conf
これで、DHCP クライアントシステムは NIS+ サービスを使用できます。
例 16-1 DHCP クライアントシステムを NIS+ クライアントとして設定する方法
次の例では、nisei というシステムがあります。これは、NIS+ ドメイン dev.example.net の NIS+ クライアントです。さらに、dhow という DHCP クライアントシステムがあります。この例では dhow を NIS+ クライアントとして設定します。
(First log in as superuser on the NIS+ server) # nisgrep nisei cred.org_dir > /tmp/nisei-cred # cat /tmp/nisei-cred nisei.dev.example.net.:DES:unix.nisei@dev.example.net:46199279911a84045b8e0 c76822179138173a20edbd8eab4:90f2e2bb6ffe7e3547346dda624ec4c7f0fe1d5f37e21cff63830 c05bc1c724b # nistbladm -a cname="dhow@dev.example.net." \ auth_type=DES auth_name="unix.dhow@dev.example.net" \ public_data=46199279911a84045b8e0c76822179138173a20edbd8eab4 \ private_data=90f2e2bb6ffe7e3547346dda624ec4c7f0fe1d5f37e21cff63830\ c05bc1c724b # rlogin dhow (Log in as superuser on dhow) # rcp nisei:/var/nis/NIS_COLD_START /var/nis # rcp nisei:/etc/.rootkey /etc # rcp nisei:/etc/defaultdomain /etc # cp /etc/nsswitch.nisplus /etc/nsswitch.conf # reboot
これで、DHCP クライアントシステム dhow は NIS+ サービスを使用できます。
例 16-2 スクリプトによる資格の追加
多数の DHCP クライアントシステムを NIS+ クライアントとして設定する場合は、スクリプトを作成できます。スクリプトを使えば、cred.org_dir NIS+ テーブルのエントリをすばやく追加できます。次に、サンプルスクリプトを示します。
#! /usr/bin/ksh # # Copyright (c) by Sun Microsystems, Inc. All rights reserved. # # Sample script for cloning a credential. Hosts file is already populated # with entries of the form dhcp-[0-9][0-9][0-9]. The entry we're cloning # is dhcp-001. # # PUBLIC_DATA=6e72878d8dc095a8b5aea951733d6ea91b4ec59e136bd3b3 PRIVATE_DATA=3a86729b685e2b2320cd7e26d4f1519ee070a60620a93e48a8682c5031058df4 HOST="dhcp-" DOMAIN="mydomain.example.com" for i in 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 do print - ${HOST}${i} #nistbladm -r [cname="${HOST}${i}.${DOMAIN}."]cred.org_dir nistbladm -a cname="${HOST}${i}.${DOMAIN}." \ auth_type=DES auth_name="unix.${HOST}${i}@${DOMAIN}" \ public_data=${PUBLIC_DATA} private_data=${PRIVATE_DTA} cred.org_Dir done exit 0