NIS+ and DNS Setup and Configuration Guide
  Buscar sólo este libro
Descargar este libro en PDF

Setting Up a Nonroot Domain

7

This chapter provides step-by-step instructions for using NIS+ commands to set up a nonroot domain (also known as a subdomain). You should not set up a nonroot domain until after you have set up servers.
A summary of this task is provided by Table 7-1 on page 122.

Note - It is much easier to perform this task with the NIS+ installation scripts as described Part 1 than with the NIS+ command set as described here. The methods described in this chapter should be used only by those administrators who are very familiar with NIS+ and who require some nonstandard features or configurations not provided by the installation scripts.

See "Configuration Worksheets" on page 7 for worksheets that you can use to plan your NIS+ namespace.

Setting Up a Nonroot Domain

Setting up a nonroot domain involves the following tasks:
  • Establishing security for the domain
  • Creating the domain's directories
  • Creating the domain's tables
  • Designating the domain's servers
However, as with setting up the root domain, these tasks cannot be performed sequentially. To make the setup process easier to execute, they have been broken down into individual steps, and the steps have been arranged into the most efficient order.

Standard versus NIS-Compatible Setup Procedures

The differences between NIS-compatible and standard NIS+ servers in subdomains are the same as they are for servers in the root domain (see "Standard versus NIS-Compatible Setup Procedures" on page 68).
The NIS+ daemon for each server in an NIS-compatible domain should have been started with the -Y option, as instructed in Chapter 6. An NIS-compatible domain also requires its tables to provide read rights for the nobody class, which allows NIS clients to access the information stored in them. This is accomplished with the -Y option to the nissetup command, in Step 4. (The standard NIS+ domain version uses the same command but without the -Y option, so it is described in the same step.)
Here is a summary of the entire setup process:
  1. Logging in to the domain's master server.

  2. Naming the domain's administrative group.

  3. Creating the domain's directory and designate its servers.

  4. Creating the domain's subdirectories and tables.

  5. Creating the domain's admin group.

  6. Assigning full group access rights to the directory object.

  7. Adding the servers to the domain's admin group.

  8. Adding credentials for other administrators.

  9. Adding the administrators to the domain's admin group.

Security Considerations

Text Box(144x98)

At most sites, to preserve the security of the parent domain, only the parent domain's master server or an administrator who belongs to the parent domain's admin group is allowed to create a domain beneath it. Although this is a policy decision and not a requirement of NIS+, the instructions in this chapter assume that you are following that policy. Of course, the parent domain's admin group must have create rights to the parent directory object. To verify this, use the niscat -o command.

  rootmaster# niscat -o Wiz.Com.  
  Object Name   : Wiz  
  Owner         : rootmaster  
  Group         : admin.Wiz.Com.  
  Domain        : Com.  
  Access Rights : r---rmcdrmcdr---  
  :  

If you are more concerned about convenience than security, you could simply make the new domain's master server a member of its parent domain's admin group and then perform the entire procedure from the server. Use the nisgrpadm command, described in the groups chapter of NIS+ and FNS Administration Guide.

Prerequisites

  • The parent domain must be set up and running.
  • The server that will be designated as this domain's master must be initialized and running NIS+.
  • If you will designate a replica server, the master server must be able to obtain the replica's IP address through its /etc/hosts file or from its NIS+ hosts table.

Information You Need

  • The name of the new domain (for Step 3)
  • The name of the new domain's master and replica servers
  • The name of the new domain's admin group (for Step 2)
  • User IDs (UID) of the administrators who will belong to the new domain's admin group (for Step 8)

· How to Set Up a Nonroot Domain

  1. Log in to the domain's master server.

    Log in to the server that you will designate as the new domain's master. The steps in this task use the server named smaster, which belongs to the Wiz.Com. domain, and will become the master server of the Sales.Wiz.Com. subdomain. The administrator performing this task is nisboss.Wiz.Com., a member of the admin.Wiz.Com. group. That group has full access rights to the Wiz.Com. directory object.

  2. Name the domain's administrative group.

    Although you won't actually create the admin group until Step 5, you need to identify it now. This enables the nismkdir command used in the following step to create the directory object with the proper access rights for the group. It does the same for the nissetup utility used in Step 4.

    Set the value of the environment variable NIS_GROUP to the name of the domain's admin group. Here are two examples, one for C shell users and one for Bourne or Korn shell users. They both set NIS_GROUP to admin.Sales.Wiz.Com.

    For C Shell


  smaster# setenv NIS_GROUP admin.Sales.Wiz.Com  

