리눅스 삼바 smb.conf 파일 설정하기
 
# 이 파일은 삼바의 주요 설정 파일입니다.  앞으로 나오는 옵션들을 이해하기 위해
# 서는 smb.conf(5) 맨 페이지를 꼼꼼히 읽어 보시기 바랍니다. 삼바에는 방대한 양
# 의 설정 옵션이 있지만(어떻게 보면 너무 많다고 생각하실 수 있습니다), 다음 예
# 에서는 보여지지 않는 것들이 많습니다.
#
# ; (세미 콜론) 또는 # (해쉬) 로 시작하는 줄은 모두 주석이며 무시합니다.  다음
# 예에서는 주석에 대하여 # 를 사용하며 여러분이 작동시기킬 원할 지 모르는 옵션
# 에 대해서는 ; 문자로 구별하여 처리하였습니다.
#
# 주의: 설정 파일을 수정하고 나서는 기본적인 문법 오류 여부를 검사하기 위해
# "testparm" 명령을 실행해보십시오.
#
# 작성 : 김 정 균 <http://www.oops.org>
#
# 오역을 발견하시거나 추천할 사항이 있으시면 위의 주소로 연락을 주십시오.
# 그 이외의 일반적인 질문에 대해서는 답변하지 않습니다.

# 내부변수
# - %u : Samba에 접속한 사용자의 이름
# - %U : Samba에 접근할 때 사용한 사용자 이름
# - %g : %u 이름을 가진 사용자의 그룹
# - %G : %U 이름을 가진 사용자의 그룹
# - %h : Samba가 실행되는 호스트 이름
# - %H : %U 이름을 가진 사용자의 홈 디렉토리
# - %L : Samba 서버의 NetBIOS 이름
# - %m : 클라이언트 컴퓨터의 NetBIOS 이름
# - %M : 클라이언트 컴퓨터의 호스트 이름
# - %v : Samba 버전 번호
#
#============================    전체 설정    ============================
[global]
# workgroup = NT 도메인 이름 또는 워크그룹 이름
   workgroup = WORKGROUP
# 나의 정의
   hide dot files = yes
   veto files = /.?*/
   netbios name = netbios
;  netbios aliases = nemesis
   dont descend = /proc,/dev
;  time server = true
;  sync always = yes
# server string은 NT 설명 필드와 같은 것입니다.
   server string = Linux Samba Server
# 언어 설정 :
# dos charset 은 Windows Machine 의 언어셋을 설정합니다. 보통 NT SP4 이상의 윈
# 도우즈는 UTF-8 로 지정하시면 됩니다. unix charset 은 삼바 머쉰의 언어셋을 지
# 정합니다. RH 9 부터는 UTF-8 을 사용하며, 이 이전은 보통 EUC-KR 을 사용합니다.
   dos charset = UTF-8
   unix charset = EUC-KR
# 이 옵션은 보안과 관련하여 중요한 것입니다. 이 옵션을 통해 여러분의 근거리 네
# 트웍에 있는 호스트에게만 접근을 허용할 수 있습니다.  다음 예는 2 개의 C 클래
# 스 네트웍과 "loopback" 인터페이스에 대해서만 접근을 허용하고 있습니다.  문법
# 예 # 는 smb.conf 맨페이지를 참고하시기 바랍니다.
  hosts allow = 210.224.127. 127.
# 프린터 설정을 개별적으로 하지않고 자동으로 프린터 목록을 포함시키길 원한다면
# 다음 옵션을 사용합니다.
# printcap 에서 정의한 프린터목록이 자동으로 등록됩니다. load printers = no 이
# 면 하나하나 정해주셔야 합니다.
   load printers = no
# printcap 파일의 위치를 새롭게 지정하고 싶을 때 사용하십시오.
   printcap name = /etc/printcap
