NIS 인증 서버 구축
A - 인증 서버
B - 인증 클라이언트
A에 만든 인증 정보(유저)를 B에 만들지 않고도 B에서 마치 유저가 있는 것 처럼 로그인
Server A
systemctl status rpcbind
/etc/hosts - DNS 사용 이전의 간이 호스트 맵핑용 파일
vi /etc/hosts
192.168.111.100 niss niss.4gl.net
192.168.111.200 nisc nisc.4gl.net
Client B
systemctl status rpcbind
/etc/hosts - DNS 사용 이전의 간이 호스트 맵핑용 파일
vi /etc/hosts
192.168.111.100 niss niss.4gl.net
192.168.111.200 nisc nisc.4gl.net
Server A
dnf -y install ypserv
영구적 도메인 등록 nisdomainname 4gl.net
vi /etc/sysconfig/network
NISDOMAIN=4gl.net
클라이언트에서 사용할 계정 생성
useradd 4gluser
passwd 4gluser
데몬 서버 시작
(rpcbind는 제일 기본으로 안켜져 있으면 실행 안됨, 가장 처음으로 실행시킬것)
systemctl --now enable rpcbind
systemctl --now enable ypserv yppasswdd ypxfrd
NIS 서버에서 사용자 추가, 변경 등 내용 정보 변경 시 정보 갱신 (DB 업데이트 작업)
방법1
cd /var/yp
make
방법2
make ?C /var/yp
방화벽 포트 설정
YPSERV_ARGS="-p 944"
YPXFRD_ARGS="-p 945"vi /etc/sysconfig/yppasswdd
YPPASSWDD_ARGS="--port 946"
데몬 재실행
systemctl restart rpcbind ypserv yppasswdd ypxfrd
방화벽 개방
firewall-cmd --add-service=rpc-bind
NFS 각 지정한 포트별로 tcp, udp를 모두 개방
(포트는 범위를 통해 열 수 있음)
firewall-cmd --add-port={944-946/tcp,944-946/udp}
firewall-cmd --runtime-to-permanent
개방되었는지 방화벽 확인
firewall-cmd --list-all
이후부터는 클라이언트 설정 작업으로 Server B에서 작업
Client B
dnf -y install ypbind yp-tools
(일반사용자로 외부에서 로그인 했을 때 자동으로 홈디렉터리까지 생성해주는 패키지)
dnf -y install oddjob-mkhomedir rpcbind
nis 도메인 설정
nisdomainname 4gl.net
nisdomainnamevi /etc/sysconfig/network
NISDOMAIN=4gl.net
클라이언트 설정 파일
vi /etc/yp.conf
domain 4gl.net.server niss.4gl.net
ypserver niss.4gl.netsystemctl --now enable ypbind
만약에 ypbind 시작이 오류가 난다면 Server A에서 데몬 재실행, a 방화벽 확인
systemctl restart ypserv yppasswdd ypxfrd
firewall-cmd --add-service=rpc-bind
ypbind 데몬 실행 후 b에서 nis 인증 방식으로 시스템 전환
authselect select nis --force
(장치가 재시작할 때 실행되도록 설정)
authselect enable-feature with-mkhomedir
oddjob-mkhomedir 데몬 실행
systemctl --now enable oddjobd
Server A에 임의의 유저 생성 후 B 로그인 확인
useradd linuxmaster
passwd linuxmaster
1234cd /var/yp; make
B
Ctrl + D로 세션 종료 한 후 linuxmaster 1234 로그인 - 성공
b에 정상적으로 해당 유저의 홈디렉터리가 생긴것을 확인
문제
Server A, B를 초기화 하시오.
상대방 Server B를 NIS 서버로 삼고, 자신의 Server A를 NIS 클라이언트로 삼아 상호간 Server B에 만들어 준 클라이언트 유저의 이니셜로 로그인이 가능하도록 만드시오.(홈 디렉터리 생성까지 수행)
DNS X /etc/hosts O
이후 Server A에 텔넷, SSH 서비스에 대해 모두 NIS 인증 서버를 통해 로그인을 수행할 수 있도록 만드시오.(텔넷, SSH는 윈도우 Host OS에서 접속)
B
dnf -y install rpcbind
vi /etc/hosts
10.0.2.224 niss niss.ds.net
A
dnf -y install rpcbind
systemctl --now enable rpcbindvi /etc/hosts
10.0.2.224 niss niss.ds.net
B
dnf -y install ypserv ypbind yp-tools
vi /etc/sysconfig/network
NISDOMAIN=ds.netsystemctl --now enable rpcbind ypserv yppasswdd ypxfrd
cd /var/yp; make
YPSERV_ARGS="-p 944"
YPXFRD_ARGS="-p 945"
vi /etc/sysconfig/yppasswdd
YPPASSWDD_ARGS="--port 946"systemctl restart rpcbind ypserv yppasswdd ypxfrd
firewall-cmd --add-service={rpc-bind,944-946/tcp,944-946/udp}
firewall-cmd --runtime-to-permanent
A
dnf -y install rpcbind ypbind yp-tools oddjob-mkhomedir
nisdomainname ds.net
nisdomainnamevi /etc/sysconfig/network
NISDOMAIN=ds.netvi /etc/yp.conf
domain ds.net.server niss.ds.net
ypserver niss.ds.netsystemctl --now enable ypbind oddjob
cd /var/yp; make
useradd sh
passwd sh
1234