Fact-checked by Grok 2 weeks ago

Network Information Service

The Network Information Service (NIS), formerly known as the (YP), is a distributed naming service that centralizes the management and distribution of administrative data, such as user accounts, passwords, hostnames, IP addresses, and groups, across networks of systems. Developed by in the 1980s and integrated into systems like and various distributions, NIS replaces localized files (such as those in /etc) with a uniform set of databases called maps, enabling consistent access to shared information without manual synchronization on each machine. NIS functions through a client-server architecture, where master servers maintain authoritative copies of maps—two-column tables in ndbm format storing key-value pairs (e.g., passwd.byname for username-to-password mappings)—and propagate updates to slave servers for redundancy and load balancing. Clients bind to available servers using the ypbind daemon, either via broadcast discovery or a predefined server list, and query the RPC-based ypserv daemon on servers to retrieve data, often in conjunction with portmap for service location. Key maps include standard ones like hosts.byaddr for IP-to-hostname resolution and bootparams for diskless client booting, supporting a flat namespace without hierarchical structure, though it can integrate with DNS for broader Internet connectivity. While effective for small to medium-sized networks, has notable limitations, particularly in security: it transmits data, including password hashes, unencrypted over the network and lacks host authentication, making it vulnerable to and spoofing attacks. Mitigation options include restricting access via the /var/yp/securenets file to trusted addresses and using firewalls, but modern deployments often favor more secure alternatives like LDAP (per 2307) or SSSD for . Despite its legacy status, remains in use for compatibility in certain Unix environments, with tools like ypset for manual server selection (though discouraged due to risks) and rpc.yppasswdd for remote password updates.

Overview

Definition

The Network Information Service () is a client-server designed for distributing system configuration data, such as user accounts, group memberships, hostnames, and email aliases, across networks of operating systems. Originally known as (YP), it was renamed NIS in the early following a dispute with British Telecom, which held rights to the "Yellow Pages" name in the . Developed by in the 1980s, was licensed to virtually all major Unix vendors, establishing it as a for centralized administration in networked Unix environments during that era and into the . At its core, operates through a centralized that maintains databases of shared , which clients query remotely to retrieve data traditionally stored in local files, such as /etc/ for accounts or /etc/hosts for hostnames, thereby enabling consistent configuration across multiple systems without manual synchronization.

Purpose and Use Cases

The Network Information Service (NIS) primarily enables centralized management of user authentication, hostname resolution, and other configuration data across multi-machine environments, thereby avoiding duplication and inconsistency in administrative files. By distributing known as maps from a master to slave servers, NIS ensures that updates to information such as user credentials and host addresses are propagated uniformly throughout the network. This centralized approach simplifies administration in homogeneous Unix networks, where maintaining synchronized local files like /etc/passwd and /etc/hosts on each machine would otherwise be labor-intensive. In practice, NIS facilitates seamless user login across networked systems by sharing user accounts, making it particularly useful in environments like university computer labs or enterprise Unix clusters. For instance, in a lab setup with multiple client machines, administrators can add or modify user accounts on a single master server, with changes automatically distributed to all clients for consistent authentication. Similarly, NIS distributes host and network information to support services such as (NFS) mounting, allowing clients to resolve hostnames and IP addresses from a shared database without local modifications. NIS integrates with Unix authentication mechanisms by augmenting local files, enabling standard library calls like getpwent() to retrieve remote from NIS maps such as passwd.byname. In the pre-LDAP era, this provided significant benefits for Unix networks by reducing the need for manual and enabling scalable administration of growing clusters, though it has since been largely supplanted by more secure alternatives.

History

Development by Sun Microsystems

The Network Information Service (NIS), originally known as Yellow Pages (YP), was developed by in the mid-1980s as a key component of their Unix-based workstation ecosystem to enable networked computing environments. This development occurred amid the rapid expansion of local area networks in academic and research settings, where Sun's workstations were increasingly deployed. The service was introduced in 2.0, released in May 1985, marking a foundational advancement in distributed system management. The primary motivation for creating NIS stemmed from the need to address administrative challenges in sharing configuration data—such as user accounts, hostnames, and network services—across expanding SunOS-based networks. Prior to NIS, maintaining consistent system information required manual synchronization on each machine, which became inefficient as network sizes grew beyond a handful of nodes. Building on Sun's earlier innovations like (RPC) technology, introduced in , NIS leveraged a client-server model to centralize and , promoting in heterogeneous Unix environments. The initial implementation was led by Sun's engineering team, who designed to integrate seamlessly with the emerging client-server paradigms that defined Sun's computing vision. Upon , commands retained the "yp" prefix to honor its origins, reflecting the analogy to a centralized directory for quick lookups. This naming persisted even after a later due to issues, underscoring the service's roots in Sun's networked .

Name Change and Adoption

In the late 1980s, renamed its (YP) directory service to Network Information Service () following a legal dispute over the "" held by British Telecom in the . Despite the rebranding, the underlying functionality remained unchanged, and legacy elements such as command-line binaries and manual pages retained the "yp" prefix to maintain compatibility. This name change was necessary to avoid infringement, as "" was a registered for British Telecom's services, prompting Sun to adopt a neutral, descriptive term for global distribution. Sun Microsystems further promoted NIS adoption by open-sourcing the software and licensing it freely to other vendors, which facilitated its integration into various systems starting in the late 1980s. A key enabler was the publication of the Protocol Specification in 1986, which detailed the YP/NIS protocol built on Sun's (RPC) framework and allowed porting to non-Sun platforms. This specification enabled implementations in (BSD) variants, early distributions, and commercial Unix systems, standardizing centralized management of user accounts, hostnames, and other configuration data across heterogeneous networks. By the 1990s, NIS had achieved peak adoption as the primary in and academic environments, becoming a standard feature in major Unix operating systems including Sun's , IBM's AIX, Hewlett-Packard's , and BSD derivatives like . Its widespread inclusion—supported in virtually all distributions and Unix variants of the era—streamlined administration in large-scale networks, though it was eventually supplemented by more secure alternatives.

