NIS 인증 서버 구축

sso·2025년 4월 28일
0

리눅스 서버

목록 보기
34/40

1. 인증 서버 구축

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
nisdomainname

vi /etc/sysconfig/network
NISDOMAIN=4gl.net

클라이언트 설정 파일

vi /etc/yp.conf
domain 4gl.net.server niss.4gl.net
ypserver niss.4gl.net

systemctl --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
1234

cd /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 rpcbind

vi /etc/hosts
10.0.2.224 niss niss.ds.net

B

dnf -y install ypserv ypbind yp-tools

vi /etc/sysconfig/network
NISDOMAIN=ds.net

systemctl --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
nisdomainname

vi /etc/sysconfig/network
NISDOMAIN=ds.net

vi /etc/yp.conf
domain ds.net.server niss.ds.net
ypserver niss.ds.net

systemctl --now enable ypbind oddjob

cd /var/yp; make

useradd sh
passwd sh
1234

profile
오늘도 하나씩 해결해 나가자!

0개의 댓글