2015. 4. 26. 00:59

NIS(YP)


- NIS란

NIS는 Network Information Service의 약자이며 YP(Yellow Page)라고도 불린다. RPC(Remote Procedure Call)환경에서 같은 NIS도메인에 속해 있는 호스트들끼리 네트워크자원(호스트명, 사용자계정, 패스워드, 그룹등)을 공유하여 서로 같은 시스템 환경을 제공하는 것이 목적이다.

NIS Master서버는 NIS데이터베이스의 마스터맵을 가지고 있고 이를 업데이트하고 유지하고, 이 정보를 NIS Slave Server에게 제공한다. 또 NIS Client에게 NIS서비스를 제공한다.

NIS Slave서버는 NIS Master서버로부터 NIS데이터베이스를 제공받아 같은 복사본을 보관하고 있는 서버로서 NIS Client에게 서비스를 제공한다.

NIS Client는 Master서버와 Slave서버에게 NIS정보를 제공 받는다. 이때 제공받는 Master나 Slave서버를 가리지 않으며 가장 빠른 응답이 있는 서버의 정보를 이용한다.

- NIS master와 NIS client 구성

· NIS Master Server설정

#vim/etc/hostname

--------------------------------------------------------------------

master.skill.com

--------------------------------------------------------------------

# vim /etc/defaultdomain// NIS에쓸 도메인을 적음

--------------------------------------------------------------------

skill.com

--------------------------------------------------------------------

※ defaultdomain파일은 컴퓨터 시작시 nis도메인을 설정해주는 파일이다. 지금 당장 바꾸고 싶다면 nisdomainname명령어를 이용

# vim /etc/hosts// 보통 NIS는 dns를 안 쓰므로 hosts파일 편집

--------------------------------------------------------------------

172.16.0.1master.skill.com master

172.16.0.2client.skill.comclient

--------------------------------------------------------------------

※ IPFQDNhost 형식으로 적어줌

# vim /etc/default/nis

--------------------------------------------------------------------

...

NISSERVER=master// false로 되있는것을 master로 변경해줌

...

--------------------------------------------------------------------

# /usr/lib/yp/ypinit -m// NIS master서버로 설정

next host to add: master.skill.com// 컨트롤+D를 눌러 빠저나옴

Is this correct? [y/n]y// y를 누름

# make -C /var/yp// 새로고침

# /etc/init.d/nis restart// nis 재시작

· NIS Client 설정

# vim /etc/hostname

--------------------------------------------------------------------

client.skill.com

--------------------------------------------------------------------

# vim /etc/hosts

--------------------------------------------------------------------

172.16.0.1master.skill.com master

172.16.0.2client.skill.com client

--------------------------------------------------------------------

# vim /etc/defaultdomain

--------------------------------------------------------------------

skill.com

--------------------------------------------------------------------

# vim /etc/passwd

--------------------------------------------------------------------

...생략

+::::::// 제일 밑에 이 부분 추가

--------------------------------------------------------------------

# vim /etc/group

--------------------------------------------------------------------

...생략

+:::// 제일 밑에 이 부분 추가

--------------------------------------------------------------------

# vim /etc/shadow

--------------------------------------------------------------------

...생략

+::::::::// 제일 밑에 이 부분 추가

--------------------------------------------------------------------

# /etc/init.d/nis restart

# ypcat passwd// 명령 입력 시 마스터서버에 있는 유저가 보여야함(일반유저만)

# exit

client.skill.com login: // 서버에서 추가해준 유저로 로그인해서 로그인 되면 성공

- NIS master와 NIS slave, NIS client 구성

· NIS Master 설정

#vim/etc/hostname

--------------------------------------------------------------------

master.skill.com

--------------------------------------------------------------------

# vim /etc/defaultdomain// NIS에쓸 도메인을 적음

--------------------------------------------------------------------

skill.com

--------------------------------------------------------------------

※ defaultdomain파일은 컴퓨터 시작시 nis도메인을 설정해주는 파일이다. 지금 당장 바꾸고 싶다면 nisdomainname명령어를 이용

# vim /etc/hosts// 보통 NIS는 dns를 안 쓰므로 hosts파일 편집

