Linux
Samba Server
的安裝
阿正的小窩修改日期:2002
91/06/08
版本:Samba-2.2.1a-4
(一) 前言:
1.) Samba Server 總站:http://www.samba.org/
2.) Samba Server 是一個可以在
Windows 的 "網路上的芳鄰" 提供網路資源共享的程式套件。
3.) Samba Server
是透過在微軟在 1980年代所發展的 SMB (Server
Message Block) 通訊協定。
(二) 下載:
1.) Samba總站:ftp://ftp.samba.org/pub/samba/
(這裡有各式各樣的 Samba 套件)
2.) RedHat 光碟片一,也有
Samba Server 的套件 。
3.) 中山大學 FTP 站台
ftp://ftp.nsysu.edu.tw/Unix/Samba/ (這是站長最愛的
FTP 站台之一)
(三) 安裝:
1.) 由 於在安裝 RedHat Linux Server
時預設已經把 Samba 套件安裝進來。
[1] 可利用 rpm -qa | grep samba 查看是否安裝
Samba 套件
samba-2.2.1a-4
(Samba 主程式) (光碟片一)
samba-client-2.2.1a-4 (Samba
客戶端) (光碟片一)
samba-common-2.2.1a-4 (Samba
共用程式) (光碟片一)
samba-swat-2.2.1a-4
(Samba SWAT 程式) (光碟片二)
[2] 若沒有可利用 rpm
來安裝 Samba 套件。
1.) mount /mnt/cdrom ( 先把光碟機 Mount
起來)
2.) rpm -ivh samba-2.2.1a-4.i386.rpm
rpm -ivh samba-client-2.2.1a-4.i386.rpm
rpm -ivh samba-common-2.2.1a-4.i386.rpm
rpm -ivh samba-swat-2.2.1a-4.i386.rpm
[3] 如果是要升級 Samba
的版本,一樣可利用 rpm 來安裝。
rpm -Uvh samba-2.2.1a-4.i386.rpm
rpm -Uvh samba-client-2.2.1a-4.i386.rpm
rpm -Uvh samba-common-2.2.1a-4.i386.rpm
rpm -Uvh samba-swat-2.2.1a-4.i386.rpm
(四)
設定:
1.)
由於 Samba 的最主要的設定檔在
/etc/samba/smb.conf (這是Samba設定的核心)
[1] vi
/etc/samba/smb.conf
[global]
workgroup = Samba-Group //指定的群組
server string = %h is Samba %v Server. //Samba
Server 註解說明
//%h→顯示執行Samba主機名稱
%v→顯示Samba版本編號
load printers = no
//是否要把印表機分享出去
log file = /var/log/samba/log.%m //產生使用者的記錄檔
max log size = 50
//記錄檔的Size
security = share
//設定安全等級
;預設值 user,即在Windows端需輸入用戶名稱或通行密碼才能存取Samba的共享資源
;更改為 share,使用者登入不用密碼,但由管理者設定資源存取。
encrypt passwords = yes //密碼是否要加密
interfaces = 192.168.1.254/24 //Samba Server 的
IP
netbios name = Samba //指定
NetBIOS 的別名
client code page=950 //支援中文檔名及群組
[homes]
comment = Home
Directories //註解
browseable = no
//使用者私人目錄,不需要給人瀏覽
writable = yes
//使用者可以自行寫入自己目錄
valid users= %S
//使用者登入時,自動抓取自己的目錄
create mode = 0644 //建立檔案目錄權限
directory mode = 0775 //目錄的權限
[data]
comment =
網路上的芳鄰 //此共享資源的文字說明。
path = /samba
//共享資源的路徑。
guest ok = yes //無需用戶名稱或通行密碼即可存取共享資源。
//必須有 security = share 來配合。
[2] 可以利用 SWAT(圖形化介面)
來設定
※如果你覺得用
vi /etc/samba/smb.conf 是很麻煩的話,可以考慮用 WEB 介面的 SWAT。
【1】放入光碟片二,再執行
mount /mnt/cdrom 命令
【2】再 cd /mnt/cdrom/RedHat/RPMS
【3】執行 rpm -ivh samba-swat-2.2.1a-4.i386.rpm
【4】由於 SWAT 是透過 Xinetd 程序啟動,請修改 /etc/xinetd.d/swat
修改 (1) only_from 成要控制的 IP →
[設定要連線的 SWAT IP]
修改 (2) disable 由 YES 改為 NO →
[啟動 SWAT ]
【5】最後再執行 /etc/rc.d/init.d/xinetd reload
(restart)
【6】現在請用IE瀏覽器啟動SWAT http://HostName:901
(用 root 登入)
[3] 可以WebMin來設定。
※ 如果都不行的,那最後請用
WebMin 吧
(五)
啟動:
[1] 使用 ntsysv ,選取
"smb" 讓系統自動執行
[2] 使用 chkconfig
--level 35 smb on
(當系統開機時,進入執行等級3或5,就是自動執行Samba)
[3] 使用Xwindows程式的 Serviceconf
來指定 smb 的自動執行
(六) 建立 Samba
密碼:
※由於
Samba Server 使用的密碼檔和 Linux
是採用不同的密碼檔,所以要轉換。
【1】先請用 root 帳號執行,將 passwd 密碼轉換成 Samba
密碼檔。
【2】cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
(先將末加密的
/etc/passwd 檔轉換為有加密碼的 smbpasswd 檔)
【3】chmod 500 /etc/passwd (基於保密設定)
【4】chmod 600 /etc/samba/smbpasswd (避免有心人士偷窺)
【5】smbpasswd UserName (修改使用者密碼)
※當然也可以使用
WebMin 來完成轉換,而且"粉快"。
※至於 SWAT
是不是可以來轉換,當然是不行的拉。
(七)
Samba 工具:
※注意:當您安裝完Samba套件後,也立即擁有以下的Samba工具:
- smbclient:利用這個工具可連接其他Unix
like的Samba Server,或是連接win 95/98/NT
機器以取得檔案分享服務。
- testparm:這個工具可讓您測試smb.conf組態檔定義是否正確。
- testprns:
這個工具可讓您測試定義在printcap檔裡的列表機。
- smbstatus:這個工具可用來顯示目前client端連接到Samba
Server的連線狀況。
- nmblookup:這個工具可使用NT網域內的主機名稱查詢出對應的IP位址。
- smbpasswd:這個工具可用來建立、變更登入到Samba
server的加密密碼。
- swat:這個工具讓您可使用web介面(如:IE、Netscape)對Samba
Server做組態設定。
(八)
備註:
- security:Samba的安全等級。
共有四種。
- share
使用者不需要帳號及密碼即可登入Samba伺服器。
- user
Samba伺服器預設的安全等級。使用者需要有帳號及密碼才能登入Samba伺服器。
檢查帳號及密碼的工作即由提供本服務的Samba伺服器負責。
- server
檢查帳號及密碼的工作是由另一台(可以是Windows
NT/2000 或 Samba)伺服器負責。
password server = serverName ← 設定要驗證密碼的主機
smb passwd file = /path/to/remote_smbpasswd ← 指定 passwd server
存放密碼檔的位置。
- domain
需要指定Windows NT/2000/XP
伺服機來驗證檢查帳號及密碼的工作。