System Administration Guide: Naming and Directory Services (NIS+)

NIS+ Configuration Overview

Using the configuration scripts is the recommended method of setting up and configuring an NIS+ namespace. Using these scripts is easier than to trying to set up an NIS+ namespace with the NIS+ command set, as described in Chapter 6, Configuring NIS+ Clients, Chapter 7, Configuring NIS+ Servers, and Chapter 8, Configuring an NIS+ Non-Root Domain.

(See the nisserver, nispopulate, and nisclient man pages for complete descriptions of the scripts. See the Glossary for definitions of terms and acronyms you do not recognize.)

You should not use the small sample NIS+ namespace referred to in this tutorial manual as a basis for your actual NIS+ namespace. You should destroy the sample namespace after you finish exploring it, instead of adding on to it. It is better to begin again and carefully plan your NIS+ hierarchy before you create your actual namespace.

Table 4–1 summarizes the recommended generic configuration procedure. The left column lists the major configuration activities, such as configuring the root domain or creating a client. The text in the middle describes the activities. The third column lists which script or commands accomplish each step.

Table 4–1 Recommended NIS+ Configuration Procedure Overview

Activity 

Description 

Script/ Commands 

Plan your new NIS+ namespace 

Plan your new NIS+ namespace. See Chapter 2, NIS+: An Introduction for a full discussion of planning requirements and steps. (If you are just following the NIS+ tutorial in a test-bed network, this step has been done for you.)

 

Prepare your existing namespace 

In order for the scripts to work best, your current namespace (if any) must be properly prepared. See Preparing the Existing Namespace for NIS+ for a description of necessary preparations. (If you are just following the NIS+ tutorial in a test-bed network, this step has been done for you.)

 

Configure the Diffie-Hellman key length 

If you intend to use DES authentication, consider using Diffie-Hellman keys longer than the 192-bit default. The extended key length must be the same on all machines in the domain. Specify the desired key length before running the respective initialization scripts. 

nisauthconf

Configure root Domain 

Create the root domain. Configure and initialize the root master server. Create the root domain admin group. 

nisserver

Populate tables 

Populate the NIS+ tables of the root domain from text files or NIS maps. Create credentials for root domain clients. Create administrator credentials. 

nispopulate

nisgrpadm

nisping

Configure root domain clients 

Configure the client machines. (Some of them will subsequently be converted into servers.) Initialize users as NIS+ clients. 

nisclient

Enable servers 

Enable some clients of the root domain to become servers. Some servers will later become root replicas; others will support lower-level domains. 

svcadm enable

Configure root replicas 

Designate one or more of the servers you just configured as replicas of the root domain. 

nisserver

svcadm

Configure non-root domains 

Create a new domain. Designate a previously enabled server as its master. Create its admin group and admin credentials. 

nisserver

Populate tables 

Create credentials for clients of the new domain. Populate the NIS+ tables of the new domain from text files or NIS maps. 

nispopulate

Configure non-root domain clients 

Configure the clients of the new domain. (Some may subsequently be converted into servers for lower-level domains.) Initialize users as NIS+ clients. 

nisclient

The NIS+ scripts enable to you to skip most of the individual procedures included in the above activities.

NIS+ and the Service Management Facility

Most of the command line administrative tasks associated with the NIS+ service are managed by the Service Management Facility (SMF). For an overview of SMF, refer to Chapter 18, Managing Services (Overview), in System Administration Guide: Basic Administration. Also refer to the svcadm(1M) and svcs(1) man pages for more details.

Using svcadm With rpc.nisd -x

In general, the /usr/sbin/rpc.nisd daemon is administered using the svcadm command. However, when rpc.nisd is invoked with -x nisplusLDAPinitialUpdateOnly=yes, rpc.nisd performs the specified action, then exits. That is, rpc.nisd does not daemonize. SMF should not be used in conjunction with -x nisplusLDAPinitialUpdateOnly=yes. SMF can be used any other time you want to start, stop, or restart the rpc.nisd daemon.

The following example shows rpc.nisd used with -x nisplusLDAPinitialUpdateOnly=yes.


# /usr/sbin/rpc.nisd -m mappingfile \
-x nisplusLDAPinitialUpdateAction=from_ldap \
-x nisplusLDAPinitialUpdateOnly=yes

Modifying the /lib/svc/method/nisplus File

If you want to include specific options when you invoke the rpc.nisd daemon with SMF, add the options to the /lib/svc/method/nisplus file. The following list provides some commonly used options.

-S 0

Sets the server's security level to 0, which is required at this point for bootstrapping.

Because no cred table exists yet, no NIS+ principals can have credentials. If you use a higher security level, you are locked out of the server.

-B

Supports DNS forwarding

-Y

Starts the NIS+ daemon in NIS-compatibility mode

ProcedureHow to Modify the /lib/svc/method/nisplus File

  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Chapter 9, Using Role-Based Access Control (Tasks), in System Administration Guide: Security Services.

  2. Stop the NIS+ service.


    # svcadm disable network/rpc/nisplus:default
    
  3. Open the /lib/svc/method/nisplus file.

    Use your preferred text editor.

  4. Edit the file to add the desired options.

    Example –

    Change:


    /usr/sbin/rpc.nisd $nisd_flags || exit $?

    To:


    /usr/sbin/rpc.nisd $nisd_flags -Y -B || exit $?

    In this example, the -Y and -B options are added to rpc.nisd, so the options are automatically implemented at startup.

  5. Save and quit.

  6. Start the NIS+ service.


    # svcadm enable network/rpc/nisplus:default