--------------------------------------------------------------------

172.16.0.1master.skill.com master

172.16.0.2slave.skill.comslave

172.16.0.3client.skill.comclient

--------------------------------------------------------------------

※ IPFQDNhost 형식으로 적어줌

# vim /etc/default/nis

--------------------------------------------------------------------

...

NISSERVER=master// false로 되있는것을 master로 변경해줌

...

--------------------------------------------------------------------

# /usr/lib/yp/ypinit -m// NIS master서버로 설정

next host to add: master.skill.com// 컨트롤+D를 눌러 빠저나옴

Is this correct? [y/n]y// y를 누름

# /etc/init.d/nis restart// nis 재시작

# make -C /var/yp// 새로고침

· NIS Slave 서버 설정

# vim /etc/hostname

--------------------------------------------------------------------

slave.skill.com

--------------------------------------------------------------------

# vim /etc/defaultdomain// NIS에쓸 도메인을 적음

--------------------------------------------------------------------

skill.com

--------------------------------------------------------------------

※ defaultdomain파일은 컴퓨터 시작시 nis도메인을 설정해주는 파일이다. 지금 당장 바꾸고 싶다면 nisdomainname명령어를 이용

# vim /etc/hosts// 보통 NIS는 dns를 안 쓰므로 hosts파일 편집

--------------------------------------------------------------------

172.16.0.1master.skill.com master

172.16.0.2slave.skill.comslave

172.16.0.3client.skill.comclient

--------------------------------------------------------------------

※ IPFQDNhost 형식으로 적어줌

# vim /etc/default/nis

--------------------------------------------------------------------

...

NISSERVER=slave// false로 되있는것을 slave로 변경해줌

...

--------------------------------------------------------------------

# /usr/lib/yp/ypinit -s master.skill.com// 이 서버를 slave 설정하고 master.skill.com

에서 데이터를 받아옴

# /etc/init.d/nis restart

※ slave 서버 선택사항

passwd파일과 shadow파일, group파일 맨 마지막줄에 +::::(+클론) 이것을 붙여주면 slave서버 에서도 로그인을 할 수 있고 붙여주지 않는 다면 로그인을 할 수 없음 다만 client에게 정보를 제공하는 것은 마스터 서버와 같음. 그러니 쉽게 말하자만 slave서버로 작동 시킨 이상 client에게 정보를 제공하는것은 master서버와 똑같이 작동하고 있고, slave서버에서도 로그인을 가능하게 하려면 client처럼 passwd파일 group파일등에 맨마지막줄에 +:::(+ 클론)을 붙여 주어야함

· NIS Client 설정

# vim /etc/hostname

--------------------------------------------------------------------

client.skill.com

--------------------------------------------------------------------

# vim /etc/hosts

--------------------------------------------------------------------

172.16.0.1master.skill.com master

172.16.0.2slave.skill.comslave

172.16.0.3client.skill.com client

--------------------------------------------------------------------

# vim /etc/defaultdomain

--------------------------------------------------------------------

skill.com

--------------------------------------------------------------------

# vim /etc/passwd

--------------------------------------------------------------------

...생략

+::::::// 제일 밑에 이 부분 추가

--------------------------------------------------------------------

# vim /etc/group

--------------------------------------------------------------------

...생략

+:::// 제일 밑에 이 부분 추가

--------------------------------------------------------------------

# vim /etc/shadow

--------------------------------------------------------------------

...생략

+::::::::// 제일 밑에 이 부분 추가

--------------------------------------------------------------------

# /etc/init.d/nis restart

# ypcat passwd// 명령 입력 시 마스터서버에 있는 유저가 보여야함(일반유저만)

# exit

client.skill.com login: // 서버에서 추가해준 유저로 로그인해서 로그인 되면 성공

만약 NIS를 hosts파일이 아닌 DNS를 이용하여 하고 싶다면 그냥 hosts파일에 적어 둔 것을 지우고 네임서버 구축 뒤 resolv.conf파일에 네임서버 명시해주고 zone파일에 host를 hosts파일에서 매핑 해준 것처럼 존파일에도 해준 뒤 그냥 NIS재시작 하면 됨

- 기타 명령어