# SystemV 시스템에서는 printcap name 을 lpstat 으로 해주면 SystemV 스풀 시스템
# 으로부터 프린터 목록을 자동으로 얻게 해줍니다.
;  printcap name = lpstat
# 여러분의 프린팅 시스템이 표준에서 벗어난 것이 아니라면 다음 옵션의 주석을 풀
# 필요가 없습니다.  현재 지원하고 있는 프린트 시스템은  bsd, sysv, plp, lprng,
# aix, hpux, qnx 등입니다.
;  printing = cups
# This option tells cups that the data has already been rasterized
;  cups options = raw
# 손님 사용자를 허가하고 싶을 때는 다음 행의 주석을 풀어줍니다. nobody 가 아닌
# 경우에는 /etc/passwd 항목에 설정한 손님 사용자 계정을 추가 해야 합니다.
# useradd 명령으로 사용자를 만드십시오.
;  guest account = nobody
# 다음은 삼바로 하여금 자신에 접속하는 호스트 별로 개별적인 기록 파일을 만들도
# 록 지시합니다. "/var/log/samba/접근호스트이름.log"과 같은 파일명을 가집니다.
# %m 은 삼바 설정에서 사용되는 특수한 변수입니다.
   log file = /var/log/samba/%m.log
# 한라인으로 모든 정보를 로깅 하려면 아래와 같이 설정 합니다.
;  log file = /var/log/samba/smbd.log
# 로그 파일 크기의 상한선을 Kb 단위로 설정합니다.
   max log size = 50
# 보안 모드입니다. 대부분의 사람들에겐 user 레벨의 보안이 맞습니다.  자세한 내
# 용은 security_level.txt 문서를 참고하십시오.
#
# 참고로 user 는 유닉스 계정이름/패스워드 방식의 보안 등급이며 share 는 워크그
# 룹 포 윈도우즈(WfW)와 윈도95의 기본 모드입니다. server 의 경우에는 인증을 위
# 해 NT 서버가 필요합니다.
# 삼바의 보안모델
# - share : 인증절차 필요 없음
# - user : 리눅스 삼바서버에서 인증이 필요
# - server : NT서버
# - domain : PDC(Primary Domain Controller) 
   security = user
# security = server 또는, security = domain 인 경우에만 패스워드 서버를 설정합
# 니다.
;  password server = <NT-Server-Name>
# 패스워드 레벨에서는 대/소문자 모든 조합에 대하여 _n_ 개의 문자로 이뤄진 패스
# 워드를 사용하도록 합니다.
;  password level = 8
;  username level = 8
#
# !!!!!!!! 윈도우즈 98/윈도우즈 NT 4 (SP3) 클라이언트 !!!!!!!!!
#
# 패스워드 암호화를 사용하고 싶을 때가 있습니다.  삼바 문서 중 ENCRYPTION.txt,
# Win95.txt, WinNT.txt 를 꼭 읽어보시기 바랍니다. 이 문서를 착실히 읽지않은 상
# 태에서 다음 옵션을 설정하지 마십시오.  윈도우즈 NT 4.0 서비스 팩 3 번 이상인
# 시스템에서는 패스워드 암호화가 필요합니다.  그렇지 않으면 삼바 서버에 접속조
# 차 할 수 없습니다.
#
# smbpaswd 의 사용법이 samba 3 에서 변경이 되었습니다. 기존의 smbpasswd 나, 새
# 로 smbpasswd 를 작성 하셨다면, "smbpasswd -e 유저명" 으로 해당 유저를 활성화
# 해 주셔야 접속이 가능합니다.
   encrypt passwords = yes
   smb passwd file = /etc/samba/smbpasswd
# 관련 명령으로는 smbadduser, smbpasswd가 있습니다.
# 다음 설정은 윈도우즈에서 패스워드를 바꿀 때, 리눅스 시스템의 패스워드도 자동
# 으로 갱신되도록 하고 싶을 때 사용한다.
# 주의 사항 : 위에 있는 'encrypt passwords', 'smb passwd file'과 같이 사용해야
#             한다!!!
# 주의 사항2: 워크스테이션으로부터 암호화된 SMB 패스워드만 변경할 수 있도록 할
#             때에는 필요없는 사항이다.  유닉스 패스워드와 SMB 패스워드가 항상
#             동일한 상태를 유지하도록 할 때에만 필요하다!
;  unix password sync = Yes
;  passwd program = /usr/bin/passwd %u
;  passwd chat = *New*UNIX*password* %nn *ReType*new*UNIX*password* %nn *passwd:*all*authentication*tokens*updated*successfully*
# 유닉스 사용자 이름과 SMB 사용자 이름이 달라, 둘 간의 연관 테이블을 필요할 때
# 사용합니다.
  username map = /etc/samba/smbusers
