2009年8月16日 星期日

Samba 設定檔

底下是我個人目前使用 Samba 的設定檔狀況,唉,年紀大了,常會忘東忘西的,還是把它記下來,免得哪天機器出狀況了,還得要重新想怎麼設定,噗~
使用 RedHat 8 自帶的 Samba RPM 包安裝的 Samba,它的設定檔路徑為 /etc/samba/smb.conf
#======= 主機整體參數設定 =======

#global 區段為主機整體參數設定部份
[global]

#設定工作群組的名稱
workgroup = MSHOME

#這個字串會出現在網路芳鄰中對這台機器的描述
server string = Samba Server

#設定允許存取 Samba 的網域
;hosts allow = 192.168.1. 192.168.2. 127.
host allow = 192.168.1.

printcap name = /etc/printcap
load printers = yes

printing = lprng

;guest account = pcguest

log file = /var/log/samba/%m.log

max log size = 0

#設定 Samba 的登入機制,共有四種,分別為 user,share,server(domain)
#詳細說明在 /usr/share/doc/samba-2.2.5/docs/textdocs 目錄下
#user 模式表示使用 Samba 本身的密碼資料庫
security = user

;password server = 

;password level = 8
;username level = 8

encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd

;ssl CA certFile = /usr/share/ssl/certs/ca-bundle.crt

unix password sync = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *New*password* %n\n *Retype*new*password* %n\n *passwd:*all*authentication*tokens*updated*successfully*

pam password change = yes

;username map = /etc/samba/smbusers

;include = /etc/samba/smb.conf.%m

obey pam restrictions = yes

socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

;interfaces = 192.168.12.2/24 192.168.13.2/24

;remote browse sync = 192.168.3.25 192.168.5.255
;remote announce = 192.168.1.255 192.168.2.44

;local master = no

;os level = 33

;domain master = yes

;preferred master = yes

 
;domain logons = yes

;logon script = %m.bat
;logon script = %U.bat

;logon path = file://%25l/Profiles/%25U;wins support = yes

;wins server = w.x.y.z

;wins proxy = yes

dns proxy = no

;preserve case = no
;short preserve case = no
;default case = lower
;case sensitive = no

#======= 分享目錄定義 =======
#Samba 的使用者必須在 Linux 上擁有實際帳號,登入後會自動將家目錄設為分享目錄
[homes]
   comment = Home Directories
   browseable = no
   writable = yes
   valid users = %S
   create mode = 0664
   directory mode = 0775
;map to guest = bad user

#將網站文件根目錄分享給網頁製作者
[Apache2]
  comment = Apache2 web root
  writable = yes
  valid users = kalvin
  create mode=0664
  directory mode = 0755
  path = /usr/local/apache2/htdocs

#將Red5文件目錄分享給Red5管理者
[Red5]
  comment = Red5 Webapps root
  writable = yes
  valid users = kalvin
  create mode=0664
  directory mode = 0755
  path= /opt/red5/

; [netlogon]
;   comment = Network Logon Service
;   path = /usr/local/samba/lib/netlogon
;   guest ok = yes
;   writable = no
;   share modes = no


;[Profiles]
;    path = /usr/local/samba/profiles
;    browseable = no
;    guest ok = yes


[printers]
   comment = All Printers
   path = /var/spool/samba
   browseable = no
# Set public = yes to allow user 'guest account' to print
   guest ok = no
   writable = no
   printable = yes

;[tmp]
;   comment = Temporary file space
;   path = /tmp
;   read only = no
;   public = yes

;[public]
;   comment = Public Stuff
;   path = /home/samba
;   public = yes
;   writable = yes
;   printable = no
;   write list = @staff
當修改完成後,可以使用 testparm 這個指令,檢查是否有參數設定上的錯誤

上例中[Apache2][Red5]區塊部份,是我為了方便在內部修改網站所做的設定,可以透過網芳將 Apache 的根目錄設為 Dreamweaver 的遠端網站根目錄,以及提供 Flex3 Builder 直接發佈 Red5 app,可免去開啟 FTP 的風險。

由於 Samba 的權限還是受作業系統權限的控制,所以相對的,/user/local/apache2/htdocs 這個目錄以及 kalvin 這個帳號都得做適當的修改,我的做法是將 kalvin 這個使用者加入 adm 群組 ( 系統預設 GID 4):
#vi /etc/group
編輯這一行
adm:x:4:root,adm,daemon,kalvin
再來進到 /user/local/apache2 目錄內,改變 htdocs 目錄所屬群組為 adm
#chgrp adm htdocs
改變目錄權限
#chmod 775 htdocs
如此即可達成我要的目的了,僅供參考

沒有留言:

張貼留言