Architecture

Client-Server Model

The Network Information Service (NIS) employs a client-server to distribute administrative across a network, where servers maintain centralized databases and clients query them for information such as user accounts and host configurations. In this model, servers act as authoritative sources, while clients rely on mechanisms to access the dynamically. The design emphasizes simplicity and reliability for local area networks, using (RPC) for communication, though the protocol details are handled transparently. NIS servers run the ypserv daemon, which manages and serves the databases known as maps to client requests. Each NIS domain designates one master server responsible for updating and propagating the maps, ensuring consistency across the network. To enhance , slave servers replicate the full set of maps from the master via automated push mechanisms, allowing them to handle client queries independently and distribute load during high demand. Both master and slave servers also function as clients to bind to themselves for internal queries. On the client side, the ypbind daemon establishes and maintains a binding to an available NIS within the client's , enabling seamless . Clients use utility commands such as ypcat for retrieving entire maps or ypmatch for querying specific keys, which interact with ypbind to forward requests to the bound . If the bound becomes unresponsive, ypbind rebinds by broadcasting RPC requests or consulting a server list, ensuring continuous availability. The communication flow begins with a client initiating a request through ypbind, which identifies a and routes the query specifying the and desired or . The ypserv process on the processes the request by accessing the corresponding and returns the relevant data—such as key-value pairs—directly to the client via RPC. This stateless interaction supports efficient, on-demand access without persistent connections. NIS's client-server model is optimized for small to medium-sized networks, typically supporting up to a few hundred hosts through master-slave replication for . Beyond basic replication, it lacks built-in hierarchical structures or advanced load balancing, limiting in larger environments where a single point of failure at the master could propagate delays.

Domains and Maps

In the Network Information Service (NIS), domains serve as logical groupings of machines to scope and isolate name service information across administrative boundaries. An domain consists of a collection of systems that share a common set of maps, identified by a unique such as "acme-art" or "test-domain," which is unrelated to DNS domains. This structure enables centralized management of configuration data while preventing overlap between different groups of hosts. Clients bind to a single domain at boot time, with the domain name specified in the /etc/defaultdomain file to determine the scope of queries. NIS maps form the fundamental data structures, functioning as two-column key-value databases that store system configuration information in a distributed manner. These maps are compiled on the from flat ASCII files, such as /etc/ for accounts or /etc/s for addresses, replacing direct reliance on local /etc files for networked environments. The resulting databases are stored in ndbm (New DBM) format as .dbm files within the /var/yp/ directory on both master and slave servers, optimizing for fast lookups in a client-server model. Common map types include "byname" variants, which allow lookups by human-readable names (e.g., maps usernames to password entries), and "byaddr" variants for reverse lookups by numeric identifiers (e.g., hosts.byaddr maps addresses to hostnames). Special maps address niche data, such as ethers.byaddr, which derives from /etc/ethers to map Ethernet () addresses to machine names, supporting network hardware identification. Other examples encompass bootparams.byname for boot file paths and ypservers for listing domain servers. The master-slave architecture ensures map consistency and availability, with the master server maintaining authoritative copies updated directly from the ASCII source files. After modifications to sources, the master rebuilds s using the makedbm utility, a process automated by a Makefile in /var/yp that handles compilation for the entire domain. Updated maps are then pushed to slave servers via the yppush command, while slaves can also pull changes periodically using ypxfr to maintain synchronization. This replication mechanism supports redundancy and load distribution without requiring clients to rebind during updates.

Protocols and Implementation

RPC Integration

The Network Information Service (NIS), originally known as Yellow Pages (YP), relies on Sun's Open Network Computing (ONC) Remote Procedure Call (RPC) protocol for client-server communication, enabling distributed queries across networked systems. NIS procedures are defined under RPC program number 100004, supporting versions 1 (YPVERS_ORIG) and 2 (YPVERS), which allow compatibility between different implementations while maintaining core functionality for map lookups and domain management. This integration leverages ONC RPC's external data representation (XDR) for encoding requests and responses, ensuring portability across heterogeneous Unix-like environments. Service discovery in NIS begins with the portmapper daemon, which operates on TCP and UDP port 111 to map RPC program numbers to dynamic or fixed server ports, a mechanism fundamental to ONC RPC operations. The ypserv daemon, responsible for handling NIS queries, typically binds to dynamic ports but is often configured to a fixed port such as UDP/TCP 834 to facilitate firewall rules and consistent access. These ports enable clients to locate and invoke NIS services after initial portmapper consultation, supporting both broadcast and directed RPC calls. Core NIS procedures over RPC include YPPROC_DOMAIN (procedure 1), which checks if a server handles a specific domain and returns a boolean indicating non-membership if unsupported; YPPROC_MATCH (procedure 3), used for retrieving a value associated with a given key in a map; YPPROC_FIRST (procedure 4), which initiates iteration by returning the first key-value pair in a map; and YPPROC_NEXT (procedure 5), which retrieves subsequent pairs during traversal. These procedures facilitate stateless request-response interactions, primarily over UDP for efficiency, with fallback to TCP for larger transfers or reliability needs, as per ONC RPC specifications. The protocol details for YP version 1 are outlined in Sun Microsystems' YP Protocol Specification, with RPC foundations in the ONC RPC version 2 document.

