강좌
클라우드/리눅스에 관한 강좌입니다.
해킹&보안 분류

리눅스마스터1급 : NIS 설정 및 활용- NIS 클라이언트 설정

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스마스터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 Clientportmapypbind 서비스만 시작하면 된다.

 

 

 

서버 부팅 시 자동시작 될 수 있게 다음과 같이 설정한다.

 

 

 

 

 

 

 

 

 

[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:::

 

 

 

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  73 명