For Bourne or Korn Shell

  smaster# NIS_GROUP=admin.Sales.Wiz.Com.  
  smaster# export NIS_GROUP  

Imported image(139x97)

  1. Create the domain's directory and designate its servers.

    The nismkdir command, in one step, creates the new domain's directory and designates its supporting servers. It has the following syntax:

   nismkdir -m master -s replica domain

The -m flag designates its master server, and the -s flag designates its replica.

  smaster# nismkdir -m smaster -s salesreplica Sales.Wiz.Com.  


CAUTION Caution - Always run nismkdir on the master server. Never run nismkdir on the replica machine. Running nismkdir on a replica creates communications problems between the master and the replica.

The directory is loaded into /var/nis. Use the niscat -o command to view it (do not use cat or more).

  smaster# niscat -o Sales.Wiz.Com.  
  Object Name   : Sales  
  Owner         : nisboss.Wiz.Com.  
  Group         : admin.Sales.Wiz.Com.  
  Domain        : Wiz.Com.  
  Access Rights : ----rmcdr---r---  
  .  
  .  

Unlike the root directory, this directory object does have the proper group assignment. As a result, you won't have to use nischgrp.

Imported image(128x121)

  1. Create the domain's subdirectories and tables.

    This step adds the org_dir and groups_dir directories and the NIS+ tables beneath the new directory object. Use the nissetup utility, but be sure to add the new domain name. And, for an NIS-compatible domain, include the -Y flag.

    NIS compatible


  smaster# /usr/lib/nis/nissetup -Y Sales.Wiz.Com.  

NIS+

  smaster# /usr/lib/nis/nissetup Sales.Wiz.Com.  

Each object added by the utility is listed in the output:

  smaster# /usr/lib/nis/nissetup  
  org_dir.Sales.Wiz.Com. created  
  groups_dir.Sales.Wiz.Com. created  
  auto_master.org_dir.Sales.Wiz.Com. created  
  auto_home.org_dir.Sales.Wiz.Com. created  
  bootparams.org_dir.Sales.Wiz.Com. created  
  cred.org_dir.Sales.Wiz.Com. created  
  ethers.org_dir.Sales.Wiz.Com. created  
  group.org_dir.Sales.Wiz.Com. created  
  hosts.org_dir.Sales.Wiz.Com. created  
  mail_aliases.org_dir.Sales.Wiz.Com. created  
  sendmailvars.org_dir.Sales.Wiz.Com. created  
  netmasks.org_dir.Sales.Wiz.Com. created  
  netgroup.org_dir.Sales.Wiz.Com. created  
  networks.org_dir.Sales.Wiz.Com. created  
  passwd.org_dir.Sales.Wiz.Com. created  
  protocols.org_dir.Sales.Wiz.Com. created  
  rpc.org_dir.Sales.Wiz.Com. created  
  services.org_dir.Sales.Wiz.Com. created  
  timezone.org_dir.Sales.Wiz.Com. created  

The -Y option creates the same tables and subdirectories as for a standard NIS+ domain, but assigns read rights to the nobody class so that requests from NIS clients, which are unauthenticated, can access information in the NIS+ tables.
You can verify the existence of the org_dir and groups_dir directories by looking in your master server's /var/nis/data directory. They are listed along with the root object and other NIS+ tables. The tables are listed under the org_dir directory. You can examine the contents of any table by using the niscat command, described in Chapter 8 (although at this point the tables are empty).
  1. Create the domain's admin group.

    This step creates the admin group named in Step 2. Use the nisgrpadm command with the -c option. This example creates the admin.Sales.Wiz.Com. group


  smaster# nisgrpadm -c admin.Sales.Wiz.Com.  
  Group admin.Sales.Wiz.Com. created.  

This step only creates the group--it does not identify its members. That is done in Step 9.
  1. Assign full group access rights to the directory object.

    By default, the directory object only grants its group read access, which makes the group no more useful than the world class. To make the setup of clients and subdomains easier, change the access rights that the directory object grants its group from read to read, modify, create, and destroy. Use the nischmod command.


  smaster# nischmod g+rmcd Sales.Wiz.Com.  

Complete instructions for using the nischmod command are provided in the rights chapter of NIS+ and FNS Administration Guide.
  1. Add the servers to the domain's admin group.

    At this point, the domain's group has no members. Add the master and replica servers, using the nisgrpadm command with the -a option. The first argument is the group name; the others are the names of the new members. This example adds smaster.Wiz.Com. and salesreplica.Wiz.Com. to the admin.Sales.Wiz.Com. group:


  smaster# nisgrpadm -a admin.Sales.Wiz.Com.   smaster.Wiz.Com. salesreplica.Wiz.Com.  
  Added smaster.Wiz.Com. to group admin.Sales.Wiz.Com.  
  Added salesreplica.Wiz.Com. to group admin.Sales.Wiz.Com.  

