강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

Samba Server 운영하기

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문


||| 6. 삼바서버(Samba) 운영하기 |||
 

삼바서버(Samba Server)
 


1. 삼바서버는 당채 무엇이란 말이냐?

파일서버라고도 하는데 서버의 특정공간(/home 아래의 계정홈디렉토리라든지 등등)을 같은
네트워크상에 있는 PC(Windows, Linux Server 등) 혹은 서버들에게 공유할수있도록 해주기위한
서버이다.
리눅스에서는 이런 파일서버역할이라 하면 아무생각없이 삼바를 떠올릴정도로 대중화 된 넘이다.
삼바서버에서는 설치후 프로세스확인할때 smbd, nmbd 두 녀석이 삼바 대몬들이다.

자 삼바서버는 같은 네트워크에서 특정자료를 같이 혹은 특정개인이 쓰기위해서 공유설정을
해놓은 서버라고 생각하고 설치에 들어간다.
설치및 확인 그리고 간단하게 아무나 볼수있는 설정과 특정계정만이 ID, PASS 를 사용해 들어가는
설정을 해보자.





2. 삼바를 우찌 확인하고, 설치하는가?


항상설치 전에 하는 것 삼바가 설치가 되어있는지 아래와 같이 알아본다.

pstree (현제 떠있는 프로세스들 보기)
nmbd
smbd
위의 두 데몬이 떠있으면 삼바서버가 설치가 되어있으면서 지금 서비스 되고있다는
것을 의미 한다. 없더라도 데몬을 안띄워서 안보이는 것일수도 있으니
/etc/rc.d/init.d/smb start 로 삼바를 실행해보면 알수가있다.

더 확실한 방법은 rpm -qa | grep samba 로 직접 rpm이 설치되었는지도 쿼리할수있다.
정상적으로 설치된곳에서 이 명령어를 쳐보니 아래와같이 나옵을 알수있다.

[root@SambaServer ~]# rpm -qa | grep samba
samba-common-3.0.10-1.4E.2
samba-swat-3.0.10-1.4E.2
samba-3.0.10-1.4E.2
samba-client-3.0.10-1.4E.2

필자는 SULinux 1.0 으로 지금 테스트하고 있는데 풀페키지로 설치하였기때문에
이미설치가 다 되어있다. 그래서 설치가 안되어있는 Fedora Core 2 에서 삼바를
패키지로 설치하는 것을 해보도록 한다.

netstat -anp | grep LISTEN (현제 리슨, 즉 대기하고 있는 서비스들 보기)
[root@SambaServer ~]# netstat -anp | grep LISTEN
생략 ... ...
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 1933/smbd
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 1933/smbd
생략 ... ...

위처럼 139와 445 의 삼바서버의 사용포트가 리슨하고 있음으로 확인할수있다.


자 ... 설치는 아주 간단하다. 위에서 4가지의 패키지가 검출된것처럼 자신의 OS의
맞는 삼바서버 rpm을 다운받아 동시에 rpm으로 설치하면 된다.
위에서 말한데로 Fedora Core 2 에서 하면 아래와같이 설치, 확인 할 수있다.


여기서부터는 필자가 삼바가 설치되지않은 (Fedora Core2) 서버에서 작업하는 것이다.
필요한 rpm 4개.
samba-3.0.3-5.i386.rpm -----------> 삼바서버페키지
samba-client-3.0.3-5.i386.rpm -----> 삼바클라이언트 패키지
samba-common-3.0.3-5.i386.rpm ---> 삼바 서버와 클라이언트모두 사용하는 페키지
samba-swat-3.0.3-5.i386.rpm
------> 삼바서버 웹관리 페키지

[root@su202 root]# rpm -qa | grep samba
[root@su202 root]# <--------------------------samba 패키지가 설치않되어있음을 확인
[root@su202 root]# wget http://firewolf.co.kr/download/linux/FC2/samba-3.0.3-5.i386.rpm
[root@su202 root]# wget http://firewolf.co.kr/download/linux/FC2/samba-client-3.0.3-5.i386.rpm
[root@su202 root]# wget http://firewolf.co.kr/download/linux/FC2/samba-common-3.0.3-5.i386.rpm
[root@su202 root]# wget http://firewolf.co.kr/download/linux/FC2/samba-swat-3.0.3-5.i386.rpm

[root@su202 root]#
[root@su202 root]# ll
-rw-r--r-- 1 root root 14954854 7¿u 13 14:46 samba-3.0.3-5.i386.rpm
-rw-r--r-- 1 root root 3479150 7¿u 13 14:47 samba-client-3.0.3-5.i386.rpm
-rw-r--r-- 1 root root 4314742 7¿u 13 14:48 samba-common-3.0.3-5.i386.rpm
-rw-r--r-- 1 root root 4427992 7¿u 13 14:50 samba-swat-3.0.3-5.i386.rpm

자 위와같이 다운로드를 다 받았으면 아래와 같이 통들어 한번에 설치한다.

[root@su202 root]# rpm -ivh samba*

이렇게 하면 특별히 의존성오류가 나지 않는한 쭉 설치가 된다.
의존성오류란 설치시 필요한 라이브러리나, 이전에 설치되었다가 지웠다거나 워낙 서버들의
환경이 다양하므로 의존성 오류가 날수도있으니 그럴때는 그 에러메세지를
필자의 메일로 보내주면 처리 방법을 올리도록 할것이다.