# 다음 옵션은 접속하는 각 머신마다 서로 다른 설정을 원할 때 사용합니다. 여기서
# %m 은 접속하는 호스트의 NetBIOS 이름으로 대체됩니다.
;  include = /etc/samba/smb.conf.%m
# 대부분의 경우 다음 옵션을 주면 성능 향상 효과를 볼 수 있습니다.  자세한 사항
# 은 speed.txt 와 맨 페이지를 참고하십시오.
   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
# 삼바가 여러 개의 인터페이스를 사용하도록 설정합니다. 여러 개의 네트웍 인터페
# 이스를 가지고 있다면 그 인터페이스들을 모두 나열 하십시오.  자세한 사항은 맨
# 페이지를 참고하십시오.
# 다음 예는 삼바 서버가 192.168.12.2, 192.168.13.2 이렇게 두개의 주소를 가지고
# 있고 24비트 즉 넷매스크 255.255.255.0 를 사용하여 192.168.12.0, 192.168.13.0
# 네트웍의 호스트에 대해서 받아들입니다.
;  interfaces = 192.168.12.2/24 192.168.13.2/24
# 원격 브라우즈 목록과의 동기화에 관한 설정입니다.
#  공표 요청을 하거나 또는 브라우즈 목록 동기화해 줄 대상:
#       특정 호스트 또는 전체 서브넷을 지정할 수 있습니다. (아래 참고)
;  remote browse sync = 192.168.3.25 192.168.5.255
# 지역적인 서브넷에 자기 자신을 공표하도록 설정합니다.  윈도우즈 네트워크 환경
# 에서 삼바 서버가 잘 보이도록 할 때 유용합니다.
  remote announce = 210.125.115.
# 브라우져 제어 옵션:
# 삼바가 네트웍에 대한 매스터가 되길 바라지 않으면 local master 설정을 no로 하
# 십시오. 그렇지 않은 경우에는 일반적인 선거 규칙을 따릅니다.
;  local master = no
# OS 레벨은 매스터 브라우져 선거 과정에서 서버의 우선권을 결정합니다. 기본값이
# 적절합니다.  따라서 특별히 바꿀 이유가 없습니다.
;  os level = 33
# domain master 는 삼바로 하요금 도메인 매스터 브라우져가 되도록 해줍니다.  삼
# 바는 서브넷들로부터 브라우즈 목록을 모으는 작업을 하게됩니다. 이미 이 기능을
# 담당하고 있는 윈도우즈 NT 도메인 컨트롤러가 존재한다면, 이것을 사용해서는 안
# 됩니다.
;  domain master = yes
# preferred master 옵션을 켜두면 시동할 때, 지역 브라우져 선거를 하도록 만들고
# 선거에서 이길 수 있는 좀 더 높은 기회를 부여받습니다.
;  preferred master = yes
# 설치할 때 주 도메인 컨트롤러로 설정된 NT 서버가 존재할 때만 사용합니다.
;  domain controller = <NT 도메인 컨트롤러 SMB 이름>
# 삼바가 윈도우즈 95 워크스테이션에 대한 도메인 로그온 서버 역할을 하길 원하는
# 경우 켜둡니다.
;  domain logons = yes
# 도메인 로그온을 선택했고, 각 머신 별로 또는 각 사용자 별로 로그온 스크립트를
# 구분하여 특정 배치 파일을 작동시키길 원하는 경우 사용합니다.
;  logon script-x = %m.bat
# 사용자 이름에 의거하여 서로 다른 로그온 배치 파일을 실행시킬 때
;  logon script-x = %U.bat
# 로우빙 프로파일(roving profile)을 어디에 저장할 것인가?
#        (Win95와 WinNT에만 해당됩니다.)
#        %L 은 서버의 NetBIOS 이름으로, %U 는 사용자 이름으로 대체됩니다. 뒤에
#        나오는 [Profiles] 공유에 있는 주석을 풀어주는 것을 잊지 않도록 하십시
#        오.
;  logon path = \%LProfiles%U
# 모든 NetBIOS 이름은 IP 주소로 변환이 되어져야 한다.
# 'Nmae Resove Order' 는 "host lmhosts wins bcast" 를  기본 순서로 가지는 이름
# 변환 매커니즘을 설정할 수 있도록 한다. "host" 는 /etc/hosts 또는
# /etc/hosts.config, /etc/nsswitch.conf 또는, /etc/resolv.conf 파일에 설정되어
# 있는 것을 기본으로 사용하는 DNS 또는, NIS 의 의존하는 gethostbyname() 함수를
# 호출하는 것을 의미한다. 그 결과 "host" 는 시스템 설정에 종속적이게 된다.  이
# 파라미터는 보통, NetBIOS 이름을 IP 주소로 변환하기 위하여 DNS lookup 을 하는
# 것을 방지 하기 위하여 사용을 하며, 사용시 주의해야 한다.
;  name resolve order = wins lmhosts bcast
# 윈도우즈 인터넷 네임 서비스 WINS 지원 섹션:
# 주의: /etc/samba/lmhosts를 만들어 마치 /etc/hosts와 같이 적습니다.
# 예)
# 192.168.0.1   hamster
;  wins support = yes
# WINS 서버 - 삼바의 NMBD 로 하여금 WINS 클라이언트가 되도록 합니다.
# 주의 : 삼바는 WINS 서버 또는 클라이언트 중 하나만 될 수 있다.
;  wins server = w.x.y.z
# WINS 프록시 - 삼바로 하여금 WINS 기능을 갖추지 못한 클라이언트를 대신하여 이
# 름에 해당하는 주소 찾기 질문을 대신 답하도록 합니다. 이를 위해서는 네트웍 상
# 에 적어 한 개 이상의 WINS 서버가 있어야 합니다. 기본값은 NO
;  wins proxy = yes
# DNS 프록시 - 삼바로 하여금 DNS nslookup 을 사용하여 NetBIOS 이름을 찾을 것인
# 지 아닌지 지시합니다. 1.9.17 버전에서는 내부 기본값이 yes 였으나 1.9.18 버전
# 에서는 no 로 변경되었습니다.
   dns proxy = no