To verify that the servers are indeed members of the group, use the nisgrpadm command with the -l option (see the groups chapter of NIS+ and FNS Administration Guide).

  smaster# nisgrpadm -l admin.Sales.Wiz.Com.  
  Group entry for admin.Sales.Wiz.Com. group:  
      Explicit members:  
          smaster.Wiz.Com.  
          salesreplica.Wiz.Com.  
      No implicit members  
      No recursive members  
      No explicit nonmembers  
      No implicit nonmembers  
      No recursive nonmembers  

  1. Add credentials for other administrators.

    Add the credentials of the other administrators who will work in the domain.

    For administrators who already have DES credentials in another domain, simply add LOCAL credentials. Use the nisaddcred command with both the -p and the -P flags.


  smaster# nisaddcred -p 33355 -P nisboss.Wiz.Com. local  

For administrators that do not yet have credentials, you can proceed in two different ways.
  • One way is to ask them to add their own credentials. However, they will have to do this as superuser. Here is an example in which an administrator with a UID of 22244 and a principal name of juan.Sales.Wiz.Com. adds his own credentials to the Sales.Wiz.Com. domain.

  smaster# nisaddcred -p 22244 -P juan.Sales.Wiz.Com. local  
  smaster# nisaddcred -p unix.22244@Sales.Wiz.Com -P juan.Sales.Wiz.Com. des  
  Adding key pair for unix.22244@Sales.Wiz.Com.  
  Enter login password:  

  • The other way is for you to create temporary credentials for the other administrators, using dummy passwords (note that each administrator must have an entry in the NIS+ passwd table).

  smaster# nisaddcred -p 22244 -P juan.Sales.Wiz.Com. local  
  smaster# nisaddcred -p unix.22244@Sales.Wiz.Com -P juan.Sales.Wiz.Com. des  
  Adding key pair for unix.22244@Sales.Wiz.Com.  
  Enter juan's login password:  
  nisaddcred: WARNING: password differs from login passwd.  
  Retype password:  

Each administrator can later change his or her network password by using the chkey command. The credentials and keys chapters of NIS+ and FNS Administration Guide describe how to do this.

Note - In the two Step 8 example shown above, the domain name following the lower case -p flag must never end in a trailing dot, while the domain name following the upper case -P flag must always end in a trailing dot.

  1. Add the administrators to the domain's admin group.

    You don't have to wait for the other administrators to change their dummy passwords to perform this step. Use the nisgrpadm command with the -a option. The first argument is the group name, and the remaining arguments are the names of the administrators. This example adds the administrator juan to the admin.Sales.Wiz.Com. group:


  smaster# nisgrpadm -a admin.Sales.Wiz.Com. juan.Sales.Wiz.Com.  
  Added juan.Sales.Wiz.Com. to group admin.Sales.Wiz.Com.  

Subdomain Setup Summary

Table 7-1 is a summary of the steps required to set up a non-root domain. It assumes the simplest case, so be sure you are familiar with the more thorough task descriptions before you use this summary as a reference. This summary does not show the server's responses to each command.
Table 7-1
TasksCommands
Log in as superuser to domain
master.
Name the domain's admin
group.
smaster% su

# NIS_GROUP=admin.Sales.Wiz.Com.
# export NIS_GROUP
Create the domain's directory# nismkdir -m smaster -s salesreplica Sales.Wiz.Com.
and designate its servers. Create org_dir, groups_dir,# /usr/lib/nis/nissetup Sales.Wiz.Com.
and tables. (For NIS-
compatibility, use -Y.)
Create the admin group.
Assign full group rights to the

# nisgrpadm -c admin.Sales.Wiz.Com.
# nischmod g+rmcd Sales.Wiz.Com.
domain's directory. Add servers to admin group.# nisgrpadm -a admin.Sales.Wiz.Com. smaster.Wiz.Com. \

Add credentials for other
admins.
sreplica.Wiz.Com.
# nisaddcred -p 22244 -P juan.Sales.Wiz.Com. local
# nisaddcred -p unix.22244@Sales.Wiz.com. \
juan.Sales.Wiz.Com. DES
Add admins to domain's admin group.# nisgrpadm -a admin.Sales.Wiz.Com. juan.Sales.Wiz.Com.