Configuration and Tools

Configuring an NIS server on Unix-like systems typically begins with installing the necessary packages, such as ypserv, which provides the core daemon for serving NIS maps. Administrators then define the NIS domain by setting the NISDOMAIN variable in /etc/sysconfig/network (e.g., NISDOMAIN=mynisdom) and configure access controls in files like /etc/ypserv.conf for allowed hosts and /var/yp/securenets for network permissions (e.g., 255.255.255.0 192.168.1.0 to permit a subnet). To specify the maps to build, such as passwd, group, and hosts, edit /var/yp/Makefile under the all: target (e.g., all: passwd group hosts auto.master), optionally setting flags like MERGE_PASSWD=false for custom integrations. The ypinit utility is then executed as the master server with /usr/lib64/yp/ypinit -m, prompting for slave server hostnames to initialize the domain subdirectory in /var/yp, build the maps, and configure replication; for slave servers, use ypinit -s to pull initial maps. Finally, start the services with commands like service ypserv start, service ypxfrd start (for map transfers to slaves), and service yppasswdd start, enabling them via chkconfig for boot persistence, while adjusting firewall rules to allow RPC ports such as 111, 834, and 835. On the , involves packages like ypbind, which handles binding to an . Set the using domainname or by editing /etc/defaultdomain, then configure binding in /etc/yp.conf with entries like domain mynisdom nismaster to specify the explicitly, avoiding broadcast for reliability. To enable lookups, modify /etc/nsswitch.conf to include after files for relevant databases, such as passwd: files or group: files , which can be achieved by copying a template like cp /etc/nsswitch.nis /etc/nsswitch.conf or using tools like authconfig --enablenis. Start the ypbind daemon with ypbind -broadcast for automatic or via service ypbind start, verifying binding with ypwhich to confirm the active . Several command-line tools facilitate NIS management and querying. The ypcat command dumps the contents of an entire , such as ypcat passwd to display all user entries, useful for verification. ypmatch queries specific keys within a , for example ypmatch username passwd to retrieve details for a user, supporting for targeted lookups. yppush propagates map updates from the master to slaves after changes, invoked automatically by make in /var/yp but runnable manually as yppush passwd to push the passwd . The rpc.yppasswdd daemon runs on the master server to handle remote password changes via yppasswd, updating the passwd and pushing revisions while enforcing policies like minimum length. NIS integrates with the Name Service Switch (NSS) framework in through the libnss_nis module, which implements the nis backend for ordered database lookups as defined in /etc/nsswitch.conf. This module, formerly embedded in glibc and now standalone for and TI-RPC support, allows applications to query local files first (e.g., /etc/) before falling back to NIS maps, ensuring compatibility without replacing system files. For instance, configuring passwd: compat files nis enables shadow password support alongside NIS, with libnss_nis handling the RPC calls to the bound server.

Security

Vulnerabilities

The suffers from several fundamental security flaws stemming from its design, which prioritizes convenience over protection in distributed Unix environments. These vulnerabilities expose sensitive data and enable unauthorized access, making unsuitable for untrusted networks. A primary weakness is the exposure of password information, as clients can retrieve the entire map, including encrypted passwords hashed with weak algorithms like via the function. For instance, commands such as ypcat passwd.byname allow any authorized client to dump the full list of usernames and hashed passwords to a file, facilitating offline cracking attacks using tools like , especially since often merges /etc/ and /etc/ without robust shadow support across platforms. This unencrypted transmission of hashes over the network further amplifies the risk, as intercepted data can be subjected to or brute-force attacks. NIS relies on (RPC) protocols that lack built-in authentication mechanisms, permitting unauthenticated queries and responses. Clients verify servers only by , without cryptographic validation, allowing attackers on the network to spoof NIS servers and impersonate legitimate ones via man-in-the-middle (MITM) attacks. This enables the injection of falsified maps, such as altered passwd entries granting unauthorized privileges, and exposes the system to denial-of-service () disruptions by overwhelming RPC ports. Early NIS implementations used network broadcasts for server discovery, inadvertently revealing domain names and server details to passive listeners using sniffers like or snoop. Even in unicast configurations, the plaintext RPC traffic remains interceptable in shared or untrusted segments, compounding risks in environments without segment isolation. Historical exploits have demonstrated these flaws in practice, including tools like ypx for remotely extracting and cracking password maps, and custom programs such as ypfake to spoof UDP-based NIS responses and insert malicious user entries before legitimate replies arrive. Buffer overflows in related RPC services have also been targeted, though vendor patches addressed some instances; overall, these issues have rendered NIS insecure for internet-facing deployments, with successors like NIS+ introducing to mitigate core problems.

Mitigation Strategies

