리눅스마스터1급 : NIS 설정 및 활용- NIS 클라이언트 설정
작성자 정보
- 관리자 작성
 - 작성일
 
컨텐츠 정보
- 5,526 조회
 - 0 추천
 - 목록
 
본문
리눅스마스터1급 : NIS 설정 및 활용- NIS 클라이언트 설정
① NIS 도메인 설정
  | 
  | 
  | 
  | [root@SULinux-32Bit ~]# ypdomainname sulinux.net [root@SULinux-32Bit ~]# nisdomainname sulinux.net  | 
  | 
  | 
  | 
  | 
위와 같이 ypdomainname 명령어로 도메인 이름을 설정한다.
여기서 도메인 이름은 꼭 DNS 도메인일 필요는 없다.
단, NIS 서버의 도메인과 동일해야 한다.
위와 같이 설정하였다면, 서버 부팅 후에도 위 사항이 적용될 수 있게 다음과 같이 설정파일(/etc/sysconfig/network)에 다음 내용을 수정 및 추가 해 준다.
  | 
  | 
  | 
  | NISDOMAIN=sulinux.net  | 
  | 
  | 
  | 
  | 
NIS 서버의 호스트네임에 대한 IP를 호스트설정파일(/etc/hosts)에 설정한다.
  | 
  | 
  | 
  | 192.168.0.129 nis.sulinux.net 192.168.0.130 niss.sulinux.net  | 
  | 
  | 
  | 
  | 
② 인증설정 편집
인증설정 파일(/etc/sysconfig/authconfig)에서 NIS를 사용할 수 있게 다음과 같이 수정한다.
  | 
  | 
  | 
  | USENIS=no #==> 수정 ==> USENIS=yes  | 
  | 
  | 
  | 
  | 
③ NIS 서버 리스트 추가
/etc/yp.conf 파일에 다음 내용을 추가한다.
  | 
  | 
  | 
  | domain sulinux.net server nis.sulinux.net domain sulinux.net server niss.sulinux.net  | 
  | 
  | 
  | 
  | 
위와 같이 NIS Master 서버와 NIS Slave 서버리스트를 추가한다.
④ nsswitch.conf 파일 수정
/etc/nsswitch.conf파일은 관리 정보의 종류에 따라 검색 경로를 명시할 수 있는 중앙 설정파일이다.
다음과 같이 NIS를 사용할 수 있게 수정한다.
  | 
  | 
  | 
  | passwd: files # ==> 수정 ==> passwd: files nis 
 shadow: files # ==> 수정 ==> shadow: files nis 
 group: files # ==> 수정 ==> group: files nis 
 hosts: files dns # ==> 수정 ==> hosts: files dns nis  | 
  | 
  | 
  | 
  | 
위 설정 내용을 보면, passwd 파일은 /etc/passwd 파일을 참조하고, NIS를 참조한다는 것이며, hosts는 /etc/hosts 파일을 참조하고, DNS서버에 조회를 하며, NIS를 참조한다는 것이다.
참조 우선순위는 필요에 따라 변경할 수 있다.
⑤ 홈디렉토리 없을시 자동생성 설정
NIS 구성을 하게 되면 계정 정보는 NIS 서버에 있으나, NIS 클라이언트는 홈디렉토리가 없는 상태로 인증을 받아 로그인 하게 된다.
사용자의 홈 디렉토리가 없을 때 자동으로 생성하게 하려면 다음과 같이 PAM 설정을 하면 된다.
설정파일(/etc/pam.d/system-auth)의 가장 아래에 다음 내용을 추가한다.
  | 
  | 
  | 
  | session optional pam_mkhomedir.so skel=/etc/skel umask=077  | 
  | 
  | 
  | 
  | 
⑥ NIS 클라이언트 시작
NIS Client는 portmap과 ypbind 서비스만 시작하면 된다.
서버 부팅 시 자동시작 될 수 있게 다음과 같이 설정한다.
  | 
  | 
  | 
  | [root@SULinux-32Bit yp]# service portmap start portmap (을)를 시작 중: [ OK ] [root@SULinux-32Bit yp]# /etc/init.d/ypbind start NIS 도메인에 연결함: [ OK ] NIS 도메인 서버를 찾는 중. 
 [root@SULinux-32Bit yp]# chkconfig portmap on [root@SULinux-32Bit yp]# chkconfig ypbind on  | 
  | 
  | 
  | 
  | 
