Solaris のシステム管理 (ネーミングとディレクトリサービス : FNS、NIS+ 編)

公開鍵の更新

NIS+ サーバーの公開鍵は名前空間のあちこちに格納されています。サーバーに新規の資格情報を作成する場合、新規の鍵ペアが作成され cred テーブルに格納されます。しかし、名前空間ディレクトリオブジェクトには、まだサーバーの古い公開鍵のコピーが残っています。nisupdkeys コマンドを使用して、これらのディレクトリオブジェクトのコピーを更新します。

nisupdkeys コマンド

古い鍵ペアの保全が危うくなったり、非公開鍵の暗号化に使ったパスワードを忘れてしまったりして新規の鍵ペアを作成する場合、nisupdkeys を使用してディレクトリオブジェクト内の古い公開鍵を更新できます。

nisupdkeys コマンドで次の操作を行うことができます。

ただし、nisupdkeys は主体マシン上の NIS_COLD_START ファイルを更新できません。サーバーの鍵のコピーを更新するには、NIS+ クライアントが nisclient コマンドを実行しなければなりません。あるいは、NIS+ キャッシュマネージャを実行中でかつコールドスタートファイル内で1つ以上のサーバーを利用できる場合、主体はディレクトリオブジェクト上で生存期間がタイムアウトするまで待つことができます。タイムアウトが発生すると、キャッシュマネージャはコールドスタートファイルを自動的に更新します。生存期間のデフォルトは 12 時間です。

nisupdkeys を使うには、NIS+ ディレクトリオブジェクトへの変更権が必要です。

公開鍵の引数の更新と例

nisupdkeys コマンドは /usr/lib/nis にあります。nisupdkeys コマンドは次の引数を使います。nisupdkeys コマンドの詳細と引数すべてのリストは、nisupdkeys(1M) のマニュアルページを参照してください。

表 13–4 nisupdkeys の引数

引数 

用途 

(引数なし) 

カレントドメインのサーバーの鍵をすべて更新する 

directoryname

ディレクトリ名で指定したディレクトリオブジェクトの鍵を更新する 

-H servername

カレントドメインのディレクトリオブジェクト内のサーバー名で指定したサーバーの鍵を更新する。他のドメインにあるサーバーの鍵を更新する場合は、完全ホスト名を使用する 

-s -H servername

サーバー名で指定したサーバーで保管されたディレクトリオブジェクトすべての鍵を更新する 

-C

鍵をクリアする 

表 13–5 で公開鍵の更新手順の例を示します。

表 13–5 公開鍵の更新: コマンド例

タスク 

コマンド (Commands) 

カレントドメイン (doc.com) のすべてのサーバーのすべての鍵を更新

rootmaster# /usr/lib/nis/nisupdkeys

Fetch Public key for server rootmaster.doc.com.

netname='unix.rootmaster@doc.com'

Updating rootmaster.doc.com.'s public key.

Public key: public-key

sales.doc.com ドメインのディレクトリオブジェクトをサポートしているすべてのサーバーの鍵を更新

salesmaster# nisupdkeys sales.doc.com

(画面上には何も表示されません) 

すべてのディレクトリ内のサーバー名が master7 であるサーバーの鍵を更新

rootmaster# nisupdkeys -H master7

sales.doc.com ディレクトリオブジェクトで保管された鍵をクリア

rootmaster# nisupdkeys -C sales.doc.com

カレントドメインのディレクトリオブジェクトのサーバー名が master7 であるサーバーの鍵をクリア

rootmaster# nisupdkeys -C -H master7

IP アドレスの更新

サーバーの IP アドレスを変更するかアドレスを追加する場合、NIS+ アドレス情報を更新するために nisupdkeys を実行する必要があります。

1 つ以上のサーバーの IP アドレスを更新するには、-a オプション付きで nisupdkeys を使用します。

指定されたドメインのサーバーの IP アドレスを更新。


rootmaster# nisupdkeys -a  domain

特定サーバーの IP アドレスを更新。


rootmaster# nisupdkeys -a -H  server