To mitigate security risks in Network Information Service (NIS) deployments, network isolation is essential, confining NIS traffic to trusted local area networks (LANs) through firewall configurations that block external access to critical ports. Specifically, firewalls should restrict UDP/TCP ports 111 (portmapper), 834 (ypserv), and 835 (rpc.ypxfrd), ensuring that NIS queries and responses remain within segmented, secure internal networks to prevent interception or unauthorized access over public or untrusted connections. This approach aligns with vendor recommendations to avoid exposing NIS services to the internet, as emphasized in documentation from the early 2000s onward. Utilizing shadow passwords provides another key defense by separating sensitive password hashes from the publicly accessible /etc/passwd file. Administrators can configure systems to store passwords locally in /etc/shadow while serving only non-password-related maps (such as group or hosts) over , thereby avoiding the transmission of hashed credentials across the network. For environments requiring synchronization, alternative distribution methods like or rdist can be employed for shadow files instead of , further reducing exposure. If secure RPC is available and configured, it can enhance for password updates via yppasswdd, though this is limited to compatible implementations. To limit exposure without fully disabling NIS, administrators should serve only essential maps and restrict access granularly. For instance, exclude sensitive maps like passwd.byname or passwd.byuid from distribution, focusing instead on non-critical data such as netgroups or aliases, and use tools like ypwhich to verify the server's identity and prevent man-in-the-middle risks during client binding. The /var/yp/securenets file (or /etc/ypserv.conf) enables network-level restrictions by specifying allowed ranges or netmasks, such as permitting only local subnets (e.g., 255.255.255.0 192.168.1.0) while denying broader access. Clients should be configured to query specific servers explicitly via /etc/yp.conf, avoiding insecure broadcast modes that could reveal server details to unauthorized hosts. Ongoing monitoring and auditing are crucial for maintaining . Tools like rpcinfo can be used to inspect active RPC services, including ypserv and portmapper, ensuring only necessary daemons are running and ports are correctly bound. Regular checks via jobs, such as ypxfr for map synchronization on slave servers (scheduled 1-2 times daily), help detect inconsistencies or unauthorized changes. Vendor guidelines strongly advise disabling entirely on hosts connected to the or untrusted networks, prioritizing its use only in air-gapped or fully controlled environments.

Successors

NIS+

NIS+ was developed by and introduced in 1992 as part of Solaris 2.0, serving as a non-backward-compatible to the original NIS to address its limitations in and . Unlike NIS, which relied on flat files and simple broadcasting, NIS+ introduced a hierarchical structured like a , allowing for organized domains and subdomains that could be administered independently. It also incorporated fine-grained access controls, enabling administrators to define read, modify, create, and delete permissions for objects based on principals, groups, and levels. Key enhancements in NIS+ focused on improving security and manageability for enterprise environments. It integrated RPCSEC_GSS for robust authentication and optional encryption, supporting mechanisms like to protect and verify principal identities beyond the basic AUTH_DES used in earlier versions. Data organization shifted from NIS's flat maps to structured tables, which stored such as credentials, host details, and services in relational-like entries within NIS+ directories, facilitating queries and updates across a distributed . For scalability in large enterprises, NIS+ supported federation through its hierarchical structure, where multiple domains could be linked, allowing replication across servers and load balancing for networks with thousands of clients. Implementation of NIS+ involved specific daemons and administrative tools tailored for its client-server . The primary daemon, rpc.nisd, handled service requests, namespace , and compatibility modes for NIS clients, running on and servers to maintain . Administrative tasks utilized commands like nisauthconf for managing credentials and , alongside nlsadmin for server configuration and nisadd for adding directories and tables. Storage backends included the original DBM format for smaller setups and the more efficient NDBM for production environments, which supported concurrent access and logging for better performance in replicated scenarios. Despite these advancements, saw limited adoption due to its complex administration, which required specialized knowledge for setting up hierarchies, credentials, and replication—often overwhelming for teams accustomed to simpler operations. This complexity, combined with the rise of open standards, contributed to its decline; deprecated in 10 and fully removed it from 11 in 2011, recommending migration to LDAP for directory services.

LDAP and Other Alternatives

The (LDAP) emerged as a key successor to , providing a standardized protocol for accessing and managing distributed directory information services. Defined as an IETF proposed standard in RFC 4510 (2006), LDAP enables hierarchical, searchable directories that support operations like adding, deleting, and modifying entries in a tree-structured . It incorporates robust mechanisms, including (SASL) for flexible credential handling and (TLS) via StartTLS for encrypted communications, addressing NIS's lack of built-in security. LDAP has achieved widespread adoption, powering systems such as Microsoft's , which uses LDAP versions 2 and 3 for directory queries and updates, and open-source implementations like , an extensible server suite for LDAPv3 compliance. Beyond LDAP, other protocols have partially supplanted NIS functionalities in modern networks. The (DNS), outlined in RFC 1035 (1987), handles hostname resolution and more efficiently than NIS's flat maps, supporting hierarchical delegation and caching for global scalability. For authentication, (RFC 4120, 2005) provides ticket-based , emphasizing mutual authentication and session keys to mitigate replay attacks, often integrated with LDAP directories. In Linux environments, the (SSSD) facilitates integration by combining multiple backends—such as LDAP, , and local files—into a unified , enabling caching, offline access, and for enterprise authentication. Migration from NIS to LDAP typically involves exporting NIS data into LDAP-compatible formats and reconfiguring clients. Tools like the open-source MigrationTools suite generate LDIF (LDAP Data Interchange Format) files from NIS maps for users, groups, and hosts, allowing import into LDAP servers via scripts such as migrate_all_offline.sh. Oracle Solaris provides the NIS-to-LDAP transition service (N2L), which automates schema mapping and client reconfiguration using idmapd for identity mapping. For compatibility, the nss_ldap module extends the Name Service Switch (NSS) to query LDAP directories as a drop-in replacement for NIS, supporting maps like passwd and hosts without altering applications. Red Hat's migration scripts in /usr/share/openldap/migration/ further assist by converting authentication data into LDAP entries. LDAP offers significant advantages over , including encrypted channels via TLS to protect against eavesdropping and man-in-the-middle attacks, unlike 's plaintext RPC transmissions. Its scalable, replicated architecture supports multimaster updates and multi-protocol access (e.g., via HTTP or gateways), enabling consolidation of diverse data sources in large enterprises. By the early 2000s, LDAP had become the for directory services, with widespread deployment in Unix/ and Windows ecosystems due to its compatibility and extensibility through schema extensions.