# 대소문자 보존이 필요할 때가 있습니다. 시스템 기본값은 NO 입니다.
# 주의: 각 공유별로 설정할 수 있습니다. 한글을 보기 위해서는 구별해야 합니다.
   preserve case = yes
   short preserve case = yes
# 도스 파일에 대한 기본 문자는 대문자입니다.
;  default case = lower
# 대소문자 구별은 주의를 요합니다. - 문제를 일으킬 수도 있습니다!
;  case sensitive = no
#
# 기타 설정
#
# LEVEL2 OPLOCKS
# --------------
#
# 레벨2 OPLOCK 은 SHARE 별로 설정 가능합니다. 주로 읽기만 하는 공유 디렉토리에
# 적용하면 읽기 속도를 크게 증진할 수 있습니다. 예를 들어 실행 파일 .EXE 만 잔
# 뜩 들어 있는 디렉토리를 공유시키는 경우에 좋습니다.
#
;  level2 oplocks = true
#==========================     공유  정의    ============================
# 섹션 정의
# - [global] : 다른 세션에 적용되는 파라미터를 정의
# - [homes] : 리눅스 홈 디렉토리 접근 설정
# - [printers] : 프린터 접근 설정

[homes]
   comment = 홈 디렉토리
   browseable = no
   writable = yes
;  create mode = 0750
;  invalid users = root
# 도메인 로그온을 위한 netlogin 디렉토리를 만들고 주석 해제합니다. 물론 도메인
# 로그온 기능을 지원할 때만 필요합니다.
; [netlogon]
;  comment = 네트워크 로그온 서비스
;  path = /home/netlogon
;  guest ok = yes
;  writable = no
;  share modes = no

# 특정한 로우빙 프로파일(roving profile) 공유를 제공하고자 한다면, 다음의 주석
# 을 풀어주십시오. 기본값은 사용자의 홈 디렉토리입니다.
;[Profiles]
;  path = /home/profiles
;  browseable = no
;  guest ok = yes

# 주의: BSD 스타일의 프린트 시스템 (현재 대부분의 리눅스 시스템이 그러함) 이라
# 면 각각의 프린터를 정의해 줄 필요 없이 자동으로 이뤄집니다.
[printers]
   comment = 모든 프린터
   path = /var/spool/samba
   browseable = no