⑦ NIS 클라이언트 확인
위와 같이 설정하였다면, NIS 클라이언트 설정이 완료된 것이다.
앞에서 NIS 서버에서 설정한 "sulinux"계정으로 로그인 하여 테스트 해 보도록 하겠다.
여기서는 SSH를 통한 로그인을 해 보도록 하겠다.
  | 
  | 
  | 
  | [root@SULinuxHost1 ~]# ssh -l sulinux 192.168.0.115 sulinux@192.168.0.115's password: <비밀번호> Creating directory '/home/sulinux'. Creating directory '/home/sulinux/.mozilla'. Creating directory '/home/sulinux/.mozilla/extensions'. Creating directory '/home/sulinux/.mozilla/plugins'.  | 
  | 
  | 
  | 
  | 
SSH를 통해 NIS Client가 설정된 서버에 접근하였다.
NIS 서버에서 설정한 sulinux계정과 비밀번호로 접속이 되었고, NIS Client가 설정된 서버에는 사용자 홈디렉토리가 없으니 생성되는 것을 볼 수 있다.
로그인 후에 ypwhich 명령어로 인증받은 NIS 서버를 조회해 보자.
  | 
  | 
  | 
  | [sulinux@SULinux-32Bit ~]$ ypwhich nis.sulinux.net  | 
  | 
  | 
  | 
  | 
ypcat 명령어로 passwd 파일과 hosts 파일을 조회해 보자.
  | 
  | 
  | 
  | [sulinux@SULinux-32Bit ~]$ ypcat passwd sulinux:x:501:501::/home/sulinux:/bin/bash mysql:x:500:500::/usr/local/mysql:/bin/bash 
 [sulinux@SULinux-32Bit ~]$ ypcat hosts 127.0.0.1 localhost.localdomain localhost SULinux-64Bit 127.0.0.1 localhost.localdomain localhost SULinux-64Bit 127.0.0.1 localhost.localdomain localhost SULinux-64Bit 192.168.0.129 nis.sulinux.net 192.168.0.130 niss.sulinux.net  | 
  | 
  | 
  | 
  | 
yptest 명령어로 테스트 해 보자.
  | 
  | 
  | 
  | [root@SULinux-32Bit ~]# yptest Test 1: domainname Configured domainname is "sulinux.net" 
 Test 2: ypbind Used NIS server: nis.sulinux.net 
 Test 3: yp_match WARNING: 지도에 그런 키가 없음 (Map passwd.byname, key nobody) 
 Test 4: yp_first sulinux sulinux:x:501:501::/home/sulinux:/bin/bash 
 Test 5: yp_next mysql mysql:x:500:500::/usr/local/mysql:/bin/bash 
 Test 6: yp_master nis.sulinux.net 
 Test 7: yp_order 1368924178 
 Test 8: yp_maplist rpc.bynumber passwd.byname mail.aliases netid.byname passwd.byuid rpc.byname shadow.byname services.byname hosts.byname hosts.byaddr protocols.byname group.bygid ypservers protocols.bynumber group.byname services.byservicename 
 Test 9: yp_all sulinux sulinux:x:501:501::/home/sulinux:/bin/bash mysql mysql:x:500:500::/usr/local/mysql:/bin/bash 1 tests failed  | 
  | 
  | 
  | 
  | 
yppasswd 명령어로 사용자의 비밀번호를 변경해 보자.
  | 
  | 
  | 
  | [sulinux@SULinux-32Bit ~]$ yppasswd Changing NIS account information for sulinux on nis.sulinux.net. Please enter old password: <현재비밀번호> Changing NIS password for sulinux on nis.sulinux.net. Please enter new password: <새로운비밀번호> Please retype new password: <새로운비밀번호> 
 The NIS password has been changed on nis.sulinux.net.  | 
  | 
  | 
  | 
  | 
변경된 shadow는 다음 명령어로 가져와 확인할 수 있다.
  | 
  | 
  | 
  | [root@SULinux-32Bit ~]# getent shadow |grep sulinux sulinux:8peqVKpwvyrWQ:15844:0:99999:7:::  | 
  | 
  | 
  | 
  | 
관련자료
- 
			이전
 - 
			다음
 
								