Legacy and Current Status

Deprecation in Modern Systems

The deprecation of Network Information Service (NIS) in major operating system distributions reflects a shift away from its outdated architecture toward more secure and scalable directory services. In 11, released in 2011, NIS server software is not installed by default and must be explicitly enabled, with official emphasizing the need to disable it on systems not acting as NIS servers to minimize risks. Similarly, in Red Hat Enterprise Linux 7 (2014) and subsequent versions, the ypbind package required for NIS client functionality is not installed by , requiring manual and . This trend continued with NIS components marked as deprecated in Red Hat Enterprise Linux 8.3 (2021) and fully removed in Red Hat Enterprise Linux 9 (2022). Ubuntu 18.04 LTS (2018) follows suit through benchmarks that mandate removal of the NIS package to reduce the risk of inadvertent activation of NIS services. In BSD variants like , NIS remains supported but is increasingly phased out in , with LDAP recommended as the preferred alternative for centralized and naming services. The primary reasons for this deprecation stem from NIS's inherent security limitations, which cannot be adequately addressed without a fundamental redesign. NIS lacks host mechanisms and transmits all data, including sensitive , over in unencrypted form, making it vulnerable to and unauthorized by modern standards. Additionally, more robust alternatives such as LDAP provide enhanced features like , controls, and scalability, rendering NIS obsolete for contemporary networked environments. , the original developer, announced the end-of-life for NIS around 2004, urging migration to LDAP, while its successor NIS+ faced similar deprecation prior to 9 in 2002. distributions accelerated this process, with removing NIS user-space utilities in Fedora 38 (2023) and discussing full retirement due to the protocol's age and flaws as of 2022. Documentation in modern systems has evolved to reflect NIS's obsolescence, with manual pages and configuration guides issuing warnings against its use except in controlled legacy scenarios. For instance, the ypbind in Linux distributions notes its reliance on outdated RPC mechanisms and advises caution due to security implications. To maintain compatibility with existing NIS deployments, systems employ Pluggable Authentication Modules (PAM) and Name Service Switch (NSS) configurations, such as the "nis" profile in tools like authselect, which allow limited integration without full NIS activation. This approach ensures backward compatibility while discouraging new implementations.

Remaining Use Cases

Despite widespread , the Network Information Service () continues to see limited use in Unix environments as of 2025, particularly where modernization efforts have not yet been completed. Systems such as AIX and older installations, which remain operational in certain and industrial settings, often retain for basic and information sharing due to its simplicity in non-internet-connected setups. Similarly, some () clusters and isolated networks rely on for centralized configuration where external directory services are impractical. New deployments of NIS are minimal, with major distributions like (RHEL) having removed core packages such as ypserv, ypbind, and yp-tools starting in RHEL 9, following deprecation in RHEL 8.3. However, optional support persists in distributions like (where the nis package is available in Ubuntu 24.04 LTS and later) and Leap 15.6 (2024), though not installed by default and discouraged for new uses. Maintenance occurs through optional third-party or community repositories, including the ypserv project on , which provides an actively ported version supporting and TI-RPC for compatible legacy setups, though not integrated into standard EPEL repositories for recent releases, and continues to receive updates as of 2025. In academic and hobbyist contexts, NIS is occasionally employed in virtualized environments, such as VMware-hosted instances, to demonstrate traditional Unix networking concepts without requiring modern protocols. Key challenges for these remaining implementations include infrequent security patching, as upstream support has waned. Integration with containerized or Kubernetes-based systems is strongly discouraged due to issues and heightened risks in dynamic environments, often requiring discouraged patterns that complicate . Looking ahead, is projected to approach full obsolescence by 2030, driven by ongoing migrations to more secure alternatives; tools like offer compatibility modes, enabling gateways for gradual transitions in legacy setups by exporting user, group, and automount data via LDAP while supporting clients during the shift.

