Solaris DHCP の管理

NIS+ クライアントとして Solaris DHCP クライアントを設定する方法

NIS+ クライアントになる DHCP クライアントワークステーションは、NIS+ ドメイン内にある別の NIS+ クライアントワークステーションからコピーされた資格を使用する必要があります。この手順では、当該ワークステーションのみの資格が生成され、その資格は当該ワークステーションにログインしたスーパーユーザーだけに適用されます。当該ワークステーション (DHCP クライアント) にログインした他のユーザーは、『Solaris ネーミングの管理』の手順に従って作成された、独自の一意の資格を NIS+ サーバーに持つ必要があります。

  1. NIS+ サーバー上で次のコマンドを入力して、NIS+ クライアント用の cred テーブルエントリを一時ファイルに書き込みます。


    # nisgrep nisplus-client-name cred.org_dir > /tmp/file
    
  2. 一時ファイルの内容を見て、その資格をコピーし、そのコピーを使用して、DHCP クライアント用の資格を作成します。

    公開鍵と非公開鍵をコピーする必要があります。両者とも、コロンで区切られた数字と文字からなる長い文字列です。

  3. 次のコマンドを入力して、DHCP クライアント用の資格を追加します。 一時ファイルから公開鍵と非公開鍵の情報をコピーします。


    # nistbladm -a cname=" dhcp-client-name@nisplus-domain" auth_type=DES \
    auth_name="unix.dhcp-client-name@nisplus-domain" \
    public_data=copied-public-data \ 
    private_data=copied-private-data
    
  4. 各 DHCP クライアントシステム上で次のコマンドを入力して、NIS+ クライアントファイルを DHCP クライアントシステムにリモートコピーします。


    # 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
    

    「permissin denied (アクセスが拒否された)」というメッセージを受信した場合、システムはリモートコピーを許可するように設定されていません。この場合はまず、一般ユーザーとして、中間地点にファイルをコピーします。次に、スーパーユーザーとして、DHCP クライアントシステム上の適切な場所にファイルをコピーします。

  5. DHCP クライアントシステム上で次のコマンドを入力して、NIS+ 用の正しいネームサービス切り替えファイルを使用します。


    # cp /etc/nisswitch.nisplus /etc/nisswitch.conf
    
  6. DHCP クライアントシステムを再起動します。

    これで、DHCP クライアントシステムは NIS+ サービスを使用できます。

例 – NIS+ クライアントとしての Solaris DHCP クライアントの設定

次の例では、nisei というワークステーションが dev.purple.net という NIS+ ドメイン内の NIS+ クライアントであり、dhow という DHCP クライアントを NIS+ クライアントにしようとしていると仮定します。


(NIS+ サーバーにスーパーユーザーとしてログインする)
# nisgrep nisei cred.org_dir> /tmp/nisei-cred
# cat /tmp/nisei-cred
nisei.dev.purple.net.:DES:unix.nisei@dev.purple.net:46199279911a84045b8e0
c76822179138173a20edbd8eab4:90f2e2bb6ffe7e3547346dda624ec4c7f0fe1d5f37e21cff63830
c05bc1c724b
# nistbladm -a cname="dhow@dev.purple.net." \
auth_type=DES auth_name="unix.dhow@dev.purple.net" \
public_data=46199279911a84045b8e0c76822179138173a20edbd8eab4 \
private_data=90f2e2bb6ffe7e3547346dda624ec4c7f0fe1d5f37e21cff63830\
c05bc1c724b
# rlogin dhow
(dhow にスーパーユーザーとしてログインする)
# rcp nisei:/var/nis/NIS_COLD_START /var/nis
# rcp nisei:/etc/.rootkey /etc
# rcp nisei:/etc/defaultdomain /etc
# cp /etc/nisswitch.nisplus /etc/nisswitch.conf
# reboot

これで、DHCP クライアントシステム dhow は NIS+ サービスを使用できます。

スクリプトによる資格の追加

多数の DHCP クライアントを NIS+ クライアントとして設定したい場合は、これらのエントリを cred テーブルに追加するためのスクリプトを作成します。次に、このようなスクリプトの例を示します。


例 4–2 DHCP クライアントの資格を追加するスクリプトの例

#! /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.nisplus.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