chapter 2. NIS / LDAP (네트워크 사용자 인증 서비스)
NIS (Network Information Service)
: 네트워크를 기반으로 여러 가지 정보를 제공해주는 서비스
: 다수의 서버에 로그인이 필요할 때 한 서버에 등록된 계정정보를 공유하는 서비스
: Telnet, Samba, ssh 등의 서비스에서 사용자 인증 가능 (RPC기반)
LDAP (Lightweight Directory Access Protocol)
: X.500 Directory Access Protocol 기반으로 만들어진 데이터베이스 접속을 위한 통신 규약
: DAP의 자원소모 단점을 보완하기 위해 등장
: IP 프로토콜을 기반으로 사용자, 시스템, 네트워크, 서비스 정보 등의 디렉터리 정보 공유
: 디렉터리는 논리, 계급, 등을 기준으로 조직화
: RDBMS에 비해 빠른 검색속도. 읽기 위주 검색 서비스에 유리
ㆍ엔트리 : 하나 이상의 속성을 가진 객체
ㆍDIT : 엔트리를 조직화 하는 트리모양의 구조
ㆍDN/RDN : 조직내의 고유 식별자 / DN을 구성하는 상대 고유이름
ex) DN = /home/ec2-user/j.txt / RDN = j.txt
LDAP 디렉터리 구조의 속성 키워드
c : 국가이름
st : 주 이름
l : 도시 혹은 지역
street : 도로명 주소
o : 조직 이름
ou : 조직 부서 이름
cn : 이름과 성
sn : 성
givenName : 이름
dc : 도메인 네임
mail : 이메일 주소
telephoneNumber : 전화번호
NIS 구축
service rpcbind start # NIS구동을 위한 rpc데몬 실행
vi /etc/hosts # NIS 서버 및 클라이언트 주소 및 도메인 등록
203.247.40.248 nis.test.co.kr
NIS 서버 데몬 스크립트
ㆍypserv : NIS 서버를 운영하는 주 데몬 스크립트
ㆍyppasswdd : NIS 클라이언트의 패스워드 관리
ㆍypxfrd : 서버와 클라이언트 간 매핑속도 향상
NIS 서버 설정
nisdomainname test.co.k # NIS 도메인 설정
혹은 vi /etc/sysconfig/network
NISDOMAIN=test.co.kr
useradd alin # 계정 생성
passwd alin
service ypserv start # 관련 데몬 시작
service yppasswdd start
service ypxfrd start
ps aux | egrep ‘ypserve | yppasswdd | ypxfrd’ # NIS 서버 작동 확인
cd /var/yp \ make # 관련 정보 갱신
make –C /var/yp
NIS 클라이언트 설정
yum install ypbind # 클라이언트 관련 데몬 (ypbind) 설치
yum install yp-tools
nisdomainname test.co.kr # NIS 도메인 설정
혹은 vi /etc/sysconfig/network
NISDOMAIN=test.co.kr
vi /etc/yp.conf # NIS서버와 NIS 도메인 설정
server nis.test.co.kr
ypserver nis.test.co.kr
domain test.co.kr
service ypbind start # 관련 데몬 시작
ps aux | grep ypbind # 서버 동작 확인
NIS 클라이언트 명령어
nisdomainname [도메인명] : 설정된 NIS 도메인을 출력하거나 설정
ypwhich [option] : NIS 클라이언트에서 NIS 서버명과 관련 맵 파일 확인
-m : NIS 서버의 맵 파일 확인
ypcat 맵_파일명 : NIS 클라이언트에서 NIS 서버의 맵 파일 내용 확인
ex) ypcat hosts : 호스트 관련 정보 출력
ex) ypcat passwd : 사용자 관련 정보 출력
yptest : NIS 클라이언트에서 관련 설정 테스트
yppasswd 사용자명 : NIS 클라이언트에서 서버에 등록된 사용자의 패스워드 변경
ypchsh 사용자명 : NIS 클라이언트에서 서버에 등록된 사용자의 셸 변경
ypchfn 사용자명 : NIS 클라이언트에서 서버에 등록된 사용자의 정보 변경
SAMBA
: 윈도와 다른 시스템의 자원 공유를 위한 프로토콜인 SMB를 이용한 서버 프로그램
: 리눅스 및 유닉스 계열 운영체제와 윈도우 운영체제간의 자료 및 하드웨어 공유
: 디렉터리 및 파일공유, 프린터, CD-ROM, USB 공유 가능
: CIFS로 확장되어 TCP/IP를 이용. NetBIOS 프로토콜 지원.
samba : 삼바 서버 패키지. 삼바 데몬, 서버 관련 라이브러리, 실행 데몬 스크립트 등 포함
samba-common : 삼바 서버와 클라이언트 모두에 필요한 패키지. smb.conf와 smbpasswd, testsparm 등 포함
samba-client : 삼바 클라이언트 패키지. smbclient, smbtree 등 포함
삼바데몬
ㆍsmbd : 파일과 프린터 공유. 사용자 권한 부여 및 확인 등 사용자 인증
ㆍnmbd
: WINS (Windows Internet Name Service) 담당 데몬. 클라이언트를 위해 NetBIOS nameserver 지원.
: browsing (서비스통지) 및 컴퓨터 이름과 IP 주소 연결 등의 역할 수행
/etc/samba/smb.conf : samba 설정 파일
#, ; (주석)
[] (섹션 정의)
name = value (사용하는 옵션과 해당 값 설정)
smb.conf 섹션
ㆍ[global] : 삼바 서버 전체적인 환경 설정
ㆍ[homes] : 각 사용자들의 홈 디렉터리 접근시의 권한 설정
ㆍ[printers] : 프린터 관련 권한 설정
smb.conf [global] 섹션 항목
ㆍworkgroup = SAMBA # 공유 그룹명
ㆍserver string = Samba Server # 서버에 대한 설명
ㆍnetbios name = MYSERVER # 윈도에 접속시 이름
ㆍinterfaces = lo eth0 192.168.12.2/24 192.168.13.2/24 # 네트워크 인터페이스 별 접근 제어
ㆍhosts allow = 127. 192.168.12. 192.168.13 # 삼바 서버에 접속을 허용할 호스트 지정. IP주소, 호스트명 가능
ㆍlog filw = /var/log/samba/log.%m # 삼바 서버에 접속하는 호스트의 로그
ㆍmax log size = 50 # 로그 파일의 최대 크기
ㆍsecurity = user # 삼바서버 인증모드 설정
# user=사용자명/패스워드 필요. domain=윈도의 도메인 컨트롤러 전달. ads=active Directory Server 사용
ㆍpassdb backend = tdbsam # secyrity가 user일시 사용자의 패스워드 설정
smb.conf [share] 섹션 항목
ㆍcomment : 간단한 설명
ㆍpath : 공유 디렉터리 경로
ㆍread only : 공유 디렉터리 읽기 전용으로 설정
ㆍwritable, write ok : 공유 디렉터리 쓰기 가능 설정
ㆍvalid users : 공유 디렉터리 접근 가능 사용자
ㆍwrite list : 공유 디렉터리에 접근 및 쓰기 가능 사용자 지정. 그룹의 경우 앞에 @표시
ㆍpublic, guest ok : 게스트 유저 허용 여부
ㆍbrowseable, browsable : 공유 디렉터리 리스트 확인
ㆍprintable : 공유 디렉터리에 스풀 파일 지정시 설정
ㆍcreate mask, create mode : 파일 생성시 허가권 지정
smbclient [option] [호스트명] : 윈도 서버 접근시 사용. 호스트 이름 혹은 컴퓨터이름(윈도) 지정.
-L : 접속하려는 서버의 공유 디렉터리 정보 출력 (--list)
-U : 서버 접속시 사용자명 입력 (--user=사용자명[%패스워드])
-M : 호스트에 메시지 전송시 사용. ctrl+d를 눌러 전송 (--message NetBIOS name)
smbstatus : 삼바 서버에서 사용. 클라이언트와 연결된 상태 출력
testparm [파일경로] [호스트명 IP주소] : smb.conf의 설정 여부 확인
nmlookup [option] : WINS 서버 질의. nslookup과 유사
-U : 조회할 서버 이름 지정
-R : 조회할 이름 지정
mount.cifs //공유서버IP/디렉터리 /마운트할_디렉터리 : CIFS기반으로 윈도에 공유된 디렉터리 마운트
smbpasswd [option] [사용자명] : 삼바 사용자 삭제 및 관리
-a : 삼바 사용자 추가. 리눅스에 존재하는 계정이여야 함
-x : 삼바 사용자 제거
-d : 삼바 사용자 일시적 비활성화
-e : 삼바 사용자 활성화
-n : 패스워드 없이 로그인. smb.conf에 null passwords=yes 설정 필요
pdbedit [option] [사용자명] : 삼바 사용자 데이터베이스 파일인 SAM database 관리
-a : 삼바 사용자 추가
-L : 등록된 삼바 사용자 간단한 목록
-v : 등록된 삼바 사용자의 자세한 정보 출력
'Certification > 리눅스마스터' 카테고리의 다른 글
리눅스 마스터 1급 2차 정리 11 - FTP (네트워크 파일 전송 서비스) (0) | 2021.11.02 |
---|---|
리눅스 마스터 1급 2차 정리 10 - NFS (네트워크 파일 마운트) (0) | 2021.11.02 |
리눅스 마스터 1급 2차 정리 8 - HTTP / Apache (0) | 2021.11.02 |
리눅스 마스터 1급 2차 정리 7 - 시스템 보안 및 관리 (0) | 2021.11.02 |
리눅스 마스터 1급 2차 정리 6 - 장치 관리 (0) | 2021.11.02 |