References

  1. [1]
    Chapter 21. Integrating with NIS Domains and Netgroups
    In UNIX environments, the network information service (NIS) is a common way to centrally manage identities and authentication. NIS, which was originally ...
  2. [2]
    Chapter 7 Network Information Service (NIS) (Overview)
    This chapter provides an overview of the Network Information Service (NIS). NIS is a distributed naming service. It is a mechanism for identifying and locating ...
  3. [3]
    5.3. Securing NIS - Red Hat Enterprise Linux
    NIS stands for Network Information Service. It is an RPC service, called ypserv , which is used in conjunction with portmap and other related services to ...
  4. [4]
    Network Information Service - Computer Dictionary Online
    (NIS) Sun Microsystems' Yellow Pages (yp) client-server protocol for distributing system configuration data such as user and host names between computers on a ...
  5. [5]
    29.4 Network Information System (NIS/YP)
    NIS , which stands for Network Information Services, was developed by Sun Microsystems to centralize administration of UNIX® (originally SunOS™) systems. It ...
  6. [6]
    Using the passwd and group Maps
    This makes the login command and all its friends first query the NIS maps when a user tries to log in, and if this lookup fails, fall back to the local files.
  7. [7]
    Introducing the Network Information Service for Linux
    Jun 1, 1998 · Each time you change a local file such as /etc/passwd or /etc ... local files and the NIS files, which is probably what you desire.
  8. [8]
    Chapter 4 Network Information Service (NIS) (Overview)
    NIS is a distributed naming service. It is a mechanism for identifying and locating network objects and resources. It provides a uniform storage and retrieval ...Missing: definition | Show results with:definition
  9. [9]
    6. Replacing NIS - LDAP System Administration [Book] - O'Reilly
    NIS is used primarily by Unix clients to centralize management of user information and passwords, hostnames and IP addresses, automount maps (files that control ...Missing: benefits pre- era
  10. [10]
    25.4. Network Information System (NIS/YP)
    NIS , which stands for Network Information Services, was developed by Sun Microsystems to centralize administration of UNIX® (originally SunOS™) systems.
  11. [11]
    Why Sun's NIS will never die - InfoWorld
    Jun 3, 2013 · NIS was developed by Sun in 1985 to facilitate a central authentication and authorization mechanism for networked Unix systems. It can also ...
  12. [12]
    Introduction to NIS, the Network Information Service - Linux.com
    Dec 14, 2006 · NIS, released by Sun in the 1980s, was the first “prime time” administrative database. It was originally called the Sun Yellow Pages.<|control11|><|separator|>
  13. [13]
    SunOS 2.0 - BetaWiki
    Apr 24, 2022 · SunOS 2.0 introduced the NFS protocol, a distributed file system protocol which is still being used to this day, Yellow Pages (yp, now known ...<|control11|><|separator|>
  14. [14]
    NIS: Network Information Service - Red Hat® Linux® 7 Unleashed ...
    NIS, developed by Sun Microsystems as part of its SunOS operating system, was originally known as The Yellow Pages, or YP for short. Unfortunately, the name ...
  15. [15]
    usr/lib/netsvc/yp/ypserv
    The Network Information Service (NIS) provides a simple network lookup service consisting of databases and processes. The databases are ndbm files in a ...
  16. [16]
  17. [17]
    The Linux NIS(YP)/NYS/NIS+ HOWTO
    **Summary of NIS History from https://tldp.org/HOWTO/NIS-HOWTO/**
  18. [18]
    (PDF) A Unix Network Protocol Security Study - ResearchGate
    Aug 7, 2025 · ... protocol, Network Information Service (NIS) ... Protocol Specification, RFC 1050, ARPA Network Information Center. Apr 1988. Sun Microsystems; Inc.<|separator|>
  19. [19]
    Network Information Service - IBM
    Network Information Service (NIS) is a distributed database that allows you to maintain consistent configuration files throughout your network. NIS is the ...
  20. [20]
    28.4. Network Information System (NIS)
    Since multiple domains are supported, it is possible to have several directories, one for each domain. Each domain will have its own independent set of maps.
  21. [21]
    NIS Maps - IBM
    NIS maps are databases that specify certain system information such as ... ethers.byaddr, ethers, /etc/ethers. ethers.byname. networks.byaddr, networks, /etc ...
  22. [22]
    NIS Maps
    Contains path names of files clients need during boot: root, swap, possibly others. ethers.byaddr. ethers. Contains machine names and Ethernet addresses. The ...
  23. [23]
    RFC 1057 - RPC: Remote Procedure Call Protocol specification
    This document specifies version two of the message protocol used in Sun's Remote Procedure Call (RPC) package.Missing: NIS Yellow
  24. [24]
    yp_prot.h
    This file contains symbols and structures defining the rpc protocol * between the NIS clients and the NIS servers. The servers * are the NIS database ...
  25. [25]
    5.3.4. Assign Static Ports and Use IPTables Rules | Security Guide
    NIS server daemons `rpc.ypxfrd` and `ypserv` are assigned ports 835 and 834, respectively. IPTables rules are used to enforce network access for these ports.
  26. [26]
    ypserv - man pages section 1M: System Administration Commands
    ... NIS maps. The operations performed by ypserv are defined for the implementor by the YP Protocol Specification , and for the programmer by the header file ...
  27. [27]
    23.5.2 Configuring a NIS Server
    To configure an NIS server, install ypserv, define the domain in /etc/sysconfig/network, configure options in /etc/ypserv.conf, and start the ypserv service.
  28. [28]
    Chapter 10 Configuring NIS Service (Solaris Naming Setup and ...
    How to Set Up the Master Server With ypinit. The /usr/sbin/ypinit shell script sets up master and slave servers and clients to use NIS. It also initially ...
  29. [29]
    SettingUpNISHowTo - Community Help Wiki - Ubuntu Documentation
    Sep 10, 2017 · Edit /etc/ypserv. ... Restrict the ports that the yp services run on by specifying what port each service should run on in /etc/default/nis.
  30. [30]
    Working With NIS Maps (Solaris Naming Administration Guide)
    Users can obtain information from and about the maps at any time by using the ypcat , ypwhich , and ypmatch commands. In the examples that follow, mapname ...
  31. [31]
    ypserv - HP-UX
    ... yppush(1M), ypset(1M) and ypxfr(1M). Tools to see the contents of NIS maps (databases) are described in ypcat(1) and ypmatch(1). Database generation and ...
  32. [32]
    rpc.yppasswdd(8): NIS password update daemon - Linux man page
    rpc.yppasswdd is the RPC server that lets users change their passwords in the presence of NIS (a.k.a. YP). It must be run on the NIS master server ...Missing: yppush tools
  33. [33]
    thkukuk/libnss_nis: NSS module for glibc, to provide NIS ... - GitHub
    This package contains the NSS NIS plugin for glibc. This code was formerly part of glibc, but is now standalone to be able to link against TI-RPC for IPv6 ...Missing: libnss_yp | Show results with:libnss_yp
  34. [34]
    Debian -- Details of package libnss-nis in sid
    NSS module for using NIS as a naming service. This package provides a Name Service Switch that allows your NIS server act as a name service.Missing: integration | Show results with:integration
  35. [35]
    [PDF] Security Issues in NIS - GIAC Certifications
    Nov 10, 2000 · In essence, this protocol allows an application or program running on one system to call and execute subroutines on another computer. An. NIS ...
  36. [36]
    Securing NIS
    ### Summary of NIS Vulnerabilities
  37. [37]
    4.3. Securing Services | Security Guide | Red Hat Enterprise Linux | 7
    Assigning ports to the other two NIS server daemons, rpc.ypxfrd and ypserv , allows for the creation of firewall rules to further protect the NIS server ...
  38. [38]
    Best practices for NIS use - Linux.com
    Dec 15, 2006 · The common sources are nis, nisplus, files, dns, and compat; they refer to NIS, NIS+, vanilla flat files (ignoring tokens such as “+”), DNS, and ...Missing: authoritative | Show results with:authoritative
  39. [39]
    Using NIS | Security and Hardening Guide | SLES 15 SP7
    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 ...
  40. [40]
    Brief survey of common directory services (Managing NFS and NIS ...
    NIS, originally called the Yellow Pages or YP, was invented to simplify management of these files by changing the underlying programming interfaces, such as ...
  41. [41]
    Chapter 4 The NIS+ Namespace - Oracle Help Center
    An NIS+ domain consists of a directory object, its org_dir directory, its groups_dir directory, and a set of NIS+ tables. Graphic. NIS+ domains are not tangible ...
  42. [42]
    Part III NIS+ Administration
    Part III NIS+ Administration. This part describes the administration and troubleshooting of the NIS+ naming service in the Solaris OS.Missing: adoption | Show results with:adoption
  43. [43]
    Overview of Secure RPC (System Administration Guide
    This authentication mechanism uses DES encryption. Applications that use Secure RPC include NFS and the NIS+ name service. NFS Services and Secure RPC. NFS ...
  44. [44]
    NIS+ Tables - System Administration Guide: Naming and Directory ...
    All NIS+ tables are stored in the domain's org_dir NIS+ directory ... In addition to NIS+ tables, sources can be NIS maps, DNS zone files, or /etc tables.Missing: flat | Show results with:flat
  45. [45]
    NIS and NIS+ Differences - IBM
    NIS maps are located on the server in /var/yp/domainname, whereas NIS+ directories are located in /var/nis/data. The NIS+ tables are contained in the database.
  46. [46]
    rpc.nisd Daemon - System Administration Guide
    Adds DNS forwarding capabilities to an NIS+ daemon running in NIS-compatibility mode. This option requires that the /etc/resolv.conf file be set up for ...Missing: tools nisauth DBM NDDB
  47. [47]
    nis(1) - FreeBSD Manual Pages
    ... directory, table, group, link, entry, and private. NIS+ Directory Object Each NIS+ namespace will have at least one NIS+ directory object. ... maps to the NIS+ ...
  48. [48]
    Glossary
    DBM is the database originally used to store NIS maps. decimal dotted ... The NIS+ database is stored on the master server and all the replica servers.
  49. [49]
    NIS+ part 2: Not your father's name service - SunWorld - October 1996
    Adoption of NIS+ has been slow (to put it mildly). True, NIS+ was introduced poorly by Sun. The latest releases have turned it into a solid naming system ...Missing: low complex
  50. [50]
    End of Feature Notices for Oracle Solaris 11
    This section lists features that might be removed in future updates of Oracle Solaris 11. Cryptographic Protocols, Algorithms, and Key Lengths
  51. [51]
    RFC 4510 - Lightweight Directory Access Protocol (LDAP)
    RFC 4510 is a proposed standard for the Lightweight Directory Access Protocol (LDAP), an Internet protocol for accessing distributed directory services. It ...
  52. [52]
    RFC 4513 - Lightweight Directory Access Protocol (LDAP)
    This document describes authentication methods and security mechanisms of the Lightweight Directory Access Protocol (LDAP).
  53. [53]
    Lightweight Directory Access Protocol | Microsoft Learn
    May 30, 2018 · LDAP is a directory service protocol that runs above TCP/IP, used to connect to, search, and modify Internet directories, based on a client- ...Purpose · Where applicable
  54. [54]
    OpenLDAP, Main Page
    OpenLDAP Software is an open source implementation of the Lightweight Directory Access Protocol. ; The suite includes: lloadd - stand-alone LDAP Load Balancer ...Download!DocumentationSoftwareOpenLDAP, ProjectRelease Road Map
  55. [55]
    RFC 1035 - Domain names - implementation and specification
    This RFC describes the details of the domain system and protocol, and assumes that the reader is familiar with the concepts discussed in a companion RFC.
  56. [56]
    RFC 4120 - The Kerberos Network Authentication Service (V5)
    This document provides an overview and specification of Version 5 of the Kerberos protocol, and it obsoletes RFC 1510 to clarify aspects of the protocol and ...
  57. [57]
    SSSD - System Security Services Daemon - sssd.io
    Open Source Client for Enterprise Identity Management. Enroll your Linux machine into an Active Directory, FreeIPA or LDAP domain.Introduction · Quick Start Guide · Contribute · Community
  58. [58]
  59. [59]
    Migrating From NIS to LDAP
    Moving from NIS to LDAP is a two-step process that involves data migration and client migration. The Solaris OS provides the NIS-to-LDAP transition service (N2L ...
  60. [60]
    nss_ldap(5): LDAP nameservice provider - Linux man page
    The nss_ldap module is a set of C library extensions which allows X.500 and LDAP directory servers to be used as a primary source of name service information.
  61. [61]
    13.7.2. Migrating Old Authentication Information to LDAP Format
    The /usr/share/openldap/migration/ directory contains a set of shell and Perl scripts for migrating authentication information into an LDAP format.
  62. [62]
    Part IV Advanced Deployment Topics (Sun Java System Directory ...
    The LDAP naming service has the following advantages over other naming services: Enables you to consolidate information by replacing application-specific ...
  63. [63]
    2.9 Disable NIS Server Services - Tenable
    Information. The NIS server software is not installed by default and is only required on systems that are acting as an NIS server for the local site.
  64. [64]
    3.3. NIS | System-Level Authentication Guide
    The ypbind package must be installed on the local system. This is required for NIS services, but is not installed by default. The portmap and ypbind services ...Missing: disabled | Show results with:disabled
  65. [65]
    What is the support status of Network Information Service (NIS)
    Aug 22, 2025 · As seen from the RHEL8.3 release notes the yp rpms (ypserv, ypbind, yp-tools) have been marked as deprecated. Furthermore those components will ...Missing: Solaris 11
  66. [66]
    UBTU-18-010018 - The Ubuntu operating system must not have the...
    Information. Removing the Network Information Service (NIS) package decreases the risk of the accidental (or intentional) activation of NIS or NIS+ services.
  67. [67]
    Chapter 32. Network Servers | FreeBSD Documentation Portal
    Aug 28, 2025 · How to set up the Network Information Server (NIS) for centralizing and sharing user accounts. How to set FreeBSD up to act as an LDAP server or ...Synopsis · Network Information System... · Lightweight Directory Access...
  68. [68]
    SysAdmin to SysAdmin: NIS end-of-life and LDAP - Linux.com
    Sep 1, 2004 · Sun, the inventor of Network Information Service, has announced the end-of-life for NIS. This is a more heterogenous problem than the end of ...Missing: Microsystems | Show results with:Microsystems
  69. [69]
    Changes/retire NIS user space utils - Fedora Project Wiki
    Feb 22, 2023 · With this change we start directing our users and developers to move away from NIS(+) to secure alternatives like LDAP and/or FreeIPA. Scope.
  70. [70]
    ypbind(8): NIS binding process - Linux man page - Die.net
    ypbind uses syslog(3) for logging errors and warnings. At startup or when receiving signal SIGHUP, ypbind parses the file /etc/yp.conf and tries to use the ...
  71. [71]
    Chapter 2. Configuring user authentication using authselect
    Sep 11, 2018 · The nis profile ensures compatibility with legacy Network Information Service (NIS) systems. The minimal profile serves only local users and ...
  72. [72]
    HP-UX, AIX, and Solaris: Are These Legacy Unix OSs Still Secure in ...
    Jun 12, 2025 · Legacy Unix systems are not inherently insecure, but they need special care in today's rapidly evolving cybersecurity environment.Missing: embedded | Show results with:embedded
  73. [73]
    Nis on Rocky/RHEL 9 - Rocky Linux Forum
    Sep 6, 2023 · We're in the process of moving our HPC cluster name service from NIS to campus AD/LDAP. We haven't been using NIS for password hashes, so haven't been as ...Missing: EPEL | Show results with:EPEL
  74. [74]
    thkukuk/ypserv: NIS (YP) Server - GitHub
    This a YP (NIS version 2) Server for Linux, but it also runs under other OS like SunOS 4.1.x, Solaris 2.x, AIX, HP-UX, IRIS, Ultrix and others.
  75. [75]
    NIS on vmware workstation - Solaris - Unix Linux Community
    Aug 26, 2010 · Hi Admins, I just have a doubt on NIS that, is it possible to run NIS on vmware workstation running more than 1 solaris instances.
  76. [76]
    ypserv
    - **Current Status**: ypserv version 4.x is active, ported from version 2.x, with TI-RPC and IPv6 support.
  77. [77]
    NIS+ to LDAP Migration - Rocky Linux Help & Support
    Jul 21, 2025 · The official replacement for using NIS in RHEL, or Rocky is to use iDM/freeipa. If you wish to do it differently, then you can of course.
  78. [78]
    Migration — FreeIPA documentation
    Users and groups can be migrated using the migrate-ds command, just like with any other LDAP based identity management server.Missing: timeline future obsolescence 2030