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

ProcedureNIS ドメインに新しい NIS ユーザーを追加する方法

  1. マスター NIS サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の第 9 章「役割によるアクセス制御の使用 (手順)」を参照してください。

  2. useradd コマンドで新しいユーザーのログイン ID を作成します。


    # useradd userID
    

    userID は新しいユーザーのログイン ID です。このコマンドは、NIS マスターサーバー上の /etc/passwd ファイルと /etc/shadow ファイルにエントリを作成します。

  3. 新しいユーザーの初期パスワードを作成します。

    新しいユーザーがログインするための初期パスワードを作成するには、passwd コマンドを実行します。


    # passwd userID
    

    userID は新しいユーザーのログイン ID です。このユーザーに割り当てるパスワードを入力するようにプロンプトが表示されます。

    この手順が必要になるのは、 useradd コマンドで作成されたパスワードエントリがロックされ、新しいユーザーがログインできないからです。初期パスワードを指定することで、このパスワードエントリのロックが解除されます。

  4. 必要に応じて、マスターサーバーの passwd マップ入力ファイルに新しいエントリをコピーします。

    マスターサーバー上のマップソースファイルは、/etc 以外のディレクトリにあります。新しい行を /etc/passwd ファイルと /etc/shadow ファイルからマスターサーバー上の passwd マップ入力ファイルにコピーします。詳細については、「パスワードファイルと名前空間のセキュリティー」を参照してください。

    たとえば、新しいユーザー brown を追加する場合、/etc/passwd ファイルから passwd 入力ファイルにコピーする行は次のようになります。


    brown:x:123:10:User brown:/home/brown:/bin/csh:

    /etc/shadow からコピーされる brown 行は次のようになります。


    brown:W12345GkHic:6445::::::
  5. パスワード入力ファイルが格納されているディレクトリが Makefile で正しく指定されていることを確認します。

  6. 必要に応じて、/etc/passwd ファイルと /etc/shadow ファイルから新しいユーザーのエントリを削除します。

    セキュリティー上の理由から、NIS マスターサーバーの /etc/passwd ファイルと /etc/shadow ファイルにユーザーエントリを保持しないようにしてください。ほかのディレクトリに存在する NIS マップソースファイルに新しいユーザーのエントリをコピーしたあと、マスターサーバー上で userdel コマンドを使用して新しいユーザーを削除します。

    たとえば、マスターサーバーの /etc ファイルから新しいユーザー brown を削除するには次のように入力します。


    # userdel brown
    

    userdel の詳細については、userdel のマニュアルページを参照してください。

  7. NIS の passwd マップを更新します。

    マスターサーバー上の passwd 入力ファイルを更新したあと、ソースファイルが存在するディレクトリで make を実行して、passwd マップを更新します。


    # userdel brown
    # cd /var/yp
    # /usr/ccs/bin/make passwd
    
  8. 新しいユーザーのログイン ID に割り当てられた初期パスワードを新しいユーザーに通知します。

    ログイン後、新しいユーザーはいつでも passwd を実行して別のパスワードに変更できます。