# guest ok = yes 라고 하면 'guest account' 로 지정한 사용자들이 프린팅을 할 수
# 있습니다.  public = yes 도 같은 표현입니다.
   guest ok = yes
   writable = no
   printable = yes
# 다음은 사람들이 파일을 공유할 수 있도록 할 때 유용합니다.
# 주의: /tmp 는 시스템의 임시 작업 공간이므로, /var/tmp 와 같은 곳에 커다란 파
#       티션을 마운트하고 그곳을 사용하도록 하는 것이 좋습니다.
# 지금부터는 임의로 정의 가능한 공유 설정의 예입니다.  다음 설정들을 보면서 여
# 러분이 원하는 공유를 정의해보시기 바랍니다.
;[tmp]
;  comment = 임시 파일 공간
;  path = /tmp
;  read only = no
;  public = yes
# 공개적으로 접근 가능한 디렉토리이지만 읽기만 가능하고 "staff" 그룹에 속한 사
# 용자들만이 쓰기를 할 수 있는 설정의 예입니다.
;[public]
;  comment = Public Stuff
;  path = /home/samba
;  public = yes
;  read only = yes
;  write list = @staff

# 기타 다른 예.
# 조금은 특정 용도에 맞는 상세한 설정 예입니다.
#
# fred 라는 사용자만 이용할 수 있는 개인적인 프린터 설정.  스풀 자료는 fred 의
# 홈 디렉토리에 씌여집니다.  fred 는 지정한 스풀 디렉토리에 쓰기 권한을 가지고
# 있는 상태여야 합니다.
;[fredsprn]
;  comment = Fred 전용 프린터
;  valid users = fred
;  path = /homes/fred
;  printer = freds_printer
;  public = no
;  writable = no
;  printable = yes
# fread 만이 이용할 수 있는 개인적인 디렉토리 설정입니다.
# 디렉토리에 대하여 fred 의 쓰기 권한이 있는 상태여야 합니다.
;[fredsdir]
;  comment = Fred 개인 서비스
;  path = /usr/somewhere/private
;  valid users = fred
;  public = no
;  writable = yes
;  printable = no
# 접속하는 머신에 따라 서로다른 디렉토리를 제공하는 서비스의 좋은 예입니다. 이
# 렇게 함으로써 접속 머신에 따라 실제 설정 내용이 달라지는 효과를 얻을 수 있습
# 니다.  사용자 이름으로 구별하려면 %u 옵션을 대신 사용하면 됩니다. %m 은 접속
# 하는 머신의 이름으로 치환됩니다.
;[pchome]
;  comment = PC 디렉토리
;  path = /usr/pc/%m
;  public = no
;  writable = yes
# 모든 사용자가 읽고 쓸수 있는 공개 접근 디렉토리의 예입니다. 생성되는 모든 파
# 일은 기본 사용자의 소유가 되므로, 다른 사용자가 여러분이 만든 파일을 지울 수
# 있습니다. 당연히 주어진 디렉토리에 대하여 기본 사용자가 쓰기권한을 가지고 있
# 어야 합니다. 다른 사용자를 명시하면 기본 사용자가 아닌 그 사용자의 소유가 됩
# 니다.
;[public]
;  path = /usr/somewhere/else/public
;  public = yes
;  only guest = yes
;  writable = yes
;  printable = no
# 다음 항목은  두 사용자가 어떻게 한 디렉토리를 공유하여 사용하게 할 수 있는지
# 예시하고 있습니다. 이 설정이 제대로 작동하려면,  디렉토리는 두 사용자에 의해
# 쓰기 가능해야 하며 스틱키 (sticky) 비트를 설정하여 서로의 파일에 대하여 악의
# 적인 행동을 취할 수 없도록 해줘야 합니다.  이런 방법으로 여러 사용자가 한 디
# 렉토리를 안전하게 공유하도록 확장할 수 있습니다.
;[myshare]
;  comment =  Mary와 Fred의 것
;  path = /usr/somewhere/shared
;  valid users = mary fred
;  public = no
;  writable = yes
;  printable = no
;  create mask = 0765
;[www]
;  comment = 웹 페이지 디렉토리
;  path = /home/httpd/html
;  read only = no

+ Recent posts