네임 서비스 스위치
Name Service Switch네임 서비스 스위치(NSS)는 컴퓨터를 공통 구성 데이터베이스 및 이름 해결 메커니즘의 다양한 소스와 연결합니다.이러한 소스에는 로컬 운영 체제 파일(예:/etc/passwd, /etc/group 및 /etc/hosts, Domain Name System(DNS; 도메인네임 시스템), Network Information Service(NIS, NIS+) 및 LDAP.
이 운영체제 메커니즘은 Unix와 유사한 모든 운영체제를 포함하여 수십억 대의 컴퓨터에서 사용되며 네트워크 조직과 인터넷의 일부로 기능하는 데 필수적입니다.특히 컴퓨터 사용자가 웹 브라우저를 클릭하거나 웹 브라우저에 웹사이트 주소를 입력하거나 비밀번호 도전에 응답하여 컴퓨터와 인터넷에 대한 접근을 승인할 때마다 호출됩니다.
nsswitch.conf
시스템 관리자는 보통 /etc/nsswitch.conf 파일을 사용하여 운영 체제의 이름 서비스를 구성합니다.이 파일에는 데이터베이스(패스워드, 섀도, 그룹 등)와 해당 정보를 얻기 위한 하나 이상의 소스가 나열됩니다.소스의 예로는 로컬 파일의 파일, Lightweight Directory Access Protocol의 ldap, Network Information Service의 nis, NIS+의 nisplus, DNS(Domain Name System)의 dns, Windows Internet Name Service의 wins 등이 있습니다.
nsswitch.conf 파일에는 첫 번째 필드의 데이터베이스 이름과 콜론으로 끝나는 두 번째 필드의 가능한 소스 데이터베이스 목록으로 구성된 각 서비스의 행 엔트리가 있습니다.
일반적인 파일은 다음과 같습니다.
passwd: files ldap shadow: files ldap hosts: files ldap files ethers: files nis netmasks: files nis protocols: files nis rp: files nis services: files nis automount: files: files
소스 데이터베이스의 순서에 따라 지정된 서비스에 대한 쿼리를 해결하기 위해 NSS가 이러한 소스를 검색하려고 시도하는 순서가 결정됩니다.각 소스 이름 뒤에 괄호로 묶인 기준 목록을 지정하여 NSS가 이전 소스 응답에 따라 다음 소스 조회를 진행하는 조건을 제어할 수 있습니다.
역사
이전의 Unix와 유사한 시스템은 로컬 파일에만 액세스하거나 파일 또는 네트워크에 저장된 데이터베이스에 액세스하기 위한 하드 코드화된 규칙을 가지고 있었습니다.Ultrix는 /etc/svc.conf의 NSS 구성 파일과 거의 동일한 기능을 가진 주목할 만한 예외입니다.
Sun Microsystems는 Solaris 운영체제용 NSS를 최초로 개발했습니다.
AT, SunMicrosystems와 AT&T유닉스 시스템 래버러 토리스 공동으로 유닉스 시스템 V, BSD와 제닉스가 합쳐져서 수립하여 솔라리스의 준수, 제3자가 이름 서비스 구현에서 그들의 선택(OSI또는 IP)의 전송 계층을 위해 SVR4-compliant Transport-Independent RPC(TI-RPC)a을 개정 없이 연결할 수 있을 필요pplioperating system의 재구축에 대해 설명합니다.Sun은 NIS를 대체하기 위해 Solaris에 NIS+ 디렉토리 서비스를 도입했습니다.이 서비스를 쉽게 이행하려면 기업 내에서 2개의 디렉토리 서비스가 공존해야 합니다.
Sun 엔지니어 Thomas Maslen과 Sanjay Dani는 네임 서비스 스위치를 최초로 설계하고 구현했습니다.이들은 nsswitch.conf 파일 사양 및 데이터베이스 액세스 모듈을 동적으로 로드된 라이브러리로 로드하는 구현 선택으로 Solaris 요건을 충족했습니다.이 또한 Sun이 최초로 도입했습니다.
Sun 엔지니어는 원래 설계한 컨피규레이션파일 및 네임서비스 백엔드 라이브러리의 런타임 로딩에 대해 운영체제가 진화하고 새로운 네임서비스가 도입됨에 따라 오랜 세월의 테스트를 견뎌냈습니다.수년간 프로그래머들은 거의 동일한 구현으로 NSS 구성 파일을 FreeBSD, NetBSD, Linux, HP-UX, IRIX 및 AIX를 포함한 다른 많은 운영 체제에 이식했습니다.NSS가 발명된 지 20년이 넘도록 GNU libc는 거의 비슷하게 NSS를 구현합니다.
「 」를 참조해 주세요.
외부 링크
- NetBSD 파일 형식 매뉴얼 : 네임 서비스 스위치컨피규레이션파일–
- GNU C 라이브러리에서의 네임 서비스 스위치 구현
- LDAP를 지원하는 NSS 모듈: nss_ldap
- LDAP를 지원하는 다른 NSS 모듈: nss-ldapd
- AFS를 지원하는 NSS 모듈: nss_afs