ypcat: ypcat <맵파일> 하면 정보를 확인 할 수 있다.(ex. # ypcat passwd)

ypmatch: ypmatch <검색대상> <맵파일>하면 맵파일 정보에서 <검색대상>만 검색한다.

(ex # ypmatch kim passwd = passwd 파일에서 kim을 검색)

ypwhich: NIS의 서버이름을 출력한다.

ypwhich -m: NIS 와 관련된 맵파일들을 보여준다.

'OPS > LInux' 카테고리의 다른 글

quota  (0) 2015.04.26
LVM  (0) 2015.04.26
NFS  (0) 2015.04.26
openVPN  (0) 2015.04.26
squid  (0) 2015.04.26
Posted by 배주혁
2015. 4. 26. 00:58

NFS

NFS는 Network File System이라고 하여 파일시스템을 network을 통하여 서로 다른 컴퓨터끼리 공유 할수 있도록 해주는 서비스 이다.

- 서버에서 설정

# vim /etc/exports// 서버에서 공유설정하는 파일을 염

--------------------------------------------------------------------

<서버의 공유해줄 파일경로><클라이언트IP>(옵션들)

--------------------------------------------------------------------

# /etc/init.d/nfs-kernel-server restart// 서비스 재시작

- 클라이언트에서 설정

# mount <서버IP(혹은도메인)>:<서버가 공유하는 파일경로> <자신서버의 파일경로>

- 클라이언트에 부팅 시 nfs연결하려면

# vim /etc/fstab

--------------------------------------------------------------------

<서버아이피>:<서버가 공유하는 파일경로><자신서버의 파일경로> nfs defaults 0 0

--------------------------------------------------------------------

ex)

192.168.0.1의 /test와 192.168.0.2의 /share을 공유하려할 때

- 192.168.0.1이 서버인 경우

# vim /etc/exports

--------------------------------------------------------------------

/test192.168.0.2(rw,sync)

--------------------------------------------------------------------

# /etc/init.d/nfs-kernel-server restart

- 192.168.0.2의 클라이언트의 설정

# mount 192.168.0.1:/test /share

- 클라이언트에 부팅시 자동연결되게 하기

# vim /etc/fstab

--------------------------------------------------------------------

192.168.0.1:/test/sharenfsdefaults0 0

--------------------------------------------------------------------

- /etc/fstab에서 옵션 값들

- no_root_squash:서버와 클라이언트 모두가 root권한을 가짐

- rw:읽기 쓰기 가능, - sync:실시간 동기화, - ro:읽기만 가능

- no_subtree_check:하위트리검사안하기(속도향상)

'OPS > LInux' 카테고리의 다른 글

LVM  (0) 2015.04.26
NIS  (0) 2015.04.26
openVPN  (0) 2015.04.26
squid  (0) 2015.04.26
Iptables  (0) 2015.04.21
Posted by 배주혁
2015. 4. 26. 00:50

openVPN

openVPN은 리눅스에서 쓸수있는 open source VPN 프로그램중 하나이다.

-서버 설정

# cp -r /usr/share/doc/openvpn/examples/easy-rsa/ /etc/openvpn

# vim /etc/openvpn/easy-rsa/2.0/vars// 인증서나 키를 만들때 그냥 엔터처도 값이 나오게 하려고

-----------------------------------------------------------------------------

...

export KEY_COUNTRY="KR"// 국가

export KEY_PROVINCE="KB"// 지방

export KEY_CITY="GUMI"// 도시

export KEY_ORG="KOTHS"// 기관명

export KEY_EMAIL="web@skill.com"// 메일 주소

-----------------------------------------------------------------------------

# cd /etc/openvpn/easy-rsa/2.0

/etc/openvpn/easy-rsa/2.0# . ./vars

NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/2.0/keys

/etc/openvpn/easy-rsa/2.0# ./clean-all

/etc/openvpn/easy-rsa/2.0# ./build-ca// 개인키(ca.key)와 공개인증서(ca.crt) 생성 과정

->계속 엔터 입력하다가 common이 나오면 server를 적어줌

/etc/openvpn/easy-rsa/2.0# ./build-key-server server// 서버 키(server.key), 서버인증서

(server.crt)생성 과정

->계속 엔터 입력 하다가 common이 나오면 server을 입력 그리고 y/n선택이 나오면 y를 입력

/etc/openvpn/easy-rsa/2.0# ./build-key client1// 클라이언트 키 생성

->계속 엔터 입력 하다가 common이 나오면 client1을 입력 그리고 y/n선택이 나오면 y를 입력

/etc/openvpn/easy-rsa/2.0# ./build-dh

# mkdir /client

# cd /etc/openvpn

/etc/openvpn# cp easy-rsa/2.0/keys/server.* .

/etc/openvpn# cp easy-rsa/2.0/keys/ca.crt .

/etc/openvpn# cp easy-rsa/2.0/keys/dh1024.pem .

/etc/openvpn# cp easy-rsa/2.0/keys/client.* /client

/etc/openvpn# cp easy-rsa/2.0/keys/ca.crt /client

-> 클라이언트 디렉토리에 옴긴것은 클라이언트(컴퓨터)에 옴겨 줘야함(인증해야 하기 때문에)

# gunzip /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz

# cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn

# vim /etc/openvpn/server.conf

-----------------------------------------------------------------------------

port 1194// vpn 포트 설정

proto udp// 프로토콜 설정(tcp로 하려면 udp에 주석 뒤 tcp에 주석제거), 권장 값:UDP

dev tun// 클라이언트와 통신할 가상 인터페이스 지정(tun과 tap이 있음)

ca ca.crt// 인증서 이름 입력

cert server.crt// 서버 인증서 이름 입력

key server.key// private key 이름 입력

dh dh1024.pem// Diffie Hellman 이름 입력

ifconfig 10.10.1.1// 서버 아이피 설정 tap어댑터 방식은 10.10.1.1 255.255.0.0이고 tun방식은 10.10.1.1 10.10.1.2다

server 10.8.0.0 255.255.0.0// 서버모드로 운영, 사설망으로 10.8.0.0/16 네트워크 사용

ifconfig-pool-persist ipp.txt// 고정 아이피를 해줄 목록

push "dhcp-option DNS 10.8.0.1"// 클라이언트의 dns주소를 10.8.0.1로 설정

client-to-client// vpn 클라이언트끼리 통신 가능하게 설정

keepalive 10 120// 10초마다 ping을 해서 120초 동안 응답불가시 원격지가 다운 된걸로 판단

comp-lzo// 압축 알고리즘을 사용(서버가 사용 시 클라이언트도 사용해야함)

persist-key//

persist-tun//

status openvpn-status.log// 로그파일 설정

verb 3// 로그 레벨 설정

-----------------------------------------------------------------------------

※ 딱히 수정할것은 없고 아이피나 파일등 자신에 입맛에 맞게 맞춰주면 된다.

# /etc/init.d/openvpn restart

- 클라이언트 설정

·클라이언트에 openvpn을 설치한다.

·아까 서버에 client폴더에 담긴 파일들을 "시작"-"모든 프로그램"-"openvpn"-"openvpn configuration file directory"를 클릭하여 그곳에 옴겨 놓는다.

·“시작”-"모든 프로그램"-"openvpn"-"openvpn sample configuration Files"를 클릭하여 client.ovpn(client)파일을 "시작"-"모든 프로그램"-"openvpn"-"openvpn configuration file directory"에 옴겨놓는다.

·client.ovpn(client)파일을 열어 remote 어쩌고저쩌고 되있는 부분을 remote <서버IP> <포트>로 적어준다. (예 remote 192.168.0.1 1194)

TAP 은 이더넷 디바이스(2계층)로 작동하고, TUN (TUNnel)은 IP계층(3계층) 디바이스로 작동한다.

TAP 은 네트워크 브리지를 생성하는데 사용할 수 있고, TUN 은 라우팅에 사용할 수 있다.

'OPS > LInux' 카테고리의 다른 글

LVM  (0) 2015.04.26
NIS  (0) 2015.04.26
NFS  (0) 2015.04.26
squid  (0) 2015.04.26
Iptables  (0) 2015.04.21
Posted by 배주혁
이전버튼 1 ··· 4 5 6 7 8 이전버튼