자 역시나 아래와 같이 라이브러라가 없다면서 설치가 않된다.
이럴때는 흥분하지말고 필요하다고 하는 libcups.so.2 놈을 설치해주면 된다.
[root@su202 root]# rpm -ivh samba*
°æ°i: samba-3.0.3-5.i386.rpm: V3 DSA signature: NOKEY, key ID 4f2a6fd2
¿A·u: Failed dependencies:
libcups.so.2 is needed by samba-3.0.3-5
libcups.so.2 is needed by samba-common-3.0.3-5
libcups.so.2 is needed by samba-swat-3.0.3-5

[root@su202 root]# wget http://ftp.superuser.co.kr/pub/fedora/core2/update/cups-libs-1.1.20-11.11.i386.rpm
[root@su202 root]# rpm -Uvh cups-libs-1.1.20-11.11.i386.rpm
°æ°i: cups-libs-1.1.20-11.11.i386.rpm: V3 DSA signature: NOKEY, key ID 4f2a6fd2
Aغn Aß... ########################################### [100%]
1:cups-libs ########################################### [100%]

이렇게 요구사항을 충족시켜주고 다시 해보자

[root@su202 root]# rpm -ivh samba*
°æ°i: samba-3.0.3-5.i386.rpm: V3 DSA signature: NOKEY, key ID 4f2a6fd2
Aغn Aß... ########################################### [100%]
1:samba-common ########################################### [ 25%]
2:samba ########################################### [ 50%]
3:samba-client ########################################### [ 75%]
4:samba-swat ########################################### [100%]

자 이와같이 설치가 잘 되는것을 확인할수있다.

그럼 위에서 설치가 되었는지 확인하는 방법을 소개하였다.
다시한번 설치가 잘 되었는지 확인해보자.

/etc/rc.d/init.d/smb start 로 실행을 하고
pstreenetstat -anp | grep LISTEN 명령어로 확인해본다.





3. 기본적인 삼바서버 셋팅하기

설정이라해봤자 별거 없다. 여타 서비스처럼 [global]설정부분개별사용자설정부분 두 개로
구분한다면 할수있다. 글로벌설정이 중복되는게 있으면 개별사용자설정이 우선한는점을 알고
먼저 가장기본적으로 삼바를 사용하기위해 요고만 딱 해부면 된다는 설정을 먼저 하고
옵션적인 설정은 그 뒤에 보자. 먼저 결과를 봐야 감이 쏴~아 오기때문이다.

뭘설정해야 가장 기본적으로 내피씨에서 삼바서버로 바로 접속해서 파일을 쓰고 읽고 할수있을까?
이렇게만 하면 된다.

자 먼저 공간이 있어야 한다.
보통 public 로 많이 쓰므로 적당한 위치에 디렉토리를 만들고 그에 대해 설정파일을 열어
초간단 설정을 하고 바로 PC에서 접속해 봅시다.

cd /home
mkdir samba
cd samba
mkdir public
chmod 777 public

vi /etc/samba/smb.conf <----- 삼바설정파일 입니다.

생략 ... ...

[global]

# 언어셋 서포트 부분 그냥 아래 3줄 적어준다.
unix charset = cp949
dos charset = cp949
display charset = cp949


#윈도우의 workgroup 와 같게 맞추어야 윈도우에서 인식함
workgroup = MYGROUP

#윈도우에서 네트워크환경을 클릭했을이 이 삼바서버의 이름
server string = Samba Server

#요거는 다른 호스트(다른네트워크 즉 워크그룹이 다를때) 허용할 호스트를
#지정하는 부분이지만 설정해도 실제 외부에서는 잘 접속이 안된다.
#우리나라 통신사에서 해당포트를 오픈하고 있지 않기때문이다.
hosts allow = 192.168.0. 192.168.1. 이렇게 한다.

#이것을 꼭 User 라고 되어있는것을 share 로 바꾼다.
#특정공간을 사용자인증을 받게 하고싶으면 세부설정에서 옵션을 user 로
#해버리면 위에서 세부설정이 우선한다고 했기때문에 user 로 사용자인증으로
#접근할수있다.
security = share


생략 ... ...


젤 아래부분으로 이동하여 .. ^^ ; 다음을 입력한다. (주석은 빼고 ㅋㅋ 굵은 글씨만 적어본다.)

[public]

      comment = 누구나접근가능한 디렉토리
      path = /home/samba/public <------- 위에서우리가 미리 만들어 두었죠!?
       #valid users = testuser1 <--------------- user인증일때 인증사용자정의 여기선필요없음
      read only = no <---------------------- 여길 단순히 읽기만 되도록 하겠느냐?
     writable = yes <----------------------- 여기에 쓰기를 허용하겠느냐?
      security = share <-------------------- 보안보드 설정 share(다오픈), user(윈도우와같은 ID)
      public = yes <------------------------ 공동사용디렉토리로 할것이냐?
      create mask = 0755 <-------------------- 파일이나 디렉토리생성시 퍼미션값


이걸로써 초 간단 삼바서버 만든후 모두 공유해서 쓸수있는 public 방을 만든샘이다.

셋팅한것을 적용하기 위해서 삼바 restart 를 한다. ( /etc/rc.d/init.d/smb restart )

실제 위와같이 했을때 접속되는 결과화면을 보자.




4. 삼바서버를 실제적으로 활용하는 예시

samba01.JPG



기본 서버스에 관해서는 강좌를 다 만들어 보았습니다.
한 달에 하나씩 만들어야 했기때문에 좀더 쉽고 체계적으로
전달을 못드렸을수도 있는데 앞으로의 강좌는 짧고 굵은 것들로
올려볼까 합니다.


 
 
 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  99 명