Unix/CentOS

Storage Server - 파트1: 삼바

ForceCore 2006. 8. 25. 11:18

싸게 2.4TB의 저장공간을 구축하기 위해

컴퓨터 2대에 각각 4개의 300GB 하드를 달았다.

(CD롬까지 뜯어내고 달았다 -_-)

1인당 1GB의 저장공간을 주고,

윈도우 AD클라이언트로 로그인 하면 저장서버에서

삼바를 이용해 홈디렉토리를 Z드라이브로 마운트,

유닉스에 Shell로 로그인 하면 저장서버의

홈디렉토리를 NFS로 마운트하게 할 예정임.

 

저장서버는 당연히 리눅스로 구축될 예정임.

이유1: 윈 2003도 NFS서버가 될 수 있기는 하다 (-_-) 권한 설정이 개판일 것 같지만.

이유2: 윈 2003은 비싸다. CentOS는 배포되고 있다.

 

네트워크에는 다음 서버들이 있을 예정.

1. AD 서버

2. 유닉스 서버

3. 사용자의 홈계정 저장 서버: 삼바, NFS, FTP 서버, 제한된 SSH만 있으면 충분.

4. 프린터 서버

 

저장서버를 구축하는데 애로사항이 있었다.

도대체 자신의 홈디렉토리를 유저별로 공유시키려면

AD계정을 삼바에 어떻게 인식시켜야 하는건가?

http://acd.ucar.edu/~fredrick/linux/samba3/

http://www.informit.com/articles/article.asp?p=169560&seqNum=3&rl=1

http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/domain-member.html

 

답은 ADS Security Level이라 이거지 -_-? 음...

Samba ADS Domain Membership 부분을 따라함.

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

smb.conf파일 (필자의 설정을 컨트롤C컨트롤V)

[global]
# file name handling
preserve case = yes
short preserve case = yes
unix charset = UTF8
code system = UTF8
display charset = UTF8
client code page= UTF8
dos code page = cp949

realm = DOMAIN.XXX.AC.KR
security = ADS
encrypt passwords = yes
wins server = AD서버IP주소(AD서버는 WINS서버이기도함)
workgroup = DOMAIN
password server = AD서버IP주소

 

# user homdirs

[homes]
   comment = home of %U
   browseable = no
   writable = yes
   create mask = 0600

   directory maks = 0700

 

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

krb5.conf도 수정해야 유저 인증이 가능하다. (핵심만 뽑음..._

[libdefaults]
 default_realm = YOUR.KERBEROS.REALM

[realms]
 YOUR.KERBEROS.REALM = {
 kdc = your.kerberos.server
 }

[domain_realms]
 .kerberos.server = YOUR.KERBEROS.REALM

 kerberos.server = YOUR.KERBOROS.REALM

 

이게 최소 설정이다 -_-; 저렇게만 수정하면 동작은 한다.

Kerberos 설정을 테스트하고 싶다면

kinitUSERNAME@REALM

으로 AD도메인상의 일반유저 티켓을 따보는 테스트를 하면 된다.

 

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

성공했다면 컴퓨터를 AD상에 등록.

(앗... 성공했다면이 아니라, 이 작업을 해야지 성공한다 -_-)

# net ads join -U Administrator%password

AD에 컴퓨터를 가입시킬 수 있는 권한의 ID와 비번을 사용하면 됨.

Administrator ID를 직접 쓰기 무엇하다면 AD상 권한이 있는

유저를 새로 만들고 작업하면 된다.

AD에 확인하면 컴퓨터란에 저장서버가 생겨있을 것이다.

 

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

Test1

AD멤버가 아닌 컴퓨터에서 접속: 권한이 없다고 할 것임.

(..? 며칠 뒤 해보니 된다? 뭐가 달라진거지;;;)

 

Test2

AD의 멤버인 컴퓨터에서 접속: AD의 ID를 치면 자신의 홈으로 된 디렉토리 내용을 볼 수 있다.

 

Note:

PAM모듈에서 AD유저가 데이터 서버로 SSH로그인 할 수 없도록 LDAP 관련 모듈은 코멘트처리함. 필요하다면 FTP는 되게 할 순 있겠다.