Using NIS

Contents

3.1. Configuring NIS Servers
3.2. Configuring NIS Clients

Abstract

As soon as multiple UNIX systems in a network want to access common resources, it becomes imperative that all user and group identities are the same for all machines in that network. The network should be transparent to users: their environments should not vary, regardless of which machine they are actually using. This can be done by means of NIS and NFS services. NFS distributes file systems over a network and is discussed in Kapitel Verteilte Nutzung von Dateisystemen mit NFS (↑Referenz).

NIS (Network Information Service) can be described as a database-like service that provides access to the contents of /etc/passwd, /etc/shadow, and /etc/group across networks. NIS can also be used for other purposes (making the contents of files like /etc/hosts or /etc/services available, for example), but this is beyond the scope of this introduction. People often refer to NIS as YP, because it works like the network's yellow pages.

Configuring NIS Servers

To distribute NIS information across networks, either install one single server (a master) that serves all clients, or NIS slave servers requesting this information from the master and relaying it to their respective clients.

Configuring a NIS Master Server

To configure a NIS master server for your network, proceed as follows:

  1. To check whether the YaST NIS server configuration module is already installed, start YaST and select Software+Software Management. Search for and, if needed, install the yast2-nis-server package. Once done, close YaST.

  2. Start YaST+Network Services+NIS Server.

  3. If you need just one NIS server in your network or if this server is to act as the master for further NIS slave servers, select Install and Set Up NIS Master Server. YaST installs the required packages.

    [Tip]

    If NIS server software is already installed on your machine, initiate the creation of a NIS master server by clicking Create NIS Master Server.

    Figure 3.1. NIS Server Setup

    NIS Server Setup

  4. Determine basic NIS setup options:

    1. Enter the NIS domain name.

    2. Define whether the host should also be a NIS client (enabling users to log in and access data from the NIS server) by selecting This Host is also a NIS Client.

    3. If your NIS server needs to act as a master server to NIS slave servers in other subnets, select Active Slave NIS Server Exists.

      The option Fast Map Distribution is only useful in conjunction with Active Slave NIS Servers Exist. It speeds up the transfer of maps to the slaves.

    4. Select Allow Changes to Passwords to allow users in your network (both local users and those managed through the NIS server) to change their passwords on the NIS server (with the command yppasswd). This makes the options Allow Changes to GECOS Field and Allow Changes to Login Shell available. GECOS means that the users can also change their names and address settings with the command ypchfn. Shell allows users to change their default shell with the command ypchsh (for example, to switch from bash to sh). The new shell must be one of the predefined entries in /etc/shells.

    5. Select Open Port in Firewall to have YaST adapt the firewall settings for the NIS server.

      Figure 3.2. Master Server Setup

      Master Server Setup

    6. Leave this dialog with Next or click Other Global Settings to make additional settings.

      Other Global Settings include changing the source directory of the NIS server (/etc by default). In addition, passwords can be merged here. The setting should be Yes to create the user database from the system authentification files /etc/passwd, /etc/shadow, and /etc/group. Also, determine the smallest user and group ID that should be offered by NIS. Click OK to confirm your settings and return to the previous screen.

      Figure 3.3. Changing the Directory and Synchronizing Files for a NIS Server

      Changing the Directory and Synchronizing Files for a NIS Server

  5. If you previously enabled Active Slave NIS Server Exists, enter the hostnames used as slaves and click Next.

  6. If you do not use slave servers, the slave configuration is skipped and you continue directly to the dialog for the database configuration. Here, specify the NIS Server Maps, the partial databases to transfer from the NIS server to the client. The default settings are usually adequate. Leave this dialog with Next.

  7. Check which maps should be available and click Next to continue.

    Figure 3.4. NIS Server Maps Setup

    NIS Server Maps Setup

  8. Determine which hosts are allowed to query the NIS server. You can add, edit, or delete hosts by clicking the appropriate button. Specify from which networks requests can be sent to the NIS server. Normally, this is your internal network. In this case, there should be the following two entries:

    255.0.0.0     127.0.0.0
    0.0.0.0       0.0.0.0
         

    The first entry enables connections from your own host, which is the NIS server. The second one allows all hosts to send requests to the server.

    Figure 3.5. Setting Request Permissions for a NIS Server

    Setting Request Permissions for a NIS Server

  9. Click Finish to save your changes and exit the setup.

Configuring a NIS Slave Server

To configure additional NIS slave servers in your network, proceed as follows:

  1. Start YaST+Network Services+NIS Server.

  2. Select Install and Set Up NIS Slave Server and click Next.

    [Tip]

    If NIS server software is already installed on your machine, initiate the creation of a NIS slave server by clicking Create NIS Slave Server.

  3. Complete the basic setup of your NIS slave server:

    1. Enter the NIS domain.

    2. Enter hostname or IP address of the master server.

    3. Set This Host is also a NIS Client if you want to enable user logins on this server.

    4. Adapt the firewall settings with Open Ports in Firewall.

    5. Click Next.

  4. Enter the hosts that are allowed to query the NIS server. You can add, edit, or delete hosts by clicking the appropriate button. Specify from which networks requests can be sent to the NIS server. Normally, this is all hosts. In this case, there should be the following two entries:

    255.0.0.0     127.0.0.0
    0.0.0.0       0.0.0.0
         

    The first entry enables connections from your own host, which is the NIS server. The second one allows all hosts with access to the same network to send requests to the server.

  5. Click Finish to save changes and exit the setup.

Configuring NIS Clients

To use NIS on a workstation, do the following:

  1. Start YaST+Network Services+NIS Client.

  2. Activate the Use NIS button.

  3. Enter the NIS domain. This is usually a domain name given by your administrator or a static IP address received by DHCP. For information about DHCP, see Kapitel DHCP (↑Referenz).

    Figure 3.6. Setting Domain and Address of a NIS Server

    Setting Domain and Address of a NIS Server

  4. Enter your NIS servers and separate their addresses by spaces. If you do not know your NIS server, click on Find to let YaST search for any NIS servers in your domain. Depending on the size of your local network, this may be a time-consuming process. Broadcast asks for a NIS server in the local network after the specified servers fail to respond.

  5. Depending on your local installation, you may also want to activate the automounter. This option also installs additional software if required.

  6. If you do not want other hosts to be able to query which server your client is using, go to the Expert settings and disable Answer Remote Hosts. By checking Broken Server, the client is enabled to receive replies from a server communicating through an unprivileged port. For further information, see man ypbind.

  7. Click Finish to save them and return to the YaST control center. Your client is now configured with NIS.