Download - Su dung Samba_Vu Dung dich
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
1
Sử dụng Samba Robert Eckstein, David Collier-Brown, Peter Kelly
1st Edition November 1999
****************************************
Dịch Thuật Viên
Vũ Dũng([email protected])
Cao Việt Cường([email protected])
Chương 1:Cùng học Samba
1.1 Thế nào là Samba
1.2 Samba có thể làm gì cho tôi
1.3 Phân hoạch trong mang SMB/CIFS
1.4 Giải Pháp của Microsoft
1.5 Khái quát về Samba Distribution
1.6 Làm thế nào ñể có ñược Samba
1.7 Có gì mới trong Samba 2.0?
1.8 Và ñó không phải là tất cả
Chương 2: Cài ñặt Samba trên HðH Unix
2.1 Tải distribution Samba
2.2 Configuring Samba
2.3 Biên dịch và Cài ñặt Samba
2.4 Tập tin cấu hình cơ sở Samba
2.5 Khởi ñộng Daemons Samba
2.6 Kiểm tra daemons Samba
Chương 3:Configuring Windows Clients
3.1 Setting Up Windows 95/98 Computers
3.2 Setting Up Windows NT 4.0 Computers
3.3 An Introduction to SMB/CIFS
/*Chương 3 này tôi không dịch - Có lẽ tất cả những người dùng Linux ñều là những người
thành thạo Windows.Có ñúng không?*/
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
2
Chương 4: Disk Share(Dùng chung Disk)
4.1 Cùng học về cấu trúc tập tin cấu hình Samba
4.2 Các Sections(khu vực) ñặc biệt
4.3 Các chọn lựa của tập tin cấu hình
4.4 Cấu hình Server
4.5 Thiết lập cấu hình Disk Share
4.6 Chọn lựa hệ thống mạng với Samba
4.7 Servers ảo(Virtual Servers)
4.8 Phân tích các chọn lựa cấu hình(logging configuration options)
Chương 5:Trình duyệt và nâng cấp disk share
5.1 Trình duyệt(Browsing)
5.2 Sự bất ñồng của hệ thống tập tin(Filesystem Differences)
5.3 Quền hạn và ñặc tính tập tin trong MS-DOS và Unix
5.4 Sửa lại tên và tổ hợp
5.5 Khóa và Mởkhóa(Locks and Oplocks)
Chương 6:Người sử dụng,bảo mật,Domains
6.1 Tài khoản và nhóm tài khoản
6.2 Quản lý truy cập ñến share
6.3 Bảo mật khi chứng thực
6.4 Mật khẩu
6.5 Windows Domains
6.6 Logon Script
Chương 7: In ấn và tên ñược cho phép
7.1 Gửi yêu cầu in ấn ñến Samba
7.2 In ấn ñối với các máy in Windows Client
7.3 Giải pháp ñịnh danh với Samba
Chương 8:Bổ sung thêm thông tin Samba
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
3
8.1 Làm việc với lập trình viên
8.2 Magic Scripts(Script kì diệu)
8.3 Quốc tế hóa(internationalization)
8.4 WinPopup Messanges
8.5 Những chọn lựa mới ñược bổ sung thêm
8.6 Những chọn lựa hỗn tạp
8.7 Sao lưu dự phòng với smbtar(Backups with smbtar)
1.1 Thế nào là Samba Samba - Là giải pháp cho các ứng dụng Unix khi làm việc với các protocol SMB (Server
Message Block).Rất nhiều hệ thống ,bao gồm Windows và OS/2 sử dụng SMB ñể thực hiện
quá trình trao ñổi thông tin giứa clien-server trong mạng.
Dưới sự ñảm bảo của protocol trên,Samba ñã cho phép Server Unix thực hiện kết nối ñến
các sản phẩm của Microsoft Windows cũng bằng protocol trên.Chính vì thế Unix với Samba
có thể ñại diện như Server trong mạng Microsoft và cũng như các dịch vụ sau:
Cho phép dùng chung tài nguyên máy tính:một hoặc hệ thống tập tin
Cho phép dùng chung tài nguyên máy in:Trên server và client của nó.
Giúp ñỡ các clients với Network Neighborhood browsing
Kiểm tra các client ñăng nhập vào Windows Domain
Sử dụng hoặc cho phép một WINS server xác ñịnh
Samba là con ñẻ của Andrew Tridgell mà tại thời ñiểm hiện tại ñang lãnh ñạo một nhóm lập
trình Samba ở Canberra Australia.Kế hoạch bắt ñầu từ năm 1991 khi Andrew tạo ra một
chương trình fileserver cho mạng nội bộ của mình mà làm việc dưới protocol DEC từ
Digital Pathworks.
Lúc bấy giờ,Andrew không biết là protocol ấy sẽ là SMB.Một vài năm sau Andrew tạo ra
một server SMB của mình và bắt ñầu phân phát nó trên internet dưới dạng tên domain SMB
server.Sau ñó không lâu Andrew không thể giữ ñược cái tên ñó vì nó ñã thuộc một hãng
khác chính vì thế andrew tiến hành thử nghiệm phương pháp ñổi tên ở trong Unix.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
4
grep -i 's.*m.*b' /usr/dict/words
Câu trả lời là:
salmonberry samba sawtimber scramble
ðấy là lịch sử của cái tên "Samba"
Vào thời ñiểm hiện tại, Samba làm việc nhờ vào sự giúp ñỡ của cặp daemons(ma thuật)
trong Unix,mà cho phép làm việc với các tài nguyên của clients SMB trong mạng(tài nguyên
ñôi khi gọi lài dịch vụ).Những daemons ñó là:
smbd
Daemon,cho phép nhận quyền truy cập ñến các tập tin và máy in trên mạng SMB,cũng như
xác nhận và cho phép ñối với các SMB clients.
nmbd
Daemon,dùng ñể theo dõi WINS(Windows Internet Name Service) và làm việc với các trình
duyệt(browser) của các máy tính trong mạng.
Samba ngày nay ñược duy trì và mở rộng bởi một nhóm người dưới sự lãnh ñạo của
Andrew Tridgell.Giống như HðH Linux,Samba ñược coi như OSS(Open Source software)
cùng với bản quyền tác giả,nó ñược phổ biến dưới giấy phép GNU General Public
License(GPL).
Cũng từ thời gian ñó Samba ñược tài trợ bởi Australian National University,mà ở ñó Andrew
Tridgell ñã giành ñược những thành quả của mình.Cũng từ ñó người ta ñã chuyến hướng
sang thành các nhà sản xuất như Whistle và SGI.Tuy nhiên ñiều này không tốt cho lắm khi
mà Samba tham gia như dạng kinh doanh hoặc là một tổ chức thương mại,bởi vì nó thuộc
Open Source
Trong thời gian viết cuốn sách này Andrew ñã kết thúc công việc của mình và liên kết với
San Francisco-based LinuxCare.
Microsoft cũng chuyển sang ghi chép protocol SMB của mình và cả Internet-savvy Common
Internet File System (CIFS) ở trong tài liệu chuẩn Request for Comments (RFC).
Protocol CIFS - Tên của phiên bản mới protocol SMB từ Microsoft mà sẽ ñược sử dụng
trong các sản phẩm Windows.ðó là hai thuật ngữ sẽ sử dụng trong cuốn sách này.Chính vì
thế mà bạn có thể nhìn thấy cách ghi protocol như sau: "SMB/CIFS".
1.2 Samba có thể làm gì cho tôi Giống như ñã kể ở trên,Samba có thể giúp các máy tính từ Windows và Unix tồn tại trong
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
5
cùng một mạng lưới liên kết.Tuy nhiên có thể có một số nguyên nhân mà bạn muốn cài ñặt
Samba Server trong mạng của mình.
Bạn không muốn trả tiền hoặc không thể cho một Server Windows NT hoàn chỉnh.
nhưng lại muốn cái chức năng mà nó ñảm nhận
Bạn muốn tạo một môi trường chung ñể chuyển giao dữ liệu của tài khoản cũng như các
dãy thư mục từ Server Windows sang Server Unix và ngược lại.
Bạn muốn nhân ñược quyền truy cập ñến máy in từ các trạm ở môi trường Windows cũng
như Unix
Bạn muốn truy cập tới các tập tin ở NT từ Unix server
Chúng ta hãy xem Samba làm như thế nào.Chúng ta hãy giả sử rằng,chúng ta có một mạng
lưới như sau:Một máy tính với Samba trên Unix mà có tên là hydra và hai clients Windows
có tên theo thứ tự là:phoenix và chimaera.Tất cả chúng thuộc một LAN.Chúng ta hãy giả
thiết rằng hydra có máy in và ở dạng tài nguyên cho truy cập một ñĩa mạng(disk share) có
tên là network,mỗi thứ trong chúng cho phép hai máy khác nhau sử dụng.Cấu hình mạng
trên ñược miêu tả như sau:
hình 1.1
Trong cấu trúc mạng trên,mỗi máy tính với các tài nguyên của mình thuộc cùng một nhóm
làm việc( workgroup).Nhóm làm việc( workgroup) ñó là tên của một nhóm mà chỉ ra trong ñó
một vài máy tính và các tài nguyên trong nó ở trong mạng SMB.Cùng một lúc ở trong mạng
có thể có nhiều nhóm làm việc khác nhau.Tuy nhiên trong ví dụ này chỉ có một nhóm làm
việc là workgroup: SIMPLE
1.2.1 DunSharing a Disk Service
Nếu bạn xây dựng ñúng cấu hình thì bạn có thể nhìn thấy Server Samba hydra qua Network
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
6
Neighborhood(môi trường mạng chung) trên desktop của máy phoenix trong môi trường
Windows.Hình dưới ñây sẽ cho bạn thấy ñiều ñó.Nó cho bạn thấy tất cả các máy trong
nhóm làm việc SIMPLE.Bạn hãy ñể ý ñến Entire Network(Mạng toàn cục) ở trên ñầu của
danh sách.Như chúng ta ñã nói cùng một lúc có thể có nhiều hơn một nhóm làm việc.Khi
bạn nhấn vào biểu tượng Entire Network thì nó sẽ cho bạn thấy có bao nhiêu nhóm làm việc
trong mạng.
hình 1.2
Bạn có thể nhìn rõ hơn các tài nguyên trên server hydra bằng cách nhấn kép vào biểu
tượng của nó.Nó thực hiện yêu cầu ñến hydra và sẽ hiện ra danh sách các tài nguyên cho
phép dùng chung của nó.Tài nguyên có thể là tập tin cũng có thể là máy in.
ðó là những gì gửi lên và cho phép sử dụng.Ở dưới ñây là máy in lp(tên máy in) và tài
nguyên có tên là "network" như hình dưới ñây.Chúng ta thấy rằng Windows hiển thị tên host
một cách lẫn lộn,không có sự phân biệt(Hydra).
Sự hiển thị tên host không quan trọng,bạn có thể nhìn thấy hydra,Hydra và HYDRA trên các
lệnh hiển thị cũng như các ngôn ngữ khác nhau những chú ý rằng chúng chỉ là một hệ
thống(hydra).Nhờ có Samba,Windows 98 có thể nhìn thấy server Unix như một server SMB
cụ thể và có thể truy cập ñến thư mục network cũng như các thư mục khác trên cá hệ
thống khác.
hình 1.3
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
7
Một trong các khả năng lớn nhất của Windows 95/98/NT là bạn có thể kết nối các disk ở
dạng chữ cái với các thư mục qua mạng(network directory).Hãy sử dụng chọn lựa Map
Network Drive ở Windows Explorer.Sau khi bạn làm ñiều ñó,các chương trình của bạn có
thể truy cập tới nguông tài nguyên này như một ñĩa cứng theo một trật tự nhất ñịnh.Bây giờ
bạn có thể lưu lại các thông tin trên disk,cài ñặt hoặc chạy từ nó và bảo vệ nó bằng mật
khẩu ñể tránh sự xâm nhập bất hợp pháp.Bạn hãy xem ví dụ minh họa dưới ñây:
Bạn có thể nhấn chuột phải lên tài nguyên cho phép truy cập ở Network Neighborhood,sau
ñó chọn menu Map Network Drive.
hình 1.4
Bạn hãy nhìn lên Path: ghi trên cửa sổ hội thoại.ðường dẫn chính xác ñể hiển thị các thư
mục trên các máy trong mạng ñược thực hiện bằng cách sử dụng dấu "\\" và sau ñó là tên
máy trong mạng và dấu "\" và cuối cùng là tên thư mục:
\\network-machine\directory
Phương pháp ghi này ñược phổ biến như UNC (Universal Naming Convention) ở thế giới
Windows.Như trong hình trên chúng ta thấy cách kết nối với thư mục network trên máy
hydra như sau:
\\HYDRA\network
Nếu bạn thấy rằng bạn ñã làm quen rồi thì có lẽ bạn nghĩ ñến uniform resource locators
(URLs)mà ñược gọi là ñịa chỉ,ñược sử dụng trong các trình duyệt web cũng như Netscape
Navigator và Internet Explorer ñể xác ñịnh ñịa chỉ các máy ở internet.Tuy nhiên ñừng có
nhầm lẫn giữa hai dấu "\" và "/" và trước chúng phải chỉ ra protocol giao tiếp(http,ftp...) và
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
8
dấu ":".Trên thực tế URL và UNC hoàn toàn khác nhau.
Nếu như bạn có các chương trình mà có thể ñược bảo vệ bởi các tài khoản mạng(network
users) trong một hệ thống mạng,thì bạn có thể cài ñặt chúng trên ñĩa cứng mạng.Hình sau
thể hiện một phương án cụ thể ñĩa cứng mạng cũng với các thiết bị khác trên máy client
Windows 98.Chúng ta thấy rằng có một ñường thẳng trên biểu tượng ñĩa cứng "G:" - có
nghĩa là ñây là ñĩa cứng mạng chứ không phải là ñĩa cứng vật lý.
Tiếp ñến chúng ta nhận thấy rằng,có nhiều quy ñịnh không cho cài ñặt các chương trình
ứng dụng trên các ñĩa cứng mạng bởi vì ngay lập tức có một vài clients có thể truy cập ngay
lên nó.Bạn phải kiểm tra lại các giấp phép trên ñể có thể yên tâm
hình 1.5
Từ trên desktop của trạm Windows NT chimaera, Samba nhìn giống như Windows 98.Như
hình dưới ñây sẽ cho bạn thấy một hình ảnh giống hệt server hydra từ môi trường mạng
Windows NT 4.0. Cấu hình disk mạng cũng sử dụng Map Network Drive ở trong Windows
NT Workstation 4.0,và bạn cũng nhận ñược kết quả tương tự.
hình 1.6
1.2.2 Sharing a Printer(Dùng chung máy in)
Có lẽ bạn cũng nhận thấy rằng máy in lp ñã xuất hiện ở dạng cho phép truy cập trên máy
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
9
hydra.Hình 1.3 chỉ ra rằng,server Unix có máy in tên là "lp" mà sẽ ñược gửi lên làm tài
nguyên mạng chung cho các clients khác nhau SMB ở nhóm làm việc.Những thông tin
ñược gửi từ bất cứ clients tới server ñể in ấn sẽ ñược chuyển ñến máy in trên server mà in
tại ñó.
Cấu hình sử dụng máy in Samba trên Windows còn dễ hơn cấu hình truy cập tới các tài
nguyên.Nhấn kép hai lần lên máy in, chọn hãng sản xuất và model là bạn có thể cài ñặt
drivers cho máy in ñó trên Windows của máy client.Sau ñó Windows có thể thử in bất cứ
một thông tin nào ñể nhận quyền truy cập lên nó,nếu ñó là một máy in thông thường(chúng
tôi sẽ chỉ cho bạn cách làm ở phần dưới ñây).Hình 1.7 sẽ cho thấy sự tồn tại của máy in qua
mạng ở khung cửa sổ máy in trong Windows 98.Chú ý rằng trên biểu tượng có một ñường
thẳng ñể phân biệt với máy in
thực.
1.2.2.1 Quan sát từ Unix Như ñã nói ở trên,Samba tồn tại trong Unix như một tập hợp các chương trình daemon.Bạn
có thể nhìn thấy chúng nhờ các lệnh trong Unix: ps và netstat. Bạn có thể ñọc tất cả các tin
nhắn ở trong các tập tin sửa lỗi Unix syslog(phụ thuộc vào cách cài ñặt Samba),và bạn có
thể thiết lập nó từ một tập tin cấu hình ñơn lẻ Samba: smb.conf. Nếu như bạn muốn thực
hiện công việc với từng daemon riêng lẻ thì trong Samba có chương trình có tên là
smbstatus mà sẽ ñưa ra hết tất cả các thông tin.ðây là một ví dụ:
# smbstatus
Samba version 2.0.4
Service uid gid pid machine
----------------------------------------------
network davecb davecb 7470 phoenix (192.168.220.101) Sun May 16
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
10
network davecb davecb 7589 chimaera (192.168.220.102) Sun May 16
Locked files:
Pid DenyMode R/W Oplock Name
--------------------------------------------------
7589 DENY_NONE RDONLY EXCLUSIVE+BATCH
/home/samba/quicken/inet/common/system/help.bmp Sun May 16 21:23:40 1999
7470 DENY_WRITE RDONLY NONE
/home/samba/word/office/findfast.exe Sun May 16 20:51:08 1999
7589 DENY_WRITE RDONLY EXCLUSIVE+BATCH
/home/samba/quicken/lfbmp70n.dll Sun May 16 21:23:39 1999
7589 DENY_WRITE RDWR EXCLUSIVE+BATCH
/home/samba/quicken/inet/qdata/runtime.dat Sun May 16 21:23:41 1999
7470 DENY_WRITE RDONLY EXCLUSIVE+BATCH
/home/samba/word/office/osa.exe Sun May 16 20:51:09 1999
7589 DENY_WRITE RDONLY NONE
/home/samba/quicken/qversion.dll Sun May 16 21:20:33 1999
7470 DENY_WRITE RDONLY NONE
/home/samba/quicken/qversion.dll Sun May 16 20:51:11 1999
Share mode memory usage (bytes):
1043432(99%) free + 4312(0%) used + 832(0%) overhead = 1048576(100%) total
Trạng thái Samba từ kết quả trên cho thấy ba thư mục cấu hình với các dữ liệu,mỗi thư mục
ñược chia thành các phần nhỏ.Phần ñầu cho biết hệ thống nào kết nối với server Samba và
xác nhận từng clients nhờ vào tên máy tính(phoenix và chimaera) cũng như
IP-Address.Phần thứ hai nói về tên và trạng thái tập tin.Và cuối cùng Samba thông báo về
số lượng bộ nhớ phải bỏ ra tại thời ñiểm hiện tai cho công việc trên tài nguyên,nó bao gồm
số lượng bộ nhớ sử dụng và giới hạn vượt quá cho phép(Chú ý smbd và nmbd không phải
sử dụng cùng một số lượng bộ nhớ).
ðừng có vội nếu bạn không hiểu các thông báo trên.Bạn sẽ hiểu rõ hơn trong quá trình làm
việc thường xuyên và với quyển sách này.
1.3 Phân hoạch trong mang SMB/CIFS
Bây giờ sau khi bạn ñã có một chút kiến thức về Samba,chúng ta hãy tiến hành phân chia
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
11
với mạng SMB/CIFS.Làm việc với mạng SMB khác với Unix TCP/IP ở chỗ tồn tại nhiều khái
niệm và thông tin mới mà cần phải học.ðầu tiên chúng ta hãy thảo luận về các khía cạnh
bên trong của SMB,ñược suy ra từ một vài thực tế từ Microsoft và sau ñó chúng tôi sẽ chỉ ra
cho bạn thấy ở ñâu Server Samba có thể thực hiện,còn ở ñâu không thể.
1.3.1 Phân hoạch với NetBios
Chúng ta hãy quay lại lịch sử một chút.Năm 1984,hãng IBM ñã tạo ra một ứng dụng
interface ñơn giản(API) cho mạng có tên là :Network Basic Input/Output System
(NetBIOS).API NetBios cho phép truy cập và trao ñổi dứ liệu trong mạng.
Chúng ta có thể coi rằng NetBios API - Nó là mạn mở rộng của BIOS API.Trong BIOS các
yêu cầu ở bậc thấp và ñi ñến thẳng thiết bị cụ thể,ñược cài ñặt sẵn trong máy tính và không
cần bất cứ một sự hướng dẫn ñặc biệt về cách thức truy cập ñến thiết bị.Nhưng trong thời
gian ñó NetBios cần phải thực hiện qúa trình trao ñổi thông tin giữa các máy tính trong các
mạng IBM hoặc TokenRing.Chính vì thế nó cần một protocol vận chuyển bậc thấp ñể trao
ñổi các yêu cầu từ một máy tính này ñến một máy khác.
Vào năm 1985,IBM thực hiện protocol dạng trên,bao gồm có NetBios API với tên là NetBIO
Extended User Interface (NetBEUI). NetBEUI ñược tạo ra cho các mạng LAN nhỏ và cho
phép mỗi máy tính có tên không nhiều hơn 15 kí tự và các tên không trùng lặp nhau.Mạng
LAN nhỏ có nghĩa là số lượng máy tính không vượt quá 255,con số trên ñược coi là vứa
phải vào năm 1985
Protocol ñã chiếm ñược sử phân bố rộng rãi trong các trình ứng dụng mạng,bao gồm cả
những ứng dụng mà sử dụng trong Windows cho Workgroup.Sau ñó xuất hiện Netbios over
protocol IPX của hãng Novell.Tuy nhiên,trong môi trường internet thì các protocol
TCP/IP,UDP/IP vẫn là các protocol chính.Vì vậy ñã nẩy sinh nhu cầu thực hiện NetBEUI
over các protocol ấy.
Chúng ta hãy nhớ rằng protocol TCP/IP sử dụng số thự tự từ một tổ hợp con số và phân
cách bởi các dấu chấm,nó dùng ñể hiển thị ñịa chỉ của máy tính như:192.168.10.50,còn
trong thời gian ñấy NetBios chỉ sử dụng tên.Nó là vấn ñề chính khi liên kết hai protocol lại
với nhau.Vào năm 1987 Internet Engineering Task Force (IETF) công bố một hệ thống tài
liệu chuẩn có tên là RFC 1001 và 1102 ñể miêu tả công việc NetBios trên TCP/IP.Cho ñến
ngày nay các thông tín ấy vẫn coi là các tài liệu tiêu chuẩn cho các phiên bản protocol bao
gồm cả những biến dạng từ Microsoft hoặc Samba.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
12
Từ những tài liệu trên cái tên "NetBIOS over TCP/IP" ñã trở lên rất nổi tiếng hoặc ngắn gọn
NBT.Dạng chuẩn NBT(RFC 1001/1002) ghi chép ba dịch vị mạng:
Dịch vụ tên
Dịch vụ liên kết
Datagrams
Sessions
Dịch vụ tên giải quyết các vấn ñề về tên-ñịa chỉ máy tính,nó cho phép ñặt tên cho mỗi máy
tính,những tên ñó có thể ñưa vào khái niệm về IP-address máy tính mà giống như hệ thống
sử dụng dịch vụ DNS trong internet.
Hai dịch vụ còn lại datagrams và sessions - protocol thứ hai liên kết và trao ñổi dữ liệu giữa
các máy tính trong mạng NetBios.
1.3.2 Xác lập tên
Theo ý tưởng của con người thì việc ñặt một cái tên rất ñơn giản.Tuy nhiên,ñối với các máy
tính trong mạng NetBios,công việc ñó thực sự là phức tạp.Chúng ta hãy quan sát thử một
vài quá trình trong chúng.
Trong mạng NetBios sau khi ñăng nhập vào máy,nó cần phải ñăng kí tên của mình,ta gọi là
qúa trình ñăng kí tên.Tuy nhiên hai máy tính trong mạng không thể có cùng một tên.Bởi vì
nó sẽ gây ra sự nhầm lẫn ñối với các clients khi thử liên kết với máy tính trên.Có hai cách
giải quyết vấn ñề trên:
Sử dụng NetBios Name Server(NBNS) ñể theo kiểm soát những máy tính ñã ñăng kí với
tên NetBios của mình
Cho phép mỗi máy tính giữ lại tên của mình nếu như ai ñó thử sử dụng nó.
Hình 1.8 hiển thị(không thành công) quá trình ñăng kí tên từ và không có NetBios Name
Server:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
13
hình 1.8
Cũng như thế cần phải thực hiện phương pháp liên kết NetBios Name tới một IP-address
cụ thể.Qúa trình ñó gọi lài xác ñịnh tên.Trong trường hợp này có hai cách giải quyết:
Mỗi máy tính cần thông báo ngược lại máy hỏi IP-address của mình,sau khu nhận ñược
"broadcast" yêu cầu vào NetBios name
Sử dụng NBNS ñể nhận ra NetBios name và IP-address.
Hình 1.9 chỉ ra hai cách xác ñịnh tên:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
14
Có lẽ các bạn cũng ñã nhìn ra rằng,sử dụng NBNS trong mạng rất là có lợi.ðể rõ ràng bạn
hãy xem các phương pháp NBNS.
Trong trường hợp khi mà máy tính ñăng nhập vào mạng,nó gửi ñi các broadcast và chứa
thông tin về mong muốn ñăng kí NetBios name của mình.Nếu như không có ai trả lời thì nó
giữ lại tên ñó cho mình.Nếu như có ai ñó ñã sử dụng cái tên ñó rồi,thì nó sẽ gửi lại tin nhắn
cho người ñã hỏi thông tin trên rằng cái tên ñó ñã ñược sử dụng.Phương pháp trên còn gọi
là phương pháp bảo vệ tên.Tuy nhiên nó có hạn chế là khi một máy ñi ra khỏi mạng,sau ñó
một máy khác lấy mất quyền sử dụng tên của nó và hơn nữa là số lượng traffic-network
qúa mức do việc ñơn thuần ñăng kí tên.
Khi sử dụng NBNS trong trường hợp nêu trên,việc trao ñổi thông tin bị hạn chế bởi máy
tính,mà gửi ñi yêu cầu và server NBNS.Khi ñăng kí tên máy tính không thực hiện broadcast
yêu cầu.Yêu cầu ñể ñăng kí tên chỉ ñơn giản là gửi từ clients ñến server NBNS và nó trả lời
chưa hay ñã sử dụng cái tên trên.Liên kết trên có thể coi là point-to-point và ñược sử dụng
trong các hệ thống mạng,bị chia thành các phần nhỏ.Phương án này ñược sử dụng bởi vì
routers(cầu dẫn) hầu như ñược cấu hình trước trên các block tiếp nhận packages cũng như
broadcast ñến tất cả các máy ở mạng con.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
15
Có những phương pháp giống như vậy,ñược sử dụng ñể xác ñịnh tên máy tính trong
mạng.Không có NBNS,việc xác ñịnh tên sẽ lại thực hiện theo phương án broadcast.Tất cả
các packages với thông tin yêu cầu sẽ ñược gửi ñến tất cả các máy trong mạng với nội
dung rằng,máy tính mà nhận ñược yêu cầu sẽ trả lời máy tính ñã gửi ñi yêu cầu.Có nghĩa là
việc sử dụng NBNS server và dạng "point-to-point" cho các mục ñích trên nhanh chóng hơn
là việc tăng trọng lưỡng cho mạng bởi số lượng broadcast packages ñể xác ñịnh tên máy
tính.
1.3.3 Node Types(ðịnh dạng giao ñiểm)
Như các bạn ñã biết,cách mỗi client sẽ thực hiện ñăng kí và xác dịnh tên trong mạng.Mỗi
một máy tính khi thực hiện ñăng kí tên sẽ nhận ñược những thứ sau:
b-node, p-node, m-node, và h-node
Chức năng Ý nghĩa
b-node chỉ sử dụng ñăng kí broadcast và kiểm tra tên
p-node sử dụng ñăng kí "point-to-point" và kiểm tra tên
m-node Sử dụng ñăng kí broadcast.Nếu thành công thì thông báo
NBNS server.Sử dụng phương pháp broadcast ñể kiểm tra tên.
Sử dụng NBNS server nếu như phương pháp broadcast không
thành công.
h-node Sử dụng NBNS server ñể ñăng kí và kiểm tra tên.Sử dụng
broadcast nếu như NBNS server bị tắt.
Nếu như clients sử dụng Windows,thì họ thông thường như là h-nodes nhưng mà h-nodes
ñã ñược tạo ra bởi Microsoft và nó không có trong RFC 1001/1002
Bạn có thể biết ñược dạng node của máy tính trong Windows bằng lệnh sau:
C:\> ipconfig /all
Windows 98 IP Configuration
...
Node Type . . . . . . . . . . : Hybrid
...
1.3.4 Tên ñược cấu tạo như thế nào?
Tên NetBios khác nhiều so với tên NDS.Thứ nhất tên của NetBios ñược ñặt ra như một
từ.Có thể nói rằng không có sự phân cách như ara.com hoặc samba.org trong tên máy
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
16
tính.Thứ hai chiều dài của tên không quá 15 từ,chúng không thể bắt ñầu với các dấu * và
ñược cấu tại từ bảng mã truyền thống(a-z,A-Z,0-9) và các dấu sau:
! @ # $ % ^ & ( ) - ' { } . ~
Tuy nhiên ñừng nên sử dụng dấu "." làm tên NetBios,chúng tôi không khuyến khích sử dụng
nó,có lẽ không chắc chắn rằng có thể sử dụng nó trong các phiên bản mới NetBios over
TCP/IP.Không ít trường hợp tên của NetBios trùng với tên DNS.Thông thường tên DNS sử
dụng như tên NetBios.Nếu như bạn có phoenix.ora.com thì tên NetBios có thể là PHOENIX.
1.3.4.1 Tên và kiểu tài nguyên
Trong mạng NetBios,máy tính không chỉ thông báo về sự tồn tại của mình mà còn thông
báo về các dịch vụ mà nó cho phép dùng chung.Ví dụ như máy PHOENIX có thể thông báo
rằng:mình không chỉ là một trạm làm việc và còn là một fileserver và có thể nhận ñược các
tin nhắn WinPopup.ðiều này ñược thực hiện bằng cách bổ sung 16-bytes ở cuối cùng của
tên máy tính và tên tài nguyên.Nó ñược hiển thị ở hình 1.10
Kiểu tài nguyên ñược ñặt vào một byte,dùng ñể chỉ tên tài nguyên ñược gửi lên bởi máy
trên.Chúng ta sẽ kí hiệu chúng qua <>,ví dụ: PHOENIX <00>
PHOENIX<00>
Bạn có thể nhìn thấy các tài nguyên ñược gửi lên mạng NBT bởi lệnh NBTSTAT.Các dịch
vụ này tồn tại duy nhất,như bạn thấy kiểu của chúng là UNIQUE.Ví dụ kết qủ sau lấy ñược
từ máy hydra:
D:\> NBTSTAT -a hydra
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
HYDRA <00> UNIQUE Registered
HYDRA <03> UNIQUE Registered
HYDRA <20> UNIQUE Registered
...
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
17
Ở ñây chúng ta biết ñược rằng server ñăng kí dưới tên hydra,nó có thể nhận tin nhắn dạng
WinPopup và là một fileserver.Tất cả các ñặc tính mà có thể có của máy tính ñược nêu ở
dưới ñây:
Tên tài nguyên Giá trị(cơ số 16)
Standard Workstation Service 00
Messenger Service (WinPopup) 03
RAS Server Service 06
Domain Master Browser Service (associated with primary domain
controller)
1B
Master Browser name 1D
NetDDE Service 1F
Fileserver (including printer server) 20
RAS Client Service 21
Network Monitor Agent BE
Network Monitor Utility BF
Chúng ta thấy rằng tên DNS không ñịnh ra như kiểu tài nguyên,các nhà lập trình ñã cố tình
ñịnh ra giá trị cơ số 16,20 cho các fileserver.
1.3.4.2 Kiểu và tên nhóm
Trong protocol SMB cũng có khái niệm về nhóm,mà mỗi máy tính sử dụng ñể ñăng kí tên
của mình vào trong ñó.Có lẽ trong ví dụ trên chúng ta thấy,các máy tính thuộc vào cùng một
nhóm làm việc và ở trọng một nhánh mạng.Ví dụ như trong hệ thống mạng tồn tại hai nhóm
làm việc ACCOUNTING và SALES,chúng có server và máy in khác nhau.Trong terminal
Windows thì nhóm làm việc Windows và nhóm SMB là một.
Hãy tiếp tục ví dụ với NBSTAT,server Samba hydra ñược coi là một thành phần của nhóm
làm việc SIMPLE(ñặc tính của nhóm trong cơ số 16 là 00) và sẽ coi là sự chọn lựa của
nhóm
như là browse master(master browse - ñặc tính của nhóm là 1E).Và NBTSTAT sẽ cho kết
quả như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
18
NetBIOS Remote Machine Name Table, continued
Name Type Status
---------------------------------------------
SIMPLE <00> GROUP Registered
SIMPLE <1E> GROUP Registered
..__MSBROWSE__. <01> GROUP Registered
Tất cả các ñặc tính mà có thể có của máy tính ñược ghi ở bảng sau.ðể có thêm thông tin
bạn hãy tìm ñọc cuốn sách Windows NT in a Nutshell của Eric Pearce cũng như ñã xuất
bản của O'Reilly.
Tên tài nguyên Hexidecimal Byte Value
Standard Workstation group 00
Logon Server 1C
Master Browser name 1D
Normal Group name (used in browser elections) 1E
Internet Group name (administrative) 20
<01><02>__MSBROWSE__<02> 01
Dòng cuối cùng __MSBROWSE__ sử dụng ñể thồng báo về các nhóm của những master
browse khác.Tham biến mà không thể hiển thị,ñược biểu diễn bằng các dấu "." trong kết
quả của NBTSTAT.Bạn ñừng có lo lắng nếu như không hiểu rõ các giá trị của các kiểu tài
nguyên và nhóm.Có rất nhiều thữ trong chúng không hoàn toàn tốt khi làm việc với
Samba,còn các phần còn lại thì bạn sẽ ñược tìm hiểu trong phần này.Tuy nhiên phải nhớ
một ñiều quan trọng là cơ chế gán tên không logic.
1.3.5 Datagrams và Sessions
Trong phần này chúng ta sẽ xem sét một hướng khác của NBT: Cụ thể là cách tạo liên kết
giữa hai máy tính sử dụng NETBIOS. Nói chung NetBios over TCP/IP có chứa bên trong hai
dịch vụ là Datagram và Session.Việc lắm rõ hoạt ñộng của hai dịch vụ trên là không nhất
thiết khi làm việc với Samba nhứng nó lại giúp bạn thấy ñược cách NBT làm việc và phải
làm gì nếu như Samba không làm việc.
Dịch vụ datagram không thiết lập kết nỗi liên tục giữa hai máy tính.Những packages chứa
dữ liệu chỉ ñơn giản gửi ñi tới một máy khác mà không kiểm tra xem chúng ñến nơi chưa
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
19
hay là ñến một ñịa ñiểm khác.Sử dụng datagrams không gây lên trọng tải cho mạng như
sessions.Chính vì thế mà datagrams sử dụng cho việc truyền tải nhanh các block ñơn giản
từ một máy này sang máy khác.Dịch vụ datagarms sử dụng cho các liên kết ñơn giản như
bảng 1.4.
Bảng 1.4
Lệnh Chú thích
Send Datagram Gửi packages datagrams tới máy tính hoặc nhóm máy tính
Send Broadcast
Datagram
Broadcast datagram tới bất cứ một máy nào ñang ñợi nhận
Broadcast datagram
Receive Datagram Nhận datagram từ máy tính
Receive Broadcast
Datagram
ðợi Broadcast datagram
Công việc của dịch vụ Sessions thì phức tạp hơn. Sessions là cách liên kết cho phép xác
ñịnh các vấn ñề hoặc không có khả năng kết nối giữa hai chương trình mà sử dụng
NetBios.Có thể coi rằng Sessions NetBios như việc thiết lập kết nối ñiện thoại.Kết nối hai
chiều ñược xác ñịnh giữa máy gọi và máy trả lời.Nó nhất thiết phải liên tục trong suốt quá
trình kết nối.Mỗi chiều kết nối phải biết hướng nào hỏi và hướng nào trả lời.Kết nôi giữa
chúng ñược miêu tả ở bảng dưỡi ñây:
bảng 1.5
Lệnh Chi Tiết
Call Thiết lập sessions và ñợi máy tính với tên ñã xác ñịnh
Listen ðợi tín hiệu gọi từ một hay một vài máy gọi
Hang-up Kết thúc cuộc gọi
Send Gửi dữ liệu ñến máy khác
Receive Nhận dữ liệu từ một máy khác
Session Status Nhận thông tin trên sessions yêu cầu
Sessions là một phương pháp truy cập chính ñến các dữ liệu trong mạng NBT.Nó thông
thường sử dụng ñể xác lập các kết nối liên tục của clients với các disk và máy in server.
Client gọi ñến server và yêu cầu thông tin,như các tập tin,mà nó muốn truy cập và các dữ
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
20
liệu mà nó muốn tra ñổi.Những cuộc gọi này có thể tồn tại trong một thời gian lâu - có thể 1
tiếng,thậm chí 1 ngày và tất nhiên chúng thực hiện bên trong một kết nối.
Nếu như nảy sinh các lỗi thì sessios(TCP) sẽ gửi lại các dứ liệu mà ñã không nhận ñược,tất
nhiên khác với "gửi-quên" trong dịch vụ datagrams(UDP)
Trên thực tế,các sessios có thể bị ngắt,tất nhiên chúng sẽ không bị như thế.Và bạn cũng ñã
nhận thấy rằng khi sử dụng mạng Windows và sessios cũng sẽ nẩy sinh một vấn ñề rất
lớn.Nếu như kết nối bị ngắt bởi một nguyên nhân nào ñó thì thông tin về sessions giữa hai
máy tính có thể bị xóa.Nếu bị như thế thì cách duy nhất là thực hiện kết nối lại một lần nữa.
Nếu bạn muốn có ñược thông tin cụ thể hơn về những dịch vụ này,chúng tôi khuyên bạn
nên xem trong RFC 1001.Tuy nhiên chúng ta nên nhớ các vấn ñề chính sau:
Sessios bao giờ cũng sử dụng ñể kết nối giữa hai máy tính trong mạng không quá lớn cũng
không quá nhỏ.Nếu như sessions bị ngắt thì hãy lên thực hiện kết nối lại.Tuy nhiên rất khó
có thể bị như vậy.
Datagrams có thể gửi Broadcas ñến nhiều máy tính,nhưng nó không ñáng tin cậy.Có thể
nói không có cách nào biết ñược chính xác nó ñã ñến hay chưa.
1.4 Giải Pháp của Microsoft Cuối cùng chúng ta có thể nói về các phiên bản Microsoft trong môi trường protocol
CIFS/SMB.Và có lẽ các bạn cũng sẽ nhận thấy có một vài ý kiến cần phải ñược thảo luận
1.4.1 Domains Windows
Chúng ta hãy nhơ lại rằng,nhóm làm việc(workgroup) là một tập hợp các máy tính trong
mạng SMB mà nằm trong một mạng con(subnet) và ñược coi là một nhóm làm việc SMB.
Domians Windows ñi xa hơn vấn ñề ñó.ðấy là một nhóm làm việc SMB với một server,ñược
coi là một domains controller.ðể có ñược domains Windows bạn cần phải có
ñược domains controller.Ngược lại bạn chỉ có một nhóm làm việc bình thường.Hãy xem
hình 1.11
Domains Windows gọi là "Domains Windows NT" theo ñịnh nghĩa của Microsoft có lẽ nó ám
chỉ ñến các máy tính với Windows NT ñược sử dụng như domains controller.Tuy nhiên
Samba cũng có thể thực hiện các chữc năng này,và ñể ñơn giản chúng ta gọi nó là
"Doamins Windows" ñể tránh nhầm lẫn.
Hình 1.11
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
21
Tất cả có hai loại protocol mà domains controller(server ñăng nhập) sử dụng: Một là ñể kết
nối với máy tính dưới Windows 98/95 và một ñể kết nối với máy dưới Windows NT.Trong
thời gian ñó Samba chỉ có thể làm việc với domains controller protocol dưới Windows
98/95(Cho phép nó thực hiện vai trò domains controller cho Windows 9x),và nó hoàn toàn
không làm việc với protocol cho các máy với Windows NT.Tuy nhiên nhóm làm việc Samba
hứa sẽ cho phép làm việc với domains controller protocol cho Windows NT ở phiên bản
Samba 2.1
Khó khăn ở ñâu? Protocol mà domains controller Windows sử dụng ñể kết nối với clients
của mình và các domains controller khác ñã bị khoá bởi Microsoft.Nó làm cho nhóm làm
việc Samba phải sử dụng cái tên :"cải tạo lại" protocol controller doamins ñể có thể biết
ñược codes và nhiệm vụ mà nó thực hiện.
1.4.11 Domains controllers
Domains controllers - Là bộ não của domains Windows và giống như NIS - Trung tâm não
bộ của hệ thống dịch vụ mạng Unix.Domains controllers thực hiện một số trách nhiệm.Một
trong số chúng là sự chứng thực.Sự chứng thực là quá trình cho phép hay cấm quyền truy
cập các tài khoản ñến các tài nguyên trên một máy khác trong mạng,thông thường nhờ vào
tên tài khoản và mật khẩu.
Mỗi domains controller sử dụng một trình bảo mật(SAM) ñể tổ hợp tên mà mật khẩu tài
khoản.Sau ñó domains controller ñịnh dạng nơi chứa mật khẩu cùng với tên tài khoản(một
mật khẩu ñối với một tài khoản),nó tiện lợi hơn là sử dụng mỗi máy clients chứa hàng trăm
mật khẩu cho mỗi lần truy cập tài nguyên mạng.
Trong domains Windows,khi mà không nhận rõ client hỏi quyền truy cập tài nguyên
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
22
server,thì server sẽ nghĩ và hỏi domains controller:xác ñịnh rõ hay không tài khoản.Nếu như
ñúng thì server thiết lập kết nối sessions với quyền truy cập và ñã có sẵn cho tài khoản và
dịch vụ cần hỏi.Nếu như không,thì kết nối sẽ bị ngắt.
Sau khi tài khoản ñã ñược xác nhận,thì client sẽ ñưa ra một sự ñồng nhất ñặc biệt và sau
ñó tài khoản sẽ không bị kiểm tra một lần nữ ở trong domains controller ñến quyền truy cập
các tài nguyên. Từ ñó trở ñi tài khoản ñược coi là ñã ñăng nhập.Hãy xem hình 1.12
1.4.1.2 Domains Controller Chính và Dự phòng
Domains Controller mà ñang hoạt ñộng tại thời ñiểm hiện tại gọi là Domains Controller
Chính(PDC).Tuy nhiên trong domains còn có một hoặc nhiều hơn Domains Controller Dự
phòng(BDCs) mà sẽ thực hiện khi domains chính qúa tải hoặc bị tắt.BDCs thông thường
ñồng bộ với hệ thống SAM của mình cùng với Domains Controller Chính.
Chính vì thế mà khi cần thiết chúng có thể thực hiện dịch vụ DC mà không cần ñến sự lo
lắng của clients.Chúng ta thấy rằng BDCs không chỉ có thể có quyền truy cập ñọc ñến bản
sao SAM mà chúng còn có thể cập nhật lại ñược các cơ sở dữ liệu của mình bằng con
ñường ñồng nhất với PDC. Server ở domains Windows có thể sử dụng dữ liệu SAM của bất
cứ Domains Controller Chính và Dự phòng nào ñể tiến hành xác ñịnh tài khoản và muốn
truy cập vào dữ liệu cũng như ñăng nhập vào domains.
Chúng ta thấy rằng các hướng khác nhau của khái niệm "Nhóm làm việc Windows" và
"Domains Windows" giao nhau.Tuy nhiên chúng ta chỉ lên nhớ rằng Domains Windows - Nó
ñơn giản chỉ là một nhóm làm việc Windows mà ñược bổ sung một hay nhiều domains
controller.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
23
Samba có thể thực hiện chức năng Domains Controller Chính dưới Windows 98/95 mà
không có bất cứ vấn ñề nào.Tuy nhiên Samba 2.0 có thể thực hiện vai trò Domains
Controller Chính chỉ với mục ñích kiểm tra.Tại thời ñiểm hiện tại, nó không thể thực hiện các
chức năng khác của Domains Controller Chính.(Cũng tại thời ñiểm ñó,Samba 2.1 ñã có thể
thực hiện ñược,chính vì thế bạn có thể sử dụng Samba như PDC cho các clients NT).Trong
khi ñó Microsoft ñã khoá protocol ñể ñồng nhất dữ liệu SAM,chính vì thế mà Samba tại thời
ñiểm hiện tại chưa có thể thực hiện như Domains Controller Dự phòng.
1.4.2 Browsing(Trình duyệt)
Trình duyệt - ñó là câu trả lời cho câu hỏi của người sử dụng:"Những máy tính nào nằm
trong mạng Windows".Chúng ta cũng nhận thấy rằng ở ñây không có sự liên hệ với trình
duyệt World Wide Web.
Trước khi thực hiện trình duyệt tài nguyên thì người sử dụng cần phải biết tên máy tính mà
cần truy cập ,sau ñó nhập vào UNC bằng tay,như ñã chỉ ở trên ñể truy cập vào tài nguyên:
\\HYDRA\network\
Với trình duyệt bạn có thể có ñược các thông tin trên máy tính.
1.4.2.1 Tầng trình duyệt
Như chúng ta ñã biết ,có hai cách trình duyệt tài nguyên trong mạng SMB/CIFS:
Trình duyệt danh sách các máy tính(với các tài nguyên)
Trình duyệt danh sách tài nguyên trên một máy cụ thể
Chúng ta hãy quan sát cách thứ nhất.ở trong nhóm làm việc Windows nào và ở trong mạng
con nào.Mỗi máy tính có khả năng làm việc làm việc với tập hợp các máy tính mà cho phép
truy cập tại thời ñiểm hiện tại.
Máy tính ñó gọi là local master browser,còn tập hợp mà nó ñiều khiển gọi là tập hợp ñược
trình duyệt.Các máy tính trong mạng sử dụng tập hợp ñược trình duyệt ñể giảm trọng tải
traffic mà ñược tạo ra khi trình duyệt.Cũng trong thời gian ñó mỗi máy tính thực hiện một
yêu cầu ñộng tại thời ñiểm truy cập hiện tại,vì thế máy tính có thể chỉ ñơn giản gửi ñến local
master browser ñể cập nhật lại danh sách các máy tính trong mạng.
ðể trình duyệt ñến tài nguyên cụ thể trên máy tính thì người sử dụng cần phải kết nối ñến
máy tính ñó.Tuy nhiên những thông tin trên không thể nhận ngay qua tập hợp máy tính
ñược trình duyệt.Việc trình duyệt danh sách các tài nguyên trên máy tính chỉ có thể thực
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
24
hiện sau khi nhấn kép lên tên biểu tượng của máy tính cần truy cập và nó cần phải có mặt
tại thời ñiểm hiện tại trong mạng.
Giống như bạn ñã nhìn thấy ở phần ñầu,máy tính trả lời danh sách các tài nguyên ñược
phép truy cập,tất nhiên sau khi ñã ñược kiểm tra tài khoản thành công.
Mỗi server trong nhóm làm việc Windows cần một phải cống bố sự tông tại của mình
với local master browser sau khi nó ñăng kí tên NetBios,và sau ñó(theo lý thuyết) sẽ
thông báo sự thoát khỏi của mình sau khi ngắt liên kết.Chính xác như vậy, local master
browser có trách nhiệm khi lại những ñiểu ñó cho server.Chúng ta cũng nhận ra rằng local
master browser không nhất thiết là chính máy tính,server name NetBios(NBNS) mà chúng
ta sẽ thảo luận dưới ñây.
Chú Ý:Windows Network Neighborhood có thể ñiều hành một cách không bình thường:cho
ñến khi bạn chưa chọn lấy một máy tính xác ñịnh ñể trình duyệt.Cửa sổ Network
Neighborhood có thể chứa những thứ mà ñã bị xóa ñi rồi hoặc ngược lại không hiển thị một
máy nào cả(khi bạn vừa mới kết nối vào mạng).Như thường nói,sau khi bạn chọn server
và kết nối với nó,bạn có thể tin tưởng rằng,các tài nguyên và máy in của bạn sẽ tồn tại trong
mạng.
Khác với những chức năng trên,hầu như các máy Windows(NT Server, NT Workstation, 98,
95, hoặc Windows 3.1 cho Workgroups) ñều có thể thực hiện như local master
browser .Giống như domains controller,local master browser có thể có một hoặc nhiều
hơn browser phụ trong LAN,dùng khi local master browser không làm việc hoặc bị tắt bởi
một lý do nào ñó.ðể thực hiện ñiều ñó thì local browser phụ cần phải cẩn thận ñồng hoá
danh sách các máy tính ñược trình duyệt với local master browser.Chúng ta hãy bổ sung
vào sơ ñồ Windows domain và local browser phụ.
hình 1.13
Tiếp theo chúng ta hãy xem số lượng nhỏ nhất local browser phụ có thể ñược trong một
nhóm làm việc:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
25
Nếu như có từ 1 ñến 32 trạm dưới windows NT trong mạng hoặc 1 ñến 16 máy với
Windows 95/98,thì local master browser sẽ tạo ra một local browser phụ ñể bổ sung cho
local master browser
Nếu như số lượng các trạm Windows NT từ 33 ñến 64 hoặc Windows 98/95 từ 17 ñến 32
thì local master browser sẽ tạo ra hai local browser phụ
Nói chung không tồn tại giới hạn chính xác local browser phụ mà có thể tạo bởi local master
browser .
1.4.2.2 Chọn lựa trình duyệt
Trình duyệt - ðó là hướng then chốt của tất cả các nhóm làm việc Windows.Tuy nhiên
không phải tất cả ñều làm việc một cách tuyệt ñối.Chúng ta hãy xem ví dụ sau:Giả sử
Windows NT Server với desktop là CEO - một hãng nhỏ coi là local master browser cho ñến
khi nó chưa bị tắt.Từ thời ñiểm ñó,Windows NT Workstation ñồng ý nhận làm công việc
ñó.Tuy nhiên hiện tại,máy tính ñó ñang gặp phải một vấn ñề lớn là sử dụng tài nguyên
processor quá lớn.Về nguyên tắc mà nói:Trình duyệt hoàn toàn ñược chạy ñến server mà
vào hay ra từ mạng.Thực tế thì mỗi máy tính Windows ñều có thể thực hiện browser và cần
phải làm nó.Quá trình tiếp nhận câu trả lời gọi là sự chọn lựa.
Thuật toán chọn lựa ñược thiết lập trên tất cả các OS Windows,chính vì thế mà mỗi máy
trong chúng cần phải thống nhất xem máy nào trở thành local master browser và máy nào
thành local browser phụ.Việc chọn lựa có thể thực hiện ở bất cứ lúc nào.Ví dụ như:Khi CEO
kết thúc công việc và thông báo khởi ñộng lại server.Cho ñến khi server xuất hiện trong
mạng,nó sẽ ñồng hoá sự tồn tại của mình và thực hiện chọn lựa,ñể có thể nhìn thấy các
máy trong khu vực khác có thể thực hiện vai trò local master browser hay không.
Trong quá trình chọn lựa thì mỗi máy tính sẽ gửi ñi broadcast về bản thân.Chúng chứa các
thông tin sau:
Phiên bản protocol cho sự chọn lựa
HðH ñược cài trên máy tính
Thời gian tìm ra clients trong mạng
Tên clients
Những thông tin này ghĩ rõ nhứng máy nào có khă năng thực hiện vai trò local master
browser(Phần 6 sẽ nói rõ ñiều này hơn).
1.4.3 Nhóm làm việc(workgroup) trong Windows Có thể chia nhỏ thành các subnet(mạng con) ñược không?
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
26
Vâng hầu như mọi người ñều có nêu ra một vấn ñề chung.Việc chia nhỏ thành các mạng
con không ñược nghĩ ñến khi tạo ra nhóm làm việc trong Windows NT 3.5 hoặc
Windows.Vào kết quả ñó,domains Windows trong một hoặc hớn một subnet trên thực tế
gắn liền với hai hoặc nhiều hơn hai nhóm làm việc và có cùng một tên.Một tin mới là bạn có
thể sử dụng local master browser ñể theo dõi quá trình kiểm tra ñăng nhập ở từng
subnet.Còn tin xấu là không phải tất cả có thể thực hiện bằng browser.
Như ñã nói,mỗi subnet cần phải có một local master browser riêng của mình.Khi domains
Windows làm việc ở một vài subnet,thì hệ thống administrator cần phải chọn một trong số
chúng làm domain master browser.Khi ñó domain master browser cần phải lưu trữ danh
sách trình duyệt cho domains Windows.Những danh sách này ñược tạo ra trong một vòng
lặp cập nhật danh sách cho từng local master browser với danh sách trình duyệt domain
master browser.Sau khi ñồng hoá thì domain master browser và local master browser sẽ
chứa các dữ liệu giống nhau.Hãy xem hình 1.14
Nghe thật là tuyêt?Tuy nhiên có không hoàn toàn như vậy bởi có một số nguyên nhân sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
27
Nếu như tồn tại domain controller chính thì nó bao giờ cũng chiếm vai trò domain master
browser.Theo suy luận của Microsoft thì hai loại tài nguyên NetBios<1B> không thể(lấy làm
tiếc) tách rời.
Máy tính với Windows 98/95 không thể trở thành hoặc trao ñổi với domain master
browser.Nhóm cải tạo Samba biết rằng,Giải pháp tình thế Microsoft là bắt các clients phải
có trong các subnet của nhóm làm việc dù chỉ là một trạm làm việc Windows NT(Server
Samba)
Mỗi một local master browser trong subnet sẽ tiếp công việc với danh sách trình duyệt của
subnet của mình,bởi vì nó sẽ trở thành dữ liệu ñể so sánh.Chính vì thế,nếu máy tính muốn
nhìn thấy danh sách server bên trong mạng,thì nó cần phải gửi ñến local master browser
một yêu cầu tương ứng.Nếu như máy tính muốn nhìn thấy danh sách các server bên ngoài
mạng subnet,thì nó kiểu gì cũng chỉ nhìn thấy trong giới hạn mà local master browser cho
phép.
Chính vì ñiều ñấy mà,trong một khoảng nhất ñịnh,danh sách trình duyệt ñược chấp nhận
bởi local master browser sẽ ñồng nhất với domain master browser và sẽ ñồng nhất
với local master browser của domain subnet khác.
Samba khi cần thiết sẽ có thể thực hiện vai trò như domain master browser trong domain
Windows.Bổ sung vào ñó,nó có thể thực hiện như local master browser cho mạng Windows
và ñồng nhất danh sách trình duyệt của mình với domain master browser.
1.4.4 Dịch vụ WINS(Windows Internet Name Service)
Dịch vụ WINS - là hiện thực hoá server name NetBios(NBNS) từ Microsoft.Chính vì thế mà
WINS có ñầy ñủ các ñặc tính của NetBios.Thứ nhất,WINS rất ñơn giản. Bạn có thể có duy
nhất một máy fred hoặc một nhóm làm việc CANADA hoặc USA.Bổ sung vào ñó,WINS
ñộng:khi mà client lần ñầu ñăng nhập vào mạng thì nó cần thông báo về tên và ñịa chỉ nhóm
làm việc local server WINS.Khi ñó Server WINS sẽ lưu lại những thông tin ấy cho ñến khi
nào,client sẽ cập nhật lại ñăng kí WINS của mình,mà sẽ dùng ñể chỉ ra rằng nó vẫn ñang ở
trong mạng.
Chú ý rằng Server WINS không ñặc biệt như nhóm làm việc hoặc domains.Nó có thể xuất
hiện ở bất cứ nơi nào và phục vụ bất cứ ai.
Một vài server WINS có thể cài ñặt ñể ñồng hoá với nhau sau một khoảng thời gian nhất
ñịnh.Nó cho phép các máy tính(mà ñăng nhập hoặc thoát ra khỏi mạng) có thể trao ñổi
thông tin từ một server WINS ñến một cái khác.Tuy nhiên tạm thời ở trong lý thuyết là tốt
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
28
hơn.Tất cả có thể làm việc tồi hơn nếu như trong mạng có một vài server WINS.Bởi
vì,server WINS có thể làm việc với một vài mạng con(subnet)(Bạn hoặc có thể thiết lập ñịa
chỉ server WINS cho từng clients của bạn,hoặc có thể biết về nó qua DHCP),nên sẽ có lợi
hơn ñối với mỗi clients Windows,mà không phụ thuộc vào việc tồn tại bao nhiêu domains
Windows mà kết nối với một server WINS.
Chính vì thế mà ở ñây,chỉ cần một server WINS kiểm soát với các thông tin cụ thể,cùng với
một vài server WINS ñiều khiển qúa trình ñồng hoá dữ liệu lẫn nhau theo từng phần thay ñổi.
Server WINS ñang làm việc hiện hành gọi là Server WINS chính.Bạn cũng có thể cài ñặt
server WINS phụ,mà ñược sử dụng khi server WINS chính tắt hoặc không làm việc.Chúng
ta thấy rằng ở ñây không có hiện tượng chọn lựa,ñể xác ñịnh máy nào sẽ làm server WINS
chính hay là phụ.Việc chọn lựa server WINS cần phải ñược sự quyết ñịnh của hệ thống
administrators.Cả hai server,server WINS chính và server WINS phụ sẽ ñược ñồng hoá dữ
liệu của mình theo chu kỳ trên các ñịa chỉ ñược cho trước.
Trong các hệ thống Windows chỉ có Windows NT Workstation hoặc NT server có thể thực
hiện vai trò của server WINS.Samba có thể làm chức năng là một server WINS những
không thể làm server WINS phụ.
1.4.5 Samba có thể làm gì?
Bạn có lẽ không ghĩ rằng trong mạng Microsoft có thể phức tạp như thế.Bây giờ chúng ta
chứng tỏ rằng Samba có thể giúp chúng ta những gì.Bảng 1.6 nêu ra các chức năng có thể
và không thể của Samba ở domain Windows NT hoặc nhóm làm việc trong Windows.Giống
như bạn nhìn thấy có rất nhiều protocol domain NT ñã bị khoá và không có tài liệu trong
Microsoft.Samba không thể chính xác ñồng hoá dữ liệu của mình với server Microsoft và
trong nhiều trường hợp không thể ñóng vai trò là server phụ.Có lẽ Samba 2.x còn có nhiều
hạn chế,không làm việc với các protocol nhận dạng trong các domain master controller
nhưng từng ngày,từng ngày sẽ hoàn thiện hơn:
bảng 1.6
Chức năng Có thể thực hiện hay không?
File Server có
Printer Server có
Primary Domain Controller có(khuyến khích cho các Phiên bản Samba 2.1 và cao hơn)
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
29
Chức năng Có thể thực hiện hay không?
Backup Domain Controller không
Windows 95/98 Authentication có
Local Master Browser có
Local Backup Browser không
Domain Master Browser có
Primary WINS Server có
Secondary WINS Server không
1.5 Khái quát về Samba Distribution Như ñã nói ở trên,Samba có chứa một vài chương trình?mà dùng ñể thực hiện và kết nối
các dịch vụ khác nhau.Chúng ta hãy tiến hành nghiên cứu từng chương trình và cách chúng
sẽ làm việc.Các chương trình chính mà ñi cùng với distribution Samba là hai
daemons.Chúng ta hãy xem các chức năng của chúng:
smbd
Daemon smbd trả lời cho quyền truy cập ñến tài nguyên giữa các server Samba và clients
của chúng.Nó cho phép hoạt ñộng các dịch vụ với tập tin,máy in và in ấn ñối với các clients
SMB trong một hoặc nhiều hơn một hệ thống mạng.smbd sẽ trả lời cho quá trình xác ñịnh
giữa các server Samba và các clients mạng.Bổ sung thêm vào ñó,là quá trình kiểm tra tài
khoản cũng như khoá các tài nguyên và quyền truy cập ñến dữ liệu qua protocol SMB.
nmbd
Daemon nmbd - là tên của một server,dùng ñể thực hiện các chức năng của server WINS
và NetbBios,cũng như giúp bạn có thể nhận ñược các packages LAN Manager.Daemon
này lắng nghe các yêu cầu của server và các thông tin kèm theo các cuộc gọi.Nó cũng ñưa
ra danh sách trình duyệt Network Neighborhood và tham gia vào quá trình chọn lựa browser
Distribution Samba có chứa một vài lệnh ững dụng Unix:
smbclient
Clients Unix dạng FTP,mà có thể sử dụng ñể kết nối với tài nguyên Samba
smbtar
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
30
Chương trình dùng ñể sao chép các dữ liệu trong các tài nguyên,tương ững với tar trong
Unix
nmblookup
Chương trình dùng ñể thực hiện trình duyệt NetBios over TCP/IP
smbpasswd
Chương trình cho phép biến ñổi.mã hoá mật khẩu sử dụng trong Samba
smbstatus
Chương trình dùng ñể hiển thị trạng thái kết nối hiện thời ñến các tài nguyên trên server
Samba
testparm
Một chương trình ñơn giản ñể kiểm tra cấu hình tập tin config Samba
testprns
Chương trình cho phép kiểm tra ,daemon smbd xác ñịnh ñược hay không các máy in khác
nhau
Mỗi một phiên bản Samba ñều phải trải qua một quá trình kiểm tra nhất ñịnh.Nó nhanh
chóng ñược cập nhật nếu gặp một vấn ñề nào ñó.Phiên bản Samba mà cuốn sách này sử
dụng là Samba 2.0.5.Cuốn sách ñược cấu hình trên nền tảng các chức năng của Samba
2.0 và sửa lại một số lỗi của phiên bản Samba 1.9.x ñã lỗi thời.
1.6 Làm thế nào ñể có ñược Samba
Samba tồn tại ở dạng nhị phân và dạng mã gốc trong một số website trên internet.Trang
chủ của Samba là:
http://www.samba.org
Tuy nhiên nếu bạn không thích ñợi các packages từ Australia thì bạn vẫn còn có thể tải
Samba từ các website khác.Danh sách các website có chứa Samba ñược ghi trên trang chủ
của Samba.
1.7 Có gì mới trong Samba 2.0? Samba 2.0 - ðây là package ñược mong chờ rất lâu.Bổ sung vào Samba 2.0 là toàn bộ khả
năng làm việc với domain NT và một ứng dụng mới Samba Web Administration Tool
(SWAT),làm việc qua web-browser ñể cấu hình Samba.Tuy nhiên ñã có ñến một tá lần cải
thiện cho ñến cuối mùa hè năm 1998.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
31
1.7.1 NT Domains
Việc ñảm bảo hoạt ñộng của Samba ñối với Domains NT(bắt ñầu từ phiên bản 2.0) ñã mở
ra những khả năng sau:Nó cho phép server SMB sử dụng nguyên lý xác nhận cơ học mà
cần thiết cho qúa trình tương thích với NT trong tương lai và cho phép ñăng nhập và
Domains NT.Login domains cho phép các tài khoản ñăng nhập vào hệ thống Domains NT
và sử dụng máy tính trong domains mà không cần phải có sự ñăng nhập ñặc biệt vào
chúng.Các phiên bản nhỏ hơn Samba2.0.0 chỉ có thể làm việc với dịch vụ ñăng nhập trong
Windows 95/98 những không thể vào NT.Mặc dù có thể nói việc làm việc với dịch vụ ñăng
nhập vào NT
là chưa hoàn thiện những công việc với ý tưởng trên vẫn ñang tiếp tục phát triển.
1.7.2 ðơn giản hoá công việc của administrators
SWAT - Samba Web Administration Tool,cho phép dễ ràng xây dựng cấu hình server và
biến ñổi nó,mà không cần phải làm việc với tập tin samba.conf.SWAT cho phép sử dụng ñồ
họa ñể truy cập ñến tài nguyên,mà Samba sẽ gửi lên cho các clients.Bạn có thể xây dựng
cấu hình Samba bằng SWAT,sau ñó có thể soạn thảo lại bằng tay hoặc ngược lại.Samba
cho phép làm ñiều này.
Theo cách biên dịch,GNU autoconf ñược sử dụng ñể thực hiện các nhiệm vụ biên dịch hoặc
cài ñặt.Chính vì thế bạn có thể nhận ñược sự truy cập nhanh chóng ñến SWAT
1.7.3 Năng suất làm việc
Ở ñây giới thiệu những biến ñổi chính về năng suất làm việc trong Samba:Code ñược tổ
chức lại và nmbd(daemon sử dụng trong Samba) cũng ñược viết lại
Dịch vụ name/browsing bây giờ có thể sử dụng ñồng thời cho khoảng 35,000 clients
Dịch vụ tập tin và máy in có thể làm việc với 500 tài khoản,từ một tài khoản bậc trung sẽ
không nhận thấy có sự thay ñổi về tốc ñộ.
Linux/Samba trên một máy làm việc nhanh hơn trên NT server.Và Samba ñang ngày càng
phát triển.
Mở rộng các ñiểm chốt quan trọng cho phép máy tính clients kích hoạt các tập tin trong
mạng nội bộ,ñể tăng tốc ñộ làm việc,tất nhiên không có bất cứ một sự thay ñổi nguy hiểm
ñỗi với cách tập tin cache.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
32
1.7.4 Các nét ñặc trưng
Trong Samba 2.0 tồn tại một vài nét ñặc trưng.Bây giờ bạn có thể tiến hành một vài phân
tích Samba trên một máy.Chúng như một server riêng biệt.Cái ñặc trưng ở ñây là giống với
các host ảo ở trong các web-server hiện ñại.Nó cho phép host phục vụ một vài nhóm riêng
biệt hoặc cho phép truy cập ñến các tài nguyên trên ñĩa với một biện pháp an toàn theo
cách "tài khoản-mật khẩu",cùng với tập hợp các máy in mà không cần phải sử dụng một
phương án ñảm bảo an toàn ñặc biệt.Việc in ấn trở lên ñơn giản ñối với các chủ nhân Unix
System V.
Samba bây giờ có thể tự ñộng tìm thấy các máy in mà cho phép truy cập cũng như nó làm
ñiều ñó với in ấn ở phong cách Berkeley.Cùng với các thứ trên,Samba còn có khả năng làm
việc với nhiều code trong các trang,chính vì thế nó có thể sử dụng không chỉ với ngôn ngữ
ở Europe và còn có thể sử dụng protocol SSL(Secure Sockets Layer) ñể mã hóa tất cả dữ
liệu ñược gửi qua internet thay vì sử dụng mật khẩu thông thường.
1.7.5 Những biến chuyển trong vấn ñề tương thích
Ngày nay nó trở lên ña chức năng hơn,và Samba cũng ngày càng tương thích hơn ñối với
Windows NT.Samba bao giờ cũng cho phép mã hoá mật khẩu theo kiểu của Microsoft.Hiện
tại nó sử dụng cá ứng dụng và tham biến ñể làm việc với các mã hóa Microsoft,cũng như
lưu lại những tập tin mật khẩu ñồng nhất giữa Unix và Windows khi thực hiện một công việc
cho trước.Cuối cùng master browser Samba có thể chỉ ñạo ñể ñồng hoá bản thân mình với
các server SMB khác trong các subnet khác nhau.Cho phép SMB làm việc như nhau trong
một vài subnet.Samba sử dụng các cách khác nhau ñể thực hiên các phương pháp của
Microsoft mà không có tài liệu công bố.
1.7.6 Smbwrapper
Cuối cùng tồn tại một phiên bản mới clients Unix dưới cái tên là smbwrapper.Thay vào vị trí
của modules nhân,mà cho phép Linux thực hiện vai trò Samba clients,bây giờ là một câu
lệnh ñể khởi ñộng các thư viện cần thiết,cho phép hoạt ñộng với toàn bộ hệ thống tập tin
SMB trên một vài phiên bản Unix.Một lần thực hiện duy nhất,lệnh ls /smb sẽ hiển thị danh
sách tất cả các máy ở trong nhóm làm việc của bạn.Còn cd /smb/server_name/share_name
sẽ ñưa bạn ñến tài nguyên xác ñịnh(thư mục cho phép truy cập),dễ dàng hơn ở trong
NFS(Network File System ).Tại thời ñiểm hiện tại thì smbwrapper làm việc trên Linux,Solaris,
SunOS 4, IRIX, и OSF/1 và ñang chờ ñợi nó sẽ làm việc trên các HðH khác trong tương lai
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
33
không xa.
1.8 Và ñó không phải là tất cả Samba - Là một ứng dụng thật tuyệt với,có tiềm năng ñối với cả các mạng nhỏ
SMB/CIFS.Phần này ñã giới thiệu với bạn một vài khái niệm cơ bản,thế nào là Samba,cái gì
quan trọng hơn khi làm việc trong mạng Windows.
Ở phần sau sẽ giúp bạn cài ñặt Samba trên Unix,nơi mà làm việc hai daemons và cả cấu
hình clients Windows 98/95,NT ñể làm việc với Samba.Sau tất cả các công việc ñó,việc ñau
ñầu với cấu hình Samba sẽ trở thành quá khứ.Chào mừng các bạn ñến với thế giới Samba.
2. Cài ñặt Samba trên HðH Unix
Bây giờ bạn ñã biết,Samba có thể làm ñược những gì cho bạn và cho các người sử dụng
trên hệ thống của bạn.Chúng ta hãy bắt ñầu việc cài ñặt Samba trên hệ thống Unix.Khi thực
hiện ñiệu nhảy samba,mỗi chúng ta phải học nhảy một cách rất từ từ,từng bước một.Việc
cài ñặt Samba cũng như vậy,cần phải học từng bước một.Ở trong phần này chúng tôi
sẽ hướng dẫn bạn thực hiện các bưỡc một cách ñúng nhất.
Ở trong ví dụ này,chúng ta sẽ cài ñặt phiên bản Samba 2.0.4 trên HðH Linux với nhân là
2.0.31.Tuy nhiên các bước cài ñặt tương tự nhau trên các hệ thống khác mà Samba có thể
làm việc.Thông thường quá trình cài ñặt sẽ mất khoản một tiếng,bao gồm cả khởi ñộng các
tập tin gốc và biên dịch chúng,thiết lập tập tin cấu hình và chạy server.
Nếu như cho ñến lúc ñó mà bạn chưa nghe ñến HðH Linux thì có lẽ bạn ñã bỏ qua rất nhiều
rồi.Linux - là một hệ thống ñược phổ biến rộng rãi,ñược phát triển từ Unix,chủ yếu làm việc
trên các dạng Intel x86,Motorola PowerPC,và SunSparc.HðH rất dễ cài ñặt và ngày càng
phát triển rộng rãi.Có lẽ bạn có thể tìm thấy các thông tin cụ thể hơn trên website
http://www.linux.org
ðây là danh sách các bước cần thiết mà bạn cần phải làm:
1. Phải tải các tập tin gốc hoặc là ở dạng nhị phân
2. ðọc các tài liệu về cài ñặt
3. Soạn thảo lại tập tin makefile
4. Biên dịch mã
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
34
5. Cài ñặt các tập tin cần thiết lên hệ thống
6. Tạo tập tin cấu hình server Samba
7. Kiểm tra lại tập tin cấu hình
8. Khởi ñộng daemons Samba
9. Kiểm tra lại hoạt ñộng daemons
2.1 Tải distribution Samba
Nếu bạn muốn làm tất cả mọi việc một cách nhanh chóng,thì CD-ROM ñi kèm với cuốn
sách này có chứa các tập tin gốc và dạng nhị phân của Samba.CD - ðó là bản sao các tập
tin và thư mục trên server Samba : ftp.samba.org
Còn một cách khác,nếu bạn muốn tải các phiên bản mới nhất thì hãy tìm ñến website chính
của Samba - http://www.samba.org .Tại ñây bạn có thể nhìn thấy danh sách của các
website khác trên thế giớ mà có chứa samba và bạn có thể tải chúng từ những website
này.Hãy chọn website nào mà gần bạn nhất về mặt ñịa lý.
Website chuẩn của Samba thường chứa các tài liệu kèm theo về Samba và sách hướng
dẫn cầm tay cũng như các thông tin mới nhất có liên quan ñến Samba và tất nhiên là cùng
với các tập tin mã gốc và dạng nhị phân của Samba.Nếu bạn cần tìm các phiên bản cũ hoặc
là cài ñặt các distribution nhị phân Samba,có lẽ tốt nhất là hãy tải các phiên bản mới Samba
ở dạng mã gốc từ các website-mirror gần bạn nhất.Các distribution này thường có dạng sau:
samba-latest.tar.gz
Nếu bạn quyết ñịnh không sử dụng phiên bản Samba mà có trên ñĩa CD-ROM ñi kèm với
cuốn sách thì hãy tìm ở ñấy các phiên bản mới nhất và tải về.
2.1.1 Mã gốc hay là Dạng nhị phân
Các packages ñã biên dịch cũng cho phép sử dụng trong Unix.Những packages này chứa
các tập tin nhị phân của tất cả các chương trình trong Samba và cũng như các tài liệu tiêu
chuẩn về Samba.Chúng ta nhận thấy rằng,việc cài ñặt các tập tin nhị phân có thể giúp bạn
tránh khỏi một khối lượng lớn các vấn ñề và không mất nhiều thời gian,tuy nhiên trước tiên
bạn hãy nhớ hai ñiều sau,trước khi quyết ñịnh cài ñặt qua tập tin mã gốc hay là qua tập tin
nhị phân:
Các packages nhị phân có thể nằm trong các phiên bản cuối cùng của các chương trình
ứng dụng,trong một hoặc hai(có thể nhiều hơn) ñã ñược phát hành.ðặc biệt sau hàng loạt
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
35
các biến ñổi không lớn lắm hoặc là cho các hệ thống không thông dụng. Hãy ñọc các tài liệu
ñi kèm cho các packages ở dạng mã gốc hoặc dạng nhị phân ñể có thể kiểm tra các tham
biến ñi kèm mới ñược bổ sung,mà cần thiết cho hệ thống của bạn.ðiều ñó rất cần thiết cho
các tập tin mã gốc và nhị phân trên CD-ROM:Trong thời gian suất bản cuốn sách chúng tôi
ñã bổ sung thêm phiên bạn cuối cùng Samba(ñược công bố).Tuy nhiên qúa trình cải tạo
vẫn ñang tiếp tục,và có lẽ phiên bản mới beta ñã ñược công bố trên internet.
Nếu bạn sử dụng các tập tin nhị phân ñã biên dịch,thì bạn cần phải kiểm tra trước tiên sự
tồn tại của các tập tin thư viện,mà cần thiết cho công việc của chương trình.Trên một vài hệ
thống các tập tin thực hiện ñã chứa sẵn trong mình các thư viện cần thiết những không phải
là dạng chính tắc.Bởi vì trên nhiều HðH hiện nay thuộc dòng Unix(như Linux,SGI
Irix,Solaris,HP-UX,..),các thư viện là hoàn toàn tự ñộng ñược tải khi cần thiết.ðiều ñó có
nghĩa là các chương trình sẽ tự ñộng tìm các thư viện cần thiết trên hệ thống,chính vì thế
mà bạn có thể phải cài ñặt lại các phiên bản thư viện mới.Tập tin README hoặc tập tin
makefile,mà ñi kèm trong các distribution,cần phải chỉ ra tất cả các thông tin cần thiết.
ðiều này ñặc biệt ñối với các chương trình mà sử dụng glibc-2.1. Hệ thống thư viện này tạo
ra một vài vấn ñề cho cộng ñồng các nhà lập trình ở chỗ nó không hoàn toàn giống như các
phiên bản glibc trước ñó
Trên nhiều hệ thống với các thư viện ñộng,có tồn tại ứng dụng ldd.Ứng dụng này sẽ chỉ ra
các thư viện ,mà cần thiết cho từng chương trình cụ thể. Và cũng như ngay cả với các thư
viện cài ñặt trên hệ thống ñể ñáp ứng các yêu cầu cần thiết.Ví dụ ñể kiểm tra chương trình
smbd trên hệ thống cần các thư viện nào bạn có thể làm như sau:
$ ldd smbd
libreadline.so.3 => /usr/lib/libreadline.so.3
libdl.so.2 => /lib/libdl.so.2
libcrypt.so.1 => /lib/libcrypt.so.1
libc.so.6 => /lib/libc.so.6
libtermcap.so.2 => /lib/libtermcap.so.2
/lib/ld-linux.so.2 => /lib/ld-linux.so.2
Nếu như tồn tại những vấn ñề không thích ứng giữa Samba và những thư viện trên máy
của bạn thì tài liệu này cùng với distribution có thể giải quyết vấn ñề ñó.
Bạn phải biết rằng,mỗi distribution dạng nhị phân có chứa trong nó những thông tin về hệ
thống mà distribution sẽ cài lên.Ở trong nó có các thông tin cần thiết về các thư mục và các
tham biến cấu hình.Tất nhiên,hãy ñọc các tài liệu và tập tin makefile,nằm trong thư mục gốc
của distribution ñể có thể thấy ñược những thư mục nào và những biến nào ñược sử dụng
khi biên dịch.Trong một vài trường hợp,ñiều ñó có thể không thực hiện ñược trên hệ thống
của bạn.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
36
Có một vài tham biến cấu hình có thể ngăt ñi nhờ các tham biến lệnh trong quá trình làm
việc,có thể làm ñược ñiều ñó bằng cách ngắt chúng ñi trong quá trình biên dịch.Ví dụ
như,nếu chương trình của bạn ñịnh tạo tập tin log,lock,hoặc status files vào một vị trí không
ñúng(như /usr/local) thì bạn có thể biến ñổi chúng mà không cần biên dịch lại.
Tiếp theo chúng ta cần phải nhận thấy một vấn ñề không may mắn nữa - Mã gốc Samba
cần ñược biên dịch ở trình biên dịch ANSI C.Nếu bạn làm việc trên hệ thống với trình biên
dịch không phải là ANSI,chẳng hạn như cc trong SunOS phiên bản 4 thì bạn cần phải cài
ANSI - tương ứng với nó như gcc,sau ñó mới có thể tiến hành công việc.Nếu như qúa trình
cài ñặt trình biên dịch - ðó là ñiều bạn không muốn làm,Bạn có thể tiến hành cài ñặt các
packages nhị phân.Tuy nhiên ñể tốt hơn và thích ứng hơn với hệ thống của bạn,chúng tôi
khuyên các bạn nên biên dịch các mã gôc phiên bản cuối cùng.
Các tập tin nhị phân gcc hầu như có thể làm việc với các máy hiện nay.Hãy xem trang
http://www.gnu.org ñể có thể thấy danh sách các site với gcc và các sản phẩm GNU khác
2.1.2 ðọc tài liệu
ðiều này thật không quá ngu ngốc,nhưng thỉnh thoảng có các trường hợp tầm thường,như
bạn không bung các distribution ra mà chỉ ñơn giản dùng lệnh: configure,make và make
install và ñi uống cafe.Bạn có lẽ cũng ñồng ý rằng,ñó là những ñiều mà bạn có thể làm.ðó là
một ý kiến tồi tệ.ðặc biệt là bạn ñịnh tiến hành làm việc trong mạng Samba.
Samba 2.0 tự ñộng cấu hình trước khi biên dịch.ðiều này giải quyết một vài vấn ñề cụ thể
của công việc trên một hệ thống cho trước.Nhưng README có thể chỉ ra các tham biến ñi
kèm,mà bạn có thể muốn sử dụng sau khi cài ñặt Samba.Như trong packages với mã gốc
và nhị phân,bạn có thể tìm thấy một khối lượng lớn các thông tin trong thư mục docs ở các
hệ thống khác nhau.Các tập tin quan trọng nhất mà bạn cần ñọc là:
WHATSNEW.txt
docs/textdocs/UNIX_INSTALL.txt
Những tập tin này chỉ ra các khả năng,mà có thể thực hiện bởi Samba,cũng như các vấn ñề
thông thường hay gặp phải khi cài ñặt và cách mà bạn có thể tránh khỏi chúng.Nhất thiết
phải ñọc chúng trước khi cài ñặt chương trình.
2.2 Configuring Samba
Các ñoạn mã gốc Samba 2.0 và cao hơn không chứa tập tin makefile cần thiết cho quá trình
biên dịch.Thay vào ñó ,nó tạo ta một script configure,nằm ở catalog chính của
samba-2.0.x/source/.Script configure này ñược chạy bởi tài khoản root,ñể thiết lập cấu hình
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
37
Samba dưới các ñặc trưng riêng của từng máy tính.Bạn có thể tạo ra nhiều tham biến toàn
phần trong lệnh như sau:
# ./configure --with-ssl
Trong ví dụ này,makefile Samba sẽ ñược xây dựng dưới sự ñảm bảo của protocol Secure
Sockets Layer (SLL).Nếu bạn muốn nhìn thấy toàn bộ danh sách các tham biến có thể thì
hãy sử dụng lệnh sau:
# ./configure --help
Mỗi một tham biến có thể bật lên hoặc ngắt ñi một khả năng nhất ñịnh của Samba.Việc bật
các tham biến có thể bằng cách bổ sung thêm dòng – with-feature,ñiều ñó có nghĩa là,tham
biến trên sẽ ñược bật lên trong code sẽ biên dịch và có thể ñược sử dụng.Sử dụng tham
biến –without- feature sẽ loại bỏ chức năng của tham biến trên.Trong Samba 2.0.5,Mỗi
tham biến trong danh sách sau ñược ngắt theo ngầm ñịnh:
--with-smbwrapper
--with-afs
--with-dfs
--with-krb4=base-directory
--with-krb5=base-directory
--with-automount
--with-smbmount
--with-pam
--with-ldap
--with-nis
--with-nisplus
--with-ssl
--with-nisplus-home
--with-mmap
--with-syslog
--with-netatalk
--with-quotas
Có lẽ mỗi một tham biến ñi kèm bị ngắt theo ngầm ñịnh,thì không có một khả năng nào
tương ứng với các tham biến ấy ñược bật lên trong Samba.Tuy nhiên,bạn vẫn có thể quay
ngược lại và tìm các phiên bản Samba ñã sửa ñổi,nếu như nó có thể giúp bạn khám phá
sâu hơn nữa.
Bảng 2.1 sẽ cho bạn biết thêm các tham biến khác,mà bạn có thể sử dụng trong script
configure.Nếu bạn muốn ñặt các phần của distribution Samba vào các vị trí khác nhau,như
là ñể sử dụng một vài ñĩa cứng khác nhau hoặc các phân vùng ñĩa khác nhau.Chú ý
rằng,theo ngầm ñịnh thì các tham biến ñược cài ñặt như ñã chỉ ở trong bảng:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
38
bảng 2.1
Tham biến ñi kèm
Ý nghĩa
Theo mặc ñịnh
--prefix=directory Cài ñặt các tập tin,không phụ thuộc vào
cấu hình hệ thống,trong một catalog cơ
sở cho trước
/usr/local/samba
--eprefix=directory Cài ñặt các tập tin,phụ thuộc vào hệ
thống,trong một catalog cơ sở cho
trước.
/usr/local/samba
--bindir=directory Cài ñặt các tập tin nhị phân của người
sử dụng vào một catalog cho trước
eprefix/bin
--sbindir=directory Cài ñặt các tập tin nhị phân của
administrators vào một catalog cho
trước
eprefix/bin
--libexecdir=directory Cài ñặt các tập tin nhị phân của
chương trình vào một catalog cho
trước
eprefix/libexec
--datadir=directory Cài ñặt dữ liệu chỉ cho quyền ñọc,mà
phụ thuộc vào cấu hình hệ thống vào
một catalog cho trước
prefix/share
--libdir=directory Cài ñặt hệ thống thư viện của chương
trình
vào một catalog cho trước
eprefix/lib
--includedir=directory Cài ñặt các tập tin tiêu ñề của
packages vào một catalog cho trước
prefix/include
--infodir=directory Cài ñặt các tập tin bổ sung vào một
catalog cho trước
prefix/info
--mandir=directory Cài ñặt các trang man vào một
catalog cho trước
prefix/man
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
39
Tham biến ñi kèm
Ý nghĩa
Theo mặc ñịnh
Chú ý là trước khi chạy script configure,quan trọng là bạn phải sử dụng tài khoản root trên
hệ thống.Ngược lại bạn sẽ nhận ñược thông báo sau:
configure: warning: running as non-root will disable some tests
Bạn không cần phải ngắt bất cứ một cuộc nghiệm nào khi tạo tập tin makefile Samba.Việc
tự ñộng tìm kiếm các lỗi ñược thực hiện,ngay cả khi biên dịch và chạy Samba trên hệ thống
của bạn.
ðây là một ví dụ khi chạy script configure ñể tạo tập tin makefile trong Samba 2.0.4 trên hệ
thống Linux.Chúng ta nhận thấy cần phải chạy script configure trong catalog gốc source,bạn
cần phải làm như sau:
# cd samba-2.0.4b/source/
# ./configure | tee mylog
loading cache ./config.cache
checking for gcc... (cached) gcc
checking whether the C compiler (gcc -O) works... yes
checking whether the C compiler (gcc -O) is a cross-compiler... no
checking whether we are using GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for a BSD compatible install... (cached) /usr/bin/install -c
...(content omitted)...
checking configure summary
configure OK
creating ./config.status
creating include/stamp-h
creating Makefile
creating include/config.h
Nói chung,bất cứ thông báo nào từ configure mà không bắt ñầu bằng từ checking hoặc
creating ñều là lỗi.ðể phân tích kết quả script thông thường có thể giúp bạn ñịnh hướng lại
ñầu ra cho tập tin.Như chúng ta ñã nói,có thể làm bằng lệnh tee.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
40
Nếu như nảy sinh vấn ñề trong quá trình cấu hình thì thông tin có thể tìm thấy trong tập tin
config.log và ñược ghi bởi configure trong catalog cục bộ.
Nếu như quá trình cấu hình thành công,thì bạn có thể nhìn thấy thông báo checking
configure summary,sau ñó là thông báo configure ok và bốn hoặc năm thông báo về các tập
tin ñược tạo.Bước tiếp theo là biên dịch.
2.3 Biên dịch và Cài ñặt Samba
Từ thời ñiểm ñó bạn cần phải chuẩn bị cho quá trình biên dịch các tập tin nhị phân
Samba.Biên dịch có thể nói là ñơn giản.Ở trong catalog gốc source hãy thực hiện make ở
vỏ lệnh.Ứng dụng make sẽ ñưa ra một loạt các thông báo bắt ñầu từ:
Using FLAGS = -O -Iinclude ...
Nó sẽ xây dựng các biên dịch cho smbd, nmbd và kết thúc bằng một ảnh lệnh
cho bin/make_ printerdef.ðây là một ví dụ cho make trên Samba 2.0.4 trong Linux:
# make
Using FLAGS = -O -Iinclude -I./include -I./ubiqx -I./smbwrapper
-DSMBLOGFILE="/usr/local/samba/var/log.smb"
-DNMBLOGFILE="/usr/local/samba/var/log.nmb"
-DCONFIGFILE="/usr/local/samba/lib/smb.conf"
-DLMHOSTSFILE="/usr/local/samba/lib/lmhosts" -DSWATDIR="/usr/local/samba/swat"
-DSBINDIR="/usr/local/samba/bin" -DLOCKDIR="/usr/local/samba/var/locks"
-DSMBRUN="/usr/local/samba/bin/smbrun"
-DCODEPAGEDIR="/usr/local/samba/lib/codepages"
-DDRIVERFILE="/usr/local/samba/lib/printers.def" -DBINDIR="/usr/local/samba/bin"
-DHAVE_INCLUDES_H -DPASSWD_PROGRAM="/bin/passwd"
-DSMB_PASSWD_FILE="/usr/local/samba/private/smbpasswd"
Using FLAGS32 = -O -Iinclude -I./include -I./ubiqx -I./smbwrapper
-DSMBLOGFILE="/usr/local/samba/var/log.smb"
-DNMBLOGFILE="/usr/local/samba/var/log.nmb"
-DCONFIGFILE="/usr/local/samba/lib/smb.conf"
-DLMHOSTSFILE="/usr/local/samba/lib/lmhosts" -DSWATDIR="/usr/local/samba/swat"
-DSBINDIR="/usr/local/samba/bin" -DLOCKDIR="/usr/local/samba/var/locks"
-DSMBRUN="/usr/local/samba/bin/smbrun"
-DCODEPAGEDIR="/usr/local/samba/lib/codepages"
-DDRIVERFILE="/usr/local/samba/lib/printers.def" -DBINDIR="/usr/local/samba/bin"
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
41
-DHAVE_INCLUDES_H -DPASSWD_PROGRAM="/bin/passwd"
-DSMB_PASSWD_FILE="/usr/local/samba/private/smbpasswd"
Using LIBS = -lreadline -ldl -lcrypt -lpam
Compiling smbd/server.c
Compiling smbd/files.c
Compiling smbd/chgpasswd.c
...(content omitted)...
Compiling rpcclient/cmd_samr.c
Compiling rpcclient/cmd_reg.c
Compiling rpcclient/cmd_srvsvc.c
Compiling rpcclient/cmd_netlogon.c
Linking bin/rpcclient
Compiling utils/smbpasswd.c
Linking bin/smbpasswd
Compiling utils/make_smbcodepage.c
Linking bin/make_smbcodepage
Compiling utils/nmblookup.c
Linking bin/nmblookup
Compiling utils/make_printerdef.c
Linking bin/make_printerdef
Nếu bạn gặp vấn ñề với biên dịch,hãy ñọc lại tài liệu về Samba.Còn phương án khác là sử
dụng tìm kiếm hoặc gửi lên các hòm thư của Samba mà ñược ghi ở "chương 9"và có thể
tại trang web chính của Samba.Hầu như ñặc ñiểm của biên dịch thường gắn liền với các
ñặc trưng của hệ thống và dễ ràng vượt qua.
Sau khi ñã biên dịch thành công,bạn có thể cài ñặt chúng bằng lệnh sau:
# make install
Nếu như bạn thực hiện nấng cấp phiên bản Samba của bạn,thì tập tin cũ Samba sẽ lưu lại
với phần mở rộng là .old.Chính vì thế bạn có thể sử dụng lại phiên bản cũ bằng lệnh make
revert.Sau ñó hãy dùng make install,bạn cần phải sao chép tập tin với ñôi mở rộng
là .old(nếu như chúng có) vào một vị trí khác hoặc là tên khác.Ngược lại,trong bước tiếp
theo khi cài ñặt
Samba,tập tin gốc .old sẽ bị biên soạn lại mà không có sự thông báo trước về việc thay ñổi
này và bạn có thể ñánh mất phiên bản Samba cũ.Nếu bạn ñã cấu hình thành công Samba
và sử dụng catalog,ñể cài ñặt vào theo ngầm ñịnh thì các tập tin mới sẽ ñược cài lên các
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
42
catalog theo bảng 2.2.Hãy nhớ rằng bạn cần phải cài ñặt dưới tài khoản mà có quyền ghi
lên các catalog trên.Thông thường là dùng root:
bảng 2.2
Catalog Chý thích
/usr/local/samba Cây thư mục chính
/usr/local/samba/bin Code dạng nhị phân
/usr/local/samba/lib smb.conf, lmhosts, các tập tin cấu hình
/usr/local/samba/man Tài liệu cho Samba
/usr/local/samba/private Các tập tin mật khẩu mã hoáSamba
/usr/local/samba/swat Tập tin SWAT
/usr/local/samba/var Các tập tin thông báo,tập tin lock,thông tin về các bảng danh
sách trình duyệt,các tập tin share memory,các tập tin ID-Các tiến
trình.
Ở trong cuốn sách này,vị trí của cây thư mục chính là samba_dir.Trong hầu hết các cấu
hình,thì catalog cơ sở dùng ñể cài ñặt packages Samba là : /usr/local/samba.
Chú ý: Hãy chú ý rằng,ñừng lên ñể khu vực /usr của bạn chỉ có quyền ghi. Khi ấy bạn sẽ
phải cài ñặt các tập tin logs,locks và mật khẩu vào một vị trí khác.
ðây là những chi tiết mà bạn ñã thực hiện trên máy của mình.Bạn có thể nhìn thấy là chúng
ta sử dụng /usr/local/samba như catalog cơ sở cho distribution(như là samba_dir):
# make install
Using FLAGS = -O -Iinclude -I./include -I./ubiqx -I./smbwrapper
-DSMBLOGFILE="/usr/local/samba/var/log.smb"
-DNMBLOGFILE="/usr/local/samba/var/log.nmb"
-DCONFIGFILE="/usr/local/samba/lib/smb.conf" -
...(content omitted)...
The binaries are installed. You may restore the old binaries
(if there were any) using the command "make revert". You may
uninstall the binaries using the command "make uninstallbin"
or "make uninstall" to uninstall binaries, man pages and shell
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
43
scripts.
...(content omitted)...
============================================================
The SWAT files have been installed. Remember to read the
README for information on enabling and using SWAT.
============================================================
2.3.1 Các bước cuối cùng khi cài ñặt
Bây giờ bạn cần phải bổ sung thêm packages SWAT(Samba Web Administration Tool) vào
trong tập tin cấu hình /etc/services và /etc/inetd.conf.
SWAT sẽ chạy như daemon qua inetd và cho phép soạn thảo và sửa chữa tập tin cấu hình
Samba qua một trình soạn thảo ñặc biệt.
1. Hãy bổ sung dòng sau vào /etc/services
swat 901/tcp
2. Bổ sung dòng sau vào /etc/inetd.conf(hãy ñọc các tài liệu về inetd.conf ñể kiểm tra lại
dạng format của tập tin inetd.conf,nếu như nó khác với ví dụở ñây).ðừng quên thay ñổi
ñường dẫn ñến tập tin nhị phân SWAT,nếu bạn cài ñặt nó ở vị trí khác với vị trí theo mặc
ñịnh /usr/local/samba.
swat stream tcp nowait.400 root /usr/local/samba/bin/swat swat
Vậy là tất cả những gì cần thiết về cài ñặt.Trước khi chạy Samba,bạn cần phải tạo ra một
tập tin cấu hình cho nó.
2.4 Tập tin cấu hình cơ sở Samba
Cấu hình Samba hoàn toàn dựa vào smb.conf. Tập tin này có thể là rất ñơn giản,cũng có
thể là rất phức tạp,phần còn lại của cuốn dách sẽ nói sâu hơn về công việc của tập tin
này.Tuy nhiên,bây giờ chúng tôi sẽ cho bạn thấy cách thực hiện từng dịch vụ có trong tập
tin,mà cho phép chạy daemons Samba và kiểm soát các công việc ñã làm ñúng hay
không.Phần sau bạn sẽ thấy cách cấu hình Samba cho các nhiệm vụ phức tạp và hấp dẫn.
Qúa trình cài ñặt sẽ không tự ñộng tạo tập tin cấu hình smb.conf,và cũng trong thời gian ñó
có một vài tập tin với ví dụ kèm theo sẽ ñược gộp vào distribution Samba.ðể thử nghiệm
chương trình hỗ chợ server chúng ta sẽ sử dụng tập tin cấu hình.Tên của nó là smb.conf và
cần phải nằm trong catalog /usr/local/samba/lib
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
44
Nếu như bạn không biên dịch Samba,mà tải tập tin nhị phân,thì hãy ñọc tài liệu có trong
packages ñể xem tập tin smb.conf nằm ở ñâu.Nếu Samba cài ñặt trước trên hệ thống Unix
của bạn,có thể tập tin smb.conf ñã có sẵn ở ñâu ñó trên hệ thống
[global]
workgroup = SIMPLE
[test]
comment = For testing only, please
path = /export/samba/test
read only = no
guest ok = yes
ðấy là một tập tin cấu hình ngắn gọn sẽ dùng cho Samba Server ñược nằm ở catalog
/export/samba/test trên server như một tài nguyên SMB/CIFS dưới tên là test.Server cũng
trở thành một phần của nhóm làm việc SIMPLE,clients cũng trở thành một phần của nó(Hãy
sử dụng một nhóm làm việc riêng của bạn nếu như nó ñã có sẵn như thế).Chúng ta sẽ sử
dụng tài nguyên [test] trong phần tiếp theo ñể cấu hình clients Windows.Bây giờ bạn có thể
kết thúc việc cài ñặt.Hãy sử dụng các lệnh sau trên Unix dưới tài khoản root:
# mkdir /export/samba/test
# chmod 777 /export/samba/test
Chúng ta cần phải nhận thấy rằng,trong vấn ñề an toàn thì ñấy là một phướng án tồi.Nhưng
hiện tại chúng ta chỉ muốn kiểm tra hoạt ñộng của Samba,chính vì thế chúng ta tạm dừng lại
vấn ñề bảo mật.Thêm vào ñó có một số các hình thức dùng mật khẩu,mà chúng ta sẽ xem
xét sau ñối với các clients Windows,bởi vì ñoạn cấu hình này chỉ thể hiện phần nào các
khả năng của các tham biến.
Nếu bạn sử dụng Windows 98 hoặc Windows NT Service Pack 3 hoặc cao hơn,bạn cần
phải bổ sung dòng sau vào ñoạn [global] trong tập tin cấu hình Samba: encrypt passwords =
yes.Thêm vào ñó,bạn cần phải sử dụng chương trình smbpassword (thông thường nằm ở
catalog /usr/local/samba/bin/) ñể nhập vào tổ hợp các tài khoản cùng mật khẩu trên server
Unix,mà bạn sẽ sử dụng chúng ñể truy cập lên tài nguyên trong Samba.Ví dụ,nếu bạn muốn
rằng,tài khoản steve trong Unix có thể nhận ñược quyền truy cập như các clients SMB,bạn
cần phải thực hiện: smbpassword -a steve .Khi tài khoản ñược bổ sung vào lần ñầu,chương
trình sẽ thông báo lỗi rằng,các dữ liệu mật khẩu không có.Hãy yên tâm,sau ñó chương trình
sẽ tạo cho bạn các dữ liệu cơ sở.Hãy kiểm tra xem có ñúng với tập hợp tài khoản/mật
khẩu,mà bạn ñã bổ sung thêm vào ở dạng mã hoá với tên và mật khẩu,mà bạn sẽ ñược sử
dụng trên clients Windows.
2.4.1 Sử dụng SWAT
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
45
Từ Samba 2.0,việc thiết lập tập tin cấu hình có thể ñược thực hiện một cách ñơn giản hơn
là bằng tay.Bạn có thể sử dụng trình duyệt web ñể liên kết với "http://localhost:901" ,sau ñó
ñăng nhập vào như root giống như hình 2.1:
hình 2.1:
Sau khi ñăng nhập vào,hãy nhấn vào nút GLOBALS ở phía trên của màn hình.Bạn sẽ nhìn
thấy trang với các biến globals giống như hình 2.2:
hình 2.2
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
46
Trong ví dụ này,chúng ta sử dụng giá trị workgroup là SIMPLE và ở vùng security là
USER.Bạn cần phải biến ñổi một vài chọn lựa ở trong menu này.Nó có sẽ trả lời cho
việc,máy tính nào trong LAN sẽ xác ñịnh NetBios Address,và máy tính ñó sẽ ñóng vai trò
server WINS.Ở cuối cùng của trang,bạn sẽ cài ñặt ở vùng wins support là Yes,tạm thời
trong mạng của bạn chưa có WINS server.Nếu như nó ñã có sẵn,thì thay vào vị trí ñó bạn
hãy ñiền giá trị của IP-address server WINS vào khu vực wins server.Sau ñó hãy quay lại
lên phía trên và nhấn vào nút Commit Changes ñể ghi lại những biến ñổi vào tập tin
smb.conf.
hình 2.3
Tiếp theo hãy nhấn vào nút Shares.Bạn sẽ nhìn thấy trang giống như hình 2.3.Hãy chọn
Test ở khu vực,cạnh với nút Choose Share.Bạn sẽ nhìn thấy một cửa sổ Share Parameters
như hình 2.4.Chúng tôi bổ sung một vài chú thích ñể các bạn nhớ rằng ñó là tài nguyên thử
nghiệm trong tập tin cấu hình smb.conf. SWAT sẽ có ñầy ñủ các thông cần thiết ở ñây:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
47
Nếu bạn nhấn vào nút View thì SWAT sẽ thông báo cho bạn biết tập tin cấu hình smb.conf
như sau:
# Samba config file created using SWAT
# from localhost (127.0.0.1)
# Date: 1998/11/27 15:42:40
# Global parameters
workgroup = SIMPLE
[test]
comment = For testing only, please
path = /export/samba/test
read only = no
guest ok = yes
Sau ñó,khi mà quá trình thiết lập ñã kết thúc,bạn có thể bỏ qua bước sau,ñó là thông báo về
những cú pháp chuẩn tắc của SWAT.
2.4.2 Kiểm tra tập tin cấu hình smb.conf
Nếu bạn không sử dụng SWAT ñể tạo tập tin cấu hình,bạn có thể cần phải kiểm tra lại nó
theo các cú pháp chuẩn tắc.Có thể là ngu ngốc nếu sử dụng trình soạn thảo ñể kiểm tra lần
lượt 8 dòng một của tập tin cấu hình.Tuy nhiên nó sẽ la tốt ñối với ai mà sẽ làm việc với nó
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
48
trong tương lai.
Trình phân tích testparm sẽ ñọc trên smb.conf dựa vào các cú pháp nhận dạng lỗi và sẽ
thông báo về các lỗi tìm ñược.Trong ví dụ này bạn có thể thay từ workgroup bằng workgrp:
Load smb config files from smb.conf
Unknown parameter encountered: "workgrp"
Ignoring unknown parameter "workgrp"
Processing section "[test]"
Loaded services file OK.
Press enter to see a dump of your service definitions
# Global parameters
[global]
workgroup = WORKGROUP
netbios name =
netbios aliases =
server string = Samba 2.0.5a
interfaces =
bind interfaces only = No
...(content omitted)...
[test]
comment = For testing only, please
path = /export/samba/test
read only = No
guest ok = Yes
Những phần hay nằm ở trên và dưỡi.Phía trên chỉ ra tất cả các cú pháp lỗi mà bạn ñã mắc
phải,còn ở dưới sẽ chỉ ra danh sách các dịch vụ,mà server có thể làm.Nếu như mọi việc ñã
ổn thì bạn hãy chuẩn bị ñể khởi ñộng các daemons server.
2.5 Khởi ñộng Daemons Samba
ðể Samba hoạt ñộng bình thường thì cần phải có sự tham gia của hai tiến trình mà chúng ta
gọi là daemons Samba server: smb và nmbd.Các cách khởi ñộng chúng như sau:
Bằng tay
Như các daemons riêng biệt
Qua inetd
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
49
2.5.1 Khởi ñộng daemos bằng tay
Nếu bạn vội thì có thể chạy các daemons Samba bằng tay.Bạn hãy sử dụng tài khoản root
và thực hiện lệnh sau:
# /usr/local/samba/bin/smbd -D
# /usr/local/samba/bin/nmbd -D
Từ ñó trở ñi,Samba sẽ ñược chạy trên hệ thống của bạn và sẵn sàng cho các kết nối.
2.5.2 Daemons riêng biệt
ðể khởi ñộng các tiến trình Samba như các daemons riêng biệt,bạn cần phải bổ sung
lệnh ,ñược tính từ các ñoạn mã trước trong hệ thống script khởi ñộng hệ thống Unix.ðiều
này phụ thuộc vào hệ thống mà bạn sử dụng dạng BSD Unix hoặc System V Unix.
2.5.21 BSD Unix
Khi hệ thống là BSD Unix,bạn cần phải bổ sung thêm vào tập tin rc.local các dòng sau,thông
thường nằm trong các catalog /etc/ hoặc /etc/rc.d:
if [ -x /usr/local/samba/bin/smbd]; then
echo "Starting smbd..."
/usr/local/samba/bin/smbd -D
echo "Starting nmbd..."
/usr/local/samba/bin/nmbd -D
fi
ðiều này có thể nói là ñơn giản,nó kiểm tra có cho phép chạy hay không smbd,nó sẽ khởi
ñộng từng daemon Samba khi hệ thống khởi ñộng.
2.5.2.2 System V Unix
Với System V,thì cần phải làm việc nhiều hơn.System V thông thường sử dụng script ñể
chạy và tạm dừng các daemons trong hệ thống.Chính vì thế bạn cần phải chỉ cho Samba
cách nó sẽ làm việc khi khởi ñộng và tạm dừng.Bạn có thể biến ñổi nội dung của thư mục
/etc/rc.local và bổ sung những thông tin giống như sau dưới tên là smb:
#!/bin/sh
# Contains the "killproc" function on Red Hat Linux
./etc/rc.d/init.d/functions
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
50
PATH="/usr/local/samba/bin:$PATH"
case $1 in
'start')
echo "Starting smbd..."
smbd -D
echo "Starting nmbd..."
nmbd -D
;;
'stop')
echo "Stopping smbd and nmbd..."
killproc smbd
killproc nmbd
rm -f /usr/local/samba/var/locks/smbd.pid
rm -f /usr/local/samba/var/locks/nmbd.pid
;;
*)
echo "usage: smb {start|stop}"
;;
esac
Với sự giúp ñỡ của script này ,chúng ta có thể khởi ñộng ñược các dịch vụ cần thiết cho
Samba theo lệnh sau:
# /etc/rc.local/smb start
Starting smbd...
Starting nmbd...
# /etc/rc.local/smb stop
Stopping smbd and nmbd...
2.5.3 Khởi ñộng qua Inetd
Inetd là một super daemon Internet trong Unix.Nó lắng nghe các ports,ñược khi trong
/etc/services và khởi ñộng các chương trình tương ứng với các port ñã chỉ ra ở tập tin
/etc/inetd.conf.Từ ý tưởn ñó,bạn có thể có ñược một số lượng lớn các daemons,sẵn sàng
ñáp ứng các yêu cầu,tuy nhiên chúng không nhất thiết phải thực thi,bởi vì inetd lắng nghe
cho tất cả chúng.Có nghĩa là,ñể tạo ra một tiến trình mới cần phải thực hiện một vài câu
lệnh.Nó thuận tiện nếu như một hoặc hai tài khoản trên máy của bạn có quá nhiều daemons
ñang ñược thực thi.Nó cũng có lợi cho quá trình cập nhật lại thông tin mà không gây ra hiện
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
51
tượng ngắt kết nối.
Nếu bạn muốn chạy qua inetd,thì ñầu tiên hãy mởi tập tin /etc/services ở một trình soạn
thảo thông thường,nếu như bạn chưa bổ sung vào trong ñó các dòng sau:
netbios-ssn 139/tcp
netbios-ns 137/udp
Tiếp theo hãy soạn thảo tập tin /etc/inetd.conf.Hãy ñể ý hai dòng dưới ñây và bổ sung
chúng vào nếu như không có.
netbios-ssn stream tcp nowait root /usr/local/samba/bin/smbd smbd
netbios-ns dgram udp wait root /usr/local/samba/bin/nmbd nmbd
Cuối cùng là việc tiêu diệt các tiến trình smbd và nmbd và hãy gửi inetd tín hiệu
HUP(daemon sẽ ñọc lại cấu hình của mình theo tín hiệu HUP).ðể làm ñược ñiều này,hãy
dùng ps ñể tìm ID của tiến trình sau ñó hãy gửi tín hiệu HUP ñến nó bằng lệnh sau:
# kill -HUP process_id
Sau ñó Samba nhất ñịnh sẽ làm việc.
2.6 Kiểm tra daemons Samba
Thật là khó ñể kiểm tra nhưng chúng tâ ñã gần hoàn tất công việc cài ñặt server Samba.Tất
cả công việc còn lại là sử dụng smbclient ñể nhìn thấy những gì mà server gửi lên
mạng.Nếu bạn tiến hành các bước chính xác thì bạn có thể nhìn thấy dòng sau:
# smbclient -U% -L localhost
Added interface ip=192.168.220.100 bcast=192.168.220.255 nmask=255.255.255.0
Domain=[SIMPLE] OS=[Unix] Server=[Samba 2.0.5a]
Sharename Type Comment
--------- ---- -------
test Disk For testing only, please
IPC$ IPC IPC Service (Samba 2.0.5a)
Server Comment
--------- -------
HYDRA Samba 2.0.5a
Workgroup Master
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
52
--------- -------
SIMPLE HYDRA
Nếu như gặp vấn ñề ,ñừng bỏ cuộc.Hãy khởi ñộng daemons bằng tay,sau ñó kiểm tra lại
kết qủa thông báo hoặc tập tin gỡ lỗi trong /usr/local/samba/var/log.smb ñể tìm kiếm vấn
ñề trong ñó.Nếu bạn nghĩ là một vấn ñề lớn thì hãy chuyển ñến chương 7:"In ấn và tên cho
phép " ñể có thể làm việc với daemons Samba.
Nếu như nó làm việc thì chúc mừng bạn.Bây giờ bạn ñã cài ñặt thành công server Samba
với các tài nguyên cho phép sử dụng qua mạng.Tất cả là vừa phải,không quá khó.Chúng ta
sử dụng nó ñể thử nghiệm công việc của các clients Windows 95 và NT trong các phần
sau.Sau ñó chúng ta ñi ñến các công việc hấp dẫn hơn là bổ sung các dịch vụ và các
catalog home cũng như máy in cùng với một hệ thống bảo mật an toàn.Chúng ta có thể
nhìn thấy cách ñịnh dạng server ở domains Windows
3.Configuring Windows Clients
You'll be glad to know that configuring Windows to use your new Samba server is quite
simple. SMB is Microsoft's native language for resource sharing on a local area network, so
much of the installation and setup on the Windows client side has been taken care of
already. The primary issues that we will cover in this chapter involve communication and
coordination between Windows and Unix, two completely different operating systems.
Samba uses TCP/IP to talk to its clients on the network. If you aren't already using TCP/IP
on your Windows computers, this chapter will show you how to install it. Then you'll need to
configure your Windows machines to operate on a TCP/IP network. Once these two
requirements have been taken care of, we can show how to access a shared disk on the
Samba server.
This chapter is divided into three sections. The first section covers setting up Windows
95/98 computers while the second covers Windows NT 4.0 machines. The final section
provides some prerequisite information on how SMB connections are made from Windows
clients and servers, which is useful as we move into the later chapters of the book.
3.1 Setting Up Windows 95/98 Computers
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
53
Unfortunately, Windows 95/98 wasn't designed for a PC to have more than one user; that
concept is more inherent to a Unix operating system or Windows NT. However, Windows
95/98 does have limited support for multiple users: if you tell it, the operating system will
keep a separate profile (desktop layout) and password file for each user. This is a far cry
from true multiuser security. In other words, Windows 95/98 won't try to keep one user from
destroying the work of another on the local hard drive like Unix, but profiles are a place to
start.
3.1.1 Accounts and Passwords
The first thing we need to do is to tell Windows to keep user profiles separate, and to collect
usernames and passwords to authenticate anyone trying to access a Samba share. We do
so via the Password settings in the Control Panel. If you are not familiar with the Windows
Control Panel, you can access it by choosing the Settings menu item from the pop-up menu
of the Start button in the lower-left corner of the screen. Alternatively, you'll find it as a folder
under the icon in the upper-left corner that represents your computer and is typically labeled
My Computer.
After selecting the Passwords icon in the Control Panel, click on the User Profiles tab on the
far right. You should see the dialog box shown in Figure 3.1. Then click the lower of the two
radio buttons that starts "Users can customize their preferences...." This causes Windows to
store a separate profile for each user, and saves the username and password you provide,
which it will use later when it connects to an SMB/CIFS server. Finally, check both the
options under the User Profile Settings border, as shown in the figure.
Figure 3.1: The Passwords Properties panel
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
54
The next step is to select the Change Passwords tab on the left side of the dialog box. In
order for Samba to allow you access to its shares, the username and password you give to
Windows must match the account and password on the Samba server. If you don't have this
tab in your dialog box, don't worry; it's probably because you haven't given yourself a
Windows username and password yet. Simply click the OK button at the bottom and
respond Yes when Windows asks to reboot. Then, skip down to the section entitled Section
3.1.1.2, Logging in for the first time.
3.1.1.1 Changing the Windows password
After selecting the Change Passwords tab, the dialog box in Figure 3.2 will appear.
Figure 3.2: The Change Passwords tab
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
55
Select the Change Windows Password button. The Change Windows Password dialog box
should appear, as shown in Figure 3.3. From here, you can change your password to match
the password of the account on the Samba server through which you intend to log in.
Figure 3.3: The Change Windows Password dialog box
3.1.1.2 Logging in for the first time
If you didn't have a Change Passwords tab in the Passwords Properties window, then after
Windows has finished rebooting, it will ask you to log in with a username and a password.
Give yourself the same username and password that you have on the Samba server. After
confirming your new username and password, or if you already have one, Windows should
ask you if you want to have a profile, using the dialog shown in Figure 3.4.
Figure 3.4: Windows Networking profiles
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
56
Answer Yes, upon which Windows will create a separate profile and password file for you
and save a copy of your password in the file. Now when you connect to Samba, Windows
will send its password, which will be used to authenticate you for each share. We won't
worry about profiles for the moment; we'll cover them in Chapter 6, Users, Security, and
Domains. We should point out, however, that there is a small security risk: someone can
steal the password file and decrypt the passwords because it's weakly encrypted.
Unfortunately, there isn't a solution to this with Windows 95/98. In Windows 2000 (NT 5.0),
the password encryption should be replaced with a much better algorithm.
3.1.2 Setting Up the Network
The next thing we need to do is make sure we have the TCP/IP networking protocol set up
correctly. To do this, double-click on the Network icon in the Control Panel. You should see
the network configuration dialog box, as shown in Figure 3.5.
Figure 3.5: The Windows 95/98 Network panel
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
57
Microsoft networking works by binding specific protocols, such as IPX or TCP/IP, to a
specific hardware device, such as an Ethernet card or a dialup connection. By routing a
protocol through a hardware device, the machine can act as a client or server for a particular
type of network. For Samba, we are interested in binding the TCP/IP protocol through a
networking device, making the machine a client for Microsoft networks. Thus, when the
dialog box appears, you should see at least the Client for Microsoft Networks component
installed on the machine, and hopefully a networking device (preferably an Ethernet card)
bound to the TCP/IP protocol. If there is only one networking hardware device, you'll see the
TCP/IP protocol listed below that device. If it appears similar to Figure 3.5, the protocol is
bound to the device.
You may also see "File and printer sharing for Microsoft Networks," which is useful. In
addition, you might see NetBEUI or Novell Networking, which are standard with Windows
installations but undesirable when TCP/IP is running. Remove NetBEUI if you possibly can -
it's unnecessary and makes debugging Windows browsing difficult. If you don't have any
Novell servers on your network, you can remove Novell (IPX/SPX) as well.
3.1.2.1 Adding TCP/IP
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
58
If you don't see TCP/IP listed at all, you'll need to install the protocol. If you already have
TCP/IP, skip this section, and continue with the section Section 3.1.3, Setting Your Name
and Workgroup, later in this chapter.
Installing TCP/IP isn't difficult since Microsoft distributes its own version of TCP/IP for free
on their installation CD-ROM. You can add the protocol by clicking on the Add button below
the component window. Indicate that you wish to add a specific protocol by selecting
Protocol and clicking Add... on the following dialog box, which should look similar to Figure
3.6.
Figure 3.6: Selecting a protocol to install
After that, select the protocol TCP/IP from manufacturer Microsoft, as shown in Figure 3.7,
then click OK. After doing so, you will be returned to the network dialog. Click OK there to
close the dialog box, upon which Windows will install the necessary components from disk
and reboot the machine.
Figure 3.7: Selecting a protocol to install
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
59
3.1.2.2 Configuring TCP/IP
If you have more than one networking device (for example, both an Ethernet card and a
dialup networking modem), each appropriate hardware device should be "linked" to the
TCP/IP protocol with an arrow, as shown in Figure 3.8. Select the TCP/IP protocol linked to
the networking device that will be accessing the Samba network. When it is highlighted, click
the Properties button.
Figure 3.8: Selecting the correct TCP/IP protocol
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
60
After doing so, the TCP/IP Properties panel for that device is displayed, as shown in Figure
3.9.
Figure 3.9: STCP/IP Properties panel
There are seven tabs near the top of this panel, and you will need to configure four of them:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
61
• IP address
• DNS configuration
• WINS configuration
• Bindings
3.1.2.3 IP Address tab
The IP Address tab is shown in Figure 3.9. Press the "Specify an IP address" radio button
and enter the client's address and subnet mask in the space provided. You or your network
manager should have selected an address for the machine. The values should place the
computer on the same subnet as the Samba server. For example, if the server's address is
192.168.236.86, and its network mask 255.255.255.0, you might use address
192.168.236.10 (if it is available) for the Windows 98 computer, along with the same
netmask as the server. If you already use DHCP on your network to provide IP addresses to
Windows machines, select the "Obtain an IP address automatically" button.
3.1.2.4 DNS Configuration tab
Domain Name Service (DNS) is responsible for translating Internet computer names such
as hobbes.example.com into machine-readable IP addresses such as 192.168.236.10.
There are two ways to accomplish this on a Windows 98 machine: you can specify a server
to do the translation for you or you can keep a local list of name/address pairs to refer to.
Networks that are connected to the Internet typically use a server, since the hosts files
required would otherwise be huge. For an unconnected LAN, the list of possible hosts is
small and well-known and might be kept on a Unix machine in the /etc/hosts file. If you are in
doubt as to whether a DNS server is being used, or what its address might be, look at the file
/etc/resolv.conf on your Unix servers. Any machine using DNS will have this file, which looks
like:
#resolv.conf
domain example.com
nameserver 127.0.0.1
nameserver 192.168.236.20
In the example shown, the second nameserver line in the list contains the IP address of
another machine on the local network: 192.168.236.20. It's a good candidate for a DNS
server.[1]
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
62
[1] We can disqualify the other address because every Unix machine has a localhost
address of 127.0.0.1 whether it is connected to a network or not. This address is required for
some system tools to operate correctly.
You must type the correct IP address of one or more DNS servers (note that you cannot use
its Internet name, such as dns.oreilly.com) into the appropriate field in Figure 3.10. Be sure
not to use 127.0.0.1 - that will never be the correct DNS server address!
Try to select addresses on your own network. Any name servers listed in /etc/resolv.conf
should work, but you'll get better performance by using a server nearby. (If you don't find
/etc/resolv.conf files on your Unix machines, just disable DNS until you can find the address
of at least one DNS server.) Let's assume you only have one DNS server, and its address is
192.168.236.20. Click the Enable DNS radio button, as shown in Figure 3.10, and add the
server's address to the top DNS Server Search Order field.
Figure 3.10: The DNS Configuration tab
Also, provide the name of the Windows 95/98 machine and the Internet domain you're in.
You can safely ignore the Domain Suffix Search Order field for anything related to Samba.
3.1.2.5 WINS Configuration tab
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
63
WINS is the Windows Internet Name Service, its version of a NetBIOS name server. If
you've enabled WINS on Samba, you must tell Windows the Samba server's address. If you
are using WINS servers that are entirely Windows NT, enter each of them here as well. The
dialog box shown after selecting the WINS Configuration tab is shown in Figure 3.11.
Figure 3.11: The WINS Configuration tab
WARNING: Do not mix a Samba WINS server and a Windows NT server as a
primary/backup combination in the WINS dialog. Because the two cannot replicate their
databases, this will cause name resolution to perform incorrectly.
From here, select Enable WINS Resolution and enter the WINS server's address in the
space provided, then press Add. Do not enter anything in the Scope ID field.
3.1.2.6 Hosts files
If you do not have either DNS or WINS, and you don't wish to use broadcast resolution,
you'll need to provide a table of IP addresses and hostnames, in the standard Unix
/etc/hosts format. On a Windows machine, this goes in \WINDOWS\HOSTS under
whichever drive you installed Windows on (typically C:\). A sample host file follows:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
64
# 127.0.0.1 localhost
192.168.236.1 escrime.example.com escrime
192.168.236.2 riposte.example.com riposte
192.168.236.3 wizzin.example.com wizzin
192.168.236.4 touche.example.com touche
192.168.236.10 hobbes.example.com hobbes
You can copy this file directly from any of your Unix machines' /etc/hosts; the format is
identical. However, you should only use hosts files in Windows as a last resort for name
resolution.
3.1.2.7 Check the bindings
The final tab to look at is Bindings, as shown in Figure 3.12.
Figure 3.12: The Bindings tab
You should have a check beside Client for Microsoft Networks, indicating that it's using
TCP/IP. If you have "File and printer sharing for Microsoft Networks" in the dialog, it should
also be checked, as shown in the figure.
3.1.3 Setting Your Name and Workgroup
Finally, press the OK button in the TCP/IP configuration panel, and you'll be taken back to
the Network Configuration screen. Then select the Identification tab, which will take you to
the dialog box shown in Figure 3.13.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
65
Figure 3.13: The Identification tab
Here, for the second time, set your machine's name. This time, instead of your DNS
hostname and domain, you're setting your NetBIOS name. However, it is best to make this
the same as your hostname. Try not to make a spelling mistake: it can be very confusing to
configure a machine if TCP thinks it's fred and SMB thinks its ferd !
You also set your workgroup name here. In our case, it's SIMPLE, but if you used a different
one in Chapter 2, Installing Samba on a Unix System, when creating the Samba
configuration file, use that here as well. Try to avoid calling it WORKGROUP or you'll be in
the same workgroup as every unconfigured (or ill-configured) machine in the world.
3.1.4 Accessing the Samba Server
Click on the OK button to complete the configuration; you will need to reboot in order for
your changes to take effect.
Now for the big moment. Your Samba server is running, and you have set up your Windows
95/98 client to communicate with it. After rebooting, log in and double-click the Network
Neighborhood icon on the desktop. You should see your Samba server listed as a member
of the workgroup, as shown in Figure 3.14.
Figure 3.14: Windows Network Neighborhood
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
66
Double-clicking the server name will show the resources that the server is offering to the
network, as shown in Figure 3.15 (in this case a printer and the test directory).
Figure 3.15: Shares on Server
WARNING: If you are presented with a dialog requesting the password for a user IPC$, then
Samba did not accept the password that was sent from the client. In this case, the username
and the password that were created on the client side must match the username/password
combination on the Samba server. If you are using Windows 98 or Windows NT Service
Pack 3 or above, this is probably because the client is sending encrypted passwords instead
of plaintext passwords. You can remedy this situation by performing two steps on the
Samba server. First, add the following entry to the [global] section of your Samba
configuration file: encrypt password=yes. Second, find the smbpasswd program on the
samba server (it is located in /usr/local/samba/bin by default) and use it to add an entry to
Samba's encrypted password database. For example, to add user steve to Samba's
encrypted password database, type smbpasswd -a steve. The first time you enter this
password, the program will output an error message indicating that the password database
does not exist; it will then create the database, which is typically stored in
/usr/local/samba/private/smbpasswd.
If you don't see the server listed, start Windows Explorer (not Internet Explorer!) and select
Map Network Drive from the Tools menu. This will give you a dialog box into which you can
type the name of your server and the share test in the Windows UNC format: \\server\test,
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
67
like we did in the first chapter. This should attempt to contact the Samba server and its
temporary share.
3.2 Setting Up Windows NT 4.0 Computers
Configuring Windows NT is a little different than configuring Windows 95/98. In order to use
Samba with Windows NT, you will need both the Workstation service and the TCP/IP
protocol. Both come standard with NT, but we'll work through installing and configuring them
because they may not be configured correctly.
There are six basic steps:
1. Assign the machine a name.
2. Install the Workstation service.
3. Install the TCP/IP protocol.
4. Set the machine's name and IP address.
5. Configure the DNS and WINS name services.
6. Bind the protocol and service together.
3.2.1 Basic Configuration
This section presents an outline of the steps to follow for getting Windows NT to cooperate
with Samba. If you need more details on Windows NT network administration, refer to Craig
Hunt and Robert Bruce Thompsom's Windows NT TCP/IP Network Administration (O'Reilly),
an excellent guide. You should perform these steps as the "Administrator" user.
3.2.1.1 Name the machine
The first thing you need to do is to give the machine a NetBIOS name. From the Control
Panel, double click on the Network icon. This will take you to the Network dialog box for the
machine. The first tab in this dialog box should be the Identification tab, as illustrated in
Figure 3.16.
Figure 3.16: Network panel Identification tab
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
68
Here, you need to identify your machine with a name (we use the name Artish here) and
change the default workgroup to the one you specified in the smb.conf file of your Samba
server. In this case, the workgroup name is SIMPLE. However, you cannot edit either name
here (as you could in Windows 95/98), but instead must use the Change button below the
two text fields. Pressing this button raises an Identification Changes dialog box, where you
can reset the workgroup and the machine name, as shown in Figure 3.17.
Figure 3.17: Changing the identification
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
69
A word of warning: you will have to set the machine name again later while configuring
TCP/IP, so be sure that the two names match. The name you set here is the NetBIOS name.
You're allowed to make it different from the TCP/IP hostname, but doing so is usually not a
good thing. Don't worry that Windows NT forces the computer name and the workgroup to
be all capital letters; it's smart enough to figure out what you mean when it connects to the
network.
3.2.1.2 Installing the TCP/IP protocol
Next, select the Protocols tab in the Network dialog box, and look to see if you have the
TCP/IP protocol installed, as shown in Figure 3.18.
Figure 3.18: The Protocols tab
If the protocol is not installed, you need to add it. Press the Add button, which will display the
Select Network Protocol dialog box shown in Figure 3.19. Unlike Windows 95/98, you
should immediately see the TCP/IP protocol as one of the last protocols listed.
Figure 3.19: Select Network Protocol dialog box
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
70
Select TCP/IP as the protocol and confirm it. If possible, install only the TCP/IP protocol.
You usually do not want NetBEUI installed because this causes the machine to look for
services under two different protocols, only one of which is likely in use.[2]
[2] A common occurrence: after looking at the unused protocol for a while, the machine will
time out and try the good one. This fruitless searching gives you terrible performance and
mysterious delays.
3.2.1.3 Installing the Workstation service
After installing TCP/IP, press the Services tab in the Network panel and check that you have
a Workstation service, as shown at the end of the list in Figure 3.20.
Figure 3.20: Network Services panel dialog box
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
71
This service is actually the Microsoft Networking Client, which allows the machine to access
SMB services. The Workstation service is mandatory. The service is installed by default on
both Windows NT Workstation 4.0 and Server 4.0. If it's not there, you can install it much like
TCP/IP. In this case you need to press the Add button and then select Workstation Service,
as shown in Figure 3.21.
Figure 3.21: Select Network Service dialog box
3.2.2 Configuring TCP/IP
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
72
After you've installed the Workstation service, return to the Protocols tab and select the
TCP/IP Protocol entry in the window. Then click the Properties button below the window.
The Microsoft TCP/IP Protocol panel will be displayed. There are five tabs on the Windows
NT panel, and (like Windows 95/98) you will need to work on three of them:
• IP address
• DNS
• WINS address
3.2.2.1 IP Address tab
The IP Address tab is shown in Figure 3.22.
Figure 3.22: Microsoft TCP/IP Properties for Windows NT
Select the "Specify an IP address" radio button and enter the computer's address and
subnet mask in the space provided for the proper adapter (Ethernet card). You or your
network manager should have selected an address for the client on the same subnet (LAN)
as the Samba server. For example, if the server's address is 192.168.236.86 and its network
mask 255.255.255.0, you might use the address 192.168.236.10, if it is available, for the NT
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
73
workstation, along with the same netmask. If you use DHCP on your network, select the
"Obtain an IP Address from a DHCP server" button.
If you don't have an IP address to use, and you are on a network by yourself, steal ours, as
the 192.168. x.x subnet is specifically reserved by the Internic for LANs. If you're not by
yourself, see your system administrator for some available addresses on your network.
The gateway field refers to a machine typically known as a router. If you have routers
connecting multiple networks, you should put in the IP address of the one on your subnet.
3.2.2.2 DNS tab
Next we go to the tab for DNS, as shown in Figure 3.23. This brings up the DNS panel.
Figure 3.23: The DNS panel
The Domain Name System (DNS) is responsible for translating human-readable computer
names such as atrish.example.com into IP addresses such as 192.168.236.10. There are
two ways to accomplish this on a NT machine. First, you can specify a DNS server to do the
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
74
translation for you, or you can keep a local list of name/address pairs for your workstation to
refer to.
For a LAN that's not on the Internet, the list of possible hosts is typically small and well
known, and may be kept in a file locally. Networks that are connected to the Internet typically
use DNS service since it isn't possible to guess ahead of time what addresses you might be
accessing out on the net. If you are in doubt as to whether a DNS server is being used, or
what its address might be, look at the file /etc/resolv.conf on your Samba server: any
machine using DNS will have this file. It looks like the following:
#resolv.conf
domain example.com
nameserver 127.0.0.1
nameserver 192.168.236.20
In this example, the first nameserver in the list is 127.0.0.1, which indicates that the Samba
server is also a DNS server for this LAN.[3] In that case, you would use its network IP
address (not 127.0.0.1, its localhost address) when filling in the DNS Configuration dialog
box. Otherwise, use the other addresses you find in the lines beginning with nameserver.
Try to select ones on your own network. Any name servers listed in /etc/resolv.conf should
work, but you'll get better performance by using a server nearby.
[3] The address 127.0.0.1 is known as the localhost address, and always refers to itself. For
example, if you type ping 127.0.0.1 on a Unix server, you should always get a response, as
you're pinging the host itself.
Finally, enter the machine name once more, making sure that it's the same one listed in the
Identification tab of the Network dialog box (before the NetBIOS name). Also, enter the DNS
domain on which this machine resides. For example, if your workstation has a domain name
such as example.com, enter it here. You can safely ignore the other options.
3.2.2.3 WINS Address tab
If you are not using a DNS server, you still need a way of translating NetBIOS names to
addresses and back again. We recommend that you configure both DNS and WINS; NT has
a preference for WINS and WINS can use DNS as a fallback if it cannot resolve any
machine address. The WINS Address tab is shown in Figure 3.24.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
75
Figure 3.24: The WINS Address tab
If you have a WINS server, enter its address in the space marked Primary WINS Server. If
your Samba server is providing WINS service (in other words, you have the line wins service
= yes in the smb.conf file of your Samba server), provide the Samba server's IP address
here. Otherwise, provide the address of another WINS server on your network.
You probably noticed that there is a field here for the adaptor; this field must specify the
Ethernet adaptor that you're running TCP/IP on so that WINS will provide name service on
the correct network. If you have both a LAN and a dialup adaptor, make sure you have the
LAN's adaptor here.
Finally, select the "Enable DNS for Windows Resolution" checkbox, so WINS will try DNS as
a fallback if it can't find a name. You can safely ignore the other options.
3.2.2.4 Hosts files
If you don't have either DNS or WINS, and you don't wish to use broadcast name resolution,
you'll need to provide a table of IP addresses and hosts names, in standard Unix /etc/hosts
format. We recommend against this because maintenance of this file on any dynamic
network is troublesome, but we will explain it just the same. The Windows host file should
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
76
appear in the \WINDOWS\HOSTS directory of whatever local drive Windows is installed on.
A sample follows:
127.0.0.1 localhost
192.168.236.1 escrime escrime.example.com
192.168.236.2 riposte riposte.example.com
192.168.236.3 wizzin wizzin.example.com
192.168.236.4 touche touche.example.com
192.168.236.5 gurgi gurgi.example.com
192.168.236.6 jessiac jessiac.example.com
192.168.236.7 skyline skyline.example.com
If you wish, you can copy the contents directly from the Samba server's /etc/hosts. The
format is identical. This file will then serve the same purpose as the hosts file on the Unix
server. Again, hosts files on Windows should only be used as a last resort.
3.2.2.5 Bindings
The term bindings is a way of saying "connected together at configuration time." It means
that the TCP/IP protocol will channel through the Ethernet card (instead of, say, a dialup
connection), and is actually connected properly. If you return to the Network dialog box and
set the Show field to "all services" and click on all the + buttons in the tree, you should see a
display similar to Figure 3.25.
Figure 3.25: Service bindings
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
77
This means that the Workstation, Server, and NetBIOS interface services are connected to
the WINS client. This is the correct binding for Microsoft TCP/IP.
3.2.3 Connecting to the Samba Server
You can safely leave the default values for the remainder of the tabs in the Network dialog
box. Click on the OK button to complete the configuration. Once the proper files are loaded
(if any), you will need to reboot in order for your changes to take effect.
Now for the big moment. Your Samba server is running and you have set up your NT client
to communicate with it. After the machine reboots, login and double-click the Network
Neighborhood icon on the desktop, and you should see your Samba server listed as a
member of the workgroup, as shown in Figure 3.26.
Figure 3.26: Windows NT Network Neighborhood
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
78
Double-clicking the server name will show the resources that the server is offering to the
network, as shown in Figure 3.27. In this case, the test and the default printer are offered to
the Window NT workstation. For more information, see the warning under the "Accessing
the Samba Server" section, earlier in this chapter.
Figure 3.27: Server's shares
WARNING: If you are presented with a dialog requesting the password for a user IPC$, then
Samba did not accept the password that was sent from the client. In this case, the username
and the password that were created on the client side must match the username/password
combination on the Samba server. If you are using Windows 98 or Windows NT Service
Pack 3 or above, this is probably because the client is sending encrypted passwords instead
of plaintext passwords. You can remedy this situation by performing two steps on the
Samba server. First, add the following entry to the [global] section of your Samba
configuration file: encrypt password=yes. Second, find the smbpasswd program on the
samba server (it is located in /usr/local/samba/bin by default) and use it to add an entry to
Samba's encrypted password database. For example, to add user steve to Samba's
encrypted password database, type smbpasswd -a steve. The first time you enter this
password, the program will output an error message indicating that the password database
does not exist; it will then create the database, which is typically stored in
/usr/local/samba/private/smbpasswd.
If you don't see the server listed, don't panic. Start the Windows NT Explorer (not Internet
Explorer!) and select Map Network Drive from the Tools menu. A dialog box appears that
allows you to type the name of your server and its share directory in Windows format. For
example, you would enter \\server\temp if your server happened to be named "server."
If it works, congratulations! Try writing to the server and sending data to the network printer.
You will be pleasantly surprised how seamlessly everything works! Now that you've finished
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
79
setting up the Samba server and its clients, we can starting talking about how Samba works
and how to configure it to your liking.
3.3 An Introduction to SMB/CIFS
We'll wrap up this chapter with a short tutorial on SMB/CIFS. SMB/CIFS is the protocol that
Windows 95/98 and NT machines use to communicate with the Samba server and each
other. At a high level, the SMB protocol suite is relatively simple. It includes commands for
all of the file and print operations that you might do on a local disk or printer, such as:
• Opening and closing a file
• Creating and deleting files and directories
• Reading and writing a file
• Searching for files
• Queueing and dequeueing files to a print spool
Each of these operations can be encoded into an SMB message and transmitted to and
from a server. The original name SMB comes from their data format: these are versions of
the standard DOS system-call data structures, or Server Message Blocks, redesigned for
transmitting to another machine across a network.
3.3.1 SMB Format
Richard Sharpe of the Samba team defines SMB as a "request-response" protocol.[4] In
effect, this means that a client sends an SMB request to a server, and the server sends an
SMB response back to the client. Rarely does a server send a message that is not in
response to a client.
[4] See http://anu.samba.org/cifs/docs/what-is-smb.html for Richard's excellent summary of
SMB.
An SMB message is not as complex as you might think. Let's take a closer look at the
internal structure of such a message. It can be broken down into two parts: the header,
which is a fixed size, and the command string, whose size can vary dramatically based on
the contents of the message.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
80
3.3.1.1 SMB header format
Table 3.1 shows the format of an SMB header. SMB commands are not required to use all
the fields in the SMB header. For example, when a client first attempts to connect to a server,
it does not yet have a tree identifier (TID) value - one is assigned after it successfully
connects - so a null TID (0xFFFF) is placed in its header field. Other fields may be padded
with zeros when not used.
The fields of the SMB header are listed in Table 3.1.
Table 3.1: SMB Header Fields
Field Size (bytes) Description
0xFF 'SMB' 1 Protocol identifier
COM 1 Command code, from 0x00 to 0xFF
RCLS 1 Error class
REH 1 Reserved
ERR 2 Error code
REB 1 Reserved
RES 14 Reserved
TID 2 Tree identifier; a unique ID for a resource in use by client
PID 2 Caller process ID
UID 2 User identifier
MID 2 Multiplex identifier; used to route requests inside a process
3.3.1.2 SMB command format
Immediately after the header is a variable number of bytes that constitute an SMB command
or reply. Each command, such as Open File (COM field identifier: SMBopen) or Get Print
Queue (SMBsplretq), has its own set of parameters and data. Like the SMB header fields,
not all of the command fields need to be filled, depending on the specific command. For
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
81
example, the Get Server Attributes (SMBdskattr) command sets the WCT and BCC fields to
zero. The fields of the command segment are shown in Table 3.2.
Table 3.2: SMB Command Contents
Field Size in Bytes Description
WCT 1 Word count
VWV Variable Parameter words (size given by WCT)
BCC 2 Parameter byte count
DATA Variable Data (size given by BCC)
Don't worry if you don't understand each of these fields; they are not necessary for using
Samba at an administrator level. However, they do come in handy when debugging system
messages. We will show you some of the more common SMB messages that clients and
servers send using a modified version of tcpdump later in this section. (If you would like an
SMB sniffer with a graphical interface, try "ethereal," which uses the GTK libraries; see the
Samba homepage for more information on this tool.)
If you would like more information on each of the commands for the SMB protocol, see the
SMB/CIFS documentation at ftp://ftp.microsoft.com/developr/drg/CIFS/.
3.3.1.3 SMB variations
The SMB protocol has been extended with new commands several times since its inception.
Each new version is backwards compatible with the previous versions. This makes it quite
possible for a LAN to have various clients and servers running different versions of the SMB
protocol at once.
Table 3.3 outlines the major versions of the SMB protocol. Within each "dialect" of SMB are
many sub-versions that include commands supporting particular releases of major operating
systems. The ID string is used by clients and servers to determine what level of the protocol
they will speak to each other.
Table 3.3: SMB Protocol Dialects
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
82
Protocol Name ID String Used By
Core PC NETWORK PROGRAM 1.0
Core Plus MICROSOFT NETWORKS 1.03
LAN Manager 1.0 LANMAN1.0
LAN Manager 2.0 LM1.2X002
LAN Manager 2.1 LANMAN2.1
NT LAN Manager 1.0 NT LM 0.12 Windows NT 4.0
Samba's NT LM 0.12 Samba Samba
Common Internet File System CIFS 1.0 Windows 2000
Samba implements the NT LM 0.12 specification for NT LAN Manager 1.0. It is backwards
compatible with all of the other SMB variants. The CIFS specification is, in reality, LAN
Manager 0.12 with a few specific additions.
3.3.2 SMB Clients and Servers
As mentioned earlier, SMB is a client/server protocol. In the purest sense, this means that a
client sends a request to a server, which acts on the request and returns a reply. However,
the client/server roles can often be reversed, sometimes within the context of a single SMB
session. For example, consider the two Windows 95/98 computers in Figure 3.28. The
computer named WIZZIN shares a printer to the network, and the computer named
ESCRIME shares a disk directory. WIZZIN is in the client role when accessing ESCRIME's
network drive, and in the server role when printing a job for ESCRIME.
Figure 3.28: Two computers that both have resources to share
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
83
This brings out an important point in Samba terminology:
• A server is a machine with a resource to share.
• A client is a machine that wishes to use that resource.
• A server can be a client (of another computer's resource) at any given time.
Note that there are no implications as to the amount of resources that make up a server, or
whether it has a large disk space or fast processor. A server could be an old 486 with a
printer attached to it, or it could be an UltraSparc station with a 10 gigabyte disk service.
Microsoft Windows products have both the SMB client and server built in to the operating
system. Wndows NT 4.0 uses a newer SMB protocol than Windows for Workgroups, and it
offers an enhanced form of network security which will be discussed in Chapter 6. In
addition, there are a large number of commercial SMB server products available from
companies such as Sun, Compaq, SCO, Hewlett-Packard, Syntax, and IBM. Unfortunately,
on the client side there are far fewer offerings, limited mainly to Digital Equipment's
Pathworks product, and of course, Samba.
3.3.3 A Simple SMB Connection
Before we close this chapter, let's take a look at a simple SMB connection. This is some
pretty technical data - which isn't really necessary to administer Samba - so you can skip
over it if you like. We present this information largely as a way to help you get familiar with
how the SMB protocol negotiates connections with other computers on the network.
There are four steps that the client and server must complete in order to establish a
connection to a resource:
1. Establish a virtual connection.
2. Negotiate the protocol variant to speak.
3. Set session parameters.
4. Make a tree connection to a resource.
We will examine each of these steps through the eyes of a useful tool that we mentioned
earlier: the modified tcpdump that is available from the Samba web site.
You can download this program at samba.org in the samba/ftp/tcpdump-smb directory; the
latest version as of this writing is 3.4-5. Use this program as you would use the standard
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
84
tcpdump application, but add the -s 1500 switch to ensure that you get the whole packet and
not just the first few bytes.
3.3.3.1 Establishing a virtual connection
When a user first makes a request to access a network disk or send a print job to a remote
printer, NetBIOS takes care of making a connection at the session layer. The result is a
bidirectional virtual channel between the client and server. In reality, there are only two
messages that the client and server need to establish this connection. This is shown in the
following example session request and response, as captured by tcpdump :
>>> NBT Packet
NBT Session Request
Flags=0x81000044
Destination=ESCRIME NameType=0x20 (Server)
Source=WIZZIN NameType=0x00 (Workstation)
>>> NBT Packet
NBT Session Granted
Flags=0x82000000
3.3.4 Negotiating the Protocol Variant
At this point, there is an open channel between the client and server. Next, the client sends
a message to the server to negotiate an SMB protocol. As mentioned earlier, the client sets
its tree identifier (TID) field to zero, since it does not yet know what TID to use. A tree
identifier is a number that represents a connection to a share on a server.
The command in the message is SMBnegprot, a request to negotiate a protocol variant that
will be used for the entire session. Note that the client sends to the server a list of all of the
variants that it can speak, not vice versa.
The server responds to the SMBnegprot request with an index into the list of variants that
the client offered, starting with index 0, or with the value 0xFF if none of the protocol variants
are acceptable. Continuing this example, the server responds with the value 5, which
indicates that the NT LM 0.12 dialect will be used for the remainder of the session:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
85
>>> NBT Packet
NBT Session Packet
Flags=0x0
Length=154
SMB PACKET: SMBnegprot (REQUEST)
SMB Command = 0x72
Error class = 0x0
Error code = 0
Flags1 = 0x0
Flags2 = 0x0
Tree ID = 0
Proc ID = 5371
UID = 0
MID = 385
Word Count = 0
Dialect=PC NETWORK PROGRAM 1.0
Dialect=MICROSOFT NETWORKS 3.0
Dialect=DOS LM1.2X002
Dialect=DOS LANMAN2.1
Dialect=Windows for Workgroups 3.1a
Dialect=NT LM 0.12
>>> NBT Packet
NBT Session Packet
Flags=0x0
Length=69
SMB PACKET: SMBnegprot (REPLY)
SMB Command = 0x72
Error class = 0x0
Error code = 0
Flags1 = 0x0
Flags2 = 0x1
Tree ID = 0
Proc ID = 5371
UID = 0
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
86
MID = 385
Word Count = 02
[000] 05 00
3.3.5 Set Session and Login Parameters
The next step is to transmit session and login parameters for the session. This includes the
account name and password (if there is one), the workgroup name, the maximum size of
data that can be transferred, and the number of pending requests that may be in the queue
at any one time.
In the following example, the Session Setup command presented allows for an additional
SMB command to be piggybacked onto it. The letter X at the end of the command name
indicates this, and the hexadecimal code of the second command is given in the Com2 field.
In this case the command is 0x75, which is the Tree Connect and X command. The
SMBtconX message looks for the name of the resource in the smb_buf buffer. (This is the
last field listed in the following request.) In this example, smb_buf contains the string
\\ESCRIME\PUBLIC, which is the full pathname to a shared directory on node ESCRIME.
Using the "and X" commands like this speeds up each transaction, since the server doesn't
have to wait on the client to make a second request.
Note that the TID is still zero. The server will provide a TID to the client once the session has
been established and a connection has been made to the requested resource. In addition,
note that the password is sent in the open. We can change this later using encrypted
passwords:
>>> NBT Packet
NBT Session Packet
Flags=0x0
Length=139
SMB PACKET: SMBsesssetupX (REQUEST)
SMB Command = 0x73
Error class = 0x0
Error code = 0
Flags1 = 0x10
Flags2 = 0x0
Tree ID = 0
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
87
Proc ID = 5371
UID = 1
MID = 385
Word Count = 13
Com2=0x75
Res1=0x0
Off2=106
MaxBuffer=2920
MaxMpx=2
VcNumber=0
SessionKey=0x1FF2
CaseInsensitivePasswordLength=1
CaseSensitivePasswordLength=1
Res=0x0
Capabilities=0x1
Pass1&Pass2&Account&Domain&OS&LanMan=
KRISTIN PARKSTR Windows 4.0 Windows 4.0
PassLen=2
Passwd&Path&Device=
smb_bcc=22
smb_buf[]=\\ESCRIME\PUBLIC
3.3.6 Making Connection to a Resource
For the final step, the server returns a TID to the client, indicating that the user has been
authorized access and that the resource is ready to be used. It also sets the ServiceType
field to "A" to indicate that this is a file service. Available service types are:
• "A" for a disk or file
• "LPT1" for a spooled output
• "COMM" for a direct-connect printer or modem
• "IPC" for a named pipe
The output is:
>>> NBT Packet
NBT Session Packet
Flags=0x0
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
88
Length=78
SMB PACKET: SMBsesssetupX (REPLY)
SMB Command = 0x73
Error class = 0x0
Error code = 0
Flags1 = 0x80
Flags2 = 0x1
Tree ID = 121
Proc ID = 5371
UID = 1
MID = 385
Word Count = 3
Com2=0x75
Off2=68
Action=0x1
[000] Unix Samba 1.9.1
[010] PARKSTR
SMB PACKET: SMBtconX (REPLY) (CHAINED)
smbvwv[]=
Com2=0xFF
Off2=78
smbbuf[]=
ServiceType=A:
Now that a TID has been assigned, the client may issue any sort of command that it would
use on a local disk drive. It can open files, read and write to them, delete them, create new
files, search for filenames, and so on.
4. Disk Share(Dùng chung Disk)
Ở trong phần này chủ yếu nói về cấu trúc của tập tin cấu hình Samba và chỉ cho chúng ta
thấy các sử dụng các chọn lựa ñể tạo và sửa chữa các disk ñược gửi lên mạng.Ở phần tiếp
theo sẽ là các sử dụng trình duyệt và các thiết lập cấu hình tài khoản,bảo mật,domains và
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
89
máy in....
4.1 Cùng học về cấu trúc tập tin cấu hình Samba
ðây là một ví dụ của tập tin cấu hình Samba.Nếu bạn làm việc trên Windows,thì tập tin INI
sẽ có cấu trúc như smb.conf và nhìn có dạng như sau:
[global]
log level = 1
max log size = 1000
socket options = TCP_NODELAY IPTOS_LOWDELAY
guest ok = no
[homes]
browseable = no
map archive = yes
[printers]
path = /usr/tmp
guest ok = yes
printable = yes
min print space = 2000
[test]
browseable = yes
read only = yes
guest ok = yes
path = /export/samba/test
Mặc dù bạn có thể không hiểu nội dung của nó ở ñây,nhưng ñó là một cấu hình tốt nếu bạn
gấp(còn nếu không thì bạn có thể tạo một cái mới từ cái mới hỗn ñộn trên).ðó chỉ là một
bản tóm tắt ngẵn gọn,tập tin cấu hình này sẽ xác ñịnh hệ thống sửa lỗi không quá 1MB,ñó là
tối ưu hoá cho TCP/IP socket kết nối giữa Samba Server và các SMB clients,cũng như cho
phép tạo ra các disk dùng chung cho mỗi tài khoản như một tài khoản thực tế trên Unix
server.Thêm vào ñó,mỗi máy in ñược ñăng kí trên server sẽ ñược công bố sử dụng
chung,và sẽ tất nhiên chỉ có quyền ñọc ñến catalog dùng chung
là : /export/samba/test .Phần cuối của tập tin cấu hình sẽ là tập hợp các disk mà bạn cho
phép dùng chung ñể thử nghiệm Samba như ñã nếu ở chương 2: cài ñặt Samba trên hệ
thống Unix
4.1.1 Cấu trúc tập tin hệ thống
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
90
Cấu trúc của nó bao gồm các tầng chính như sau(ñối với tập tin này):
[global]
...
[homes]
...
[printers]
...
[test]
...
Tên ñược nằm trong các dấu "[ ]" và chúng ñược chia thành các ñoạn khác nhau trong
smb.conf. Tên của mỗi ñoạn là các dịch vụ ñược gửi lên ñể dùng chung.Ví dụ như: [test] và
[homes] là các disk dùng chung duy nhất.Chúng có các tham biến riêng ñể chỉ ñến một
catalog nhất ñịnh trên Samba Server.ðoạn dùng chung [printers],có chứa các tham biến chỉ
ñến máy in có trên server.Tất cả các ñoạn ñều ñược xác ñịnh rõ ràng trong smb.conf,loại
trừ ñoạn [global],sẽ có giá trị như một disk hoặc máy in dùng chung cho các clients mà kết
nối với Samba Server.
Các dòng còn lại là các chọn lựa cấu hình duy nhất cho các dịch vụ dùng chung.Các chọn
lựa này sẽ có thể có ñược cho ñến khi bắt gặp các dấu "[ ]" của các ñoạn khác hoặc là cho
ñến kết thúc của tập tin.Mỗi một chọn lựa cấu hình sẽ có dạng như sau:
option = value
chọn lựa = giá trị
Các trọn lựa trong smb.conf ñược gán bằng các giá trị tương ứng.Chúng sẽ thông báo cho
bạn tên các chọn lựa trong Samba ñã ñược chọn không tốt lắm.Ví dụ như,chỉ ñọc với các
chú thích của chính mình,và ñối với các ñặc trưng riêng của rất nhiều chọn lựa trong Samba
gần ñây. public là một chọn lựa cũ và cũng không rõ ràng;nó bây giờ trở lên khó hiểu và
ñồng nghĩa với guest ok(cho phép truy cập bằng guest).Chúng tôi sẽ miêu tả một vài cái
chung ñối với lịch sử các tên ñã sử dụng ở trong chương này trong các ñoạn chủ yếu cùng
với các nhiệm vụ quan trọng hơn.Bạn hãy ñọc phần Appendix C, Samba Configuration
Option Quick Reference, ñể có thêm thông tin.
4.1.1.1 Whitespaces,quotes và commas
ðây là một bước quan trọng cần phải nhớ khi chọn lựa cấu hình - ñó là toàn bộ whitespaces
phải có mặt.Ví dụ như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
91
volume = The Big Bad Hard Drive Number 3543
Samba giảm không gian giữa kết thúc e về dung lượng và bắt ñầu T.Những whitespaces
không còn có ý nghĩa gì nữa.Phần còn sẽ tồn tại và sẽ ñược sử dụng và lưu trữ bằng
Samba trong qúa trình ñọc tập tin.Khoảng cách không tồn tại giữa các từ khóa(như guest
ok),nhưng chúng tôi khuyên bạn lên chú ý vào các tiêu chuẩn chung và giữ khoảng cách
giữa các từ khoá.
Nếu bạn cảm thấy an toàn khi bật dấu hiệu quotation ở phần ñầu và kết thúc toàn bộ các
chọn lựa cấu hình,hãy làm ñiều ñó.Samba tự ñộng bỏ qua các quotation marks(dấu hiệu
trích dẫn) khi nó bắt gặp chúng.Nhưng ñừng bao giờ sử dụng quotation marks như một
vong lặp chọn lựa bởi vì Samba sẽ coi chúng là lỗi.
Cuối cùng bạn có thể sử dụng whitespaces,ñể xác ñịnh một loại các giá trị trong bảng danh
sách hoặc bạn có thể sử dụng commas(dấu ",").Hai chọn lựa sau tương ñương nhau:
netbios aliases = sales, accounting, payroll
netbios aliases = sales accounting payroll
Tuy nhiên trong một vài giá trị,bạn cần phải sử dụng một dạng phân chia - khoảng chống ở
một vài trường hợp,dấu "," và trong các trường hợp khác.
4.1.1.2 Capitalization(ðầu tư tài nguyên)
Việc ñầu tư tài nguyên không phải quan trọng trong tập tin cấu hình Samba,nó chỉ là vị trí
của tài nguyên trên hệ thống.Ví dụ,hãy giả sử bạn bật lên chọn lựa chỉ ra ñường dẫn ñến
phần dùng chung /export/samba/simple :
PATH = /EXPORT/SAMBA/SIMPLE
Samba không gặp bất cứ vấn ñề nào trong việc chọn lựa cấu hình cho ñường dẫn mà sử
dụng các chữ cái in.Khi nào ñó mà việc thử kết nối ñến các dữ liệu cho trước không thành
công,thì Unix filesystem trong hệ thống rất nhanh nhậy ñưa các ñường dẫn này vào danh
sách các ñường dẫn ñã không tồn tại và clients không còn có khả năng kết nối ñến nó nữa.
4.1.1.3 Sự tiếp tục của dòng(Line continuation)
Bạn có thể tiếp diễn các dòng trong tập tin cấu hình Samba bằng cách sau:
comment = The first share that has the primary copies \
of the new Teamworks software product.
Cũng bởi vì dấu "\" mà Samba coi hai dòng này là một dòng.Dòng thứ hai ñược bắt ñầu
không phải bằng kí tự whitespaces,khi Samba gặp nó.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
92
4.1.1.4 Chú Thích
Bạn có thể ñặt các ñoạn chú thích trong tập tin cấu hình smb.conf bằng các các dòng mà
bắt ñầu bằng các dấu "#" hoặc ";".Cả hai kí tự này tương ñương nhau.Bạn có thể xem ví dụ
dưới ñây:
# This is the printers section. We have given a minimum print
; space of 2000 to prevent some errors that we've seen when
; the spooler runs out of space.
[printers]
public = yes
min print space = 2000
Samba bỏ qua các chú thích trong tập tin cấu hình của nó.Không có bất cứ hạn chế nào
trong vấn ñề này.Chỉ ñơng giản là ñặt các kí tự "#" hoặc ";" trước các dòng cần chú
thích.Tuy nhiên khi ñó dấu "\" ñể tiếp diễn các dòng sẽ không có giá trị cho các dòng chú
thích.
4.1.1.5 Biến ñổi trong thời gian thực thi
Bạn có thể soản thảo lại tập tin cấu hình smb.conf cũng như bất cứ một sự chọn lựa cấu
hình nào trong nó khi các daemons Samba ñang chạy,bởi vì theo mặc ñịnh thì Samba
sẽ ñọc lại cấu hình của mình sau mỗi 60 s ñể kiểm tra lại các thay ñổi.Nếu nó tìm thấy bất
cứ một sự thay ñổi nào,thì sẽ thực thi chúng ngay lập tức.Tuy nhiên nếu bạn không muốn
ñợi lâu,bạn có thể khởi ñộng ngay lại,có thể gửi các tín hiệu SIGHUP ñến các daemons
smbd và nmbd hoặc ñơn giản là khởi ñộng lại các daemons.
Ví dụ,tiến trình smbd có ID là 893,bạn có ép chúng ñọc lại tập tin cấu hình bằng lệnh sau:
# kill -SIGHUP 893
Tất cả các thay ñổi sẽ ngay lập tức ñược gửi ñến các clients.Ví dụ như,những thay ñổi với
các share(tài nguyên dùng chung) mà tại thời ñiểm hiện tại ñang ñược sử dụng,sẽ không
ñược thực hiện cho ñến khi các clients ngưng kết nối và kết nối trở lại với tài nguyên
này.Ngoài ra,các tham biến của dịch vụ workgroup hoặc NetBios sẽ cũng như vậy,không
nhanh chóng thực hiện.Nó ñược lưu lại ñối với các clients ñang sử dụng ñể không sảy ra
hiện tượng ngắt kết nối hoặc gặp phải các vấn ñề bất ngờ về quyền truy cập,và trong thời
gian ñó các sessions ñược mở.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
93
4.1.2 Tham biến
Samba ñược bổ sung vào một tập hợp các tham biến ñể xác ñịnh các ñặc tính dịch vụ
Samba và clients,mà liên kết với chúng.Mỗi một trong chúng bắt ñầu bằng dấu "%" và ñứng
sau các chữ hoa hoặc các chữ thường và chỉ có thể sử dụng ở mặt bên phải của các chọn
lựa cấu hình.Như ví dụ sau:
[pub]
path = /home/ftp/pub/%a
Trong ñó %a cho các clients dạng như(WinNT cho Windows NT,Win95 cho Windows 95/98
hoặc WfWg cho Workgroup).Chính bởi vì thế,Samba sẽ chỉ ñịnh một ñường dẫn duy nhất
ñến [pub] share ñối với các clients sử dụng Windows NT và các ñường dẫn khác ñối với các
máy clients chạy Windows 95 và một ñường dẫn khác cho Windows ñối với Workgroup.Hay
nói một cách khác các clients sẽ nhìn thấy các phần share của chúng cũng khác nhau phụ
thuộc vào cấu hình hệ thống của chúng:
/home/ftp/pub/WinNT
/home/ftp/pub/Win95
/home/ftp/pub/WfWg
Samba có các tham biến như trong bảng 4.1
Tham biến Chú thích
Tham biến cho client
%a Cấu hình hệ thống clients (e.g., Samba, WfWg, WinNT, Win95, or
UNKNOWN)
%I Client's IP address (e.g., 192.168.220.100)
%m Tên client's NetBIOS
%M Tên client's DNS
Tham biến cho User
%g Primary group of %u
%G Primary group of %U
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
94
Tham biến Chú thích
%H Home directory of %u
%u Current Unix username
%U Requested client username (not always used by Samba)
Tham biến cho Share
%p Automounter's path to the share's root directory, if different from
%P
%P Current share's root directory
%S Current share's name
Tham biến cho
Server
%d Current server process ID
%h Samba server's DNS hostname
%L Samba server's NetBIOS name
%N Home directory server, from the automount map
%v Samba version
Miscellaneous
variables
%R The SMB protocol level that was negotiated
%T The current date and time
ðây là một ví dụ khác cho việc sử dụng các tham biến,giả sử chúng ta có 5 clients trong
mạng nhưng có một client,fred,có yêu cầu nhỏ khác nhau ñể khởi ñộng cấu hình [home]
khi kết nối với Samba server.Với Samba việc này ñơn giản:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
95
[homes]
...
include = /usr/local/samba/lib/smb.conf.%m
...
Ở ñây chọn lựa include cho phép các máy có tên NetBios ñặc biệt (%m) có thể ñọc ñến các
tập tin bổ sung.Nếu hostname clients - fred,và nếu như tập tin smb.conf.fred ñã tồn tại
trong catalog samba_dir/lib/(hoặc không tương ứng với catalog chứa tập tin cấu hình của
bạn).Khi ấy Samba sẽ ñặt tập tin ấy theo ngầm ñịnh.Nếu như bất cứ một chọn lựa cấu hình
ñược thông báo lại trong smb.conf.fred thì chúng sẽ bẻ ñi những tham biến của bất cứ
chọn lựa cấu hình nào mà gặp ñầu tiên có trong share.Chú ý là chúng ta nói về "ñầu
tiên".Nếu bất cứ chọn lựa cấu hình nào cũng ñược thông báo lại trong tập tin cấu hình
chính,như một tập hợp cho trước,thì khi Samba sẽ thực hiện các thông báo ñó lại cho share
và chúng ñược xác ñịnh trong ñó.
Chúng ta có một phần rất quan trong: Nếu như không có bất cứ một tập tin nào,Samba sẽ
không gặp lỗi.Khách quan mà nói,không làm bất cứ một cái gì - Hoàn toàn không.Nó cho
phép tạo chỉ một tập tin cấu hình duy nhất cho fred khi sử dụng chiến lược này,mỗi một cho
các máy NetBios,mà nằm trong mạng.
Bạn có thể sử dụng từng tham biến trong bảng 4.1 ñể ñưa ra các giá trị hữu ích ñối với các
chọn lựa cấu hình Samba.Chúng ta quay lại với kế hoạch ñầu tiên với một vài từ tổ hợp của
chúng,và có lẽ chúng ta sẽ xem chúng ở các mục tiếp theo.
4.2 Các Sections(khu vực) ñặc biệt
Bây giờ bạn ñã biết ñược những tham biến cấu hình cũng như các sections quan trọng
trong cấu hình của Samba mà bạn cần phải nắm rõ.Một lần nữa ñừng có sợ bạn không hiểu
hết từng sections trong cấu hình của Samba.Chúng ta sẽ tìm hiểu lần lượt từng ñoạn một
trong các mục lớn của cuốn sách.
4.2.1 Sections [Globals]
section [global] ñều có mặt trong tất cả các tập tin cấu hình Samba,thậm chí ngay cả khi
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
96
không cần ñến giá trị của nó.Bất cứ một chọn lựa cấu hình nào trong khu vực này sẽ liên
quan ñến tất cả các share còn lại,như thể nội dung của phần này sẽ ñược sao chép toàn bộ
lại vào cho các share ñể thực hiện.Các sections khác cũng có thể chứa nội dung giống
như trong section [global],nó sẽ có tác dụng loại bỏ các giá trị như thế trong [global] ñối với
nó.
ðể làm rõ hơn nó,chúng ta hãy theo dõi ví dụ này ñể biết thêm:
[global]
log level = 1
max log size = 1000
socket options = TCP_NODELAY IPTOS_LOWDELAY
guest ok = no
[homes]
browseable = no
map archive = yes
[printers]
path = /usr/tmp
guest ok = yes
printable = yes
min print space = 2000
[test]
browseable = yes
read only = yes
guest ok = yes
path = /export/samba/test
Trong ví dụ trên,chúng ta chuẩn cho các clients kết nối với các tài nguyên share trên
mạng,Samba ñầu tiên ñọc nội dung của section [global].
Trong mục này ñã có chọn lựa cấu hình "guest ok = no" ,nó sẽ có tác dụng cho các share
còn lại.Ở ñây bao gồm có shares là [homes] và [printers].Còn khi ñọc ñến [test] thì nó sẽ tìm
thấy một chọn lựa cấu hình là "guest ok = yes " thì giá trị này sẽ ñược ghi chèn lên giá trị
"no" trong [global],chú ý là chỉ ñối với tài nguyên share này.Tất cả các chọn lựa cấu hình
không nằm trong các section(Trước section ñầu tiên) ñều coi là các chọn lựa cấu hình toàn
cục.
4.2.2 Section [homes]
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
97
Nếu như clients thử kết nối ñến các tài nguyên share mà không có trong smb.conf thì
Samba sẽ tìm ở [home] trong tập tin cấu hình.Nếu như chúng tồn tại,nhưng tên của share
không rõ ràng là một Unix-username,thì các dịch vụ Samba sẽ quay sang kiểm tra lại hệ
thống dữ liệu mật khẩu.Nếu như tên Unix-username ñược xác ñịnh,thì Samba sẽ tiếp nhận
như một Unix-username và Samba sẽ thử kết nối ñến nó hoặc catalog home của nó.
Ví dụ như chúng ta có một máy client muốn kết nối ñến Samba Server hydra,và thử kết nối
ñến tài nguyên share có tên là [alice].Nhưng trong smb.conf không có bất cứ một share có
tên là [alice],nhưng lại có ở trong catalog [homes],chính vì thế Samba sẽ thử tìm kiếm
trong hệ thống cơ sở mật khẩu ñể tìm trong ñó tài khoản có tên là alice.Nếu tài khoản alice
tồn tại trên hệ thống,khi ấy Samba sẽ kiểm tra mật khẩu giúp các clients ñể so sánh với mật
khẩu Unix của username alice. hoặc là với các tập tin hệ thống mật khẩu,nếu chúng không
phải là mật khẩu mã hoá hoặc smbpasswd của Samba nếu như mật khẩu ñang ñược sử
dụng.Nếu như chúng phù hợp,thì Samba biết rằng,có thể sử dụng quyền hạn như tài khoản
alince và sẽ thử kết nối ñế catalog home của alice.Samba khi ấy sẽ tạo ra một tài nguyên
share có tên là [alice] cho nó.
Quá trình sử dụng các sections [homes] ñể tạo các tài khoản users( và làm việc với mật
khẩu) sẽ ñược thảo luận thêm ở chương 6: "Tài khoản,Bảo mật và Donains".
4.2.3 Section [printers]
Một secton thứ ba cũng rất quan trọng là [printers] và cũng như section [homes].Cũng như
vậy,nếu như clients ñịnh kết nối với các share mà không nằm trong tập tin smb.conf và tên
của nó cũng không có trong tập tin mật khẩu(passwd),khi ấy Samba sẽ kiểm tra xem ñấy có
phải là share [printers].ðể làm ñiều này,Samba sẽ ñọc các ñặc trưng của máy in (thông
thường /etc/printcap) ñể kiểm tra xem có tên tài nguyên share trên có trong ñó không.Nếu
có thì Samba sẽ tạo ra một share có tên máy in.
Tuy nhiên còn phụ thuộc vào hệ thống của bạn,nếu như không có tập tin /etc/printcap.Bạn
có thể sử dụng testparm ñi kèm cùng Samba ñể xác ñịnh các giá trị của tên các chọn lựa
cấu hình printcap.Nó sẽ mang giá trị ngầm ñịnh ñã chọn(ở phần global) khi samba ñã biên
dịch song.
Giống như [homes],bạn sẽ không cần phải xác nhận các share cho từng máy in trên hệ
thống trong tập tin smb.conf.Thay vào ñó,Samba có thể thực hiện việc ñăng kí máy,nếu bạn
yêu cầu ñến chúng cũng như việc ñăng kí các máy in trên các máy clients.Tuy nhiên vẫn có
những hạn chế nhất ñịnh:Nếu bạn có tài khoản fred và máy in fred.Theo tên fred,Samba
bao giờ cũng tìm tên tài khoản fred trước tiên,ngay cả khi client ñấy cũng ñang cần kết nối
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
98
với máy in.
Phần [printers] share sẽ ñược tiếp tục ở chương 7: In ấn và tên cho phép
4.2.4 Các chọn lựa cấu hình
Các chọn lựa trong tập tin cấu hình Samba thường thuộc hai loại chính là: global
và share(toàn cục và cục bộ).Mỗi loại sẽ xác ñịnh,ở ñâu các chọn lựa cấu hình có thể xuất
hiện trong tập tin cấu hình.
global
Chọn lựa cấu hình toàn cục(global) cần phải có mặt ở section [global] và không ở ñâu
nữa.Chúng là các chọn lựa cấu hình có thể nói là ñại diện khi làm việc với các dịch vụ trong
Samba chứ không phải ñối với các tày nguyên share của nó.
share
Các cấu hình chọn lựa share có thể có mặt trong các share ñã ñịnh sẵn hoặc chúng có thể
có mặt trong cả section [global].Nếu như chúng có mặt trong section [global],chúng sẽ áp
ñặt trạng thái hoạt ñộng cho các tài nguyên share còn lại,nếu như các tài nguyên share
không ghi chèn lên các giá trị ñó bằng các giá trị của mình.
Ngoài ra,các chọn lựa cấu hình có thể có các giá trị mà thuộc bốn kiểu sau:
Kiểu Boolean
Chúng chỉ ñơn giản là ñúng và sai,nhưng có thể ñược biểu diễn dưới các hình thức
sau:yes,no,true,false,0,1.Giá trị không nhạy cảm nhất là YES cũng như yes.
Kiểu Số
Số nguyên,cơ số 16,cơ số 8.Cấu trúc cú pháp chuẩn cho cơ số 16 là 0xnn còn 0nn cho cơ
số 8
Kiểu chuỗi
Là tập hợp các kí tự tinh tế,như là filename hoặc username
Kiểu liệt kê
Một danh sách các giá trị ñã biết trước.Thực tế thì boolearn cũng là một kiểu liệt kê với hai
giá trị.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
99
4.3 Các chọn lựa của tập tin cấu hình
Samba có khoảng trên 200 chọn lựa cấu hình,chính vì thế hãy bắt ñầu từ các cái dễ,ñược
coi là tổ hợp của các chọn lựa ñể bạn có thể dễ dàng sử dụng chúng ñể biến ñổi tập tin cấu
hình theo ý muốn.
Như ñã nói ở trên,các tập tin cấu hình không hoàn toàn cố ñịnh.Bạn có thể ñiều khiển
Samba bật hoặc thay ñổi các chọn lựa cấu hình,ñể biến ñổi chúng.Các chọn lựa mà bạn có
thể thực hiện ñược ghi trong bảng 4.2
bảng 4.2
Chọn
lựa
Tham biến Chức năng Mặc
ñịnh
Phạm
vi
config
file
string (Tên
ñầy ñủ)
Xác ñịnh vị trí của một tập tin cấu hình và thay thế
nó cho một tệp cho trước
None Global
include string (Tên
ñầy ñủ)
Specifies an additional segment of configuration
options to be included at this point in the
configuration file.
None Global
copy string (Tên
ñầy ñủ)
Allows you to clone the configuration options of
another share in the current share.
None Share
4.3.1 configure file
Trong section [global] thì config file là một chọn lựa cấu hình ñặc biệt ñể thay thế cho các
tập tin cấu hình sẽ ñược khởi ñộng khi bắt gặp chúng.
Samba sẽ configure lại toàn bộ với các chọn lựa cấu hình trong tập tin mới này.Config file
ñặc biệt có lợi khi bạn khởi ñộng các tập tin cấu hình ñặc biệt trên các máy hoặc những
người sử dụng clients ñang kết nối ñến nó.
ví dụ như các dòng dưới ñây sẽ ñịnh hướng Samba sử dụng tập tin cấu hình ñặc biệt bằng
tham biến NetBios name ñối với clients ñang kết nối ñến nó,nêu như tập tin tồn tại.Nếu như
không có tập tin ñặc biệt này thì dong này sẽ ñược bỏ qua.Bạn hãy xem dòng dưới này:
[global]
config file = /usr/local/samba/lib/smb.conf.%m
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
100
Nếu như tập tin cấu hình ñặc biệt không tồn tại,khi ñó chọn lựa cấu hình sẽ bỏ qua và
Samba sẽ tiếp tục cấu hình nó trên cơ sở của tập tin cấu hình hiện hành.
4.3.2 include
Chọn lựa này ñược thảo luận một cách rõ ràng hơn chọn lựa trên.Sao chép các tập tin cần
thiết ñến tập tin cấu hình hiện hành tại vị trí cần thiết như hình 4.1.Config file ñặc biệt có lợi
khi bạn khởi ñộng các tập tin cấu hình ñặc biệt trên các máy hoặc những người sử dụng
clients ñang kết nối ñến nó.Bạn có thể sử dụng như sau:
[global]
include = /usr/local/samba/lib/smb.conf.%m
Nếu như tập tin cấu hình không tồn tại thì dòng này sẽ bị bỏ qua.Hãy nhớ rằng,bấy cứ cấu
hình nào chỉ ra trước ñấy ñều bị bở qua.Trong hình 4.1,có ba chọn lựa sẽ bị gạt ra
Trong ñó include không thể hiểu tham biến %u(user),%p(catalog share hiện thời của root)
hoặc %s(share hiện hành) bởi vì chúng không ñược xác ñịnh tại thời ñiểm mà tập tin ñược
ñọc.
4.3.3 copy
Ở ñây copy là chọn lựa cấu hình,cho phép bạn mô phỏng lại chọn lựa cấu hình của share
name mà bạn ñã ghi rõ ra trong share hiện hành.Phải nhớ rằng,share bị sao chép cấu hình
phải có mặt trước share ñược sao chép cấi hình,như ví dụ sau:
[template]
writable = yes
browsable = yes
valid users = andy, dave, peter
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
101
[data]
path = /usr/local/samba
copy = template
Chú ý,bất cứ các chọn lựa nào trong share mà cần ñến chọn lựa copy sẽ gạt qua tất cả các
chọn lựa khác trong share mô phỏng.Việc chúng có mặt trước hoặc sau sự chỉ dẫn copy là
không quan trọng.
4.4 Cấu hình Server
Bây giờ chúng ta sẽ tiến hành thiết lập cấu hình Samba Server.Hãy lấy ba chọn lựa cấu
hình cơ bản có thể xuất hiện ở trong section [global] của tập tin smb.conf:
[global]
# Server configuration parameters
netbios name = HYDRA
server string = Samba %v on (%L)
workgroup = SIMPLE
ðấy là tập tin cấu hình ñơn giản.Nó thông báo cho Samba server trên NBT network dưới
NetBios hyrda.Bổ sung thêm,máy ở trong workgroup SIMPLE và hiển thị các thông tin ñến
clients,bao gồm số phiên bản Samba như NetBios name trên Samba server.
Bạn nên có dòng encrypt passwords=yes trong tập tin cấu hình của mình.Cúng ta hãy ñi
tiếp,tiến hành tạo ra tập tin cấu hình.Hãy tạo một tập tin smb.conf trong catalog
/usr/local/samba/lib(trong các phiên bản mới là /etc/samba/).Sau ñó khởi ñộng lại Samba
server và windows clients ñể kiểm tra lại kết quả.Bạn phải chắc chắn là Windows Clients
của bạn phải ở trong SIMPLE workgroup.Sau ñó hãy nhấn lên Network Neighborhood trong
Windows Client,bạn sẽ nhìn thấy một cửa sổ mới như là trong hình 4.2(ở trong này có máy,
phoenix và chimare như các Windows Clients)
bạn có thể kiểm tra lại dòng server string trong danh sách các lời chú giải của Network
Neighborhood window(Chọn biểu tượng menu chú thích(Details menu) dưới hiện thị
menu(View menu)),bạn sẽ nhìn thấy như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
102
nếu bạn kích lên biểu tượng hydra,một cửa sổ khác sẽ hiện ra với các dịch vụ mà nó cho
phép.Cũng có trường hợp là một cửa sổ rỗng bởi vì chúng không có các dịch vụ ñược gửi
lên ñể dùng chung.
4.4.1 Chọn lựa cấu hình của Server
Bảng 4.3 biểu diễn tổng tất cả các chọn lựa cấu hình trên Server.Chú ý là các chọn lựa này
nhất ñịnh phải có mặt tại section [global] của tập tin cấu hình.
Chọn lựa Tham
biến
Chức năng Mặc ðịnh Phạm
vi
netbios
name
string Sets the primary NetBIOS name of the
Samba server.
Server DNS
hostname
Global
server
string
string Sets a descriptive string for the Samba
server.
Samba %v Global
workgroup string Sets the NetBIOS group of machines
that the server belongs to.
Defined at
compile time
Global
4.4.1.1 netbios name
Chọn lựa netbios name dùng ñể xác ñịnh NetBios name trên server.Ví dụ như:
netbios name = YORKVM1
Theo mặc ñịnh ñây là giá trị cho cấu hình cho server's hostname.ðấy là phần ñầu của tên
máy DNS.Ví dụ như,máy với DNS có tên là ruby.ora.com sẽ lấy tên NetBios là RUBY làm
mặc ñịnh.Bạn có thể sử dụng lại chọn lựa này ñể cống bố lại tên máy NetBios trong tập tin
cấu hình.Nó thường ñược sử dụng ñể gán tên Samba Server bằng một cái tên NetBios
khác hơn là sử dụng qua tên của DNS hiện hành.Chú ý là tên phải lấy tên theo ñúng quy tắc
ñối với các tên máy NetBios.(Xem chương 1,cùng học Samba)
Việc thay ñổi tên NetBios của Server chúng tôi không khuyến khích trừ khi bạn có lý do
chính ñáng.Một trong số ñó nếu như hostname của máy không duy nhất bởi vì trong LAN
ñược phân chia bởi hai hoặc nhiều hơn DNS domains.Ví dụ như,YORKVM1 là một NetBios
tốt cho vm1.york.example.com hoặc các tên khác như vm1.falkirk.exampler.com.Chúng
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
103
giống nhau ở hostname nhưng khác nhau ở DNS domain.
Một vài người khác sử dụng chọn lựa này ñể xây dựng lại SMB services từ các máy ñã chết
hoặc ñẵ ngưng hoạt ñộng.Ví dụ như,nếu SALES là một SMB server cho một công sở nhà
nước,và nó ñã chết một cách bất ngờ,bạn có thể ngay lập tức xác lập lại netbios name =
SALES trên một bản dự phòng Samba chuẩn bị sẵn cho nó.Những người sử dụng ñã
không cần phải thay ñổi ñường dẫn ñến máy mới,còn các kết nối mới sẽ tiến ñến thẳng máy
mới.
4.4.1.2 Server String
Tham biến server string ñược coi như các chú thích sẽ hiện ra trước tên server trong cả
Network Neighborhood(khi cần hiển thị ở Detals menu) và các chú thích trong trình quản lý
máy in của Microsoft Windows.Bạn có thể sử dụng các giá trị tiêu chuẩn ñể thiết lập các
thông tin ở phần chú thích.Vi dụ như:
[global]
server string = Samba %v on (%h)
Theo mặc ñịnh của chọn lựa này,chúng chỉ hiện thị ra kí hiệu phiên bản Samba hiện
hành.Nó như:
server string = Samba %v
4.4.1.3 workgroup
Tham biến workgroup sẽ xác ñịnh nhóm làm việc hiên hành workgroup mà Samba Server
sẽ làm việc trong ñó.Clients muốn có quyền truy cập lên các tài nguyên share trên Samba
server cũng phải thiết lập như NetBios workgroup.Nhớ rằng,workgroup thực tế như tên
một nhóm NetBios,và phải tuân theo các quy tắc ñặt tên NetBios như trong chương 1
[global]
workgroup = SIMPLE
Theo mặc ñịnh chọn lựa này sẽ ñược xác ñịnh tại thời ñiểm ñã hoàn tất công việc.Nếu nó
không thay ñổi trong makefile,nó sẽ là WORKGROUP.Bởi vì có thể dẫn ñến tên workgroup
sẽ không ñược xác ñịnh của mỗi NetBios network,chúng tôi khuyến khích bạn hãy luôn sử
dụng tên workgroup như ñã thiết lập trong tập tin cấu hình Samba
Chúng tôi ñã ñề cập ñến rằng,thật là một ý kiến tồi khi bạn có một workgroup,có tên tài
nguyên share giống như tên
server.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
104
4.5 Thiết lập cấu hình Disk Share Chúng ta ñã nói ở trên,trên server hydra không có disk share.Bây giờ hãy tiếp tục với tập tin
cấu hình smb.conf ñể tạo ta một disk share có tên là [data].Bạn hãy làm như sau:
[global]
netbios name = HYDRA
server string = Samba %v on (%L)
workgroup = SIMPLE
[data]
path = /export/samba/data
comment = Data Drive
volume = Sample-Data-Drive
writeable = yes
guest ok = yes
Trong ñó,[data] share là một ñại diện cho disk share.Trong ñường dẫn trên Samba Server
ñó là một catalog /export/samba/data.Chúng tôi cũng chỉ ra các chú thích cho disk share
như một Data Drive,và như một tập hợp tên cho share.
Trên share có thể thiết lập giá trị writeable ñể cho phép các người sử dụng có thể ghi dữ
liệu lên nó.Theo mặc ñịnh Samba sẽ chỉ cho phép ñọc lên các share.Tóm lại,ñó là một chọn
lựa cần thiết ñể thiết lập các disk share nếu bạn muốn ghi lên chúng.
Bạn có thể thông báo về việc sử dụng guest ok với giá trị yes.Mặc dù ñiều này không hoàn
toàn ñược bảo mật,có một vài mật khẩu ñược cấp phát nếu bạn không hiểu về cách thiết
lập các tài khoản ñặc biệt cũng như phương pháp xác ñịnh tài khoản ñăng nhập.
Tiếp theo,hãy tạo một catalog /export/samba/data dưới tài khoản root trên máy Samba với
các dong dưới ñây:
# mkdir /export/samba/data
# chmod 777 /export/samba/data
Bây giờ hãy thử kết nối lại với server hydra(bạn có thể làm bằng cách nhấn kép lên biểu
tượng trong Windows Network Neighborhood).Bạn sẽ nhìn thấy một danh sách các tài
nguyên share trong ñó có data,như hình 4.4.Share này cũng cho phép bạn ñọc/ghi lên
nó.Hãy tạo hoặc sao chép các tập tin lên share này.Hoặc có thể tạo ra một ñĩa cứng qua
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
105
mạng khi kết nối với nó.
hình 4.4
4.5.1 Chọn lựa cấu hình cho Disk Share
Tập hợp các chọn lựa cấu hình cho disk share ñược ghi ra trong bảng 4.4
Chọn lựa Tham biến Chức năng Mặc
ñịnh
Phạm
vi
path
(directory)
string
(fully-qualified
pathname)
Sets the Unix directory that will be
provided for a disk share or used for
spooling by a printer share
/tmp Share
guest ok
(public)
boolean If set to yes, authentication is not
needed to access this share
no Share
comment string Sets the comment that appears with
the share
None Share
volume string Sets the volume name: the DOS name
of the physical drive
Share
name
Share
read only boolean If yes, allows read only access to a
share.
yes Share
writeable
(write ok)
boolean If no, allows read only access to a
share.
no Share
4.5.1.1 ðường dẫn
ðây là chọn lựa ñồng nghĩa với catalog,chỉ ra tên ñường dẫn như root trong tập tin hoặc
printers share.Bạn cần phải chi ra ñường dẫn trên Samba server,và chỉ có chủ sở hữu của
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
106
các tiến trình Samba ñang kết nối mới có quyền truy cập ñọc/ghi ñến catalog này.
Nếu ñường dẫn là máy in share,thì bạn cần phải chỉ ra vị trí cho catalog tạm thời,nơi mà các
tập tin có thể ghi lên server trước khi nó bắt ñầu ñược gửi ñến máy in(/tmp và /var/spool là
các chọn lựa thông dụng).Nếu ñường dẫn là một disk share,thì khi ñó nội dung chứa trong
một thư mục ñại diện share trên máy clients sẽ tương ứng với nội dung của catalog trên
Samba server.Ví dụ như:
[network]
path = /export/samba/network
writable = yes
guest ok = yes
và nội dung của catalog /usr/local/network trên Unix như sau:
$ ls -al /export/samba/network
drwxrwxrwx 9 root nobody 1024 Feb 16 17:17 .
drwxr-xr-x 9 nobody nobody 1024 Feb 16 17:17 ..
drwxr-xr-x 9 nobody nobody 1024 Feb 16 17:17 quicken
drwxr-xr-x 9 nobody nobody 1024 Feb 16 17:17 tax98
drwxr-xr-x 9 nobody nobody 1024 Feb 16 17:17 taxdocuments
Bạn cũng nhìn thấy hình ảnh tương tự trên clients như hình 4.5
hình 4.5
4.5.1.2 guest ok
Chọn lựa này(như dạng public) cho phép hoặc ngăn cấp tài khoản guest ñối với share.Theo
mặc ñịnh,giá trị của nó là no.Nếu thiết lập lại là yes,thì bạn sẽ không cần sử dụng username
và password khi kết nối vào server.Khi bất cứ một người dùng nào kết nối vào,thì quyền truy
cập sẽ tự ñộng gắn bằng tài khoản guest.Theo mặc ñịnh,tài khoản mà Samba ñưa ra cho
share là nobody.Tuy nhiên có thể thiết lập lài bằng tài khoản guest.Ví dụ như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
107
[global]
guest account = ftp
[accounting]
path = /usr/local/account
guest ok = yes
cho phép tài khoản guest truy cập ñến [accounting] share với quyền truy cập của một tài
khoản ftp.
Chú ý là bạn vẫn có thể kết nối ñến share và sử dụng username/password.Nếu thành
công,chúng sẽ cho phép bạn truy cập giống như chủ sở hữu của tài nguyên chứ không phải
là guest.Bạn có thể ép buộc tất cả các tài khoản truy cập ñến share sẽ sử dụng như
guest(tất nhiên sẽ có quyền hạn như guest) bằng chọn lựa cấu hình sau: guest only = yes.
4.5.1.3 chú thích
Tham biến comment cho phép bạn nhập vào những lời giải thích,mà sẽ gửi ñến clients khi
nó cố gắng trình duyệt share.Những người sử dụng cũng có thể nhìn thấy những lời chú
giải trên danh sách chú thích trong thư mục share dưới các máy ñang chiếm hữu tài nguyên
share trong Windows Network Neighborhood,hoặc bạn có thể sử dụng net view trong
MS-DOS.Ví dụ như sau:
[network]
comment = Network Drive
path = /export/samba/network
Chú ý là,với cấu hình hiện nay của Windows,thì những lời chú giải này sẽ không ñược hiển
thị như một share mà là một ánh xạ ñến Windows network drive(ñĩa mạng).
hình 4.6
4.5.1.4 volume(ðịnh danh)
ðây là chọn lựa cho phép bạn chỉ ra tên của share cũng như gián tiếp qua SMB.Thông
thường nó ñược giải quyết ñối với các tên ñã quy ñịnh trong smb.conf.Tuy nhiên nếu bạn
muốn một vài tên khác,bạn có thể sử dụng chọn lựa này.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
108
Ví dụ,như chương trình cài ñặt có thể kiểm tra "name volume" của CD-ROM ñể có thể chắc
chắn rằng ñấy là CD-ROM,và sẵn sàng cho quá trình cài ñặt.Nếu bạn sao chép nội dung
của CD-ROM và gửi lên mạng,bạn muốn cài ñặt ñược từ nó,hãy làm như sau:
[network]
comment = Network Drive
volume = ASVP-102-RTYUIKA
path = /home/samba/network
4.5.1.5 Quyền hạn "Ghi và ðọc"
Chọn lựa read only và writeable(hoặc write ok) là hai cách nói của cùng một công
việc,nhưng cũng gần như ñối ngược nhau về cuối.Ví dụ,bạn có thể thiết lập một trong hai
chọn lựa trong section [global] hoặc trong share riêng:
read only = yes
writeable = no
Nếu một trong hai chọn lựa ñược thiết lập,thì khi ñó dữ liệu chỉ có thể ñọc trên share,nhưng
không thể ghi lên ñược.Bạn nghĩ là cần chọn lựa này nếu bạn sử dụng red-only cho
share.Tuy nhiên chú ý,red-only ñược ñịnh hướng là mặc ñịnh cho các tài nguyên
share.Chính vì thế,nếu bạn muốn thực hiện quyền hạn ghi trên các dữ liệu của share,bạn
phải thực hiện một trong các chọn lựa sau trong các cấu hình của share:
read only = no
writeable = yes
Chú ý,nếu bạn chỉ ra hơn một sự kiện trong hai chọn lựa,Samba sẽ sử dụng giá trị cuối
cùng của nó ñể áp dụng vào tài nguyên share.
4.6 Chọn lựa hệ thống mạng với Samba
Nếu bạn chạy Samba trên một hệ thống có nhiều máy con(cũng như hệ thống ña
subnets),hoặc bạn muốn tiến hành bảo mật trong subnet của mình,bạn lên xem các chọn
lựa cấu hình mạng.
ðể thực hiện công việc này,hãy giả thiết rằng,Samba server của bạn ñược kết nối với mạng
mà có chứa hơn một subnets.ðặc trưng của các máy có thể truy cập là 192.168.220.* và
134.213.233.* subnets.Ở ñây hãy bổ sung thêm vào tập tin cấu hình các chọn lựa cấu hình
mạng:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
109
[global]
netbios name = HYDRA
server string = Samba %v on (%L)
workgroup = SIMPLE
# Networking configuration options ***chú ý ở ñây
hosts allow = 192.168.220. 134.213.233. localhost
hosts deny = 192.168.220.102
interfaces = 192.168.220.100/255.255.255.0 \
134.213.233.110/255.255.255.0
bind interfaces only = yes
[data]
path = /home/samba/data
guest ok = yes
comment = Data Drive
volume = Sample-Data-Drive
writeable = yes
ðầu tiên hãy nói về các chọn lựa hosts allow và hosts deny.Nếu nói về họ các chọn lựa thì
bạn cần phải nghĩ về các tập tin hosts.allow and hosts.deny mà có mặt trong catalog /etc
trên hệ thống Unix.Mục ñích của các chọn lựa này là tăng cường sự chính xác cho các tập
tin này.Chúng thực hiện những tiềm năng bảo mật bằng cho phép và ngăn cấm các kết nối
của các hosts khác dựa vào ip-address.Nhưng câu hỏi ñặt ra:Tại sao không sử dụng các
tập tin hosts.allow and hosts.deny thay chúng.Bởi vì có nhiều dịch vụ trên server ,mà bạn
muốn những cái khác cũng có thể truy cập ,bỏ qua việc truy cập ñến Samba share disk và
share printers
Với chọn lựa hosts allow ,chúng ta sẽ có ñược IP-address: 192.168.220. (chú ý,nó chỉ là ba
dãy số ban ñầu;Nó phải thiếu mất ñi số thứ tư).Nó tương ñương với:"Cho phép tất cả các
host trên subnet:192.168.10.220".Tuy nhiên bạn cũng phải xác ñịnh rõ ràng host bị cấm bởi
dòng "192.168.220.102".
Bạn phải ngạc nhiên rằng tại sao host 192.168.220.102 lại bị cấm vì nó vẫn nằm trong
subnets mà ñược quyền truy cập trong chọn lựa hosts allow.
ðây là các nguyên tắc ra vào của Samba với các host dựa vào hosts allow and hosts deny:
1. Nếu như không có các chọn lựa allow hoặc deny trong smb.conf,Samba sẽ cho phép bất
cứ máy nào ñược phép bằng hệ thống kiểm tra của chính mình.
2. Nếu như có chọn lựa hosts allow hoặc hosts deny trong [global] của smb.conf,Samba sẽ
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
110
áp dụng chúng cho tất cả các tài nguyên share,ñặc biệt là share có các chọn lựa quan trọng
ñược nhận dạng
3. Nếu chỉ có chọn lựa hosts allow ñược xác ñịnh cho share,thì bất cứ máy nào không có
tên trong danh sách cho phép cũng có thể truy cập ñể sử dụng share.
4. Nếu chỉ có chọn lựa hosts deny ñược xác ñịnh,thì chỉ những host có tên trong danh sách
cho phép truy cập,cùng với những host không có tên trong danh sách cấm truy cập có thể
sử dụng share
5. Nếu có cả hai chọn lựa hosts allow and hosts deny ñược xác ñịnh,thì những host có tên
trong danh sách cho phép truy cập và các hosts không có tên trong danh sách cấm truy cập
có thể sử dụng share.Ngoài ra ñều bị cấm hết.
Chú ý: Bạn không nên cho phép các hosts truy cập lên share nhưng lại cấm truy cập ñối với
toàn bộ subnets của chúng.
Hãy xem ví dụ khác ,cân nhắc các chọn lựa cấu hình:
hosts allow = 111.222.
hosts deny = 111.222.333.
ðấy là một tổ hợp,cho phép các subnet 111.222.*.* truy cập lên Samba share.Truy
nhiên,nếu như một clients trong subnets 111.222.333.* sẽ bị cấm truy cập.Clients cần phải
nằm trong danh sách hosts allow và không thuộc danh sách hosts deny mới có thể truy cập
vào Samba share.Nếu như clients thử truy cập vào các tài nguyên share mà không ñược sự
cho phép thì sẽ nhận ñược các thông báo lỗi về quyền hạn.
Còn có hai chọn lựa khác mà chúng ta sẽ ñề cập ñến là : interfaces và the bind interface
only address.Hãy tìm hiểu chọn lựa interfaces trước tiên.Samba,theo mặc ñịnh,sẽ gửi các
dữ liệu chỉ từ các network interface chủ,mà theo ví dụ là 192.168.10.100 subnet.Nếu bạn
muốn gửi dữ liệu cho nhiều hơn một interface,chúng ta cần xác ñịnh danh sách với chọn
lựa interface.Ở trong ví dụ trên,chúng ta hạn chế Samba ñến interface với hai
subnets(192.168.220 và 134.213.233) trên các máy là hệ thống ñược thiết lập một network
interface khác có ñịa chỉ là: 134.213.233.100.Nếu bạn có nhiều hơn một interface trên
máy,bạn cần phải chỉ ra chọn lựa này ñể nó không là interface chủ và Samba sẽ chọn một
cái.
Cuối cùng là chọn lựa bind interfaces only dùng ñể chỉ dẫn các tiến trình nmbd không tiếp
nhận các tin nhắn broadcast khác của các subnets ñược ñịnh dạng ở chọn lựa
interfaces.Chú ý,ở ñây có sự khác biệt ñối với các chọn lựa hosts allow and hosts deny là
ngăn cản các máy muốn kết nối ñến các dịch vụ,nhưng không từ các các tin nhắn broadcast
nhận ñược.Sử dụng chọn lựa bind interfaces only là một con ñường ngăt ñi các datagrams
từ các subnets lạ mà bắt ñầu ñược thừa nhận bởi Samba server.Bổ sung thêm,nó chỉ dẫn
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
111
cho các tiến trình smbd kết nối các danh sách interface có trong chọn lựa interfaces .ðấy
là một hạn chế cho các networks khi Samba là server.
4.6.1 Chọn lựa cấu hình mạng
bảng 4.5
Option Parameters Function Default Scope
hosts allow
(allow hosts)
string (list of
hostnames)
Specifies the machines that
can connect to Samba.
none Share
hosts deny
(deny hosts)
string (list of
hostnames)
Specifies the machines that
cannot connect to Samba.
none Share
interfaces string (list of
IP/netmask
combinations)
Sets the network interfaces
Samba will respond to.
Allows correcting defaults.
system-dependent Global
bind
interfaces
only
boolean If set to yes, Samba will
bind only to those
interfaces specified by the
interfaces option.
no Global
socket
address
string (IP address) Sets IP address to listen
on, for use with multiple
virtual interfaces on a
server.
none Global
4.6.1.1 Hosts ñược cho phép(hosts allow)
Chọn lựa hosts allow (ðôi khi còn viết là allow hosts) chỉ rõ các máy có quyền hạn truy cập
ñến các share trên Samba server.Bạn có thể hoàn toàn có lợi về bảo mật khi ñặt vào chọn
lựa ñịa chỉ subnets LAN của bạn.Bạn hãy xem ví dụ ở ñây:
hosts allow = 192.168.220. localhost
Chú ý rằng chúng ta ñặt localhost sau subnet address.Một trong các lỗi cơ bản khi sử dụng
localhost là tình cờ không cho phép truyền thông tin trên các Samba Server qua chính nó.
Chương trình smbpasswd sẽ cần ñến cho việc kết nối ñến các Samba server như một client
ñể thay ñổi tài khoản cùng mã hoá mật khẩu.Bổ sung thêm vào ñó,trình duyệt cục bộ sẽ
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
112
truyền ñi yêu cầu các host cục bộ ñược cho phép.Nếu chọn lựa này ñược thực hiện và
localhost address không ñược chỉ ra,các packages ñược sinh ra cục bộ ñể yêu cầu thay ñổi
mã hoá mật khẩu sẽ bị loại bỏ bởi Samba và trình duyệt truyền tin sẽ làm việc không bình
thường.ðể tránh ñiều ñó,cần phải cho phép sau ñịa chỉ (localhost hoặc 127.0.0.1) ñể sử
dụng.
Bắt ñầu từ Samba 2.0.5, localhost sẽ tự ñộng cho phép trừ khi nó bị cấm.
Bạn cần phải chỉ ra bất kì một chọn lựa nào trong các dạng sau:
Hostname,như ftp.example.com
IP-address,như 130.63.9.252
Domain names,mà có thể khác so với tên hostname bởi vì chúng bắt ñầu từ dot.Ví
dụ: .ora.com tiêu biểu cho các máy với domain ora.com.
Netgroups,mà bắt ñầu với at,như là @printerhosts.Netgroup là các giá trị có sẵn trên các hệ
thống ñang chạy trang vàng/NIS hoặc NIS+,nhưng hiếm có cái khác.Nếu netgroups có thể
hoạt ñộng trên hệ thống của bạn,ñó là một netgroups trang làm bằng tay cùng các miêu tả
chi tiết về chúng.
Subnets,mà kết thúc là dot,ví dụ như,130.63.9. là tập hợp các máy có IP-address bắt ñầu từ
130.63.9.
Từ khóa ALL,mà cho phép tất cả các clients truy cập
Từ khoá EXCEPT ñi theo một hoặc nhiều tên,IP-address,domain names,netgroups hoặc
subnets.Ví dụ như,bạn cần chỉ ra Samba cho phép tất cả các host trên subnet 192.168.110
như sau: hosts allow = ALL EXCEPT 192.168.110. (nhớ thêm dấu dot).
Sử dụng từ khóa ALL là một ý tưởng tồi,từ tiềm năng của nó có thể cho phép bất cứ một
người nào trong mạng có thể trình duyệt các tập tin của bạn nếu họ ñoán ñược tên của
server.
Chú ý,không có giá trị mặc ñịnh cho chọn lựa hosts allow,dù cho ngầm ñịnh của quá trình
trong các hành ñộng,sự kiện của các chọn lựa là chỉ ra sự cho phép từ tất cả các nguồn tài
nguyên.Bổ sung thêm,nếu bạn chỉ ra chọn lựa này trong section [global] của tập tin cấu
hình,nó sẽ loại bỏ tất cả các chọn lựa hosts allow mà ñã ñịnh dạng cho các shares.
4.6.1.2 Hosts bị cấm(host deny)
Chọn lựa hosts deny(hay còn gọi là deny hosts) sẽ chỉ ra các máy không có quyền hạn truy
cập lên các share.Ví dụ như ñể hạn chế quyền truy cập ñến các server từ bất cứ một vị trí
nào của example.com,bạn có thể viết:
hosts deny = ALL EXCEPT .example.com
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
113
Như chọn lựa hosts allow, nó không có giá trị ngầm ñịnh cho các chọn lựa cấu hình của
hosts deny,dù cho ngầm ñịnh của quá trình trong các hành ñộng,sự kiện của các chọn lựa
là chỉ ra sự cho phép từ tất cả các nguồn tài nguyên.Bổ sung thêm,nếu bạn chỉ ra chọn lựa
này trong section [global] của tập tin cấu hình,nó sẽ loại bỏ tất cả các chọn lựa hosts deny
mà ñã ñịnh dạng cho các shares.Nếu bạn muốn từ chối các hosts,có quyền truy cập,ñến
một tài nguyên ñặc biệt,hãy bỏ qua cả hai chọn lựa cấu hình hosts allow và hosts deny
trong section [global] của tập tin cấu hình.
4.6.1.3 interfaces
Chọn lựa interfaces bằng các dòng chính network address mà bạn muốn Samba Server
công nhận và trả lời.ðây là công việc nặng nhọc nếu bạn có một máy tính thuộc về một
hoặc hơn một subnet.Nếu chọn lựa không ñược thiết lập,Samba sẽ tự tìm kiếm network
interface chủ của server(dạng ñặc thù của card-ethernet ñầu tiên) vào lúc khởi ñộng và
cấu hình chính nó cho các hoạt ñộng trên duy nhất subnet.Nếu server ñược cấu hình cho
hơn một subnet và bạn khồn chỉ ra chọn lựa này,Samba sẽ chỉ làm việc cho subnet ñầu tiên
mà nó gặp.Bạn phải sử dụng chọn lựa này ñể tác ñộng ñến Samba server ñỗi với các
subnet khác trong network của bạn.
Giá trị của chọn lựa này là một hoặc nhiều hơn một tập hợp các IP-address/netmask như
dưới ñây:
interfaces = 192.168.220.100/255.255.255.0 192.168.210.30/255.255.255.0
bạn có thể chọn lựa các chỉ dẫn CIDR ñịnh dạng bitmask như sau:
interfaces = 192.168.220.100/24 192.168.210.30/24
các số bitmask chỉ ra các số ñầu tiên của bits sẽ ñược bật lên trong netmask.Ví dụ,số 24 có
vai trò là 24(của 32) bits ñầu tiên sẽ ñược kích hoạt trong bit mask,mà giống như ñã nói
255.255.255.0.
Cũng như thế 16 bits sẽ tương ứng với 255.255.0.0 còn 8bits sẽ ứng với 255.0.0.0
Chọn lựa này có thể không làm việc nếu bạn sử dụng DHCP
4.6.1.4 bind interface only
Chọn lựa bind interfaces only có thể sử dụng cho công việc của smbd và nmbd ñối với
server SMB ñể thực hiện các yêu cầu chỉ ñối với các address ñược chỉ ra trong cấu hình
chọn lựa interfaces.Tiến trình nmbd thông thường kết nối tất cả các addresses
interface(0.0.0.0) trên ports 137 và 138,cho phép nó nhận các broadcast từ bất cứ nơi
nào.Tuy nhiên,bạn có thể ép nó theo cách sau:
bind interfaces only = yes
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
114
Nó sẽ làm cho các tiến trình của Samba tự bỏ qua bất kì packages nào mà ñịa chỉ IP chủ
nhân của nó không ñược chỉ ra trong chọn lựa interfaces bao gồm cả broadcast
packages.Với smbd,chọn lựa này sẽ làm cho Samba không ñáp ứng ñược các yêu cầu ñến
subnets khác có trong danh sách của chọn lựa interfaces.Bạn nên tránh sử dụng chọn lựa
này nếu bạn muỗn cho phép các kết nối network tạm thời,cũng như ñược tạo thành qua
SLIP hoặc PPP.Bạn chỉ nên sử dụng nó khi ñã thành thạo.
Nếu bạn xác lập bind interfaces only là yes,bạn nên bổ sung vào sau nó localhost
address(127.0.0.1) ñến danh sách "interface".Cách khác là smbpasswd sẽ không thực hiện
kết nối ñến server ñang sử dụng nó làm chế ñộ mặc ñịnh ñể thay ñổi mật khẩu.
4.6.1.5 Socket address
Chọn lựa socket address ra lệnh cho các ñịa chỉ ñược chỉ ra với các tham biến interfaces và
Samba cần lắng nghe chúng cho các kết nối.Samba cho phép các kết nối ñến tất cả các
ñịa chỉ ñược chỉ ra theo mặc ñịnh.Khi sử dụng tập tin cấu hình smb.conf,chọn lựa này sẽ
làm cho Samba lắng nghe chỉ trên một IP-address.Ví dụ như:
interfaces = 192.168.220.100/24 192.168.210.30/24
socket address = 192.168.210.30
Chọn lựa này như một phần mềm lập trình,chúng tôi không khuyến khích bạn sử dụng nó.
4.7 Servers ảo(Virtual Servers)
Virtual servers là một kĩ năng tạo ra ña NetBios servers ảo trên network,trong khi thực tế nó
chỉ có duy nhất.Cách thực hiện là:Máy ñơn giản ñăng kí nhiều hơn một tên netBios trong kết
hợp với IP-address của nó.Phải có những ích lợi nhất ñịnh khi làm ñiều này.
Samba sẽ cho phép Unix server sử dụng nhiều hơn một tên NetBios với chọn lựa netbios
aliases như bảng 4.6
bảng 4.6
Chọn lựa Tham biến
Chức năng
Mặc
ñịnh
Phạm
vi
netbios
aliases
List of
NetBIOS
Additional NetBIOS names to respond to, for
use with multiple "virtual" Samba servers.
None Global
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
115
Chọn lựa Tham biến
Chức năng
Mặc
ñịnh
Phạm
vi
names
4.7.1 biệt danh netbios(netbios aliases)
Chọn lựa netbios aliases có thể làm cho Samba server có nhiều hơn một tên NetBios.Mỗi
tên NetBios là một tên sẽ ñược hiển thị trong Network Neighborhood qua trình duyệt mạng
của các máy.Khi kết nối,nó sẽ gửi yêu cầu ñến bất cứ máy nào,tuy nhiên,nó sẽ kết nối với
Samba server.
ðây là một việc ñòi hỏi sự nhẹ nhành,khéo léo,ví dụ,nếu bạn muốn truyền tải dữ liệu ñến
một Unix server với một disk hiện ñại,và một NT servers ñã cổ ñiển.Nếu có ba servers có
tên là sales, accounting, và admin,bạn có thể sử dụng Samba ñể ñại diện cho cả ba servers
trên bằng cấu hình sau:
[global]
netbios aliases = sales accounting admin
include = /usr/local/samba/lib/smb.conf.%L
Hình 4.7 cho thấy những gì trên Network Neighborhood ñược hiển thị từ một máy
clients.Khi clients thử kết nối ñến Samba,nó sẽ chỉ ra tên của server ñó mà nó kết nối
ñến,bạn có thể cho phép qua tham biến %L.Nếu như yêu cầu ñến server sales,Samba sẽ
bổ sung vào tập tin cấu hình /usr/local/samba/lib/smb.conf.sales.Tập tin này có phải chứa
phần global và share sẽ công bố loại trừ ñối với nhóm sales như cách sau:
[global]
workgroup = SALES
hosts allow = 192.168.10.255
[sales1998]
path = /usr/local/samba/sales/sales1998/
Trên thực tế,nên thiết lập workgroup ñến SALES như ñã làm và xác ñịnh lại IP-address của
các kết nối cho phép duy nhất từ subnet SALES(192.168.10).
hình 4.7
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
116
4.8 Phân tích các chọn lựa cấu hình(logging configuration options)
Tập tin ghi chép lại Samba có thể ngắn hoặc dài tuy ý bạn.ðây là một ví dụ:
[1999/07/21 13:23:25, 3] smbd/service.c:close_cnum(514)
phoenix (192.168.220.101) closed connection to service IPC$
[1999/07/21 13:23:25, 3] smbd/connection.c:yield_connection(40)
Yielding connection to IPC$
[1999/07/21 13:23:25, 3] smbd/process.c:process_smb(615)
Transaction 923 of length 49
[1999/07/21 13:23:25, 3] smbd/process.c:switch_message(448)
switch message SMBread (pid 467)
[1999/07/21 13:23:25, 3] lib/doscalls.c:dos_ChDir(336)
dos_ChDir to /home/samba
[1999/07/21 13:23:25, 3] smbd/reply.c:reply_read(2199)
read fnum=4207 num=2820 nread=2820
[1999/07/21 13:23:25, 3] smbd/process.c:process_smb(615)
Transaction 924 of length 55
[1999/07/21 13:23:25, 3] smbd/process.c:switch_message(448)
switch message SMBreadbraw (pid 467)
[1999/07/21 13:23:25, 3] smbd/reply.c:reply_readbraw(2053)
readbraw fnum=4207 start=130820 max=1276 min=0 nread=1276
[1999/07/21 13:23:25, 3] smbd/process.c:process_smb(615)
Transaction 925 of length 55
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
117
[1999/07/21 13:23:25, 3] smbd/process.c:switch_message(448)
switch message SMBreadbraw (pid 467
Nhiều chọn lựa cấu hình chỉ có thể sử dụng bởi các nhà lập trinh Samba,tuy nhiên chúng ta
sẽ không ñi sâu về nó ở ñây,hãy xem chương9,sửa lỗi Samba ñể có thêm thồng tin.
Samba có chứa sáu chọn lựa mà cho phép người sử dụng có thể ñiễn tả lại quá trình như
thế nào và ghi chép thông tin ở ñâu.Mỗi chọn lựa là chọn lựa toàn cục và không thể có mặt
bên trong của các cấu hình share.Trong các tập tin cấu hình hiện ñại sẽ bao phủ lấy các
share của mình.
[global]
netbios name = HYDRA
server string = Samba %v on (%I)
workgroup = SIMPLE
# Networking configuration options
hosts allow = 192.168.220. 134.213.233. localhost
hosts deny = 192.168.220.102
interfaces = 192.168.220.100/255.255.255.0 \
134.213.233.110/255.255.255.0
bind interfaces only = yes
# Debug logging information
log level = 2
log file = /var/log/samba.log.%m
max log size = 50
debug timestamp = yes
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
comment = Data Drive
volume = Sample-Data-Drive
writeable = yes
Ở ñây chúng ta ñã có một tập tin ghi chép ở cấp ñộ 2.Tứng là tương ñương với cấp ñộ ghi
chép.Cấp ñộ ghi chép trong khoảng từ 1 ñến 10,cấp ñộ 1 là cấp ñộ nhỏ nhất về số lượng
thông tin còn cấp ñộ 10 là trạng thái ñầy ñủ thông tin nhất.Cấp ñộ 2 sẽ cung cấp cho chúng
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
118
ta ñầy ñủ các thông tin bỏ qua sự hao mòn không gian ñĩa trên server.Thực tế,bạn không
nên sử dụng các cấp ñộ ghi chép lớn hơn 3 trừ khi bạn là nhà lập trình Samba.
Tập tin này nằm trong catalog /var/log,tuy nhiên bạn có thể sử dụng các tham biến thay thế
ñể tạo các tập tin ghi chép dành riêng cho các người sử dụng hoặc clients,nhớ rằng phải chỉ
ra tham biến %m như sau:
log file = /usr/local/logs/samba.log.%m
Việc phân tích các tin nhắn ghi chép có thể là hữu ích khi phát hiên có lỗi trong network nếu
bạn biết vấn ñề xuất phát từ một máy nào hoặc người sử dụng nào.
Chúng ta cần phải thân trọng ñối với các tập tin ghi chép:Không có tập tin nào vượt quá
50kb,như ñã chỉ ra trong chọn lựa max log size .Nếu có tập tin nào vợt qúa giới hạn
trên,nội dung sẽ ñược chuyển ñến một tập tin mới cùng tên như có thêm hậu tố ".old".Nếu
như tập tin ".old" ñã tồn tại,nó sẽ bị ghi chèn lên,còn nội dung trước sẽ bị xóa ñi.Tập tin gốc
bị xoá ñi,và ñợi chờ nhận các thông tin mới ñể ghi vào.Tuy nhiên sự cản trở của nó bắt ñầu
khi hệ thống bị ngập bởi các tập tin ghi chép của Samba trong suốt quá trình làm việc và
của các daemons.
4.8.1 Sử dụng syslog
Nếu bạn sử dụng hệ thống logger(syslog)ñể thay thế hoặc ñịa ñiểm của các tập tin ghi chép
Samba theo tiêu chuẩn,Samba sẽ cung cấp các chọn lựa cho chúng.Tuy nhiên,ñể sử dụng
syslog,ñầu tiên bạn phải chắc chắn là Samba ñã ñược xây dựng với chọn lựa configure
--with-syslog,hãy xem chương 2 ñể có nhiều thông tin về cấu hình và biên dịch Samba.
Công việc ñó ñã song,bạn cần phải cấu hình lại tập tin /etc/syslog.conf ñể cho phép ghi
chép lại thông tin từ Samba.Nếu như không có daemon.* trong tập tin /etc/syslog.conf ,hãy
bổ sung thêm dòng sau vào:
daemon.* /var/log/daemon.log
Nó sẽ ghi rõ các thông tin từ hệ thống daemons và sẽ ñược lưu lại tại tập tin
/var/log/daemon.log .ðấy cũng là nơi mà Samba sẽ bảo quản các thông tin của mình.Bạn
có thể chỉ ra trong section [global] như sau:
syslog = 2
ðiều này chỉ ra sẽ ghi lại toàn bộ các tin nhắn ghi chép thông tin có cấp ñộ 1 và sẽ gửi ñến
cả hai syslog và tập tin ghi chép thông tin Samba.Giả sử chúng ta xác ñịnh cấp ñộ ghi chép
là 4.Có nghĩa là,bất cứ một tin nhắn ghi chép nào với cấp ñộ là 1,2,3,4 ñều có thể gửi ñến
các tập tin ghi chép Samba,nhưng không ñến ñược syslog.Chỉ có duy nhất cấp ñộ 1 mới có
thể gửi ñến cả hai.Nếu giá trị của syslog vượt quá giá trị của log level,thì sẽ không có cái gì
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
119
sẽ ghi trong syslog.
Nếu bạn muốn các tin nhắn chỉ gửi ñến syslog,bạn hãy ñặt dòng sau vào tập tin cấu hình:
syslog only = yes
Nếu như ñấy là trường hợp ñặc biệt,thì bất cứ thông tin ghi chép nào vượt quá con số ñã
chỉ ra trong syslog sẽ bị loại bỏ giống như chọn lựa log level
4.8.2 Các chọn lựa cấu hình ghi chép
Bảng 4.7 liệt kê các chọn lựa cho quá trình ghi chép lại hoạt ñộng của Samba:
Option Parameters Function Default Scope
log file string
(fully-qualified
filename)
Sets the name and location of the
log file that Samba is to use. Uses
standard variables.
Specified in
Samba
makefile
Global
log level
(debug level)
numerical (0-10) Sets the amount of log/debug
messages that are sent to the log
file. 0 is none, 3 is considerable.
1 Global
max log size numerical (size
in KB)
Sets the maximum size of log file.
After the log exceeds this size, the
file will be renamed to .bak and a
new log file started.
5000 Global
debug
timestamp
(timestamp
logs)
boolean If no, doesn't timestamp logs,
making them easier to read during
heavy debugging.
yes Global
syslog numerical (0-10) Sets level of messages sent to
syslog. Those levels below syslog
level will be sent to the system
logger.
1 Global
syslog only boolean If yes, uses syslog entirely and
sends no output to the standard
Samba log files.
no Global
4.8.2.1 Tập tin ghi chép(log file)
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
120
Trên server của chúng ta,Samba sẽ ñưa ra các tập tin log bằng các tập tin text trong catalog
con /var trong catalog home của Samba.Chọn lựa log file có thể sử dụng ñể thiết lập lại tên
của tập tin log ñến khu vực khác.Ví dụ,ñể thiết lập tên và vị trí của tập tin log Samba ñến
/usr/local/logs/samba.log,hãy sử dụng như sau:
[global]
log file = /usr/local/logs/samba.log
bạn có thể sử dụng các tham biến ñi kèm các chọn lựa ñể tạo ra tập tin log cho từng người
sử dụng riêng biệt hoặc clients.
4.8.2.2 log level(cấp ñộ ghi chép)
Chọn lựa log level xác ñịnh bằng tổng số lượng thông tin ñã ñược ghi chép lại.Thông
thường là 0 và 1.Tuy nhiên,nếu bạn có một vấn ñề nào ñó,có thể sử dụng cấp ñộ 3,mà dùng
ñể xác ñịnh hầu như tất cả các thông tin gỡ rối cần thiết ñể giải quyết vấn ñề.Cấp ñộ cao
hơn 3 quy ñịnh các thông tin gốc cho những nhà phát triển sử dụng ñể theo rõi các internal
bugs.Chúng tôi khuyến khích bạn không nên sử dụng chọn lựa này cho các cấp ñộ cao hơn
3:
[global]
log file = /usr/local/logs/samba.log.%m
log level = 3
4.8.2.3 max log size(Dung lượng lớn nhất của log)
Chọn lựa max log size sẽ xác ñịnh dung lượng lớn nhất theo kb của tập tin log gỡ lỗi mà
Samba bảo quản.Khi dung lượng vượt qúa sự cho phép,tập tin hiện hành sẽ ñổi tên,giữ
nguyên tên cũ và có bổ sung thêm hậu tố ".old".Và tập tin log mới sẽ bắt ñầu hoạt ñộng với
tên nguyên bản.Ví dụ:
[global]
log file = /usr/local/logs/samba.log.%m
max log size = 1000
Nếu như bất cứ một tập tin log nào vượt qúa 1Mb,Samba sẽ ñổi tên chúng thành
samba.log.machine-name.old và một tập log tin mới với tên nguyên bản sẽ bắt ñầu.Nếu tập
tin ñuôi ".old" ñã tồn tại,Samba sẽ xoá nó.Chúng tôi khuyến khích các bạn sử dụng cấu hình
này trong tập tin cấu hình,bởi vì log gỡ lỗi có thể lấy ñi một phần không gian ñĩa cứng của
bạn,nhưng sử dụng chọn lựa này sẽ trợ giúp các administrators không thận trọng sẽ bất
ngờ vì hầu như toàn bộ ñĩa cứng ñã bị mất ñị bởi một tập tin log Samba.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
121
4.8.2.4 debug timestamp hoặc timestamp log
Nếu như cần phải gỡ lỗi trong một network co vấn ñề và bạn tìm thấy các thông tin về
date-stamp và timestamp(dấu hiệu ngày tháng và dấu hiệu thời gian) có trong tập tin log
Samba,bạn có thể tắt nó bằng cách ñưa cho các chọn lựa timestamp logs hoặc debug
timestamp giá trị no.Ví dụ như sau:
12/31/98 12:03:34 hydra (192.168.220.101) connect to server network as user davecb
Với giá trị no cho chọn lựa,khi ấy:
hydra (192.168.220.101) connect to server network as user davecb
4.8.25 syslog
Chọn lựa syslog căn cứ vào các tin nhắn log Samba sẽ gửi ñến Unix server logger.Kiểu của
thông tin log ñược gửi ñi sẽ ñược chỉ ra như một tham biến cho chọn lựa này.Giống như
chọn lựa log level,nó có thể từ 0 ñến 10.Thông tin logging với cấp ñộ bé hơn con số ñã chỉ
ra sẽ ñược gửi ñi ñến hệ thống logger.Tuy nhiên,những logs gỡ lỗi tương ñương hoặc cao
hơn cấp ñộ của syslog,mà nhỏ hơn log level,sẽ chỉ ñược gửi ñến tập tin Samba log chính
tắc.ðể ñi vòng quanh chúng,hãy sử dụng chọn lựa syslog only.Ví dụ:
[global]
log level = 3
syslog = 1
Với ñiều này,tất cả các thông tin log với cấp ñộ 0 sẽ gửi ñến dạng tiêu chuẩn Samba logs và
hệ thống logger,trong khi ñó thông tin với cấp ñộ 1,2,3 sẽ chỉ gửi ñến dạng tiêu chuẩn
Samba logs.Cấp ñộ cao hơn 3 sẽ không ghi chép lại tất cả.Chú ý rằng,tất cả các tin nhắn
gửi ñến hệ thống logger là một tổ chức với các cấp ñộ ưu tiên tại các tiến trình syslog ñã
hiểu rõ.Hãy xem bảng 4.8:
Log Level Syslog Priority
0 LOG_ERR
1 LOG_WARNING
2 LOG_NOTICE
3 LOG_INFO
4 and above LOG_DEBUG
Nếu bạn muốn sử dụng syslog,bạn sẽ phải chạy configure --with-syslog khi biên dịch
Samba và bạn sẽ cần ñến tập tin /etc/syslog.conf ñể thích ứng.(hãy xem 4.8.1 Sử dụng
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
122
syslog)
4.8.2.6 syslog only
Chọn lựa syslog only sẽ nói với Samb không sử dụng các tập tin logs chính quy - hệ thống
chỉ có logger.ðể thực hiện ñiều này,hãy chỉ ra chọn lựa dưới ñây ở section [global] trong tập
tin cấu hình Samba:
[global]
syslog only = yes
5. Trình duyệt và nâng cấp disk share
5.1 Trình duyệt(Browsing)
Browsing là khả năng kiểm soát server và các tài nguyên share cũng như các yếu tố khác
trong network của bạn.Trong Windows NT 4.0 hoặc 95/98 clients,một người sử dụng có thể
trình duyệt network servers qua biểu tượng Network Neighborhood trong mạng.
Nhấn kép lên biểu tượng ñể gửi yêu cầu ñến server.Người dùng cũng có thể nhìn thấy máy
in cũng như disk share giống hệt như trên máy thực tế(Nếu bạn có Windows NT 3.x,bạn có
thể sử dụng Disk-Kết nối qua mạng ñể hiển thị các dữ liệu ñược gửi lên trên mạng)
Từ vỏ lệnh(command line) Windows,bạn có thể sử dụng lệnh net view ñể nhìn thấy những
server mà hiện tại ñang có mặt trên network:
C:\> net view
Servers available in workgroup SIMPLE
Server name Remark
----------------------------------------------------------
\\CHIMAERA Windows NT 4.0
\\HYDRA Samba 2.0.4 on (hydra)
\\PHOENIX Windows 98
5.1.1 Ngăn cấm Trình Duyệt
Bạn có thể ñiều khiển các share trong danh sách trình duyệt(browse list) bằng cách sử dụng
chọn lựa browseable,ðây là một chọn lựa thuộc kiểu logic ngăn cản không cho phép nhìn
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
123
thấy các tài nguyên share trong Network Neighborhood ñối với tất cả mọi người.Ví dụ,ngăn
cấm share [data] mà trong chương trước cho phép nhìn thấy:
[data]
path = /home/samba/data
browseable = no
guest ok = yes
comment = Data Drive
volume = Sample-Data-Drive
writeable = yes
Mặc dù thường lệ,bạn không muốn làm ñiều này với các disk share thông thường,chọn lựa
browseable là toàn quền trong các sự kiện mà bạn muốn tạo một share với nội dung mà
bạn không muốn người khác nhìn thấy,như là [netlogin] share chứa ñựng các logon scripts
cho windows Domains control(xem chương 6,người sử dụng,bảo mật,domains).
Một ví dụ khác là share [home].ðấy là share rõ ràng không ñược nhìn thấy trong trình
duyệt.Tuy nhiên nếu tài khoản alice khi ñăng nhập và trình duyệt xem sét trên máy có chứa
tài nguyên share,thì khi ấy một share [alice] sẽ hiện ra trên máy.Nếu bạn muốn rằng,share
[alice] sẽ hiện ra ngay cả khi tài khoản alice chưa ñăng nhập vào?có thể làm ñược ñiều này
với chọn lựa auto services trong section [global].chọn lựa này sẽ tải lại nhữ share ở trong
danh sách trình duyệt,và ñảm bảo chúng sẽ hiện ra.
[global]
...
auto services = alice
5.1.2 Những dịch vụ ngầm ñịnh(Default Services)
Có nhiều vấn ñề mà người sử dụng không kết nối thành công ñến share,bạn cần phải chỉ ra
các share ngầm ñịnh mà có thể kết nối ñến.Từ ñó bạn không biết ai sẽ kết nối ngầm ñịnh
ñến share này tại bất cứ thời ñiểm nào,nhưng bạn sẽ chắc chắn muốn thiết lập chọn lựa
guest ok với giá trị là yes cho share này.Làm rõ chọn lựa default service có thể sử dụng một
cách ñầy ñủ khi bạn gửi ñi những vấn ñề ñến một catalog của các tập tin trợ giúp(help
files).ví dụ:
[global]
...
default service = helpshare
...
[helpshare]
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
124
path = /home/samba/helpshare/%S
browseable = yes
guest ok = yes
comment = Default Share for Unsuccessful Connections
volume = Sample-Data-Drive
writeable = no
Chú ý bạn có thể sử dụng tham biến %s trong chọn lựa path.Nếu bạn sư dụng tham biến
%s,nó sẽ chỉ ñến các yêu cầu không tồn tại share(share chính gốc ñược yêu cầu bởi người
sử dụng),không có tên trong hệ thống share ngầm ñịnh.ðiều này cho phép chúng tạo ra các
ñường dẫn khác với tên của mỗi servers,mà có thể cung cấp cụ thể hơn các tập tin trợ giúp
cho
mỗi người sử dụng.Bổ sung thêm,bất kì dấu (_) xác ñịnh trong yêu cầu share sẽ ñược
chuyển về dấu (/) khi giá trị tham biến %s ñược sử dụng.
5.1.3 Chọn lựa trình duyệt(Browsing Elections)
Như ñã nói ñến trong chương 1:Cùng học Samba,một máy trong mỗi subnet luôn giữ một
danh sách các máy ñang hoạt ñộng trong thời ñiểm hiện tại.Cái danh sách này gọi là bảng
trình duyệt và server duy trì nó gọi là local master browser(trình duyệt cục bộ chủ).Mỗi một
máy khi vào hoặc ra trong mạng,local master browser sẽ tiếp tục cập nhật các thông tin
trong danh sách trình duyệt(browse list) và cung cấp nó cho các máy yêu cầu thông tin về
nó.
Một máy tương ứng local master browser bằng cách chiếm giữ các chọn lựa trình duyệt
trên subnet cục bộ.Việc chọn lựa trình duyệt có thể thực hiện ở bất cứ thời ñiểm nào.Samba
có thể gian lận một chọn lựa trình duyệt cho cho một trạng thái khác của một kết qủa,bao
gồm luôn cả tương ứng local master browser trong subnet hoặc không bao giờ tương ứng
với nó.Ví dụ,chọn lựa tiếp theo,mà chúng ta có thể bổ sung vào tập tin cấu hình từ chương
4,disk share,sẽ bảo ñảm Samba luôn chiến thắng trong các chọn lựa cho local master
browser nhưng không thực chất với các máy ñang hiện diện:
[global]
netbios name = HYDRA
server string = Samba %v on (%L)
workgroup = SIMPLE
# Browsing election options
os level = 34
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
125
local master = yes
# Networking configuration options
hosts allow = 192.168.220. 134.213.233. localhost
hosts deny = 192.168.220.102
interfaces = 192.168.220.100/255.255.255.0 \
134.213.233.110/255.255.255.0
# Debug logging information
log level = 2
log file = /var/log/samba.log.%m
max log size = 50
debug timestamp = yes
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
comment = Data Drive
volume = Sample-Data-Drive
writable = yes
Tuy nhiên,nếu chúng ta không muốn luôn chiến thắng trong các cuộc bầu chọn?nếu chúng
ta muốn tiến hành trình duyệt ñến một Windows NT Server nếu như có mặt.Chúng ta cần
học cách làm việc với chọn lựa trình duyệt.Có lẽ bạn ñã biết,mỗi máy phải ñặt vào trong bầu
chọn thông tin broadcast về chính mình.Những thông tin này phải bao gồm:
Phiên bản của các protocol ñang sử dụng
HðH trên hệ thống
Tổng thời gian của clients trên network
Hostname của clients
Ở ñây cách chọn lựa ñã ñược giải quyết.HðH ñã gán giá trị nhị phân tùy theo các phiên bản
của nó như bảng 5.1:
Operating System Value
Windows NT Server 4.0 33
Windows NT Server 3.51 32
Windows NT Workstation 4.0 17
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
126
Operating System Value
Windows NT Workstation 3.51 16
Windows 98 2
Windows 95 1
Windows 3.1 for Workgroups 1
cũng như thế,mỗi máy trên mạng ñược gán giá trị riêng lẻ tùy theo vai trò của nó như bảng
5.2:
bảng 5.2:
Role Value
Primary Domain Controller 128
WINS Client 32
Preferred Master Browser 8
Active Master Browser 4
Standby Browser 2
Active Backup Browser 1
Việc chọn lựa ñược giải quyết theo các trình tự sau:
1. Máy với các phiên bản protocol ñời mới sẽ chiến thắng.(ñó là vô nghĩa ñối với các máy
Windows clients có phiên bản 1 protocol)
2. Máy có HðH cao hơn sẽ chiến thắng trong cuộc chọn lựa
3. Nếu như có kết nối,máy có cấu hình Preferred Master Browser (role 8) sẽ chiến thắng
trong chọn lựa
4. Nếu như trong kết nối,máy client mà online nhiều nhất sẽ chiến thắng
5. Và cuối cùng,trong quan hệ kết nối,máy nào ñăng nhập vào ñầu tiên sẽ chiến thắng.
6. Máy mà chạy "runner-up" có thể tương ứng vớ một trình duyệt phục hồi(backup browser)
ðó là tất cả,nếu bạn muốn Samba là một local master browser,nhưng chỉ khi không có
Windows NT server(4.0 hoặc 3.5.1) trên mạng.Bạn có thể thay ñổi tham biến os level trong
ví dụ trước thành:
os level = 31
ðấy sẽ là nguyên nhân cho Samba trực tiếp ñánh lừa chọn lựa ñến một Windows NT 4.0
hoặc Windows NT 3.5 Server,cả hai chúng ñều là những HðH cấp cao.Nếu bạn muốn chọn
local master browser trên network với vai trò như là primary domain controller(Domain kiểm
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
127
tra chính),bạn cần phải thiết lập tham biên os level theo ñúng kiểu cấp cao nhất của HðH
trên network và lấy phiên bản protocol ở cấp ñộ tiếp theo.
bạn có thể hỏi máy nào là local master browser bằng lệnh nbtstat.Hãy ñặt tên NetBios của
máy cần kiểm tra sau tham biến "-a":
C:\> nbtstat -a hydra
NetBIOS Remote Machine Name Table
Name Type Status
----------------------------------------------------------
HYDRA <00> UNIQUE Registered
HYDRA <03> UNIQUE Registered
HYDRA <20> UNIQUE Registered
..__MSBROWSE__. <01> GROUP Registered
SIMPLE <00> GROUP Registered
SIMPLE <1D> UNIQUE Registered
SIMPLE <1E> GROUP Registered
MAC Address = 00-00-00-00-00-00
Trong kết quả trên,bạn nhìn thấy dòng ..__MSBROWSE__.<01>.Nó chỉ ra server hiện tại
ñang ñóng vai trò là local master browser cho subnet hiện thời.Bổ sung thêm,máy ñó là
Samba server,bạn có thể kiểm tra Samba nmbd log ñể biết thêm:
nmbd/nmbd_become_lmb.c:become_local_master_stage2(406)
*****
Samba name server HYDRA is now a local master browser for
workgroup SIMPLE on subnet 192.168.220.100
****
Cuối cùng,Window NT server thực hiện như một primary domain controllers (Domain kiểm
tra chính) có nội dung ẩn cho phép chúng giả thiết ñóng vai trò như một local master
browser ở trong các ñiều kiện cơ bản.ðấy gọi là preferred master browser(Trình duyệt chính
ưu tiên) bit.
Samba cũng có thể làm như vậy.Bạn có thể thực hiện nó với chọn lựa preferred master :
# Browsing election options
os level = 33
local master = yes
preferred master = yes
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
128
Nếu như preferred master bit ñược xác ñịnh,thì máy sẽ có thêm tiềm năng trong các chọn
lựa trình duyệt ngay tại những thời ñiểm ban ñầu.Tất nhiên,nếu cần bạn có thể sử dụng
chọn lựa os level theo kiểu của Windows NT.Chúng tôi khuyên khích bạn không nên sử
dụng chọn lựa này nếu máy khác cũng có chữc năng là một preferred master như NT server.
5.1.4 Domain Master Browser
Không giống như local master browser,ở ñây không có sự chọn lựa ñể xác ñịnh máy nào sẽ
ñóng vai trò của domain master browser.Thay vào ñấy,Administrator sẽ tự thiết lập nó.Tuy
nhiên, Microsoft ñịnh sẵn ,domain master browser và the primary domain controller (PDC)
cả hai là dạng nguồn lực kiểu <1B>,nhưng còn vai trò - là những máy không thể tách nhau
ra ñược.
Nếu bạn có Windows NT Server trên network như một PDC,chúng tôi khuyến khích bạn
không nên dung Samba ñể trở thành domain master browser.Ngược lại thì ñược:Nếu như
Samba nắm lấy trách nhiệm của PDC,chúng tôi khuyên bạn nên cầm lấy quyền domain
master browser.Mặc dù nó có thể chia nhỏ các nhiệm vụ của Samba,ñấy là một ý kiến
hay.Sử dụng hai máy khác nhau với vai trò như PDC và domain master browser có thể tạo
lên các lỗi vô tình trên mạng Windows workgroup.
Samba có thể ñóng vai trò như là domain master browser cho tất cả các subnets trong
network với chọn lựa sau:
domain master = yes
Bạn có thể nhìn thấy máy Samba nào ñóng vai trò domain master browser qua tập tin nmbd
log:
nmbd/nmbd_become_dmb.c:become_domain_master_stage2(118)
*****
Samba name server HYDRA is now a domain master browser for
workgroup SIMPLE on subnet 192.168.220.100
*****
Hoặc bạn có thể sử dụng nmblookup có trong distribution Samba ñể hỏi về nguồn tài
nguyên duy nhất <1B> có trong workgroup:
# nmblookup SIMPLE#1B
Sending queries to 192.168.220.255
192.168.220.100 SIMPLE<1b>
5.1.4.1 ða subnets(Multiple subnets)
Có ba ñiều cần nhớ khi bạn tạo một workgroup/domain mà có nhiều hơn một subnet:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
129
1. Bạn phải có một hoặc hai Windows NT hoặc Samba ñóng vai trò là local master browser
trong mỗi subnet và trong workgroup/domain.(Nếu bạn có domain master browser trong
subnet,và local master browser khi ấy không cần nữa)
2. Bạn phải có Windows NT server hoặc Samba ñóng vai trò là domain master browser ở
bất cứ nơi nào trong workgroup
3. local master browser phải ñược ñồng bộ với domain master browser
Samba có một vài nét ñặc thù riêng trong phạm vi hoạt ñộng của nó,nếu như bạn không có
và muốn có một domain master browser trong network.Hãy cân nhắc hệ thống subnets theo
hình 5.1:
hình 5.1
ðầu tiên,Samba server như là local master browser có thể sử dụng chọn lựa cấu hình
remote announce,và chắc chắn rằng,những máy tính trong các subnets khác sẽ gửi
broadcast công bố về server.ðấy là một ảnh hưởng lớn ñảm bảo rằng Samba Server có
mặt trong bảng trình duyệt(browse list) của các subnets bên ngoài.
Tuy nhiên,hướng ñi của broadcast phải hướng ñến ñược những local master browser trong
các subnets khác.Nhận thấy rằng có nhiều routers(cầu dẫn) ñã không cho phép các
broadcast ñi qua theo ngầm ñịnh.Bạn có thể thay ñổi lại ñiều này trên cấu hình của router
ñể ñịnh hướng cho broadcast ñi qua vào trong subnets của nó.
Với chọn lựa remote announce,danh sách của subnets và workgroup sẽ nhận ñuợc
broadcast.Ví dụ:ðảm bảo các máy trong subnets 192.168.221 và 192.168.222 và SIMPLE
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
130
workgroup sẽ gửi tín hiệu broadcast từ Samba server của chúng ta,bạn cần phải làm như
sau:
# Browsing election options
os level = 34
local master = yes
remote announce = 192.168.221.255/SIMPLE \
192.168.222.255/SIMPLE
Bổ sung thêm,bạn cần phải cung cấp ñịa chỉ mở rộng ñể gửi broadcast nếu như local
master browser trên các subnets ngoại lai,nó ñảm bảo luôn có các IP-address cố ñịnh.
Một Samba local master browser có thể ñồng bộ bảng trình duyệt(browse list) của nó với
các Samba server khác như là local master browser và Samba local master browsers tồn tại
ở 192.168.221.130 và 192.168.222.120.Chúng ta sử dụng chọn lựa remote browse sync,ñể
ñồng bộ thẳng ñến Samba server như sau:
# Browsing election options
os level = 34
local master = yes
remote browse sync = 192.168.221.130 192.168.222.120
Trong thứ tự làm việc,các máy Samba khác phải ñóng vài trò là local master browsers.Bạn
cũng có thể sử dụng hướng ñi của broadcast với chọn lựa này nếu bạn không biết ñặc
trưng IP-address của local master browsers.
5.1.5 Chọn lựa cấu hình trình duyệt(Browsing Option)
Bảng 5.3 chỉ ra 14 chọn lựa cấu hình xác ñịnh các hoạt ñộng Samba.
Option Parameters Function Default Scope
announce as NT or Win95 or
WfW
Sets the operating system that
Samba will announce itself as.
NT Global
announce
version
numerical Sets the version of the operating
system that Samba will announce
itself as.
4.2 Global
browseable
(browsable)
boolean Allows share to be displayed in list of
machine resources.
yes Share
browse list boolean If yes, Samba will provide a browse
list on this server.
yes Global
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
131
Option Parameters Function Default Scope
auto services
(preload)
string (share list) Sets a list of shares that will always
appear in the browse list.
None Global
default service
(default)
string (share
name)
Names a share (service) that will be
provided if the client requests a share
not listed in smb.conf.
None Global
local master boolean If yes, Samba will try to become a
master browser on the local subnet.
yes Global
lm announce yes or no or auto Enables or disables LAN Manager
style host announcements.
auto Global
lm interval numerical Specifies the frequency in seconds
that LAN Manager announcements
will be made if activated.
60 Global
preferred master
(prefered
master)
boolean If yes, Samba will use the preferred
master browser bit to attempt to
become the local master browser.
no Global
domain master boolean If yes, Samba will try to become the
main browser master for the
workgroup.
no Global
os level numerical Sets the operating system level of
Samba in an election for local master
browser.
0 Global
remote browse
sync
string (list of IP
addresses)
Lists Samba servers to synchronize
browse lists with.
None Global
remote
announce
string (IP
address/
workgroup pairs)
Lists subnets and workgroups to
send directed broadcast packets to,
allowing Samba to appear to browse
lists.
None Global
5.1.5.1 Công bố như(announce as)
ðấy là chọn lựa cấu hình toàn cục ñặc trưng cho HðH,mà Samba sẽ công bố ñến các máy
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
132
khác trong mạng.Theo mặc ñịnh,giá trị cho chọn lựa này là NT,khi tương ứng với các hệ
thống Windows NT.Một vài cái khác nữa là Win95 nếu ứng với các hệ thống Windows 95,và
wfw cho các Windows thuộc hệ thống Workgroup.Bạn có thể chèn lên các giá trị mặc ñịnh
như sau:
[global]
announce as = Win95
Chúng tôi khuyến khích bạn nên thay ñổi các giá trị mặc ñịnh này.
5.1.5.2 Công bố phiên bản(announce version)
Chọn lựa này cũng như chọn lựa announce as,nó công bố phiên bản của hệ thống Samba
ñến các máy khác trong mạng.Theo mặc ñịnh thì giá trị của nó là 4.2,mà vị trí của nó cao
hơn Windows NT 4.0.Bạn có thể thay ñổi giá trị mặc ñịnh của nó theo cách sau:
[global]
announce version = 4.3
Chúng tôi khuyến khích bạn nên thay ñổi các giá trị mặc ñịnh này.
5.1.5.3 Khả năng trình duyệt(Browseable)
Chọn lựa browseable (hay còn là browsable) sẽ hiển thị các tài nguyên share trong bảng
các nguồn tài nguyên ñược gửi lên mảng của máy mà nó trực thuộc.Theo mặc ñịnh,giá trị
của nó là yes.Nếu bạn muốn ngăn cấm khả năng nhìn thấy các tài nguyên share trên mạng
qua trình duyệt,bạn có thể gán lại giá trị no.
Chú ý,ñiều này không ngăm cấm bất cứ một người nào truy cập ñến share bằng các cách
khác,những phải chỉ ra vị trí UNC(//server/accounting) trên Windows Explorer.Nó chỉ ngăn
cấm nhìn thấy share từ các danh sách tài nguyên khi bắt ñầu trình duyệt.
5.1.5.4 bảng trình duyệt(browse list)
Bạn không nên thay ñổi tham biến này từ giá tri mặc ñịnh "yes" của nó.Nếu Samba của bạn
ñóng vài trò là local master browser,bạn có thể sử dụng chọn lựa toàn cục browse list ñể chỉ
cho Samba cung cấp hoặc từ chối bảng trình duyệt của mình ñến tất cả clients.Theo mặc
ñịnh Samba luôn cung cấp bảng trình duyệt.Bạn có thể từ chối những thông tin theo cách
sau:
[global]
browse list = no
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
133
Nếu bạn cấm bảng trình duyệt,các clients không thể trình duyệt ñược tên của các máy
khác,các dịch vụ của chúng,và các domains khác ở thời ñiểm hiện tại trong mạng.Chú ý,nó
không cung cấp bất cứ ñặc thù nào của các máy không ñược kích hoạt.Nếu ai ñó biết ñược
tên,ñịa chỉ và tài nguyên share trên máy,họ có thể kết nối ñến nó bằng các sử dụng "net
use" hoặc kết nối bằng disk-qua mạng dựa vào Windows Explorer.Nó chỉ ñơn giản ngăn
cản các thông tin trong bảng trình duyệt khi mà các clients muốn tìn kiếm và yêu cầu nó.
5.1.5.5 Dịch vụ tự ñộng(auto services)
Chọn lựa toàn cục auto services,hay còn gọi là preload,ñảm bảo chỉ ra các tài nguyên share
luôn ñược nhìn thấy trong bảng trình duyệt.
ðây là chọn lựa rất tốt ñối với các disk-share.Nếu bạn muốn mỗi máy in trong hệ thống máy
in của bạn có mặt trong bảng trình duyệt,hãy sử dụng chọn lựa này.Chúng tôi khuyến khich
sử dụng chọn lựa load printers ñể thay thế.Bất cứ một share nào với chọn lựa auto
services sẽ không hiển thị nếu như chọn lựa browse list ñược gán giá trị là no.
5.1.5.6 Dịch vụ mặc ñịnh(default service)
Chọn lựa toàn cục default service(hay còn là defaults).Nếu tồn tại một share trên mạng,và
một client hỏi về một share hoặc disk share không tồn tại trên mạng,khi ñó Samba sẽ cố
gắng thử kết nối ñến người sử dụng ñến tài nguyên share ñược chỉ ra trong chọn lựa này
ñể thay thế.Bạn hãy xem ở ñây:
default service = helpshare
5.1.5.7 local master
ðây là chọn lựa toàn cục,bất cứ khi nào Samba cố gắng trở thành local master browser
trong subnet khi nó khởi ñộng.Nếu chọn lựa có giá trị yes,Samba sẽ chiếm lấy một vị trí
trong bầu chọn.Tuy nhiên,thiết lập cấu hình này bằng chính bản thân nó sẽ không ñảm bảo
sự chiến thắng.(Có các tham biến khác,như là preferred master và os level giúp ñỡ Samba
chiến thắng trong chiến dịch chọn lựa trình duyệt).Nếu giá trị của chọn lựa là no,Samba sẽ
bỏ phí các chọn lựa trình duyệt,những giá trị không quan trọng sẽ ñược ñịnh ra bởi các
chọn lựa cấu hình khác.Theo ngầm ñịnh nó là yes.
5.1.5.8 lm announce
Chọn lựa toàn cục lm announce thông báo nmbd Samba có thể có hoặc không gửi Lan
Manager host công bố nhân danh của mình trên server.Những host công bố có thể bị ñòi
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
134
hỏi bởi các clients sau như: hệ thống IBM OS/2.ðó là những công bố những server có thể
bổ sung vào bảng trình duyệt của clients.Nếu ñược kích hoạt,Samba sẽ công bố các ñặc
trưng của nó có thể lặp lại bằng số second ñược chi ra trong chọn lựa lm interval.
Chọn lựa cấu hình này có giá trị thuộc kiểu boolean với giá trị là yes và no mà cam kết hoặc
không cam kết với LAN Manager công bố các thông tin cá nhân.Bổ sung vào ñấy,còn có
một giá trị thứ ba là auto mà là nguyên nhân làm cho nmbd thụ ñộng khi lắng nghe Lan
Manager thông báo,nhưng không gửi bất cứ một thứ gì của chính nó.Nếu LAN Manager
thông báo ñã tìm ra một máy khác trong network,nmbd sẽ bắt ñầu gửi ñến nó thông báo về
LAN Manager của mình và ñảm bảo nó sẽ nhìn thấy.Bạn có thể sử dụng như sau:
[global]
lm announce = yes
Giá trị auto ñược lấy làm ngầm ñịnh.Bạn chắc chắn không muốn thay ñổi giá trị mặc ñịnh
của nó.
5.1.5.9 lm interval
ðây là chọn lựa sử dụng cùng với chọn lựa lm announce,chỉ thị số second mà nmbd sẽ ñợi
trước khi lặp lại tín hiệu broadcast thông báo về LAN Manager.Nhớ rằng,thông báo Lan
Manager phải ñược kích hoạt ở chọn lựa ñã ñược sử dụng rồi.Giá trị ngầm ñịnh là 60
seconds.Nếu bạn lấy giá trị là 0 thì Samba sẽ không gửi bất kì một thông báo Lan Manager
Host nào,ñó là giá trị không thực tế của tham biến lm announce.Bạn có thể thiết lập giá trị
như sau:
[global]
lm interval = 90
5.1.5.10 preferred(ưu tiên) master
Chọn lựa preferred master sẽ yêu cầu Samba thiết lập preferred master bit khi tham gia vào
cuộc chọn lựa trình duyệt.ðiều này làm cho server có một trạng thái ñược ưu tiên lớn trong
workgroup hơn các máy thông thường và các hệ thống cùng cấp ñộ như thế.Nếu bạn thiết
lập cấu hình Samba trở thành local master browser,nó sẽ ñược viết như sau:
[global]
preferred master = yes
Thêm nữa,bạn nên cho nó tự thiết lập giá trị mặc ñịnh là no.Nếu Samba ñược cấu hình như
preferred master browser,nó sẽ thu hút ñược nhiều bầu chọn khi nó online ñầu tiên.
5.1.5.11 os level
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
135
Chọn lựa toàn cục os level sẽ bức chế cấp bậc của hệ thống tại Samba sẽ giả dạng trong
suốt quá trình chọn lựa trình duyệt.Nếu bạn hi vọng Samba sẽ chiến thắng ñể trở thành
trình duyệt chính(master browser),bạn có thể thiết lập cấp ñộ của hệ thống cao hơn giá trị
hiện tại.Giá trị ñược chỉ ra trong bảng 5-1.Theo mặc ñịnh là 0,khi ấy Samba sẽ bỏ qua hết
các cuộc chọn lựa trình duyệt.Nếu bạn muốn Samba chiến thắng,hãy làm như sau:
os level = 34
Nó sẽ là tiềm năng ñể server bỏ phiếu cho chính mình sau 34 lần,mỗi lần là một bầu chọn
ñược thực hiện và ñảm bảo chiến thắng.
5.1.5.12 domain master
Nếu Samba là primary domain controller trong workgroup hoặc NT domain,nó cũng là
domain master browser.Máy là domain master browser - ñó là một máy ñặc biệt,có dạng tài
nguyên NetBios là <1B> và sử dụng ñể phán tán bảng trình duyệt ñến và từ mỗi local
master browsers trong
các subnets ñặc biệt ngang qua domain.Nó là tiềm lực ñể Samba trở thành domain master
browser,hãy thiết lập dòng sau trên section [global] trong tập tin smb.conf.
[global]
domain master = yes
Nếu bạn có Windows NT server trên mạng ñóng vai trò là primary domain controller
(PDC),chúng tôi khuyến khích bạn không nên sử dụng Samba như domain master
browser.Ngược lại có thể ñược:Nếu Samba ñảm nhận như một PDC,chúng tôi khuyến
khích bạn hãy lấy nó làm domain master browser.Việc cắt nhỏ PDC và domain master
browser sẽ không ñoán ñược các lỗi ñã sảy ra trong network.
5.1.5.13 ðồng hóa trình duyệt từ xa(Remote browse sync)
Chọn lựa toàn cục remote browse sync chỉ cho Samba cần ñồng hoá bảng danh sách trình
duyệt của nó với local master browsers trong các subnets khác.Tuy nhiên,việc ñồng hoá chỉ
xảy ra với các Samba server,và không với các máy Windows.Ví dụ như,nếu Samba server
ñã là master browser trong subnet 192.168.235 và Samba local master browsers ñã tồn tại
trên một subnets khác tại 192.168.234.93 và 192.168.236.2,bạn nên làm như sau:
remote browse sync = 192.168.234.92 192.168.236.2
Samba server nên liên hệ thẳng với cá máy khác trên bảng ñịa chỉ và ñồng hoá bảng danh
sách trình duyệt.Bạn nên làm như sau:
remote browse sync = 192.168.234.255 192.168.236.255
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
136
Nó tạo tiềm lực Samba ñến các tín hiệu yêu cầu broadcast ñến các IP-address ñã xác ñịnh
của mỗi local master browser trong subnets,mà với nó sẽ ñồng hoá bảng danh sách trình
duyệt.Tuy nhiên nếu router(cầu dẫn) không khoá các broadcast yêu cầu ở 255.
5.1.5.14 remote announce(công bố từ xa)
Samba server có thể ñược cung cấp bảng trình duyệt ñến các subnet ngoại lai với chọn lựa
remote announce.ðấy là ñiển hình gửi ñến local master browser của các subnets ngoại lai
bằng các câu hỏi.Tuy nhiên,nếu bạn không biết ñịa chỉ của local master browser,bạn có thể
làm như sau:
[global]
remote announce = 192.168.234.255/ACCOUNTING \
192.168.236.255/ACCOUNTING
Với ñiều này,Samba sẽ công bố broadcast host ñến tất cả các máy trong subnets
192.168.234 và 192.168.236 mà có ñầy ñủ hi vọng ñạt ñến local master browser trong
subnet.Bạn cũng có thể chỉ rõ chính xác ñịa chỉ IP,nếu bạn biết nó.
5.2 Sự bất ñồng của hệ thống tập tin(Filesystem Differences)
Một trong những hậu quả lớn nhất mà Samba mắc phải ñó là phải chỉnh sửa sự bất ñồng
giữa hệ thống tập tin Unix và không thuộc Unix.Nó bao gồm các ñại diện như: các links
symbolic,tập tin ẩn, và các tập tin dot.Bổ sung thêm,tập tin với các quyền hạn cũng là
những vấn ñề rất ñau ñầu nếu không ñược giải quyết chính xác.ðây là phần chỉ dẫn cácg
sử dụng Samba ñể làm giảm ñi sự bất ñồng và bổ sung thêm vào ñó một vài chức năng mới
của nó.
5.2.1 các tập tin ẩn và cấm
Có một vài tình huống khi chúng ta cần ñảm bảo rằng người sử dụng không nhìn thấy hoặc
truy cập ñến một tập tin nào ñó.Tại thời ñiểm khác,chúng ta không muốn giữ một người sử
dụng với quyền truy cập một tập tin-chúng ta muốn ẩn nó ñi khi chúng ñược hiện thị trong
catalog.Trên hệ thống Windows,các ñặc tính của tập tin cho phép chúng ẩn ñi bên trong thư
mục.Với Unix,theo truyền thống,chúng cũng ñược ẩn ñi bên trong các catalog ñó là các tập
tin mà bắt ñầu bằng dấu dot(.) (ví dụ như: .mail).
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
137
ðiều này ngăn ngừa các thông tin như tập tin cấu hình hoặc ngầm ñịnh sẽ hiển thị khi ñược
gọi bằng một lệnh ls thông thường.Giữ cho một tài khoản truy cập tới một tập tin tại mọi
nơi,tuy nhiên ñòi hỏi phải làm việc với các quyền hạn trên tập tin hoặc catalog.
Chọn lựa ñầu tiên mà chúng ta cần nghiên cứu là với dạng logic hide dot files.ðấy là chọn
lựa chính xác như nó nói.Khi thiết lập giá trị yes,chọn lựa sẽ tiến hành sử lý các tập tin bắt
ñầu với dạng (.) như là ẩn.Nếu thiết lập no,những tập tin này sẽ luôn ñược hiển thị.ðiều
quan trọng là nhớ rằng những tập tin này phải luôn ẩn.Nếu bạn ñã chọn là hiển thị ñối với
tất cả các tập tin ẩn khi trình duyệt,chúng có thể nhìn thấy như hình 5.2
hình 5.2
Thay vào việc ẩn các tập tin bắt ñầu bằng dot(.),bạn có thể chỉ ra một loạt mẫu ñến Samba
cho các tập tin ẩn,bằng các sử dụng chọn lựa hide files,ví dụ giả thiết chúng ta có share
[data] như sau:
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
writeable = yes
case sensitive = no
hide files = /*.java/*README*/
Mỗi lần ñưa thông tin vào cho chọn lựa này phải có bắt ñầu,kết thúc hoặc tách nhau với
những cái khác bằng dấu (/),ngay cả khi nếu ñó là một mẫu danh sách duy nhất.ðấy là quy
ước cho phép xuất hiện trong tên tập tin.
Trong ví dụ này,catalog share ñã hiện ra như hình 5.3,chú ý rằng, chúng ta có thể thiết lập
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
138
chọn lựa hiển thị các tập tin ẩn trong Windows.
hình 5.3
Nếu chúng ta muốn ngăn cản các người sử dụng nhìn thấy các tập tin tại ñấy,chúng ta có
thể sử dụng chọn lựa veto files.Chọn lựa này,có cấu trúc như chọn lựa hide files,tất nhiên
phải chỉ ra danh sách các tập tin không bao giờ nhìn thấy ñược bởi các người sử dụng.Ví
dụ,ñối với share [data] như sau:
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
writeable = yes
case sensitive = no
veto files = /*.java/*README*/
Trong cấu trúc của chọn lựa cấu hình hide files là :Mỗi lần ñưa thông tin vào cho chọn lựa
này phải có bắt ñầu,kết thúc hoặc tách nhau với những cái khác bằng dấu (/),ngay cả khi
nếu ñó là một mẫu danh sách duy nhất.Khi bắt ñầu,các tập tin như hello.java và README
sẽ ñơn giản không hiện ra trong catalog,và người sử dụng sẽ không có quyền truy cập nó
qua SMB.
Ở ñây còn có một vấn ñề khác mà chúng ta cần ñến ñịa chỉ.Chuyện gì sảy ra nếu người sử
dụng chán không muốn xoá một thư mục có chứa các tập tin cấm .ðiều này có thể giải
quyết bằng chọn lựa delete veto files.Nếu giá trị chọn lựa là yes,người sử dụng có thể xóa
cả những tập tin thông thường và các tập tin cấm và cả catalog có thể chuyển nó ñi.Nếu giá
trị chọn lựa là no,người sử dụng sẽ không thể xóa ñi các tập tin cấm,và catalog cũng không
thể xoá ñi ñược.Dưới góc quan sát của người sử dụng,catalog sẽ tưởng như là rỗng,nhưng
không thể nào xoá ñi ñược.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
139
Chọn lựa dont descend sẽ chỉ ra một danh sách các catalog mà nội dung của chúng Samba
không cho phép hiển thị.Chú ý,nội dung ở ñây,không phải là catalog của mình nó.Người
sử dụng có tạo ra một catalog,nhưng chúng bị ngăn cấm kể từ catalog sinh ra nó trong cây
thư mục.Chúng sẽ luôn luôn như là một thư mục rỗng.Ví dụ như sau:
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
writeable = yes
case sensitive = no
dont descend = config defaults
Bổ sung thêm,giả sử trong catalog /home/samba/data có các chứa như sau:
drwxr-xr-x 6 tom users 1024 Jun 13 09:24 .
drwxr-xr-x 8 root root 1024 Jun 10 17:53 ..
-rw-r--r-- 2 tom users 1024 Jun 9 11:43 README
drwxr-xr-x 3 tom users 1024 Jun 13 09:28 config
drwxr-xr-x 3 tom users 1024 Jun 13 09:28 defaults
drwxr-xr-x 3 tom users 1024 Jun 13 09:28 market
Nếu người sử dụng kết nối ñến share,nó sẽ nhìn thấy các catalogs như hình 5.4.Tuy
nhiên,nội dung của catalog /config và /defaults luôn là rỗng ñối với người sử dụng,mặc dù
có thể có các tập tin và catalog khác vẫn tồn tại bên trong nó.Bổ sung thêm,người dùng
không thể ghi bất cứ một dữ liệu nào vào thư mục.Nếu như họ vẫn cố gắng tiếp tục,họ sẽ
nhận ñược thông báo "Access Denied - Cấm truy cập". dont descend là một chọn lựa
adminitrative,không phải là một chọn lựa bảo mật và không phải là một thay thế tốt ñối với
quyền hạn của tập tin.
hình 5.4
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
140
5.2.2 Links(Liên kết)
Hệ thống tập tin DOS và NT không có các liên kết tượng trưng(symbolic links);hệ thống
Windows 95/98/NT cũng có một phép tương tự ñó là "shortcuts - Nhanh".Khi clients thử mở
một liên kết tượng trưng trên share của Samba server,Samba sẽ ñi theo liên kết ñể tìm
ñến tập tin thực tế và mở nó,nếu như họ ở trên hệ thống Unix.Nếu bạn không muốn cho
phép ñiều này,hãy làm như sau:
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
writeable = yes
case sensitive = no
follow symlinks = no
Bạn có thể thử nghiệm ñiều này bằng cách tạo ra một catalog trên Unix server ở bên trong
share dưới tài khoản mà bạn ñã ñăng nhập vào hệ thống.Hãy làm như sau:
% mkdir hello; cd hello
% cat "This is a test" >hello.txt
% ln -s hello.txt "Link to hello"
ðấy là kết quả hai tập tin hiển thị trên hình 5.5.Bình thường nếu bạn kích lên một trong
chúng,bạn sẽ nhận ñược một tập tin có nội dung "This is a text - ðây là một ñoạn văn
bản".Tuy nhiên,nếu chọn lựa follow symlinks nhận giá trị no,bạn có thể nhận ñược thông
báo lỗi như khung hội thoại trong hình 5.5 nếu bạn kích lên "Link to hello"
hình 5.5
Cuối cùng,chúng ta hãy tìm hiểu chọn lựa wide links.Nếu nó nhận giá trị yes,sẽ cho phép tất
cả các clients sử dụng ñến liên kết tượng trưng tại ñầu ra trên cây thư mục share,bao gồm
các tập tin hay catalogs tại ñiểm kết của link.Ví dụ như sau:
[data]
path = /home/samba/data
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
141
browseable = yes
guest ok = yes
writeable = yes
case sensitive = no
follow symlinks = yes
wide links = yes
Ở ñây chọn lựa follow symlinks ñược thực hiện,nó sẽ làm cho Samba ñi theo tất cả các
links bên ngoài của cây thư mục share hiện thời.Nếu chúng ta tạo một tập tin bên ngoài
share và tạo một liên kết ñến share như sau:
ln -s ~tom/datafile ./datafile
khi ñó bạn có thể mở tập tin trong catalog tom như chính nó với các quyền hạn ñã quy ñịnh.
5.2.3 Các chọn lựa hệ thống tập tin
Dưới ñây chúng tôi giới thiệu các chọn lựa cấu hình hệ thống tập tin:
bảng 5.4
Option Parameters Function Default Scope
unix
realname
boolean Provides Unix user's full name to client. no Global
dont
descend
string (list of
directories)
Indicates a list of directories whose
contents Samba should make invisible to
clients.
None Share
follow
symlinks
boolean If set to no, Samba will not honor symbolic
links.
yes Share
getwd
cache
boolean If set to yes, Samba will use a cache for
getwd() calls.
yes Global
wide links boolean If set to yes, Samba will follow symbolic
links outside the share.
yes Share
hide dot
files
boolean If set to yes, treats Unix hidden files as
hidden files in Windows.
yes Share
hide files string (list of
files)
List of file patterns to treat as hidden. None Share
veto files string (list of List of file patterns to never show. None Share
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
142
Option Parameters Function Default Scope
files)
delete veto
files
boolean If set to yes, will delete files matched by
veto files when the directory they reside in
is deleted.
no Share
5.2.3.1 unix realname
Một vài chương trình yêu cầu tên ñầy ñủ của tài khoản.Ví dụ,một chương trình email
Windows thường cần kết hợp tên ñầy ñủ của một tài khoản với tên thực tế của họ.Nếu hệ
thống tập tin mật khẩu của bạn chứa các tên thật của các tài khoản trong tập tin GCOS,thì
chọn lựa unix realname chỉ cho Samba xác nhận các thông tin này ñến clients.Tên của tài
khoản chỉ ñơn giản là ID ñăng nhập của họ.Ví dụ trong hệ thống Unix như sau:
rcollins:/KaBfco47Rer5:500:500:Robert Collins:
/home/rcollins:/bin/ksh
và chọn lựa bên trong tập tin cấu hình là:
[global]
unix realname = yes
Khi ấy,tên Robert Collins sẽ ñược chuẩn bị sẵn sàng ñối với bất cứ clients nào yêu cầu tên
thật của tài khoản rcollins.Bạn có thể không cần quan tâm ñến chọn lựa này.
5.2.3.2 dont descend
Chọn lựa dont descend có thể sử dụng ñể chỉ ra các catalogs quan trọng mà cần phải hiển
thị là rỗng ñối với các clients.Chú ý,bản thân các thư mục vẫn nhìn thấy ñược.Tuy
nhiên,Samba sẽ không hiển thị bất kì nội dung của catalog nào cho các clients.ðấy không
phải là một chọn lựa tốt khi sử dụng cho chức năng bảo mật.Nó chỉ ở mức ñộ trung
bình,thích hợp giữ cho các clients trình duyệt vào bên trong các catalogs có các tập tin hoạt
tính.
5.2.3.3 follow symlinks
ðây là chọn lựa,hoặc ñiều khiển Samba ñi theo một liên kết tượng trưng trong hệ thống unix
ñến ñích của nó hoặc nó sẽ hiển thị lên thông báo lỗi ñến clients.Nếu giá trị của nó là yes thì
ñích ñến của link sẽ ñược xuất hiện như tập tin.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
143
5.2.3.4 getwd cache
ðây là chọn lựa toàn cục không những chỉ ra Samba nên sử dụng một local cache cho Unix
getwd()(ñưa ra catalog làm việc hiện thời).Bạn có thể chèn lên giá trị mặc ñịnh của nó là
"yes" theo cách sau:
[global]
getwd cache = no
Khi giá trị của chọn lựa là yes,có thể ñạt ñược tốc ñộ lớn khi thông báo về các catalog ñang
làm việc hiện thời,ñặc biệt nếu như chọn lựa wide links lấy giá trị no.Bình thường bạn không
nên thay ñổi chọn lựa này.
5.2.3.5 wide links
Chọn lựa này sẽ hướng dẫn các clients có thể ñi theo các liên kết tượng trưng ñến các ñiểm
ra bên ngoài cây catalog share.Nó bao gồm bấy cứ một tập tin nào hoặc catalogs tại một
ñiểm khác của link.cũng như các quyền hạn hiện thời của tài khoản.Theo mặc ñịnh,chọn
lựa này có giá trị là yes.Chú ý,chọn lựa này không ñược coi trọng nếu như chọn lựa follow
symlinks ñược nhận giá trị là no.Giá trị của chọn lựa là no sẽ làm chậm ñáng kể của smbd.
5.2.3.6 hide files
Chọn lựa hide files chuẩn bị cho một hoặc nhiều catalogs hoặc tập tin kiểu mẫu cho
Samba.Bất cứ tập tin kiểu mẫu nào cũng sẽ ñược xử lý như là các tập tin ẩn ñối với các
clients.Chú ý,nó bình thường ñối với các ñặc tính ẩn ñã thiết lập trong DOS mà có thể hoặc
không bình thường khi người sử dụng nhìn nó một cách ñặc biệt khi trình duyệt.Mỗi lần ñưa
thông tin vào cho chọn lựa này phải có bắt ñầu,kết thúc hoặc tách nhau với những cái khác
bằng dấu (/),ngay cả khi nếu ñó là một mẫu danh sách duy nhất.ðấy là một khoảng không
gian ñể hiển thị danh sách.Có thể sử dụng các tên mẫu ñến các tên tượng trưng cúng như
các kí tự khác.Một câu hỏi như sau:dấu hiệu có thể ñại diện cho chính xác ñúng một kí tự.Ví
như sau:
hide files = /.jav*/README.???/
5.2.3.7 Hide dot files
Chọn lựa hide dot files làm ẩn ñi bất cứ một tập tin bắt ñầu với dot(.) trên server.Giống như
hide files,những tập tin này bắt ñầu với DOT không ñược gán ñặc tính ẩn trong DOS,mà
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
144
không ñảm bảo tất yếu rằng clients không thể hiển thị chúng.Giá trị ngầm ñịnh là yes.
5.2.3.8 Veto(cấm) files
Có nhiều thông tin nói về các tập tin ẩn,còn ñây là trạng thái ñược xác ñịnh bởi chọn lựa
veto files.Samba không thừa nhận sự tồn tại của chúng.Bạn có thể không có ñược danh
sách hoặc không mở ñược chúng bằng clients.Nhắc lại,ñấy không phải là chọn lựa ñáng tin
cậy.Nó là một kĩ xảo ñặc biệt giữ cho các chương trình PC khỏi bị xóa các tập tin ñặc
biệt,như là một công cụ lưu trữ các nguồn tài nguyên chia lẻ của hệ thống Macintosh lên
hệ thống Unix.Nếu cả Mac và Windows ñều gửi lên các share giống hệt nhau,nó có thể
ngăn cấm những người sử dụng thiếu kinh nghiệm khỏi việc di chuyển các tập tin trên Mac
ñược sử dụng khi cần.
Về cấu trúc sử dụng chọn lựa giống như chọn lựa hide files:Mỗi lần ñưa thông tin vào cho
chọn lựa này phải có bắt ñầu,kết thúc hoặc tách nhau với những cái khác bằng dấu (/),ngay
cả khi nếu ñó là một mẫu danh sách duy nhất.ðấy là một khoảng không gian ñể hiển thị
danh sách.Có thể sử dụng các tên mẫu ñến các tên tượng trưng cúng như các kí tự
khác.Một câu hỏi như sau:dấu hiệu có thể ñại diện cho chính xác ñúng một kí tự.Ví như sau:
veto files = /*config/*default?/
ðây là chọn lựa chính của administrator,tuy nhiên không phải tốt khi thay thế cho quyền hạn
của tập tin
5.2.3.9 Delete veto files
ðây là chọn lựa giúp Samba xoá các vetoed files khi người sử dụng muốn xoá ñi một
catalog mà chứa chúng trong ñó.Theo mặc ñịnh giá trị là no.Nếu người sử dụng cố gắng
xóa catalog mà có chứa vetoed file,thì tập tin sẽ không ñược xóa.Hơn nữa,catalog vẫn còn
ñấy và hiển thị như một catalog rỗng ñối với các clients.Nếu giá trị của chọn lựa là "yes" thì
catalog và vetoed files sẽ bị xóa ñi.
5.3 Quyền hạn và ñặc tính tập tin trong MS-DOS và Unix
DOS không bao giờ có ý ñịnh trở thành hệ thống ña tài khoản,hệ thống phục vụ mạng.Unix
ñã khéo léo hơn,ñã ñược ñịnh hướng ngay từ khi mới bắt ñầu.Chính vì thế mà ñã có những
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
145
mâu thuẫn cũng như khe hở trong phạm vi giữa hai hệ thống tập tin,Samba không chỉ nhận
ra nó mà còn tìm ñược lời giải cho chúng.Một trong những khe hở lớn nhất ñó là quyền hạn
ñối với mỗi tập tin trong Unix và DOS.
Chúng ta hãy nhìn cách Unix phân bố quyền hạn.Tất cả các tập tin Unix có thể ñọc,ghi,thực
thi theo ba nhóm tài khoản khác nhau:Chủ sở hữu,nhóm sở hữu,và các nhóm còn
lại.Những quyền hạn ñó có thể nhìn thấy khi sử dụng lệnh ls -al trên vỏ lệnh trong Unix.Ví
dụ như:
-rwxr--r-- 1 tom users 2014 Apr 13 14:11 access.conf
Windows lại theo cách khác,có các ñặc tính như:chỉ ñọc,hệ thống(system),ẩn,lưu
trữ(archive).Bạn có thể hiển thị các bits này bằng cách kích chuột phải trên tập tin và chọn
biểu tượng Properties trong menu.Bạn sẽ nhìn thấy hộp thoại như hình 5.6:
hình 5.6
ðịnh nghĩa mỗi ñặc tính như sau:
read-only
Người sử dụng chỉ có thể ñọc nội dung của tập tin mà không thể ghi lên nó ñược
System
ðấy là tập tin có ñặc thù riêng là kết qủa ñòi hỏi của hệ thống
Hidden
ðấy là tập tin không cho các tài khoản nhìn thấy,chỉ khi hệ thống thiết lập lại chế ñộ ép buộc
chúng hiện ra
Archive
ðấy là tập tin ñược tạo ra từ các tập tin sao lưu dự phòng DOS ñã thực hiện nó.
Chú ý rằng,ñó không phải là các ñặc tính chỉ ra rằng ñó là tập tin thực thi .Trong hệ thống
tập tin DOS và Windows NT ñịnh rõ các tập tin thực thi là phải có ñuôi mở rộng
dạng .EXE,.COM,.CMD,.BAT.
Do ñó,chúng không sử dụng ñược với vai trò là tập tin thực thi trên Unix ñược mà chỉ hiển
thị như disk share trong Samba.Các tập tin DOS,ñôi khi,cũng có các ñặc tính riêng của
mình ñể bảo quản khi chúng ñược lưu trữ trên môi trường Unix:
archive,system,hidden.Samba có thể bảo vệ các ñặc tính này bằng cách dùng lại các quyền
ñặc tính của các tập tin trên Unix-nếu như chúng cùng một chức năng.Tuy nhiên có một
ñiều không may là:Nếu người dùng trên Windows lưu trữ các tập tin trên Samba share,và
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
146
bạn muốn hiển thị chúng bằng lệnh ls -al,khi ấy một vài ñặc tính mà bạn không muốn có
chúng.
Ba chọn lựa của Samba giải quyết các ñặc tính bằng mapped: map archive, map system, và
map hidden.Ba chọn lựa map này tương ứng với ba ñặc tính của tập tin trên Unix:owner,
group, and world execute.Bạn có thể bổ sung chúng vào share [data] như sau:
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
writeable = yes
map archive = yes
map system = yes
map hidden = yes
Sau ñó,bạn hãy tạo một tập tin dưới Unix có tên là hello.java - và thay ñổi quyền hạn của nó
ñến 755.Với những chọn lựa mà Samba ñã ñặt ra,bạn có thể kiểm tra quyền hạn của chúng
trên Windows và sẽ nhìn thấy các ñặc tính của chúng khi kiểm tra hộp thoại Properties.Có
thể nói gì về ñặc tính read-only?Theo mặc ñịnh,Samba 2.0 sẽ thiết lập bất cứ khi nào một
tập tin
không có chủ sở hữu Unix.Ngoài ra bạn có thể thay ñổi quyền hạn này ñến 555.
Bạn nên thông báo rằng,giá trị mặc ñịnh của chọn lựa map archive trong khi hai giá trị còn
lại là no.ðó là vì,có nhiều chương trình không làm việc nếu dạng archive bit không ñược lưu
lại ñúng ñối với DOS và Windows.Còn các ñặc tính hidden và system không gây lên các ñột
biến ñối với các chương trình hoặc các lệnh.
Hình 5.7 là toàn bộ các quyền hạn của tập tin trên Unix và cách Samba minh hoạ các bits
ñấy dựa vào map ñể chuyển ñến các ñặc tính trong DOS.Chú ý là các nhóm read/write và
world read/write bits không thể chuyển tương ứng sang ñặc tính của DOS,nhưng chúng vẫn
ñược giữ lại nguyên bản trên Samba server.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
147
5.3.1 Creation masks(tạo lớp bảo vệ)
Samba có hàng loạt các hệ thống trợ giúp tạo ra lớp bảo vệ cho tập tin.Tập tin ñược bảo
vệ(umasks) sẽ xác ñịnh quyền hạn của tập tin hoặc catalog nhận ñược khi nó ñược tạo
thành.ðối với các tập tin truy cập ñược từ Windows,bạn có thể làm mất ñi các ñặc
tính:read-only,archive,system,hidden mà nó có.
Ví dụ,chọn lựa create mask sẽ tăng cường quyền hạn cho các tập tin ñược tạo bằng các tài
khoản Windows như 744:
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
writeable = yes
create mask = 744
Khi chọn lựa directory mask chỉ ra ở ñây chỉ tăng cường quyền hạn ñối với các catalog mới
ñược tạo thành ñến 755:
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
writeable = yes
directory mask = 755
Bạn cũng có thể tăng cường các ñặc tính quan trọng khác bằng các chọn lựa như force
create mode và force directory mode.ðấy là các chọn lựa sẽ thực hiện một cách hợp lý OR
và dựa vào các tập tin và catalog ñược bảo vệ.Chính vì thế mà các chọn lựa này sẽ luôn
ñược sử dụng.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
148
Cũng như trên,nếu bạn muốn xác ñịnh rõ ràng các ñặc tính của tập tin ,ñược tạo trên
Windows,ñối với các User và Group Unix,hãy sử dụng các chọn lựa sau: force user and
force group .Ví dụ:
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
writeable = yes
create mask = 744
directory mask = 755
force user = joe
force group = accounting
Các chọn lựa này thực tế ñã coi như là một hệ thống tài khoản và nhóm tài khoản Unix tĩnh
ñối với mỗi kết nối ñã ñược hình thành sẵn cho tài nguyên share.Tuy nhiên,nó sảy ra sau
khi clients ñược xác nhận,Nó không cho phép client truy cập tự do trên share.ðấy là chọn
lựa thường xuyên sử dụng ñể tăng cường các ñặc tính ñã chỉ ra cho tài khoản cũng như
nhóm tài khoản ñối với mỗi tập tin mới hoặc catalog mới tạo trong share.Hãy sử dụng nó
một cách thận trọng.
Cuối cùng,một trong những quền hạn của Unix mà thiếu vắng trong DOS là khả năng xóa
các tập tin có ñặc tính read-only từ các catalog có khả năng ghi lên.Trong Unix,nếu catalog
có thể ghi lên ñược,thì tập tin read-only vẫn có thể di chuyển ñi nơi khác ñược.
Hệ thống tập tin DOS không dành cho dạng ña tài khoản.Nhưng nó ñã giải quyết ñược vấn
ñề read-only "protected against accidental change, including deletion - Bảo vệ khỏi sự thay
ñổi tình cờ,bao gồm cả xoá",hơn thế nữa "protected against some other user on a
single-user machine - bảo vệ khỏi các người sử dụng khác trong chế ñộ ñơn tài khoản-tài
khoản trên máy".Với cách thức ñấy,DOS cấm việc di chuyển các tập tin có ñặc
tính read-only. Ngày nay,Hệ thống tập tin Windows cũng theo cách ñấy.
Bình thường,ñó là vô hại.Các chương trình Windows không thể si chuyển các tập tin
read-only bởi vì chúng biết ñó là một ý tưởng không hay.Tuy nhiên,con số mã nguồn các
chương trình ñiều khiển-mà ñầu tiên ñược viết trên Unix-chạy trên Windows và chúng vẫn
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
149
thực hiện yêu cầu xóa các tập tin read-only.Samba cho phép ñiều này với chọn lựa delete
readonly.Nó sẽ thực hiện chức năng này nếu như ñược gán giá trị là yes:
[data]
path = /home/samba/data
browseable = yes
guest ok = yes
writeable = yes
create mask = 744
directory mask = 755
force user = joe
force group = accounting
delete readonly = yes
5.3.2 Chọn lựa cấu hình quyền hạn cho tập tin và catalog
bảng 5.5 sẽ tổng kết tất cả các chọn lựa cấu hình quyền hạn cho tập tin và catalog:
Option Parameters Function Default Scope
map archive boolean Preserve DOS archive attribute in
user execute bit (0100).
yes Share
map system boolean Preserve DOS system attribute in
group execute bit (0010).
no Share
map hidden boolean Preserve DOS hidden attribute in
world execute bit (0001).
no Share
create mask
(create mode)
numeric Sets the maximum permissions for
files created by Samba.
0744 Share
directory mask
(directory mode)
numeric Sets the maximum permissions for
directories created by Samba.
0755 Share
force create mode numeric Forces the specified permissions
(bitwise or) for directories created by
Samba.
0000 Share
force directory
mode
numeric Forces the specified permissions
(bitwise or) for directories created by
Samba.
0000 Share
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
150
Option Parameters Function Default Scope
force group
(group)
string (group
name)
Sets the effective group for a user
accessing this share.
None Share
force user string
(username)
Sets the effective username for a user
accessing this share.
None Share
delete readonly boolean Allows a user to delete a read-only file
from a writable directory.
no Share
5.3.2.1 creat mask(tạo lớp bảo vệ)
ðấy là chọn lựa có giá trị theo hệ số 8,sẽ ñại diện cho các quyền hạn có thể thiết lập bởi
clients trên share.Theo mặc ñịnh là 0755,mà khả năng của các chủ sở hữu Unix có thể
ñọc,ghi,và thực thi các tập tin của họ trong khi các nhóm sở hữu chỉ có thể ñọc hoặc thực
thi.Nếu bạn cần thay ñổi nó,thành các tập tin không thể thực thi ñược hãy sử dụng giá trị
0644 hoặc rw-r--r--.
5.3.2.2 directory mask(bảo vệ catalog)
ðấy là chọn lựa cũng nhân ñược các giá trị thuộc cơ số 8,bao gồm các dấu hiệu ñại diện ñã
thiết lập cho catalog ñược tạo ra bởi clients trên share.
Theo mặc ñịnh là 0755,mà nó cho phép chỉ mình bạn mới có thể biến ñổi ñược nó,còn
những người sử dụng khác trên Unix chỉ có thể ñọc và lướt qua các catalog khác trong
nó.Chúng tôi khuyên bạn có thể sử dụng lớp bảo vệ là 0750,xóa ñi quyền truy cập của
những người sử dụng khác.
5.3.2.3 force create mode
ðấy là chọn lựa sẽ tăng cường các quyền hạn của Samba ñối với các tập tin khi chế ñộ
quyền hạn của chúng bị thay ñổi.Nó thường ñược sử dụng ñối với quyền hạn của các nhóm
sử hữu.Nó cũng có thể sử dụng ñể thiết lập sẵn cho bất cứ ñặc tính nào của
DOS:archive(0100),system(0010),hidden(0001).ðấy là chọn lựa luôn có ảnh hưởng lớn sau
các chọn lựa map archive, map system , map hidden, and create mask .
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
151
Rất nhiều các ứng dụng ñã ñổi tên các tập tin dữ liệu của chúng thành datafile.bak và tạo
một tập tin mới,trong ñó ñã thay ñổi chủ sở hữu và quyền hạn ñối với các thành viên khác
trên hệ thống Unix,và tất nhiên nhóm sở hữu Unix không thể nào thay ñổi ñược chúng.Giá
trị orce create mask = 0660 sẽ giữ nguyên khả năng sửa chữa lại tập tin mới ñối với nhóm
sở hữu.
5.3.2.4 force directory mode
ðấy là chọn lựa sẽ xác ñịnh dạng ñặc tính quyền hạn mà Samba sẽ tăng cường khi catalog
bị thay ñổi chế ñộ quền hạn hoặc ñối với catalog mới ñược tạo thành.Nó thường ñược sử
dụng ñối với nhóm sở hữu.Theo mặc ñịnh,giá trị của nó là 0000,bạn có thể sử dụng như
force create mode ñể bổ sung thêm vào nhóm hoặc các quền hạn khác nếu cần.ðấy là chọn
lựa luôn có ñược ảnh hưởng lớn sau các chọn lựa như: map archive, map system, map
hidden, and directory mask.
5.3.2.5 force group
ðấy là chọn lựa(hay còn gọi là group) coi như là một nhóm tài khoản tĩnh sẽ ñược sử dụng
trên tất cả các kết nối ñến các dịch vụ sau khi tài khoản ñã ñược nhận dạng thành công.ðấy
như một sự công nhận một nhóm ñặc biệt ñến mỗi nhóm mới hoặc catalog ñược tạo từ một
client SMB
5.3.2.6 force user
Chọn lựa force user coi là một ID tài khoản tĩnh trên Unix,ñược sử dụng trong tất cả các kết
nối ñến các dịch vụ sau khi client ñược xác nhận thành công.ðấy là sự công nhận một tài
khoản ñặc biệt ñối với mỗi tập tin mới hoặc catalog mới ñược tạo ra bởi clients SMB.
5.3.2.7 delete readonly
ðây là chọn lựa cho phép xóa ñi một catalog có chứa các tập tin chỉ có quyền hạn ñọc.Theo
mặc ñinh,DOS và Windows không cho phép thực hiện các lệnh này.Bạn hầu như muốn tắt
ñi ñiều này trong các chương trình cần ñến khẳ năng ấy.Rất nhiều người dùng Windows ñã
rất kin sợ khi xoá phỉa các tập tin có quyền hạn read-only.Chính vì thể,trong Unix lệnh rm sẽ
hỏi các người sử dụng xem có thực sự muốn xoá ñi hoặc ghi chèn lên các tập tin
read-only.ðó là một ý kiến hay có trong Samba
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
152
5.3.2.8 map archive
ðặc tính archive DOS ñược ñại diện cho tập tin sau lần thay ñổi ñặc tính archive cuối
cùng.Giá trị của chọn lựa map archive = yes làm cho ñặc tính DOS archive có thể có quền
thực thi ñối với chủ sở hữu.Nó tốt nhất khi người dùng Windows sử dụng ñể sao dự phòng
các dữ liệu thông tin của mình,hoặc sử dụng các chương trình có ñòi hỏi ñến chúng.
5.3.2.9 map system
ðặc tính DOS system sử dụng ñại diện các tập tin mà ñược yêu cầu bởi hệ thống,và không
nên xoá,ñổi tên,và càng không nên cố sức di chuyển.Thiết lập chọn lựa này chỉ khi bạn cần
tích trữ lại các tập tin hệ thống Windows trên server unix.Các chương trình thực thi Unix sẽ
chỉ ra các tập tin hệ thống không thể si chuyển ñược khi hiển thị từ Windows clients.
5.3.2.10 map hidden
DOS sử dụng ñặc tính hidden ñể ñại diện cho các tập tin mà không ñược hiển thị một cách
bình thường trên danh sách dữ liệu có trong catalog.Unix không ñược trang bị như thế.Nó
có một chương trình ñặc biệt xác ñịnh xem cái gì cần thiết hiển thị và cái gì không cần
thiết.Bình thường,bạn không có bất cứ những tập tin DOS nào cần ẩn,tốt nhất là hãy tắt
chọn lựa này ñi
Nếu như giá trị của chọn lựa là yes thì nó sẽ làm cho server tác ñộng lên hệ thống các tập
tin ẩn chỉ ñối với các bit thực thi của các nhóm tài khoản còn lại(bit 0001).
Bất cứ một chương trình Unix nào mà ñược thực thi bởi các nhóm tài khoản còn lại sẽ như
là biến mất khi nhìn từ các clients Windows.Nếu chọn lựa là no,và người dùng Windows cố
gắng bảo vệ các tập tin ẩn ,trên Share Samba,nó sẽ không làm việc-Samba không có ñủ
chỗ ñể dự trữ các ñặc tính ẩn này.
5.4 Sửa lại tên và tổ hợp
Quay trở lại với Dos và Windows 3.1,mỗi tên tập tin không quá 8 kí tự và sau dấu dot
không nhiều hơn ba kí tự.ðấy là kiểu ñịnh dạng 8.3.Trong Windows 95/98,Windows NT và
Unixd ñã khắc phục ñược lỗi này,cho phép sử dụng tên tập tin gồm nhiều kí tự hơn.Bảng
5.6 cho thấy cách ñịnh dạng tên tập tin trong các hệ thống khác nhau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
153
Operating System File Naming Rules
DOS 6.22 or below Eight characters followed by a dot followed by a three-letter
extension (8.3 format); case insensitive
Windows 3.1 for
Workgroups
Eight characters followed by a dot followed by a three-letter
extension (8.3 format); case insensitive
Windows 95/98 127 characters; case sensitive
Windows NT 127 characters; case sensitive
Unix 255 characters; case sensitive
Samba vẫn âm thầm sử dụng các ñịnh dạng trên ñối với các networks clients lưu trữ các tập
tin ở dạng 8.3,như là Windows cho Workgroups.Nếu người dùng tạo ra một tập tin trên
Share có tên là antidisestablishmentarianism.txt,và Windows cho Workgroups clients không
thể gọi nó bằng một tập tin khác cũng trong catalog ấy như là antidisease.txt.Như Windows
95/98 và NT,Samba có dùng một phương án ñặc biệt ñể chuyển ñổi các tập tin dài ñến
dạng 8.3 mà vẫn dữ nguyên nội dung của tập tin.ðấy là name mangling(sửa lại tên),và
Samba vấn làm việc với nó như bình thường.
5.4.1 Cách sửa lại tên
ðây là cách Samba biến ñổi các tên dài về ñịnh dạng 8.3:
1. Nếu tên tập tin gốc không bắt ñầu bằng dot,thì năm kí tự ñầu tiên có mặt trước dấu dot
cuối(nếu nó duy nhất) ñược chuyển thành chữ hoa.Những kí tự này sử dụng như năm kí tự
ñầu tiên trong ñịnh dạng 8.3
2. Nếu tên tập tin gốc bắt ñầu với dấu dot,thì dấu dot sẽ chuyển xuống phía dưới năm kí tự
ñầu tiên,các kí tự có mặt trước dấu dot cuối cùng(nếu nó duy nhất) sẽ chuyển thành chữ
hoa.Những kí tự này sử dụng như năm kí tự ñầu tiên của tên tập tin ñã bị sửa lại.
3. Các kí tự trực tiếp ñược sử dụng sau kí tự ñại diện cho việc ñổi tên:theo mặc ñịnh là
(~),Samba cho phép bạn thay ñổi chúng
4. Các tập tin có tên dài trước một vòng lặp cuối có hai kí tự code.Phần ñằng sau dấu dot
cuối cùng có thể sử dụng nếu như cần thiết.ðấy là hai kí tự code ñược bổ sung và dạng tên
8.3 sau dấu sử ñổi tên(~).
5. Ba kí tự cuối cùng sau dấu dot cuối cùng(nếu nó duy nhất) ñược chuyển thành dạng chữ
hoa và bổ sung vào tên tập tin sau khi sửa ñổi như phần mở rộng của tập tin.Nếu tên gốc
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
154
của tập tin bắt ñầu bằng dấu dot thì ba kí tự (_ _ _) ñược sử dụng làm phần ñuôi mở rộng
của nó.
ðây là ví dụ giúp bạn hiểu rõ hơn:
virtuosity.dat VIRTU~F1.DAT
.htaccess HTACC~U0.___
hello.java HELLO~1F.JAV
team.config.txt TEAMC~04.TXT
antidisestablishmentarianism.txt ANTID~E3.TXT
antidiseast.txt ANTID~9K.TXT
Trên thực tế bạn chỉ lên sử dụng chọn lựa cấu hình thay ñổi lại tên này với các clients thuộc
hệ thống cũ ngày xứa.Chúng tôi khuyến khích các bạn làm ñiều này mà không phá vỡ các
clients khác bằng cách bổ sung include vào tập tin cấu hình smb.conf
[global]
include = /ucsr/local/samba/lib/smb.conf.%m
ðấy là giải pháp ñến smb.conf.WfWg khi một Windows trói buộc Workgroup clients.Bây giờ
bạn có thể tại một tập tin /usr/local/samba/lib/smb.conf.WfWg mà có cac nội dung sau:
[global]
case sensitive = no
default case = upper
preserve case = no
short preserve case = no
mangle case = yes
mangled names= yes
Nếu bạn không sử dụng Windows for Workgroup 3.1,khi ấy bạn không cần phải thay ñổi bất
cứ một ñiều gì cả so với mặc ñịnh.
5.4.1.1 Hình dung và chấp nhận tên tập tin với Samba
Một vấn ñề khác ở ñây là sự khác nhau về cách một hệ thống hình dung một tập tin và chấp
nhận nó.Ví dụ,nếu bạn sử dụng Windows 95/98/NT,bạn có thể chạy lệnh ñể gọi tập tin
README.TXT.Nhưng tập tin ñấy có thể ñược hình dung bằng một hệ thống toàn bộ chữ
hoa.Tuy nhiên nếu bạn sử dụng MS-DOS ảo và nhập lệnh edit readme.txt,và chính tập tin
chữ hoa này sẽ ñược ñưa vào trình soạn thảo,một vấn ñề là tên của tập tin ñược chấp nhận
như là chữ in thường.
ðấy là vì Windows 95/98/NT chấp nhận các tập tin trong một lớp không
hoạt tính,mặc dù chúng thuộc lớp hoạt tính.Hệ thống Unix luôn chấp nhận các tập tin trong
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
155
các lớp hoạt tính.Nếu bạn soạn thảo README.TXT với vi
readme.txt,bạn sẽ nhận ñược một tập tin hoàn toàn mới.
Ở ñây:nếu như chọn lựa preserve case là yes,Samba sẽ sử dụng một tổ hợp có sẵn ñể giúp
hệ thống ñịnh dạng tên các tập tin.Còn nếu là no thì Samba sẽ sử dụng một tổ hợp trợ giúp
ñặc biệt bằng chọn lựa sau: default case.Nó giống như là short preserve case với giá trị là
true.Nếu chọn lựa là yes,Samba sẽ ngầm ñịnh áp dụng trên hệ thống kiểu ñịnh dạng tên tập
tin là 8.3.Còn lại nó sẽ sử dụng các tổ hợp ñược chỉ ra trong chọn lựa default case.Cuối
cùng Samba sẽ luôn chấp nhận tên các tập tin ñược share trên nó với các giá trị của chọn
lựa case sensitive.
5.4.2 Các chọn lựa sử dụng trong việc sửa lại tên(mangling options)
Option Parameters Function Default Scope
case sensitive
(casesignames)
boolean If yes, Samba will treat filenames as
case-sensitive (Windows doesn't).
no Share
default case (upper or lower) Case to assume as default (only used
when preserve case is no).
Lower Share
preserve case boolean If yes, keep the case the client
supplied (i.e., do not convert to
default case).
yes Share
short preserve
case
boolean If yes, preserve case of 8.3-format
names that the client provides.
yes Share
mangle case boolean Mangle a name if it is mixed case. no Share
mangled names boolean Mangles long names into 8.3 DOS
format.
yes Share
mangling char string (single
character)
Gives mangling character. ~ Share
mangled stack numerical Number of mangled names to keep
on the local mangling stack.
50 Global
mangled map string (list of
patterns)
Allows mapping of filenames from
one format into another.
None Share
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
156
5.4.2.1 case sensitive
ðấy là chọn lựa cấp ñộ share,hay còn gọi là casesignames,Theo mặc ñịnh nó nhận giá trị
no,là cách mà Windows quản lý trực tiếp việc xác nhận các tập tin.Nếu clients sử dụng hệ
thống mà tăng thêm lợi ích cho tổ hợp hoạt tính tên các tập tin,bạn có thể sử dụng chọn lựa
này với giá trị yes
[accounting]
case sensitive = yes
Tuy nhiên chúng tôi khuyến khích bạn sử dụng nó theo mặc ñịnh.
5.4.2.2 default case
Chọn lựa default case hay còn gọi là sử dụng với preserve case.ðấy là một tổ hợp ñặc biệt
mà Samba sẽ sử dụng ñể tạo ra một tập tin trên share thay cho client.Theo mặc ñịnh là
lower,mà tập tin ñược tạo ra sẽ sử dụng tổ hợp tên hỗn tạp do client ñặt cho nó.Nếu bạn
cần,bạn có thể ép buộc nó trong cấu hình chính của tập tin:
[global]
default case = upper
Nếu bạn sử dụng giá trị này,tên của tập tin mới tạo thành sẽ ñược chuyển sang chữ hoa và
không thể bị ép buộc theo các chương trình khác.Chúng tôi khuyến khích bạn hãy sử dụng
giá trị ngầm ñịnh trên ñể giao dịch với Windows for Workgroups hoặc các clients 8.3 khác và
tổ hợp của nó là upper
5.4.2.3 preserve case
ðấy là chọn lựa không chỉ tạo ra một tập tin bởi Samba thay cho client mà còn ñược tạo
thành với sự chuẩn bị sẵn sàng cho hệ thống.Theo mặc ñịnh,giá trị của nó là yes,mà có thể
sẵn sàng sử dụng trong hệ thống.Nếu là no,thì giá trị của default case sẽ ñược sử dụng.
5.4.2.4 short preserve case
ðấy là chọn lựa không chỉ tạo ra tên tập tin dạng 8.3 bởi Samba thay cho client mà còn
cùng với giá trị của tổ hợp theo mặc ñịnh cho client hệ thống.
Theo mặc ñịnh,giá trị của nó là yes,mà có thể sẵn sàng sử dụng trong hệ thống.Bạn có thể
sử dụng như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
157
[global]
short preserve case = no
5.4.2.5 mangled names
ðấy là chọn lựa mà Samba sẽ sử dụng ñể ñổi lại tên tập tin cho các 8.3 clients trên
share.Nếu chọn lựa là no,Samba sẽ không tiến hành ñổi lại tên tập tin.Chúng có thể không
nhìn thấy ñược hoặc bị cắt cụt ñối với các clients sử dụng 8.3 trên hệ thống.Theo mặc ñịnh
là yes.Bạn có thể ép nó sử dụng giá trị khác như:
[data]
mangled names = no
5.4.2.6 mangle case
Theo mặc ñịnh giá trị của nó là no.Nếu là yes,bạn cần phải chắc chắn là tất cả các clients có
thể tự tay sửa ñổi lại tên tập tin.Bạn có thể ép nó nhận giá trị khác như sau:
[data]
mangle case = yes
Chúng tôi khuyên bạn nên sử dụng giá trị của nó theo ngầm ñịnh,tuy nhiên có thể thay ñổi
nếu cần.
5.4.2.7 mangling char
ðấy là chọn lựa sẽ chỉ ra kí tự thay thế sẽ ñược sử dụng khi Samba sửa lại tên tập tên
thành dạng 8.3.Theo mặc ñịnh là (~).Bạn có thể thiết lập lại kí tự này theo ý muốn:
[data]
mangling char = #
5.4.2.8 mangled stack
ðấy là chọn lựa mà cần thiết cho các chương trình ứng dụng có thể tạo ra tập tin,lưu lại tập
tin hoặc ñóng nó cũng như soạn thảo lại nó về sau này.Theo mặc ñịnh ñộ dài tên tập tin/tên
ñã sửa lại ñược lưu giữ trên stack này là 50.Tuy nhiên nếu bạn muốn giảm mức ñộ chiếm
giữ tài nguyên processor trong quá trình cải tạo lại tên tập tin,bạn có thể tạo ra một giá trị
mới cho kích cỡ của stack.Có thể như sau:
[global]
mangled stack = 100
5.4.2.9 mangled map
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
158
ðấy là chọn lựa cho phép bạn chỉ ra dạng mẫu mà có thể sử dụng trước hoặc ngay cả khi
bên trong của tên ñã ñược sửa lại bởi Samba:
[data]
mangled map =(*.database *.db) (*.class *.cls)
5.5 Khóa và Mởkhóa(Locks and Oplocks)
ðồng thời ghi lên một tập tin không phải là ñiều mong muốn trong bất cứ hệ thống nào.ðể
khắc phục nó,hầu hết các hệ thống phải sử dụng khoá(locks) ñể ñảm bảo rằng chỉ có duy
nhất một tiến trình có thể ghi lên tập tin tại thời ñiểm hiện tại.Hệ thống sẽ khoá tập tin lại,khi
nó ñang ñược sử dụng(soạn thảo lại-ghi lên) bởi một tiến trình khác.Khi mà một tiến trình
khác thử ghi lên một tập tin ñã bị khóa,nó sẽ thông báo lỗi từ hệ thống và ñợi cho ñến khi
mở khoá cho tập tin.
Samba có thể làm việc với các yêu cầu khóa các hệ thống tập tin DOS và NT,mà chỉ cho
phép một tiến trình có thể ghi lên tập tin trên server tại thời ñiểm hiện hành,giống như bị
khoá lại.Samba có thể làm việc với một kĩ thuật công nghệ mới dùng ñể khoá tập tin ñược
trang bị thêm trong Windows NT như là opportunistic locking - oplock "Khoá ña chiều - mở
khoá"
5.5.1 Opportunistic Locking
Opportunistic Locking cho phép client thông báo cho Samba server biết rằng nó không chỉ
thực hiện ghi lên tập tin mà còn biết ñổi tập tin ñấy ngay trên chính máy chủ chứa nó(chứ
không phải trên Samba server)dưới quyền truy cập có thể của client.Khi Samba biết rằng
tập tin ñã bị opportunistically locked bởi client,nó sẽ phủ lên chúng một phiên bản như ñã có
một opportunistic lock và ñợi cho client hoàn thành công việc trên tập tin,mà khi kết thúc
client sẽ gửi tín hiệu thông báo hoàn thành công việc ñể Samba server ñồng hoá dữ liệu.
Nếu như một client thứ hai yêu cầu truy cập ñến tập tin mà client trước ñó ñã hoàn thành
công việc trên nó,thì Samba có thể gửi một tín hiệu mở khóa ñến client ñầu.Nó sẽ thông
báo cho client này ngừng tích trữ các thay ñổi của tập tin và chuyển về trạng thái ban ñầu
của tập tin trên server.Tuy nhiên,opportunistic lock không phải là sự thay thế cho chế ñộ
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
159
cấm - khóa tiêu chuẩn.Nó không nghe thấy sự gián ñoạn của tiến trình và công nhận là một
tín hiệu mở khóa trên tập tin.Hình 5.8 sẽ minh hoạ quá trình opportunistic locking
5.5.2 Unix và Khoá
Hệ thống Windows cố gắng tránh việc ghi lên các thay ñổi của người khác.Nhưng nếu một
tập tin chưa trên Samba cho phép các tiến trình Unix truy cập,những tiến trình này không
biết bất cứ gì về các mở khoá của Windows và ñơn giải là ép buộc lên các thông tin ñã
khóa.Một vài hệ thống Unix ñã có hiểu các mở khoá Windows bằng Samba.Hiện tại,có thể
làm chỉ có duy nhất trong SGI Irix 6.5.2f và các phiên bản về sau này.Linux và FreeBSD
cũng là hàng còn cháu sau này.
Nếu bạn muốn có hệ thống hiểu các mở khóa Windows hãy chọn như sau trong tập tin cấu
hình Samba: kernel oplocks = yes.ðiều này làm tránh xung ñột giữa các tiến trình Unix và
người dùng Windows.
Nếu hệ thống của bạn không làm việc với kernel oplocks,bạn có thể làm hỏng dữ liệu khi
một người nào ñó chạy các tiến trình Unix như ñọc và ghi lên các tập tin Windows khi mà
các tài khoản Windows cũng ñang sử dụng nó.Tuy nhiên,Samba ñược trang bị một nguyên
lý hoạt ñộng rất mạnh khi mà không có mặt chức năng kernel oplocks:ñó là chọn lựa veto
oplock files.Nếu bạn ñoán trước ñược các tập tin mà Samba sử dụng cho các clients
Windwows và Unix,hãy thiết lập giá trị của chúng nhờ chọn lựa: veto oplock.
veto oplock files = /*.dbm/
ðấy là chọn lựa cho phép các tiến trình Unix cũng như những người sử dụng Windows có
thể soạn thảo lại tập tin với ñuôi mở rộng là: ".dbm". ðây là bảng các giá trị cho locks và
oplocks.
Option Parameters Function Default Scope
share
modes
boolean If set to yes, turns on support
for DOS-style whole-file locks.
yes Share
locking boolean If yes, turns on byte-range
locks.
yes Share
strict boolean If yes, denies access to an no Share
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
160
Option Parameters Function Default Scope
locking entire file if a byte-range lock
exists in it.
oplocks boolean If yes, turn on local caching of
files on the client for this share.
yes Share
kernel
oplocks
boolean If yes, indicates that the kernel
supports oplocks.
yes Global
fake
oplocks
boolean If yes, tells client the lock was
obtained, but doesn't actually
lock it.
no Share
blocking
locks
boolean Allows lock requestor to wait for
the lock to be granted.
yes Share
veto
oplock files
string (list of
filenames)
Does not oplock specified files. None Share
lock
directory
string
(fully-qualified
pathname)
Sets the location where various
Samba files, including locks,
are stored.
As specified in
Samba makefile
Global
5.5.2.1 share modes
ðây là hệ thống khoá cơ bản ñầu tiên của Samba coi như là share modes.ðây là bảng danh
sách các giá trị tham biến của nó:
Lock Description
DENY_NONE Do not deny any other file requests.
DENY_ALL Deny all open requests on the current file.
DENY_READ Deny any read-only open requests on the current file.
DENY_WRITE Deny any write-only open requests on the current file.
DENY_DOS If opened for reading, others can read but cannot write to the file. If opened
for writing, others cannot open the file at all.
DENY_FCB Obsolete.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
161
Các tham biến của share modes mà thực thi chức năng khoá ñược coi là ngầm ñịnh,ñể ngắt
nó ñi,hãy sử dụng như sau:
[accounting]
share modes = no
5.5.2.2 locking
Chọn lựa locking có thể sử dụng ñể cam kết với Samba hoặc không hứa khoá một dãy
bytes bên trong Server thay mặt cho client.Samba thi hành khoá các dải byte bên trong
server với hệ thống khoá thông thường Unix,chính vì thế sẽ cấm các tiến trình Unix khác khi
muốn áp ñặt lên một dải byte ñã khoá.
Bạn có thể thực hiên nó như sau:
[accounting]
locking = yes
6. Người sử dụng,bảo mật,Domains
ðây là chương sẽ nói về cách thiết lập kết cấu người sử dụng với Samba server.Người ta
ñang tranh cãi về việc Adminitstrator có khó khăng khi quản lý xác nhận tài khoản-mật
khẩu và vấn ñề bảo mật ñã trở thành một vấn ñề sôi nổi và chung trên các mạnh lưới tin tức
Samba.Bạn hãy ñọc chương này ñể hiểu ñược nguyên lý làm việc của Samba ñối với các
tài khoản và cách gỡ lỗi cho chúng khi gặp vấn ñề.
6.1 Tài khoản và nhóm tài khoản
Trước khi bắt ñầu chúng tôi cần phải thông báo với bạn rằng nếu bạn kết nối ñến Samba
bằng Windows 98 hoặc NT 4.0 Workstation SP3,bạn cần phải cấu hình server của bạn bằng
mã hoá mật khẩu(encrypted passwords) trước khi bạn kết nối.Nếu không thì có những
clients từ chối kết nối ñến Samba server.ðiều này bởi vì,mỗi một trong windows clients gửi
mật khẩu mã hoá và Samba cần phải cấu hình sao cho có thể chứa ñựng và giải mã
chúng.Chúng tôi ñã chỉ cho bạn thấy cách cài ñặt Samba ñể làm nhiệm vụ này.Nếu có vấn
ñề gì hãy xem chương2 Cài ñặt Samba trên hệ thống Unix
Có lẽ hãy bắt ñầu với ñơn tài khoản.ðó thật là dễ ñể giúp clients tạo ra một tài khoản trên
Unix cho một server nhất ñịnh,và thông báo với Samba server về sự tồn tại của tài
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
162
khoản.Bạn có thể làm ñiều này muộn hơn bằng cách tạo ra một sơ ñồ disk share ñến
catalog home của tài khoản trong tập tin cấu hình Samba,và ñừn quên chọn lựa valid users.
[dave]
path = /home/dave
comment = Dave's home directory
writeable = yes
valid users = dave
Chọn lựa valid users có thể liệt kê các danh sách tài khoản có quyền truy cập lên
share.Trong ñó chỉ có duy nhất tài khoản dave có toàn quyền truy cập.Như trong phần
trước có nói,bất cứ một tài khoản nào khi truy cập trên disk share sẽ sử dụng tham biến
guest ok.Bởi vì chúng tôi không muốn cho phép guest truy cập lên share này,chọn lựa ñó ñã
vắng mặt ở ñây.Chúng tôi có thể cho phép ñồng thời cả hai quá trình xác nhận tài khoản và
cho phép guest truy cập trên một share nhất ñịnh nêu như chúng tôi muốn.Cái khác biệt ở
ñây chính là quyền truy cập trên mỗi tập tin.
Nhớ rằng,bạn có thể viết tắt catalog home của tài khoản bằng tham biến %H.Bổ sung
thêm,bạn có thể sử dụng tên các user Unix là %u và tên clients là %U.
[dave]
comment = %U home directory
writeable = yes
valid users = dave
path = %H
Cả hai ví dụ trên làm việc như nhau ñối với các tài khoản Unix và tài khoản Samba,cũng
như việc ngăn cấm quyền truy cập ñọc/ghi ñến các catalog trong ñường dẫn path.Còn ñối
với các clients khác,họ phải có mật khẩu bảo vệ Samba ñể có thể kết nối ñến share như
một tài khoản Unix thông thường và sử dụng các quyền truy cập ñến catalog và tập tin
trước khi có thể ñọc/ghi lên chúng.
Nếu một tài khoản thông thường truy cập lên catalog home của mình,sẽ sử dụng các quyền
truy cập giống như mà hệ thống gán cho nó khi tạo ra tài khoản.
Tuy nhiên,bạn có thể tạo ra một catalog share riêng với các nhóm có quyền truy cập ñặc
biệt.Ví dụ như:
[accounting]
comment = Accounting Department Directory
writeable = yes
valid users = @account
path = /home/samba/accounting
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
163
create mode = 0660
directory mode = 0770
ðiều ñầu tiên mà bạn cần phải biết ñó là sự khác biệt giữa @account và valid user ñối với
một tài khoản ñặc biệt.ðó là các nói ngắn gọn rằng,các tài khoản cho phép là thuộc nhóm
account trên Unix.Những tài khoản muốn truy cập lên ñấy phải ñược bổ sung vào nhóm
account trong tập tin nhóm tài khoản(/etc/group) ñể ñăng kí như một thành phần của
nhóm.Samba sẽ công nhận những tài khoản này như các tài khoản ñược có quyền sử dụng
trên share.
Bổ sung thêm,ban muốn tạo ra một catalog share riêng mà chỉ có các thành viên của
nhóm tài khoản mới có quyền sử dụng,ñó là ñiểm ra trên chọn lựa cấu hình path.Ở ñây,là
các lệnh Unix tạo ra catalog share cho một sở làm việc(cho rằng catalog /home/samba ñã
tồn tại)
# mkdir /home/samba/accounting
# chgrp account /home/samba/accounting
# chmod 770 /home/samba/accounting
6.1.1 Share [homes]
Nếu chúng ta có một vài người sử dụng muốn thiết lập share catalog home của cá
nhân,chúng ta hãy thử sử dụng hệ thống share [homes] như chương 5:Trình duyệt và nâng
cấp share disk.
ðối với các share [homes] chúng ta cần làm như sau:
[homes]
browsable = no
writable = yes
Section [homes] là một section ñặc biệt trong tập tin cấu hình Samba.Nếu người sùng cố
gắng muốn kết nối ñến một share mà không có mặt trong tập tin smb.conf,khi ấy Samba sẽ
tìm kiếm ñối với share [homes].Nếu như nó tồn tại,tên của share giả thiết như tên của tài
khoản và Samba sẽ so sánh với hệ thống cơ sở mật khẩu(/etc/passwd) trên Samba
server.Nếu nó nhìn thấy,Samba sẽ coi client như là một Unix user và cố gắng kết nối ñến
catalog home của nó.
ðể minh họa,giả sử rằng sofia cố gắng kết nối ñến share có tên là [sofia] trên Samba
server.ðấy không phải là share có tên trong tập tin cấu hình smb.conf,nhưng lại có tồn tại
một tài khoản có tên là sofia trên hệ thống cơ sở mật khẩu trong Samba server.Samba sẽ
làm các bước sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
164
1. Samba sẽ tạo ra một disk share có tên là [sofia] với ñường dẫn ñược chỉ ra trong section
[homes].Nếu không có chọn lựa ñường dẫn(path) trong [homes],Samba sẽ tự ñịnh dạng
ñường dẫn ñến nó.
2. Samba sẽ khởi tạo một chọn lựa share mới theo mặc ñịnh trong section [global] và ép
buộc bất cứ một chọn lựa trong section [homes] ngoại trừ browswable
3. Samba sẽ kết nối client sofia ñến share
Phải nhớ rằng:
1. Section [homes] có thể ñại diện cho bất cứ một tài khoản nào trên máy mà nó muốn.Ví dụ
như:Nó có khả năng tạo ra một share cho root,bin,sys,uupc(Bạn có thể thiết lập một chọn
lựa toàn cục invalid users ñể bảo vệ lấy nó).
2. Chọn lựa cấu hình browseable khác ñối với các share khác.Nó chỉ ra rằng,section
[homes] không ñược nhìn thấy trong local browse list,như thể là share [alice] không tồn
tại.Khi section [alice] ñược tạo ra,nó sẽ sử dụng giá trị của browseable từ section [global]
cho share mà không lấy giá trị từ [homes].
6.2 Quản lý truy cập ñến share
Thông thường nếu bạn muốn hạn chế số người sử dụng có thể truy cập ñến share vì lý do
bảo mật.ðiều này rất dễ với Samba từ khi nó có chứa một tiềm năng lớn các chọn lựa thực
tế ñể tạo ra các cấu hình bảo mật.ðấy là một vài cấu hình mà bạn muốn sử dụng trên
Samba của chính bạn.
Chú ý:Nếu bạn kết nối với windows 98 hoặc NT 4.0 với SP3(hoặc cao hơn),thì những
clients này sẽ gửi mật khẩu mã hoá ñến Samba server.Nếu Samba không ñược thiết lập
cho ñiều này,nó sẽ tiếp từ chối kết nối.ðây là chương sẽ hướng dẫn các cài ñặt Samba với
thích ứng mã hoá mật khẩu.
Chúng ta sẽ nhìn thấy chuyện gì sẽ sảy ra khi bạn chỉ ra các người sử dụng ñặc quyền.Tuy
nhiên bạn cũng cần cho phép chỉ ra một danh sách các tài khoản bị cấm truy cập-ñó là
những tài khoản không bao giờ ñược phép truy cập vào Samba hoặc trên các share của
nó.ðiều này có thể làm ñược với chọn lựa invalid users.chúng tôi gợi ý cho bạn,nên sử
dụng chọn lựa này,chẳng hạn một section [global] mặc ñịnh với section [homes] ñược ñảm
bảo rằng các tài khoản hệ thống(system) và root không thể giả mạo ñể truy cập ñược:
[global]
invalid users = root bin daemon adm sync shutdown \
halt mail news uucp operator gopher
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
165
auto services = dave peter bob
[homes]
browsable = no
writeable = yes
Chọn lựa invalid users cũng như chọn lựa valid users có thể sử dụng cho cả nhóm tài
khoản.Khi tên của tài khoản hay nhóm tài khoản có mặt trong danh sách của chọn lựa
invalid users,thì chúng sẽ bị cấm truy cập lên share.
Tuy nhiên bạn có thể chỉ ra những tài khoản mà có thể truy cập lên share như (root)sau:
[sales]
path = /home/sales
comment = Fiction Corp Sales Data
writeable = yes
valid users = tom dick harry
admin users = mike
ðấy là chọn lựa có thể sử dụng ñồng thời cho cả nhóm tài khoản và các tài khoản.Thêm vào
ñó,bạn có thể chỉ ra các nhóm tài khoản qua mạng NIS bằng dấu "@".Nếu như Samba
không tìm thấy nhóm ñó,Samba sẽ kiểm tra xem ñấy có phải là một nhóm tài khoản trên
Unix không.
Nếu bạn muốn thiết lập các quyền hạn read-only hoặc read-write ñối với các tài khoản có
quyền truy cập lên share,bạn có thể sử dụng chọn lựa read list và write list như sau:
[sales]
path = /home/sales
comment = Fiction Corp Sales Data
read only = yes
write list = tom dick
6.2.1 Cho phép sử dụng Guest
ðấy là một phương pháp rất ñơn giản,bạn có thể chỉ ra tài khoản nào có quyền truy cập như
guest.Bạn có thể làm ñược ñiều này với chọn lựa guest account,ñặc biệt là các tài khoản
Unix cần phải có khi kết nối với Samba server.Theo mặc ñịnh,giá trị này ñược ñịnh sẵn
trong quá trình biên dịch và có dạng nobody.Tuy nhiên,bạn cũng có thể xác ñịnh lại giá trị
của tài khoản thành dạng ftp nếu bạn muốn có quền truy cập ñến các dịch vụ quan trọng
khác.
Nếu bạn muốn ép tất cả các người sử dụng khác khi kết nối với quyền truy cập là guest,bạn
có thể làm ñiều này với chọn lựa guest only,cũng với chọn lựa guest ok,như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
166
[sales]
path = /home/sales
comment = Fiction Corp Sales Data
writeable = yes
guest ok = yes
guest account = ftp
guest only = yes
Bạn phải chắc chắn là ñã chỉ ra giá trị "yes" trong chọn lựa guest only và guest ok,Tuy nhiên
Samba sẽ không sử dụng ñối với guest account.
6.2.2 Các chọn lựa quản lý truy cập
bảng 6.1 - các chọn lựa có thể sử dụng
Option Parameters Function Default Scope
admin users string (list of
usernames)
Specifies a list of users who can
perform operations as root.
None Share
valid users string (list of
usernames)
Specifies a list of users that can
connect to a share.
None Share
invalid users string (list of
usernames)
Specifies a list of users that will be
denied access to a share.
None Share
read list string (list of
usernames)
Specifies a list of users that have
read-only access to a writable share.
None Share
write list string (list of
usernames)
Specifies a list of users that have
read-write access to a read-only
share.
None Share
max
connections
numerical Indicates the maximum number of
connections for a share at a given
time.
0 Share
guest only (only
guest)
boolean Specifies that this share allows only
guest access.
no Share
guest account string (name of
account)
Names the Unix account that will be
used for guest access.
nobody Share
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
167
6.2.2.1 admini users
ðấy là chọn lựa chỉ ra danh sách các tài khoản có quyền hạn như root.ðấy là chọn lựa có
thể cho phép hoặc cấm bất cứ một tài khoản có thể có quyền hạn trên.Bất cứ một tập tin
nào ñược tạo ra sẽ coi root như là chủ sở hữu và sẽ sử dụng nhóm tài khoản theo ngầm
ñịnh của tài khoản admin.Chọn lựa admin users ñược sử dụng ñể cho phép các tài khoản
PC như administrators.Chúng tôi khuyên bạn hãy tránh xa nó.
6.2.2.2 vaild users và invalid users
Hai chọn lựa này cho bạn liệt kê các tài khoản cũng như nhóm tài khoản mà ñược công
nhận hay cấm truy cập ñế các share ñặc biệt.Bạn có thể nhập vào danh sách không giới
hạn hoặc chỉ ra một nhóm NIS hoặc Unix,chú ý là tiền tố trước tên của nhóm là (@).
Một ñiều quan trọng nữa là khi bạn sử dụng chọn lựa invalid users thì các thành viên liệt kê
trong ñó sẽ bị cấm truy cập lên share.Ngay cả khi nó co mặt trong danh sách của chọn lựa
valid users.Nếu cả hai chọn lựa trên không ñược chỉ ra ,thì bất cứ tài khoản nào cũng có
quyền truy cập lên share.
6.2.2.3 read list và write list
Cũng như các chọn lựa valid users và invalid users,cặp chọn lựa này cũng cho phép biến
ñổi các tài khoản có quyền truy cập read-only thành writeable(khả năng ghi ) lên share và
ngược lại từ read-write thành read-only.Giá trị của chọn lựa là danh sách các tài
khoản.Chọn lựa read list sẽ lấn ép bất cứ một quyền hạn nào ñược tạo bởi Samba cũng
như các quyền hạn của chính tập tin trên Unix server - ðó là cấm tất cả các tài khoản ghi lên
share.
Chọn lựa write list lấn ép các quyền hạn trên Samba ,cho phép ghi lên share.Tuy nhiên
không thể cung cấp quyền hạn ghi ñối với các tài khoản mà vốn ñã không có ñược quyền
hạn ghi trên hệ thống Unix.Bạn có thể chỉ ra nhóm NIS hoặc nhóm Unix bằng tiền tố tên ñi
kèm như @user.
6.2.2.4 max connections
ðấy là chọn lựa chỉ ra số lượng client lớn nhất mà có thể kết nối ñến share tại bất cứ thời
ñiểm nào.Bất cứ kết nối nào thực hiện sau khi chỉ số ñã ñạt cực ñại sẽ bị loại ra.Theo mặc
ñịnh là 0,có nghĩa là không giới hạn con số kết nối có thể.Bạn có thể biến ñổi nó như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
168
[accounting]
max connections = 30
6.2.2.5 guest only
ðấy là chọn lựa (có thể gọi là guest only) sẽ lấn ép kết nối ñến share mà ñược thực hiện
như tài khoản ñược chỉ ra trong chọn lựa guest account.Trên share mà thực hiện ñiều này
phải ñược chỉ ra guest ok = yes.
Theo mặc ñịnh,giá trị ngầm ñịnh là no.
6.2.2.6 guset account
ðấy là chọn lựa chỉ ra tên của tài khoản có thể truy cập như guest ñến share trên
Samba.Theo mặc ñịnh,nó thường ñược thiết lập giá trị là nobody.Một vài tài khoản mặc
ñịnh của hệ thống có thể kết nối ñến share như guest.Chúng tôi khuyên bạn thử sử dụng tài
khoản ftp thay cho guest.
6.2.3 Các chọn lựa ñối với tên tài khoản
bảng 6.2 Bổ sung thêm hai chọn lựa mà Samba có thể sử dụng trong tên của tài khoản giữa
Windows và Unix.
Table 6.2: Username Options
Option Parameters Function Default Scope
username
map
string (fully-qualified
pathname)
Sets the name of the username
mapping file.
None Global
username
level
numerical Indicates the number of capital letters
to use when trying to match a
username.
0 Global
6.2.3.1 username map
Tên của client trên SMB network có thể lên ñến 255 kí tự,khi mà tên của tài khoản trên Unix
network thường không thể quá 8 kí tự.ðiều này cho phép người sử dụng có thể có một tên
tài khoản trên client hoặc trên Samba server.Bạn có thể lấy phần còn lại của ñoạn phát sinh
bằng sơ ñồ từ tên một client tự do cho ñến tên một tài khoản Unix,gồm 8 kí tự hoặc một vài
kí tự.Nó ñược ñặt trong một tập tin văn bản thông thường,bạn có thể chỉ ra ñường dẫn ñến
nó trong Samba nhờ chọn lựa username .Tất nhiên,bạn phải thu hẹn quyền truy cập ñến
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
169
nó.Hãy cho root là chủ sở hữu tập tin,còn cấm hết các tài khoản khác.Bạn có thể làm như
sau:
[global]
username map = /etc/samba/usermap.txt
Mỗi một dòng trong tập tin sơ ñồ tài khoản ñược cấu hình như sau:tên tài khoản Unix,cho
phép sử dụng tương ứng là (=),cho phép một hoặc nhiều dấu cách ñể phân biệt tên các
SMB clients.Samba sẽ chứa cả client và tài khoản trên server có cùng một password.Bạn
cũng có thể làm một sơ ñồ nhóm NT hoặc một hay nhiều nhóm Unix ñược chỉ ra bằng cách
sử dụng @.ðây là một ví dụ:
jarwin = JosephArwin
manderso = MarkAnderson
users = @account
Bạn cũng có thể sử dụng dấu (*) ñể thay thế cho tên của bất cứ tài khoản nào trong tập tin
sơ ñồ tài khoản.
nobody = *
Phần chú thích có thể ñược sử dụng bằng các dòng bắt ñầu là (#) và (;).
6.2.3.2 username level
SMB client (như là Windows) sẽ thường xuyên gửi tên các tài khoản ñược yêu cầu một
cách ñầy ñủ trong các chữ thường tại các kết nối SMB.Còn lại thì tên của các tài khoản là
không nhất như một tập hợp hoạt tính.Tuy nhiên,trên Unix server,những tên tài khoản như
là một tập hợp hoạt tính:Tài khoản ANDY sẽ khác với tài khoản andy.Theo mặc ñịnh Samba
sẽ xử lý vấn ñề ñó như sau:
1. Kiểm tra một tài khoản với tên khớp với tên ñược gửi bởi client
2. Thử nghiệm tên của tài khoản trên tất cả các chữ thường
3. Thử nghiệm tên tài khoản trong các chữ thường,với chữ ñầu tiên là chữ hoa.
Nếu bạn muốn Samba thử nghiệm với tập hợp nhiều chữ thường và chữ hoa,bạn có thể sử
dụng chọn lựa toàn cục username level. ðấy là chọn lựa sẽ lấy các số nguyên làm giá trị ñể
chỉ ra bao nhiêu kí tự trong tên tài khoản cần in bằng chữ hoa khi kết nối ñến share.Bạn có
thể làm như sau:
[global]
username level = 3
Ở ñây,Samba sẽ tiến hành thử hoán vị tên tài khoản mà có thể có ba kí tự hoa.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
170
6.3 Bảo mật khi chứng thực
ðây là phần hướng dẫn cách Samba chứng thực các tài khoản.Mỗi tài khoản khi cống gắng
kết nối ñến share mà không cho phép quyền truy cập như guest,bạn phải chỉ ra mật khẩu
mới có thể kết nối thành công.Samba làm gì với mật khẩu- chính vì thế chiến lược mà
Samba sẽ sử dụng ñể nhận dạng là phạm vi của các chọn lựa cấu hình bảo mật.Hiện thời
có bốn cấp ñộ bảo mật mà Samba có thể làm việc trong network:share,user,server,domain
Bảo mật cho lớp share
Mỗi một share trong workgroup có một hay nhiều hơn mật khẩu liên kết với nó.Bất cứ ai biết
mật khẩu ñều có thể truy cập lên nó
Bảo mật cho lớp User
Mỗi share trên workgroup ñược cấu hình sao cho có thể cho phép truy cập từ một tài khoản
nào ñó.Trong mỗi một kết nối,Samba sẽ yêu cầu kiểm tra tên tài khoản và mật khẩu ñể có
thể cho phép họ truy cập.
Bảo mật cho lớp Server
Gần giống như "Bảo mật cho lớp User",trừ khi Samba server sử dụng một SMB server riêng
lẻ ñối với các tài khoản cũng như mật khẩu trước khi tạo quyền truy cập lên share.
Bảo mật cho lớp Domain
Samba trở thành một thành viên của Windows domain và sử dụng domain PDC(domain's
primary domain controller) ñể tiến hành nhận dạng người sử dụng.Khi ñã ñược công
nhận,người sử dụng sẽ có ñược những quyền ñáng ñược có.Với các quyền ñó,PDC sẽ
không có quyền hỏi lại mật khẩu tài khoản tại bất cứ thời ñiểm nào khi người sử dụng ñịnh
truy cập sang các share khác trong domain.
bảng 6.3 Các chọn lựa ñối với bảo mật
Table 6.3: Security Option
Option Parameters Function Default Scope
security domain, server,
share, or user
Indicates the type of security
that the Samba server will
use.
user (Samba 2.0) or
share (Samba 1.9)
Global
6.3.1 Bảo mật cho lớp share
Mỗi một share có một hay nhiều hơn một mật khẩu ñược ñịnh sẵn cho nó.ðấy là sự khác
biệt với các chế ñộ bảo mật khác mà trong ñó không có hạn chế về số người có thể truy cập
lên share như là ñối với những người biết mật khẩu.Share thông thường có nhiều mật
khẩu.Ví dụ:một mật khẩu có thể tạo quyền truy cập read-only,trong khi cái khác có thể tạo ra
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
171
quyền read-write.Bảo mật chính là vấn ñề không cho phép người sử dụng dò tìm mật khẩu
trên các share mà không ñược cho phép truy cập.
OS/2 và Windows 95/98 ñều có thể làm việc ñối với cấp ñộ bảo mật trên share.Bạn có thể
thiết lập các lớp bảo mật khác nhau với Windows 95/98 bằng chọn mục "share-level
security" trên bảng Access Control trong Network Control Panel dialog.Sau ñó khi ñánh dấu
vào share-level Access Control,và nhấn OK:như hình 6.1
Tiếp theo,hãy kích lên một tài nguyên như là ñĩa cứng hay là CD-ROM và chọn biểu tượng
Properties trong menu.Nó sẽ hiện ra cửa sổ các tính chất của tài nguyên.Hãy chọn mục
Sharing trên cửa sổ và thực hiện trên share trong mục "share as..".Từ ñấy bạn có thể thiết
lập các tác ñộng có thể có trên tài nguyên ñược share ñối với các tài khoản ñặc biệt(Tài
nguyên sẽ ñược chỉ ra các quyền hạn như là read-only hoặc read-write,...hoặc chỉ ñơn
thuần là yêu cầu ñòi hỏi mật khẩu khi kết nối).
Bạn có thể nghĩ rằng mức ñộ bảo mật này không hoàn toàn tốt cho Samba-bạn hoàn toàn
ñúng.Nếu bạn thiết lập chọn lựa security = share trong tập tin cấu hình Samba,thì khi ấy
Samba sẽ vẫn sử dụng lại các tổ hợp tài khoản/mật khẩu trong tập tin passwd hệ thống ñể
có thể chứng thực quyền truy cập.Samba sẽ làm các bước sau khi clients yêu cầu kết nối
sử dụng mức ñộ bảo mật trên share:
1. Khi có yêu cầu kết nối,Samba sẽ tiếp nhận mật khẩu và tên tài khoản của client
2. Nếu share có thiết lập guest only,người sử dụng có thể ñược gán quyền truy cập trên
share như tài khoản ñược chỉ ra trong tham biến guest account.Không cần thực hiện kiểm
tra mật khẩu.
3. ðối với các share khác,Samba sẽ bổ sung tên tài khoản vào danh sách các tài khoản
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
172
ñược phép truy cập trên share.Sau ñó nó sẽ thử gán tên tài khoản cùng với mật khẩu ñi
kèm.Nếu thành công,Samba sẽ cung cấp quyền hạn truy cập cho tài khoản các quyền hạn
vốn có của nó.Tài khoản sẽ không cần bị xác nhận lại một lần nữa trừ khi chọn lựa
revalidate = yes ñược thiết lập bên trong share.
4. Nếu như quá trình xác nhận không thành công,Samba sẽ thực hiện cập nhật lại giá trị
mật khẩu một lần nữa trong danh sách các kết nối ñã thành công trước ñó cũng như bất cứ
tập tin ñặc biệt nào về share trong tập tin cấu hình.Nếu mật khẩu không ñúng với tên tài
khoản,thì tài khoản sẽ không ñược cung cấp quyền truy cập ñến share dưới cái tên này.
5. Tuy nhiên,nếu share có ñược thiết lập guest ok hoặc public,thì người sử dụng theo mặc
ñịnh sẽ có thể truy cập như tài khoản ñược chỉ ra trong chọn lựa guest account.
Bạn có thể chỉ ra trong tập tin cấu hình những tài khoản mà ñược phép trên mức ñộ an toàn
là share như sau:
[global]
security = share
[accounting1]
path = /home/samba/accounting1
guest ok = no
writable = yes
username = davecb, pkelly, andyo
Ở ñây,khi người sử dụng thử kết nối với share,Samba sẽ thẩm ñịnh lại mật khẩu ñã gửi cho
mỗi tài khoản có trong danh sách,và bổ sung vào thêm mật khẩu của davecb, pkelly, và
andyo.Nếu như mật khẩu ăn khớp,kết nối sẽ ñược tiến hành và người sử dụng sẽ ñược cho
phép truy cập.Trái lại,kết nối sẽ bị ngắt.
6.3.1.1 Các chọn lựa của "Bảo mật cho lớp share"
Bảng 6.4
Table 6.4: Share-Level Access Options
Option Parameters Function Default Scope
only user boolean Indicates whether usernames
specified by username will be the only
ones allowed.
no Share
username (user
or users)
string (list of
usernames)
Specifies a list of users against which
a client's password will be tested.
None Share
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
173
6.3.1.2 only user
ðấy là chọn lựa logic,mà Samba sẽ chỉ cho phép các tài khoản ñược chỉ ra trong chọn lựa
username ñược phép truy cập.Theo mặc ñịnh,giá trị là no.Bạn có thể thiết lập lại như sau:
[global]
security = share
[data]
username = andy, peter, valerie
only user = yes
6.3.1.3 username
ðấy là chọn lựa hiển thị danh sách các tài khoản mà Samba sẽ thử nghiệm khi có kết nối ñể
có thể cho phép truy cập.
[global]
security = share
[data]
username = andy, peter, terry
Chúng tôi khuyến khích bạn sử dụng lại chọn lựa này trừ khi bạn ñang thi hành trên Samba
mức ñộ bảo mật ñối với share.
6.3.2 Bảo mật cho lớp User
ðây là chế ñộ bảo mật ñược ưa thích hơn trong Samba.Với chế ñộ này,mỗi share ñã ñược
gán ñịnh những tài khoản có thể truy cập.Khi người sử dụng yêu cầu kết nối ñến
share,Samba sẽ xác nhận tài khoản bằng các giá trị tên tài khoản/mật khẩu lấy trong tập tin
cấu hình và mật khẩu trong cơ sở dữ liệu mật khẩu trên Samba server.Trong ñó nó hay sử
dụng chọn lựa valid users ñi kèm như sau:
[global]
security = user
[accounting1]
writable = yes
valid users = bob, joe, sandy
Mỗi tài khoản sẽ ñược cho phép kết nối ñến share nếu như mật khẩu chi ra khớp với mật
khẩu lưu trữ trong cơ sở dữ liệu về mật khẩu trên server.Nếu như xác nhận thành
công,người sử dụng sẽ không cần phải nhập lại mật khẩu lần nữa ñể truy cập trên share trừ
khi có kèm thêm chọn lựa sau: revalidate = yes
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
174
Mật khẩu có thể ñược gửi ñến Samba server ở dạng mã hoá hoặc không mã hoá.Nếu bạn
có cả hai kiểu trên trong mạng,bạn nên chắc chắn là mật khẩu do mỗi người sử dụng phải
ñược lưu lại cả hai trong hệ thống thông truyển mã hoá mật khẩu của Samba.Tuy
nhiên,chúng tôi khuyến khích bạn nên xoá bỏ hệ thống mã hoá mật khẩu,hãy ñể chúng ở
chế ñộ không mã hoá.
6.3.3 Bảo mật cho lớp Server
Bảo mật cho lớp Server cũng như Bảo mật cho lớp User.Tuy nhiên,với Bảo mật cho lớp
Server,Samba uỷ nhiệm quyền xác nhận mật khẩu cho một SMB server mật khẩu khác,ñặc
trưng một Samba server khác hoặc Windows NT server ñóng vai trò như PDC trên
network.Chú ý ,Samba vẫn duy trì danh sách về các share và cấu hình của nó trong tập tin
cấu hình smb.conf.
Khi clients cố gắng kết nối ñến một share riêng,Samba sẽ hợp lệ hoá tài khoản như là ñã
ñược xác nhận ñến share.Samba sẽ cố gắng hợp lệ hoá mật khẩu liên hệ của SMB mật
khẩu server qua một protocol và truyền ñạt tên tài khoản cũng như mật khẩu ñến SMB mật
khẩu server.Nếu mật khẩu ñược chấp nhận,session sẽ ñược thực hiện với clients như hình
6.2:
hình 6.2
Bạn có thể thiết lập cấu hình Samba ñể sử dụng riêng lẻ mật khẩu server dưới chế ñộ bảo
mật server bằng cách sử dụng chọn lựa toàn cục password server như sau:
[global]
security = server
password server = PHOENIX120 HYDRA134
Chú ý rằng,bạn có thể chỉ ra nhiều hơn một máy với vai trò như là password server;Samba
sẽ tự ñiều chỉnh danh sách tên servers.Những server ñược chỉ ra trong chọn lựa password
server ñược lấy như là NetBios Name,chứ không phải là tên DNS hoặc là IP-address tương
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
175
ứng.Nếu như server không tiếp nhận mật khẩu,thì kết nối sẽ tự ñộng huỷ bỏ-Samba sẽ
không cố gắng thử với các servers khác.
6.3.4 Bảo mật cho lớp Domain
Cũng như Bảo mật cho lớp Server,tuy nhiên với Bảo mật cho lớp Domain,Samba server sẽ
ñóng vai trò như một thành viên của windows domain.Như ñã nói ở chương 1,mỗi domain
có một domain controller,mà thường là Windows NT server sẽ ñề nghị việc xác ñịnh mật
khẩu .Những domain controller sẽ giữ các track của tài khoản/mật khẩu trong các modules
bảo mật ñể xác nhận mật khẩu(SAM),và việc xác nhận mỗi tài khoản ñược thực hiện trước
khi tài khoản ñược ñăng nhập hoặc truy cập trên các share khác.
Với Bảo mật cho lớp Domain,chúng ta có chọn lựa sử dụng nguyên lý thuần tuý của NT.ðó
là như sau:
1. Nó sẵn sàng ñồng hoá với NT:Có là một vài phân chia"kludges-không phù hợp" trong
chọn lựa của smb.conf với domains hơn là với ñặc tính của Windows.Nó cho phép sử
dụng rộng rãi thiết bị ñiều khiển NT như là "Thanh quản lý tài khoản" cho Domains và cho
phép PC làm việc một cách tối ưu khi sử lý trên Samba server như là trên các máy NT.
2. Với sự sẵn sàng hòa hợp các protocol ñầu vào và dọn dẹp mã code,cho phép ñội lập
trình Samba phát triển và mở rộng ñến bằng NT.NT Service pack 4 ñã sửa chữa một vài
vấn ñề trên các protocol,và Samba sẵn sàng ñồng nhất ñể làm nhẹ hơn và khă năng thích
nghi với các sự thay ñổi.
3.Không giống như protocol ñược sử dụng bởi security = server ,Samba có thể ñóng vai trò
như là một RPC(Remote Procedure Call) chỉ khi nào cần xác nhận các thông tin.Nó không
thể giữ kết nối một cách thường xuyên cho ñiều ñó.
4. Cuối cùng,Domain NT xác nhận lại hệ thống một cách ñầy ñủ về các ñặc tính tài
khoản,không thành công hoặc hỏng.Những ñặc tính này nhiều hơn so với trong các phiên
bản Unix,nhóm NT...Nó bao gồm:
Tên tài khoản
Tên ñầy ñủ
Bổ sung thông tin
ðồng nhất bảo mật
Thành viên của nhóm NT
Thời gian ñăng nhập cũng như cả khi ñã thoát ra khỏi hệ thống
Trạm làm việc cho phép sử dụng
Ngày tháng tài khoản sẽ ngừng hoạt ñộng
Catalog home
Script ñăng nhập
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
176
Cá nhân
Kiểu tài khoản
6.3.4.1 Bổ sung Samba server tới Windows NT Domain
Nếu bạn có một NT domain,bạn có thể rễ ràng bổ sung một Samba server vào nó.ðầu
tiên,bạn cần phải ngưng daemons Samba lại.Sau ñó bổ sung Samba server vào NT
Domain trên PDC sử dụng công cụ "Windows NT Server Manager for Domains".Khi nó hỏi
về kiểu của máy tính,hãy chọn "Windows NT Workstation hoặc Server" và lấy tên NetBios
của Samba server.ðiều này sẽ tạo ra một tài khoản máy trên NT Server.
Tiếp theo,sử dụng smbpasswd ñể tạo ra một ñịnh dạng mật khẩu cho máy kiểu
Microsoft,mà ñược giải thích ở section tới.Ví dụ như,nếu domain của chúng ta là SIMPLE
và Windows NT PDC là beowulf,chúng ta cần sử dụng như sau:
smbpasswd -j SIMPLE -r beowulf
Cuối cùng,thêm vào trong chọn lựa dưới section [global] trong smb.conf và khởi ñộng lại
daemons Samba:
[global]
security = domain
domain logins = yes
workgroup = SIMPLE
password server = beowulf
Samba nên ñược cấu hình bảo mật cho lớp server.Chọn lựa domain logins sẽ ñược giải
thích rõ hơn ở chương sau.
6.4 Mật khẩu
Mật khẩu ñược gửi từ những clients riêng biệt có thể bị mã hoá hoặc không.Mật khẩu ñược
mã hoá,tất nhiên sẽ an toàn hơn.Còn mật khẩu không ñược mã hoá có thể bị ñọc trộm một
cách dễ dàng với các chương trình theo dõi và lọc packages,thậm chí ngay cả chương trình
tcpdump cho Samba cũng có thể sử dụng ñược.Bất cứ mật khẩu mã hoá nào cũng phụ
thuộc vào hệ thống mà client sử dụng ñể kết nối ñến Samba server.Bảng 6.5 liệt kê các hệ
thống Windows có thể mã hoá ñược mật khẩu trước khi gửi ñi ñến primary domain
controller ñể kiểm tra.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
177
Table 6.5: Windows Operating Systems with Encrypted Passwords
Operating System Encrypted or Non-encrypted
Windows 95 Non-encrypted
Windows 95 with SMB Update Encrypted
Windows 98 Encrypted
Windows NT 3. x Non-encrypted
Windows NT 4.0 before SP 3 Non-encrypted
Windows NT 4.0 after SP 3 Encrypted
Có hai cách mã hoá ñược sử dụng là:một là cho Windows 95/98 clients sử dụng thiết bị
mã hoá Microsoft Lan và phân tán nó cho Windows NT clients và server.Windows 95/98 sử
dụng hệ thống mã hoá ñã lâu ñời thừa hưởng từ Lan Manager network software,trong khi
ñó Windows NTclient và server sử dụng hệ thống mã hoá hoàn toàn mới.
Nếu mật khẩu mã hoá ñược cho phép sử dụng,Samba sẽ lưu trữ lại trong tập tin
smbpasswd.Theo mặc ñịnh,tập tin này ñược ñặt vào trong một vị trí bí mật trên distribution
Samba(/usr/local/samba/private).Cũng tại thời ñiểm ñấy,clients sẽ lưu trữ một phiên bản mã
hoá của mật khẩu trên hệ thống của nó.Dạng van bản có thể ñọc ñược của mật khẩu mã
hóa không bao giờ ñược lưu trữ trên hệ thống.Mỗi hệ thống mã hoá mật khẩu tự ñộng sử
dụng một thuật toán của mình khi làm việc với mật khẩu hoặc thay ñổi chúng.
Khi client yêu cầu kết nối ñến SMB server mà cho phép làm việc với mật khẩu mã hoá(Như
Samba hoặc Windows NT),cả hai máy tính cần phải thoả thuận với nhau như dưới ñây:
1. Client cố gắng liên hệ với một protocol trên Server
2. Server trả lời protocol và chứng tỏ rằng có khả năng làm việc với mã hoã mật khẩu.Cũng
tại thời ñiểm ñó,nó gửi ngược lại chuỗi một ñòi hỏi 8-byte mà ñược tạo ra bất kì.
3. Client sử dụng chuỗi ñó như là chìa khoá ñể mã hoá cũng với các thuật toán ñịnh sẵn bởi
các protocol kết nối.Sau ñó nó sẽ gửi lại cho server
4. Server cũng làm những thứ như vậy với mật khẩu ñã mã hóa ñã ñược lưu trữ trên hệ
thống giữ liệu của nó.Nếu như kết quả trùng nhau,mật khẩu ñồng nhất và tài khoản sẽ ñược
xác nhận.
Chú ý rằng,mật khẩu thật sự không có liên hệ gì ñến quá trình xác nhận người sử
dụng,tuy nhiên bạn phải rất cẩn thận rằng,những mật khẩu mã hoá ñược ñặt trong tập tin
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
178
smbpasswd và ñược bảo vệ trước những người sử dụng không ñươc cho phép truy
cập.Nếu chúng ñược trung hoà,những người sử dụng trái phép sẽ có thể bẻ vỡ hệ thống
bằng các bước ngược lại của các thuật toán.Những mật khẩu mã hoá rất hoạt tính như là
dạng mật khẩu có thể ñọc ñược thông thường,nó như là dạng văn bản thống thường tướng
ứng trong thế giới mật mã học.
Bạn có thể cấu hình Samba cho phép sử dụng mật khẩu mã hoá bằng cách bổ sung dong
dưới ñây vào tập tin cấu hình smb.conf:
[global]
security = user
encrypt passwords = yes
smb passwd file = /usr/local/samba/private/smbpasswd
Tuy nhiên,Samba không cho phép hết các người sử dụng với smbpasswd ñã chỉ ra trên.
6.4.1 Cấm mã hoá mật khẩu trên client
Nếu như hệ thống ñịnh dạng của Unix ñã ñược sử dụng cho một nhóm,bao gồm sử dụng
cho telnet và rlogin,chúng là hiện thân của những sự rủi ro và nguy hiểm.Mật khẩu chưa mã
hoá gửi qua internet và có thể bị cướp ñị qua các packages TCP bởi các chường trình phân
tích.Tuy nhiên,nếu bạn tin rằng trong mạng của bạn là an toàn,bạn có thể sử dụng dạng
truyền thống Unix /etc/passwd ñể nhận dạng cho các tài khoản,bạn có thể làm ñược ñiều
này,những bạn phải cấm sử dụng mã hoá mật khẩu trên các Windows clients mà sử dụng
theo mặc ñịnh.
Nếu như mật khẩu không ñược mã hoá,bạn có thể chỉ ra trên tập tin cấu hình Samba như
sau:
[global]
security = user
encrypt passwords = no
6.4.2 Tập tin smbpasswd
Samba lưu trữ mật khẩu mã hoá trong tập tin gọi là smbpasswd,mà theo mặc ñịnh nằm
trong catalog /usr/local/samba/private .Tập tin này cần ñược bảo vệ như là tập tin
passwd.Nó nên ñặt vào catalog mà chỉ có root mới có quyền truy cập read/write.Còn các tài
khoản khác không thể ñọc ñược nó.Thêm vào ñó,tập tin cần ñóng hết các quyền hạn ñối với
các tài khoản có thể ñăng nhập như root.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
179
Trước khi bạn sử dụng mật khẩu mã hoá,bạn sẽ cần phải tạo một cửa vào cho Unix user
trong tập tin smbpasswd.Cấu trúc của nó có một vài ñiều giống như tập tin passwd trong
Unix.
Hình 6.3
Dưới ñây là các khu vực ñặt trưng :
Tên tài khoản(Username)
ðây là tên sử dụng của tài khoản.Nó lấy từ tập tin mật khẩu của hệ thống.
UID
ðấy là ID của tài khoản.Giống như tên của tài khoản,Nó lấy từ tập tin mật khẩu của hệ
thống và phải khớp với tài khoản mà sử dụng ở ñây
LAN Manager Password Hash
ðấy là chuỗi 32-bit tượng trưng hệ tám,mà mật khẩu trong Windows 95/98 client hay sử
dụng.Nó ñược suy ra từ cách mã hoá chuỗi KGS!@#$% với thuật toán 56-bit DES ñược
sử dụng cho mật khẩu của tài khoản(chứa từ 14 bytes và có các chữ hoa).Nếu như hiện
thời tài khoản không có mật khẩu,khi ñó 11 kí tự ñầu tiên của hash sẽ nối tiếp phù hợp với
NO PASSWD cho phép bởi X kí tự còn lại.Bất cứ một người nào cũng có thể truy cập ñến
share mà không cần mật khẩu.Nếu như mật khẩu bị cấm,nó sẽ phù hợp với 32 X kí
tự.Samba sẽ không cung cấp quyền truy cập ñến các tài khoản trừ khi mật khẩu là rỗng như
ñã ñịnh ra.
NT password Hash
ðấy là chuỗi 32-bit hệ số 8 mà Windows NT client sẽ sử dụng.Nó nhận ñược bằng cách làm
rối loạn mật khẩu tài khoản với MD4 hash.Mật khẩu không cho phép biến ñổi các chữ hoa
ñầu tiên.
Account Flags
ðấy là khu vực phù hợp với 11 kí tự giữa hai dấu ([]).Bất cứ kí tự sau ñấy có thể hiển thị,các
kí tự còn lại sẽ như là dấu cách(" ").
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
180
U
ðấy là tài khoản như một tài khoản tiêu chuẩn
D
Tài khoản ñã bị cấm và Samba cần không cho phép nó ñăng nhập
N
Tài khoản này không có mật khẩu bảo vệ
W
ðấy là trạm làm việc có thể sử dụng Samba như là PDC khi cho phép Windows NT sử dụng
làm Domain
Last Change Time
ðấy là code phù hợp với những kí tự LCT-dưới dạng chuỗi hệ số 8
6.4.2.1 Bổ sung ñầu vào trong tập tin smbpasswd
ðây là một vài ñiều bạn có thể bổ sung ñầu vào trong tập tin smbpasswd:
1. Bạn cần phải sử dụng chương trình smbpasswd với tham biến ñi kèm "-a" ñể tự ñộng bổ
sung tài khoản hiện thời như một tài khoản tiêu chuẩn trên Unix.ðấy là chương trình nằm
trong catalog /usr/local/samba/bin
2. Bạn có thể sử dụng addtosmbpass ñể thực thi bên trong catalog /usr/local/samba/bin.Nó
thực tế là một script awk phân tích cú pháp mật khẩu hệ thống,và lấy ra tên tài khoản cũng
như UID của mỗi ñầu vào mà bạn muốn bổ sung và tập tin SMB mật khẩu.
4. Bạn có thể tạo ra các ñầu vào bằng tay trong tập tin smbpasswd.ðầu vào ñược ñặt vào
trên một dòng riêng biệt.Mỗi khu vực ñược phân cách như sau:
dave:500:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX: \
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:[U ]:LCT-00000000:
ðiều này phù hợp với tên tài khoản cũng như UID ñược chỉ ra trong tập tin mật khẩu hệ
thống.Sau ñó,bạn có thể sử dụng chương trình smbpasswd ñể thay ñổi lại mật khẩu của tài
khoản.
6.4.2.2 Thay ñổi mật khẩu mã hoá
Nếu bạn muốn thay ñổi mật khẩu ñã mã hoá trong tập tin smbpasswd,bạn có thể sử dụng
chương trình smbpasswd.
Chương trình smbpasswd cũng giống như chương trình passwd ñược sử dụng ñể thay ñổi
mật khẩu của các tài khoản Unix.Chương trình cũng sẽ hỏi bạn nhập vào mật khẩu cũ và
yêu cầu nhập vào mật khẩu mới.Mật khẩu không nhìn thấy ñược trên màn hình.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
181
# smbpasswd dave
Old SMB password:
New SMB password:
Retype new SMB password:
Password changed for user dave
Bạn có thể nhìn thấy tập tin smbpasswd sau khi lệnh hoàn tất và kiểm tra thấy rằng của hai
Lan Manager và NT hash của mật khẩu cũng ñược lưu trữ bên trong các nhân của
chúng.Một vài người có trong tay mật khẩu ñã mã hoá và họ cũng có thể kết nối ñến share
nhờ vào sử dụng mật khẩu mã hoá.
6.4.3 ðồng nhất Mật khẩu
Samba cung cấp cho bạn một khả năng nhất ñịnh ñể giữ mật khẩu ñồng nhất của
mình.Samba có cặp chọn lựa cấu hình có thể sử dụng ñể tự ñộng cập nhật những thay ñổi
thông thường của mật khẩu ñối với các tài khoản Unix.Bạn có thể kích hoạt chức năng ñó
bằng cách sử dụng chọn lựa toàn cục unix password sync trong section [global]:
[global]
encrypt passwords = yes
smb passwd file = /usr/local/samba/private/smbpasswd
unix password sync = yes
Khi mà chọn lựa này ñược cho phép,Samba sẽ cố gắng thay ñổi lại mật khẩu thường lệ của
tài khoản sau khi ñược biến ñổi.Tuy nhiên cả hai chọn lựa này cần phải ñược thiết lập một
cách chính xác ñể có thể hoạt ñộng bình thường.
ðấy là chọn lựa giống như lệnh Unix dùng ñể thay ñổi mật khẩu của tài khoản trên hệ
thống.Theo mặc ñịnh,nó là /bin/passwd %u.Với một vài hệ thống Unix,ñiều ñó là ñủ và bạn
không cần phải thay ñổi gì cả.Chẳng hạn như,Red Hat Linux,sử dụng /usr/bin/passwd ñể
thay thế.Bổ sung thêm,bạn có thể thay ñổi ñiều ñó bằng các chương trình khác hoặc
script.Ví dụ như,hãy giả sử bạn muốn sử dụng script ñể gọi ra khả năng quyền thay ñổi mật
khẩu ñể thay ñổi mật khẩu tài khoản như dưới ñây:
[global]
encrypt passwords = yes
smb passwd file = /usr/local/samba/private/smbpasswd
unix password sync = yes
passwd program = changepass %u
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
182
Chú ý là chương trình chỉ sẽ có thể gọi ra như tài khoản root khi mà chọn lựa unix
password sync ñược thiết lập giá trị "yes".ðó là vì Samba không nhất thiết có mật khẩu cũ
của tài khoản.
Một chọn lựa chắc chắn hơn ñể cấu hình là passwd chat.Chọn lựa passwd chat làm việc
giống như Unix chat script.Ví dụ như sau:
passwd chat = *old*password* %o\n *new*password* %n\n *new*password* %n\n
*changed*
Nhóm ñầu ñại diện cho sự trả lời các yêu cầu từ chương trình password-changing.Chú ý nó
cần có chứa dấu thay thế ("*"),mà giúp ñỡ mở rộng chương trình chat có thể thực hiện một
cách ña dạng.Ở ñây, *old*password* chỉ ra rằng,Samba sẽ chờ bất cứ dòng nào từ chương
trình ñược chứa sau từ old như là password.
Nhóm thứ hai,Samba sẽ gửi ngược lại cơ sở dữ liệu trong nhóm ñầu tiên tương ứng,bạn có
thể nhìn thấy %o\n.Sự ñáp lời thông thường trong hai biểu tượng: giá trị %o tương ứng với
mật khẩu cũ và \n là dòng kí tự mới.Nó sẽ ấn tượng hơn nếu bạn sử dụng kiểu cho mật
khẩu cũ trong ñầu vào dạng chuẩn của chương trình thay ñổi mật khẩu và nhấn Enter.
Tiếp theo là các nhóm khác mà chương trình sẽ gửi ngược lại.Bạn có thể tìm thấy các câu
trả lời khác ñược gửi từ chương trình mật khẩu với các kí tự ñược liệt kê trong bảng 6.6
như sau:
Table 6.6: Password Chat Response Characters
Character Definition
* Zero or more occurrences of any character.
" " Allows you to include matching strings that contain spaces. Asterisks are still
considered wildcards even inside of quotes, and you can represent a null
response with empty quotes.
ðể có hiệu qủa hơn,bạn có thể sử dụng bảng 6.7 như sau:
Table 6.7: Password Chat Send Characters
Character Definition
%o The user's old password
%n The user's new password
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
183
Table 6.7: Password Chat Send Characters
Character Definition
\n The linefeed character
\r The carriage-return character
\t The tab character
\s A space
Ví dụ như,bạn có thể thay ñổi mật khẩu chat của bạn bằng cách ghi vào như sau.
passwd chat = *new password* %n\n *new password* %n\n *success*
Nếu như có gì ñó không ñúng,bạn có thể sử dụng chọn lựa passwd chat debug ñể ghi chép
lại mọi thứ sảy ra trong password chat.ðấy là chọn lựa thuộc kiểu logic:
[global]
encrypted passwords = yes
smb passwd file = /usr/local/samba/private/smbpasswd
unix password sync = yes
passwd chat debug = yes
log level = 100
6.4.4 Các chọn lựa cấu hình mật khẩu
Bảng 6.8
Table 6.8: Password Configuration Options
Option Parameters Function Default Scop
e
encrypt
password
s
boolean Turns on
encrypted
passwords.
no Global
unix
password
sync
boolean If yes, Samba
updates the
standard Unix
password
database when a
no Global
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
184
Table 6.8: Password Configuration Options
Option Parameters Function Default Scop
e
user changes his
or her encrypted
password.
passwd
chat
string (chat
commands)
Sets a sequence
of commands
that will be sent
to the password
program.
See earlier section on this option Global
passwd
chat
debug
boolean Sends debug
logs of the
password-chang
e process to the
log files with a
level of 100.
no Global
passwd
program
string (Unix
command)
Sets the program
to be used to
change
passwords.
/bin/passwd %u Global
password
level
numeric Sets the number
of capital letter
permutations to
attempt when
matching a
client's password.
None Global
update
encrypted
boolean If yes, Samba
updates the
encrypted
password file
when a client
connects to a
no Global
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
185
Table 6.8: Password Configuration Options
Option Parameters Function Default Scop
e
share with a
plaintext
password.
null
password
s
boolean If yes, Samba
allows access for
users with null
passwords.
no Global
smb
passwd
file
string
(fully-qualifie
d pathname)
Specifies the
name of the
encrypted
password file.
/usr/local/samba/private/smbpassw
d
Global
hosts
equiv
string
(fully-qualifie
d pathname)
Specifies the
name of a file that
contains hosts
and users that
can connect
without using a
password.
None Global
use rhosts string
(fully-qualifie
d pathname)
Specifies the
name of an .
rhosts file that
allows users to
connect without
using a
password.
None Global
6.4.4.1 unix password sync
Chọn lựa toàn cục unix password sync cho phép Samba cập nhật thông tin trên tập tin mật
khẩu Unix khi người sử dụng thay ñổi mật khẩu của cá nhân mình.Mật khẩu ñã mã hoá
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
186
ñược lưu lại trong Samba server ở tập tin smbpasswd mà nằm trong
/usr/local/samba/private như theo mặc ñịnh.Bạn có thể làm như sau:
[global]
unix password sync = yes
Nếu như chọn lựa ñược thực hiện,Samba sẽ thay ñổi các mật khẩu mã hoá và cố gắng thay
ñổi mật khẩu Unix bằng cách thay thế mật khẩu mới mà ñã chỉ ra bằng chọn lựa passwd
program cho tên tài khoản.Chú ý,Samba không nhất thiết có quyền truy cập ñến mật khẩu
chưa mã hoá cho mục ñích này,nhưng chương trình thay ñổi mật khẩu nhất thiết phải dưới
tài khoản root.
6.4.4.2 encrypt passwords
Chọn lựa toàn cục encrypt passwords chuyển ñổi Samba từ dạng mật khẩu nhìn thấy sang
dạng mã hóa ñể nhận dạng.Mã hoá mật khẩu sẽ áp dụng cho clients nếu chọn lựa ñược lấy
giá trị yes:
encrypt passwords = yes
Theo mặc ñịnh,Windows NT 4.0 với SP3 hoặc cao hơn và Windows 98 sẽ truyền mật khẩu
mã hoá trên network.Nếu bạn thực hiện mã hoá mật khẩu,bạn phải có hiệu lực trong
smbpasswd và cộng với tên tài khoản mà sẽ ñược công nhận với mật khẩu mã hóa.Nếu
như nó không có mặt theo mặc ñịnh( /usr/local/samba/private/smbpasswd),bạn có thể lấy
tên và sử dụng trong chọn lựa smb passwd file.
Nếu bạn muốn,bạn có thể sử dụng chọn lựa update encrypted ñể làm cho Samba cập nhật
ñến tập tin smbpasswd với các mật khẩu mã hóa tại mỗi thời ñiểm kết nối và cả các mật
khẩu không mã hóa.
6.4.4.3 passwd program
Chọn lựa passwd program dùng ñể chỉ ra chương trình trên Unix Samba server có thể sử
dụng ñể cập nhật thông tin trên tập tin mật khẩu hệ thống khi mà mật khẩu mã hóa ñược
cập nhật.ðấy là chọn lựa theo mặc ñịnh là passwd ,thường nằm trong catalog /bin.Còn
tham biến %u ñược sử dụng ñể ñòi hỏi tên người sử dụng khi lệnh ñược thực thi.
6.4.4.4 passwd chat
ðấy là chọn lựa chỉ ra một vài dòng gửi/trả lời của Unix chat script,mà sử dụng phụ trợ với
chương trình thay ñổi mật khẩu trên Samba server.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
187
6.4.4.5 passwd chat debug
Nếu lấy giá trị là "yes",khi ấy chọn lựa toàn cục passwd chat debug sẽ ghi lại mọi thứ gửi ñi
hoặc nhận ñược bởi Samba trong một passwd chat.Tất cả các I/O ñược thừa nhận bởi
Samba qua password chat là gửi ñến Samba logs với cấp ñộ gỡ lỗi là 100.Nếu bạn muốn
chỉ ra cấp ñộ ghi chép thông tin là 100.
6.4.4.6 password level
Với SMB,mật khẩu không mã hóa ñược gửi bằng chữ hoa,giống như tên tài khoản ñã nói
trước ñây.Có nhiều tài khoản Unix chọn mật khẩu với cả chữ hoa và chữ thường.Theo mặc
ñịnh,Samba chỉ cố gắng thực hiện trên hoàn toàn các chữ thường trước chứ không phải là
chữ hoa trước.
Giống như username level, chọn lựa password level cũng có thể dùng các hoán vị quan
trọng của mật khẩu với các chữ thường.Chọn lựa có giá trị là các số nguyên mà chỉ ra bao
nhiêu chữ trong mật khẩu có thể là chữ hoa khi kết nối với share.Bạn có thể làm như sau:
[global]
password level = 3
Samba có thể cố gắng thực hiện các hoán vị trong mật khẩu nhiều nhất là ba chữ hoa.
6.4.4.7 update encrypted
Chọn lựa update encrypted cho phép như là một site có thể dễ dàng lấy mật khẩu mã hóa
từ mật khẩu chưa mã hóa.Bạn có thể kích hoạt nó như sau:
[global]
update encrypted = yes
Cấu trúc này cho phép Samba tạo ra một phiên bản mã hoá cho mỗi mật khẩu của các tài
khoản Unix trong smbpasswd khi họ ñịnh kết nối ñến share.Bạn phải có chọn lựa encrypt
passwords lấy giá trị là no ñể chắc rằng clients sẽ gửi ñi mật khẩu chưa mã hóa ñến Samba
server ñể cập nhật tập tin.Sau khi các clients ñã kết nối,bạn có thể thiết lập encrypted
passwords = yes,ñể cho phép bạn sử dụng mật khẩu mã hóa.
6.4.4.8 null passwords
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
188
Chọn lựa này nói cho Samba biết có hoặc không cho phép truy cập vào share bằng
null-passwords.Theo mặc ñịnh là no,tuy nhiên bạn có thể thiết lập lại như sau:
null passwords = yes
Chúng tôi khuyến khích bạn hãy cảnh giác khi sử dụng nó trừ khi bạn có một hệ thống bảo
vệ an toàn.
6.4.4.9 smbpasswd
Chọn lựa toàn cục này chỉ ra vị trí của cơ sở dữ liệu mật khẩu mã hóa.Theo mặc ñịnh là
/usr/local/samba/private/smbpasswd.Bạn có thể thiết lập lại như sau:
[global]
smb passwd file = /etc/smbpasswd
Vị trí này trong ví dụ là chung cho nhiều distributions RedHat Linux
6.4.4.10 hosts equiv
Chọn lựa này chỉ ra tên tập tin truyền thống Unix host.equiv mà cho phép các hosts hoặc
users có quyền truy cập lên share trừ khi có mật khẩu ñịnh trước.Bạn có thể chỉ ra vị trí của
nó như sau:
[global]
hosts equiv = /etc/hosts.equiv
Theo mặc ñịnh giá trị của chọn lựa là không chỉ ra bất cứ tập tin hosts.equiv.Bởi sử dụng nó
có thể gâu nguy hiểm chi hệ thống.
6.4.4.11 use rhosts
Chọn lựa này chỉ ra tên tập tin truyền thống Unix .rhosts mà sẽ cho phép các hosts ngoại lại
truy cập lên share trừ khi có mật khẩu ñịnh sẵn.Bạn có thể sử dụng như sau:
[global]
use rhosts = /home/dave/.rhosts
Theo mặc ñịnh giá trị của chọn lựa là không chỉ ra bất cứ tập tin .rhosts .Bởi sử dụng nó có
thể gâu nguy hiểm chi hệ thống.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
189
6.5 Windows Domains
Bây giờ bạn có thể thoải mái làm việc với tài khoản và mật khẩu trên Samba server,chúng
tôi sẽ chỉ cho bạn cách cấu hình Samba thành primary domain controller cho Windows
95/98 và các máy NT.
Quay trở lại với workgroup,Windows 95/98 cho phép mỗi bạn sử dụng tên tài khoản và mật
khẩu trong mỗi lần ñăng nhập vào hệ thống.Có cả những người sử dụng trái phép với
Windows 95/98.Nếu một tài khoản mới ñăng nhập,hệ thống sẽ yêu cầu mật khẩu mới và ñể
xác nhận lại tài khoản một lần nữa.Cũng tại thời ñiểm ñấy,Windows 95/98 sẽ thử sử dụng
mật khẩu mà bạn nhập vào ñể kết nối ñến các share khác.
Domain logons,cũng giống như hệ thống Unix.ðể ñăng nhập vào domains,bạn phải có tài
khoản và mật khẩu ñược xác nhận bởi hệ thống cơ sở dữ liệu PDC.Nếu mật khẩu có
lỗi,người sử dụng sẽ ñược thông báo và sẽ không thể ñăng nhập ñược.Một ñiều nữa là:nếu
bạn ñăng nhập thành công vào domain,bạn có thể truy cập ñến bất cứ share nào trên
domains mà bạn có quyền hạn trừ khi phải bị xác nhận lại.
6.5.1 Cấu hình Samba cho Windows Domain Logons
Nếu bạn muốn Samba ñóng vai trò như là Domain controller,hãy sử dụng các section sau
ñể cấu hình Samba và các clients của bạn có quyền truy cập lên domains
Nếu bạn muốn có thêm thông tin hãy ñọc thêm tập tin DOMAINS.TXT
6.5.1.1 Windows 95/98 clients
Thiết lập Samba như là PDC cho Windows 95/98 là một cái gì ñấy xuống dốc.Bạn ñã tin
chắc rằng cần ñiều ñó trên server và phải ñảm bảo là:
1. Samba chỉ là PDC cho workgroup hiện thời
2. Luôn sẵn sàng WINS server trên network,hoặc Samba hoặc Windows NT server(ðọc
chương 7,in ấn và tên cho phép)
3. Samba sử dụng hệ thống bảo mật cho lớp User.Bạn không muốn sử dụng hệ thống bảo
mật cho lớp Domain nếu Samba ñóng vai trò là PDC
Bạn có thể bổ sung thêm các dòng sau vào tập tin cấu hình Samba như sau:
[global]
workgroup = SIMPLE
domain logons = yes
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
190
# Chắc chắn sử dụng hệ thống bảo mật cho lớp User
security = user
# Chắc chắn rằng trở thành PDC
os level = 34
local master = yes
preferred master = yes
domain master = yes
Chọn lựa domain logons làm cho Samba có vai trò như là một Domain thay mặt cho các
clients khác mà có yêu cầu ñối với nó.Tên của domain sẽ giống như tên của workgroup
ñược liệt kêt trong tập tin cấu hình Samba.Theo ví dụ là SIMPLE
Sau ñó bạn cần tạo ra một disk share non-writeable,non-public,non-browseable có tên là
[netlogon] như sau:
[netlogon]
comment = The domain logon service
path = /export/samba/logon
public = no
writeable = no
browsable = no
6.5.1.2 Windows NT clients
Nếu bạn có Windows NT clients trên hệ thống,thì ñây chính là một vài bước cần phải làm
dưới Samba ñể nó co vai trò như là PDC
Chú Ý: Bạn cần phải có phiên bản nhỏ nhất là Samba 2.1 ñể ñảm bảo PDC có ñầy ñủ các
chức năng của Windows NT clients.Tại thời ñiểm của cuốn sách,Samba 2.0.5 là phiên bản
cuối cùng,nhưng Samba 2.1 ñã có thể lấy ñược qua CVS download.Cách thức download có
thể lấy tại Appendix E, Downloading Samba with CVS.
Trước khi bạn ñảm bảo rằng Samba là PDC cho workgroup hiện thời và sử dụng chế ñộ
bảo mật cho lớp User.Tuy nhiên,bạn phải chắc chắn rằng,Samba sử dụng mật khẩu mã
hóa.Bạn có thể làm ñược ñiều ñó như sau:
[global]
workgroup = SIMPLE
encrypted passwords = yes
domain logons = yes
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
191
security = user
6.5.1.3 Tạo tài khoản tin cậy cho NT clients
ðấy là bước dành riêng cho Windows NT clients.Tất cả các NT clients khi kết nối ñến PDC
phải sử dụng một tài khoản tin cậy.Những tài khoản này cho phép máy có thể ñăng nhập
vào PDC.Ở ñây,tài khoản tin cậy là một tài khoản của người sử dụng trên hệ thống.Chúng
tôi sẽ sử dụng tài khoản Unix truyền thống ñể mô phỏng tài khoản tin cậy cho Samba server.
Tên ñăng nhập của máy có tài khoản tin cậy là tên của máy cộng thêm vào dấu "$" ở sau
nó.Ví dụ như,Windows NT có tên là chimaera,thì tài khoản ñăng nhập có tên là
chimaera$.ðịnh hướng của mật khẩu cũng như tên của máy trong các kí tự thường.ðể làm
một tài khoản tin cậy trên Samba server,bạn cần phải tạo ra một tài khoản Unix với tên máy
thích hợp và cũng như là ñầu vào mật khẩu mã hóa trong cơ sở dữ liệu smbpasswd.
Chúng ta cần phải soạn thảo lại tập tin /etc/passwd ñể có thể làm việc với tài khoản tin
cậy.Tuy nhiên không cần phải tạo catalog home hoặc shell cho tài khoản.Chúng ta cần phải
tạo ra một tài khoản giả như sau:
chimaera$:*:1000:900:Trust Account:/dev/null:/dev/null
Chú ý,chúng ta cũng có thể cấm khu vực mật khẩu bằng dấu "*".ðấy là vì Samba sẽ sử
dụng nội dung của tập tin smbpasswd ñể thay thế cho mật khẩu và chúng tôi không muốn
một người nào ñó sử dụng telnet với tài khoản này.Chỉ có một giá trị ñược sử dụng ở ñây là
UID của tài khoản cho mật khẩu mã hóa(1000).Con số này như một sơ ñồ duy nhất ñến
ñích ID trên NT server và không thể nào xung ñột với những nguồn ID khác.
Tiếp theo bổ sung mật khẩu mã hóa bằng cách sử dụng smbpasswd như sau:
# smbpasswd -a -m chimaera
Added user chimaera$
Password changed for user chimaera$
Tham biến ñi kèm "-a" chỉ ra máy tài khoản tin cậy sẽ ñược tạo ra.Chương trình sẽ tự ñộng
thiết lập mật khẩu mã hóa như là tên NetBios của máy bằng các chữ thường.Bạn không cần
phải nhập nó.Khi bạn sử dụng lệnh này nhớ ñừng ñặt dấu "$" vào sau tên máy.Nó sẽ tự
ñộng bổ sung vào.Những mật khẩu mã hóa mà ñược bổ sung vào sẽ ñược Samba sử dụng
ñể ñăng nhập vào domain từ các NT clients.
6.5.2 Cấu hình Windows Client cho Domain Logons
Khi bạn ñã có Samba như một domain logons,bạn cần phải thiết lập Windows clients ñể có
thể ñăng nhập vào Domain.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
192
6.5.2.1 Windows 95/98
Với Windows 95/98,có thể sử dụng Network configuration dialog trong Windows Control
Panel và chọn Properties cho "Client for Microsoft Networks".Tại ñiểm ñấy,bạn có thể nhìn
thấy một khung hội thoại như hình 6.4.Hãy ñánh dấu vào "Logon to Windows Domain" và
nhập vào tên workgroup như ñã liệt kê trong tập tin cấu hình Samba như là Windows NT
Domain.Sau ñó kích OK và khởi ñộng lại máy tính.
Khi Windows khởi ñộng lại,bạn sẽ nhìn thấy bảng hội thoại ñăng nhập thông thường và bổ
sung thêm mục cho domain.Tên của domain ñã có trong ñấy,bạn chỉ cần nhập mật khẩu
vào và nhấn OK.Tại thời ñiểm ñó,Windows tìm kiếm PDC(Samba) mà có thể nhìn thấy,nếu
như mật khẩu ăn khớp.Nếu như nó làm việc,rất tốt,bạn ñã thành công cấu hình Samba như
là PDC cho Windows 95/98 và các clients ñã kết nối thành công.
6.5.2.2 Windows NT 4.0
ðể cấu hình Windows NT cho domain logons,hãy mở Network configuration dialog trong
Windows NT Control Panel.Bảng ñầu tiên,bạn sẽ nhìn thấy bảng nhận dạng của máy.Hãy
kích vào nút "change" và bạn nhìn thấy như hình 6.5.Bạn có thể chọn Windows NT client ñể
trở thành thành viên của domain mà ñược chọn bởi nút radio "Member of".Tiếp theo ñó,là
kiểu của domain mà bạn muốn client có thể ñăng nhập vào.Nó cũng như Workgroup,ñược
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
193
chỉ ra trong tập tin cấu hình Samba.ðừng chọn nút có tên là "Create a Computer Account in
the Domain",Samba sẽ không làm việc bình thường với chức năng này.
Sau ñó kích OK,Windows sẽ ñưa ra cho bạn một hộp thoại nhỏ mời bạn ñăng nhập vào
domain.Cũng tại lúc ñó,bạn sẽ cần phải khởi ñộng lại máy NT.Khi hệ thống khởi ñộng lại
thành công,bạn cũng sẽ nhìn thấy một hộp thoại giống như trong Windows 95/98.Bạn có
thể sử dụng tài khoản ñã có trên Samba server như trong cấu hình ñể có thể ñăng nhập.
6.5.3 Chọn lựa cho Domain
Table 6.9: Windows 95/98 Domain Logon Options
Option Parameters Function Default Scope
domain
logons
boolean Indicates whether Windows domain
logons are to be used.
no Global
domain
group map
string
(fully-qualified
pathname)
Name of the file used to map Unix to
Windows NT domain groups.
None Global
domain user
map
string
(fully-qualified
pathname)
Name of the file used to map Unix to
Windows NT domain users.
None Global
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
194
Table 6.9: Windows 95/98 Domain Logon Options
Option Parameters Function Default Scope
local group
map
string
(fully-qualified
pathname)
Name of the file used to map Unix to
Windows NT local groups.
None Global
revalidate boolean If yes, Samba forces users to
authenticate themselves with each
connection to a share.
no Share
6.5.3.1 domain logon
ðây là chọn lựa của Samba cho phép domain logons như là PDC.Khi client thành công
ñăng nhập vào domain,Samba sẽ hoàn trả lại client bằng chứng cho phép truy cập và share
trên domain mà không cần phải hỏi lại PDC một lần nữa ñể xác nhận lại.Chú ý,Samba phải
sử dụng hệ thống bảo mật cho lớp User và khi ñó PDC mới có thể ñảm nhận chức năng
này.Thêm vào ñó,Windows sẽ phải ñợi một share [netlogon] tồn tại trên Samba server.
6.5.3.2 domain group map
ðấy là chọn lựa chỉ ra vị trí của tập tin sơ ñồ ñể truyển ñổi tên nhóm domain Windows NT
ñến tên nhóm Unix.Tập tin ñược ñặt trên Samba server:
/usr/local/samba/private/groups.mapping
Tập tin có một kiểu ñịnh dạng:
UnixGroup = NTGroup
Ví dụ như:
admin = Administrative
Nhóm Unix cần phải có hiệu lực trong tập tin /etc/group.Chọn lựa này làm việc bình thường
với Windows NT clients
6.5.3.3 domain user map
ðấy là chọn lựa chỉ ra vị trí của tập tin sơ ñồ ñể truyển ñổi tên tài khoản Unix ñến tên tài
khoản của domain Windows NT.Tập tin ñược ñặt trên Samba server:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
195
/usr/local/samba/private/domainuser.mapping
Tập tin có một kiểu ñịnh dạng
UnixUsername = [\\Domain\\]NTUserName
Ví dụ như:
joe = Joseph Miller
Tên của Unix cần phải có hiệu lực trong tập tin /etc/passwd.Chọn lựa này sẽ chỉ làm việc
bình thường với Windows NT clients.
6.5.3.4 local group map
ðấy là chọn lựa chỉ ra vị trí của tập tin sơ ñồ ñể truyển ñổi tên nhóm local Windows NT ñến
tên nhóm Unix.Tên nhóm local bao gồm cả Administrators và Users.Tập tin ñược ñặt trên
Samba server:
/usr/local/samba/private/localgroup.mapping
Kiểu ñịnh dạng như:
UnixGroup = [BUILTIN\]NTGroup
Ví dụ:
root = BUILTIN\Administrators
Chọn lựa này sẽ chỉ làm việc bình thường với Windows NT clients.
6.5.3.5 revalidate
ðấy là chọn lựa cho lớp share,sẽ chỉ cho Samba cách xác ñịnh tài khoản mỗi khi chúng kết
nối ñến share khác trên một máy,không có hệ thống bảo mật chính ñặt trên Samba
server.Thông thường,giá trị mặc ñịnh là no,cho phép những người sử dụng tin tưởng là họ
ñã thành công xác ñịnh chính bản thân mình.Bạn có thể thay ñổi như sau:
revalidate = yes
Bạn có thể sử dụng nó ñể tăng thêm tính bảo mật cho hệ thống.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
196
6.6 Logon Script
Samba cho phép thực thi những Windows Logon Script,như là (.BAT hoặc .CMD) là những
tập tin thực thi cho client khi người sử dụng ñăng nhập trên Windows domains.Chú ý,những
script này ñược lưu trữ trên Unix,nhưng có thể truyền tải ñến các clients qua network và
thực thi nó cho các tài khoản khi ñăng nhập.Những script này ñóng vai trò như là một cấu
hình ñộng ñể ñăng nhập vào domain trên network khi cần thiết.
Nếu bạn muốn có nhiều thông tin hơn về lệnh NET,chúng tôi khuyến khích bạn nên ñọc
cuốn sách Windows NT in a Nutshell, Windows 95 in a Nutshell, and Windows 98 in a
Nutshell.của O'Reilly.
Bạn có thể chỉ cho Samba cách sử dụng logon script với chọn lựa logon script như sau:
[global]
domain logons = yes
security = user
workgroup = SIMPLE
os level = 34
local master = yes
preferred master = yes
domain master = yes
logon script = %U.bat
[netlogon]
comment = The domain logon service
path = /export/samba/logon
public = no
writeable = no
browsable = no
chú ý,ví dụ này sử dụng tham biến %U,mà sẽ chỉ rõ cơ sở script cho tài khoản khi ñăng
nhập.Những script này có thể cá nhân hóa cấu hình cho từng tài khoản hoặc clients
Mỗi logon scripts phải ñược lưu lại trong hệ thống dữ liệu share [netlogon],ví dụ như,nếu cơ
sở share [netlogon] là /export/samba/logon và logon script là "jeff.bat",thì tập tin cần phải ở
vị trí /export/samba/logon/jeff.bat. Khi mà người sử dụng ñăng nhập,nội dung của script sẽ
ñược thực thi,và bất cứ thông tin ñầu ra của script ñược tạo ra như một hộp MS-DOS.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
197
ðây là ví dụ của logon script ñược thiết lập tại thời ñiểm hiện tại trên Samba server và sơ ñồ
ñến hai ñĩa qua mạng h và i là những share ñặc biệt trên server:
# Reset the current time to that shown by the server.
# We must have the "time server = yes" option in the
# smb.conf for this to work.
echo Setting Current Time...
net time \\hydra /set /yes
# Here we map network drives to shares on the Samba
# server
echo Mapping Network Drives to Samba Server Hydra...
net use h: \\hydra\data
net use i: \\hydra\network
6.6.1 Profiles tự do(Roaming profiles)
Trong Windows 95/NT,mỗi một tài khoản có một profile cá nhân riêng.Mỗi profiles bao gồm
như là:ðịnh dạng desktop,các ứng dụng trên startmenu,phông nền và các thứ khác
nữa.Nếu như profile ñược lưu trữ trên các local disk,nó gọi là "local profile",từ ñó mỗi
trường sử dụng như trên một máy.Nếu như profile lưu trữ trên server,bạn có thể tải nó ñến
bất cứ máy client nào và ñang kết nối với server.Sau ñó gọi roaming profile bởi vì người sử
dụng có thể tự do từ máy này sang máy khác mà sử dụng vẫn chỉ profile ñấy.Bạn có thể
nhìn thấy như hình 6.6:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
198
Samba sẽ chỉ ra roaming profiles nếu nó ñược cấu hình cho domain logons và bạn có thể
thiết lập logon path ñến catalog home của tài khoản và logon home ñến catalog con của
catalog home của tài khoản ñể lưu trữ profile.Ví dụ như:
[global]
domain logons = yes
security = user
workgroup = SIMPLE
os level = 34
local master = yes
preferred master = yes
domain master = yes
logon home = \\%N\%U
logon path = \\%N\%U\profile
Từ phiên bản Samba 2.0.6 cho phép các máy Windows 9x lưu trữ profile trên các share
riêng lẻ,nhưng ngăn cản clients từ cấu hình logon path của chúng cần phải lấy catalog ñã
mounted như "net use/home".Phiên bản 2.0.6 làm việc bình thường.
Vào lúc ban ñầu ñăng nhập,Windows clients sẽ tạo ra tập tin user.dat hoặc ntuser.dat-phụ
thuộc vào hệ thống ñang sử dụng.Clients có thể gửi lên nội dung của desktop,Start
Menu,Network Neighborhood,và nhiều thứ khác .Khi người sử dụng ñăng nhập,những
thông tin này sẽ ñược tải về từ server và kích hoạt cho các máy clients.Khi chúng thoát khỏi
server,những thông tin này lại ñược gửi lên server một lần nữa ñể cập nhật thông tin cho
lần ñăng nhập tiếp theo.Bạn có thể nhìn thấy như sau:
# ls -al
total 321
drwxrwxr-x 9 root simple Jul 21 20:44 .
drwxrwxr-x 4 root simple Jul 22 14:32 ..
drwxrwx--- 3 fred develope Jul 12 07:15 Application Data
drwxrwx--- 3 fred develope Jul 12 07:15 Start Menu
drwxrwx--- 2 fred develope Jul 12 07:15 cookies
drwxrwx--- 2 fred develope Jul 12 07:15 desktop
drwxrwx--- 7 fred develope Jul 12 07:15 history
drwxrwx--- 2 fred develope Jul 12 07:15 nethood
drwxrwx--- 2 fred develope Jul 19 21:05 recent
-rw------- 1 fred develope Jul 21 21:59 user.dat
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
199
Tập tin user.dat ñược tạo ra tự ñộng bởi Windows như là tập tin cấu hình nhị phân.Chúng
có thể ñược soạn thảo lại bằng chương trình Profile Editor trên Windows clients,nhưng có
thể có một vài cái gì ñấy không khớp nhau.Samba có thể làm việc với chúng một cách bình
thường ñối với các clients NT 5.0 Beta.
6.6.2 Uỷ thác Profiles(Mandatory profiles)
Bạn có thể có mandatory profiles.Ví dụ như,với một mandatory profiles,nếu người sử dụng
bổ sung một lệnh vào StartMenu vào thứ ba,nó sẽ chạy ñược khi người ñó ñăng nhập lại
vào thứ tư. mandatory profiles tương tự như tập tin user.dat mà có thể ñổi tên thành
user.man và thiết lập quyền hạn read-only trên server Unix.Nếu một administrator muốn tạo
một cấu hình ổn ñịnh,có thể làm như sau:
1. Tạo một catalog với quyền hạn read-only trên Samba server
2. Thiết lập chọn lựa logon path trong tập tin smb.conf ñến catalog ñấy
3. Logon như người sử dụng từ Windows 95/98 ñến các clients cư trú trên ñó
4. ðổi tên kết quả user.dat thành user.man
5. Làm cho catalog và nội dung trong nó có quyền hạn read-only
6.6.3 Chọn lựa của Logon Script
Table 6.10: Logon Script Options
Option Parameters Function Default Scope
logon
script
string (DOS path) Name of DOS/NT batch file None Global
logon
path
string (UNC server
and share name)
Location of roaming profile for
user
\\%N\%U\profile Global
logon
drive
string (drive letter) Specifies the logon drive for a
home directory (NT only)
Z: Global
logon
home
string (UNC server
and share name)
Specifies a location for home
directories for clients logging on
to the domain
\\%N\%U Global
6.6.3.1 logon script
ðây là chọn lựa chỉ ra một Windows Script .BAT hoặc .CMD mà sẽ ñược thực hiện trên
clients khi người sử dụng ñăng nhập vào domain.Mỗi một logon script ñược lữu trữ tại cở
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
200
sở của share [netlogon](ñọc section 6.5.1).Chọn lựa này yêu cầu tham biến %U hoặc
%m(sử dụng NetBios name) ñể chỉ ra các script ñặc biệt.Ví dụ như:
logon script = %U.bat
Sẽ thực thi một script trên tên tài khoản ñặt trong cơ sở dữ liệu của share [netlogon].Nếu tài
khoản là fred và ñường dẫn của share [netlogon] chỉ ñến /export/samba/netlogin, thì script
ñược chỉ ra là /export/samba/netlogin/fred.bat.Bởi vì có những script ñược tải về từ các
client và thực thi trên Windows,chúng phải phù hợp với ñịnh dạng kiểu DOS
carriage-return/line ñược cung cấp các kí tự có trong Unix carriage returns.
6.6.3.2 logon path
ðấy là chọn lựa chỉ ra vị trí cho roaming profiles.Khi mà người sử dụng ñăng nhập,roaming
profiles sẽ ñược tải về từ server ñến client và kích hoạt cho người sử dụng ñể ñăng
nhập.Khi mà thoát khỏi domain,những thông tin này sẽ ñược gửi ngược lại server ñể cập
nhật lại cho lần ñăng nhập tiếp theo.
ðể an toàn hơn,hãy tạo ra các share riêng lẻ lưu trữ các profile:
logon path = \\hydra\profile\%U
6.6.3.3 logon drive
ðấy là chọn lựa chỉ ra drive trên một NT client mà catalog home ñược chỉ ra trong trọn lựa
logon home.Chú ý,chọn lựa sẽ chỉ làm việc với Windows NT client.
logon home = I:
Bạn nên luôn sử dụng các drive letter mà không xung ñột vớu các drives khác trên
máy.Theo mặc ñịnh,Z: là một chọn lựa tốt,nó cách xa vị trí của A:,B:,...
6.6.3.4 logon home
ðấy là chọn lựa chỉ ra vị trí của catalog home của tài khoản cho lệnh DOS NET.Ví dụ,ñể chỉ
ra catalog home như là share trên Samba server như sau:
logon home = \\hydra\%U
Chú ý,công việc này rất tốt cho dịch vụ [home],kể cả bất cứ catalog nào mà bạn muốn.Một
vài catalog có thể thiết lập ñược hình ảnh với logon script sử dụng lệnh như sau:
NET USE I: /HOME
6.6.4 Các Scripts kết nối khác
Sau khi thành công kết nối ñến Samba share,bạn muốn Samba server chuẩn bị thực thi một
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
201
chương trình ở bên trong share ñể sử dụng.Samba cho phép thực thi các script trước khi và
sau khi một ai ñó kết nối ñến share.Bạn không cần sử dụng Windows Domain ñể làm ñiều
này.Bảng 6.11 cho bạn một số thông tin về các thiết lập công việc cho người sử dụng:
Table 6.11: Connection Script Options
Option Parameters Function Default Scope
root
preexec
string (Unix
command)
Sets a command to run as root, before
connecting to the share.
None Share
preexec
(exec)
string (Unix
command)
Sets a Unix command to run as the user
before connecting to the share.
None Share
postexec string (Unix
command)
Sets a Unix command to run as the user
after disconnecting from the share.
None Share
root
postexec
string (Unix
command)
Sets a Unix command to run as root after
disconnecting from the share.
None Share
6.6.4.1 root preexec
Bước ñầu tiên trong lênh logon là gọi root preexec.ðấy là chọn lựa chỉ ra lệnh Unix cũng
như giá trị của nó sẽ thực thi như là root trước bất cứ kết nối nào ñến share ñược hoàn
thành.Ví dụ,root preexec có thể sử dụng ñể mount CD-ROM cho share và biến chúng thành
các giá trị cho clients,hoặc có thể tạo ra các catalog cần thiết.Nhưng chọn lựa no root
preexec sẽ không chỉ ra hành ñộng nào hết.Bạn có thể làm như sau:
[homes]
browseable = no
writeable = yes
root preexec = /etc/mount /dev/cdrom2
Chú ý,lệnh này sẽ chạy như root,nó có liên quan ñến vấn ñề an toàn cho hệ thống,ñừng nên
lạm dụng lệnh này quá nhiều.
6.6.4.2 preexec
Chọn lựa còn có gọi là exec,dùng ñể thực hiện trước khi logon.Nó là một lệnh thực thi thông
thường bởi Samba như là ñược chỉ ra bởi tham biến %u.Ví dụ như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
202
[homes]
preexec = echo "%u connected to %S from %m (%I)\" >>/tmp/.log
6.6.4.3 postexec
Một vài người sử dụng ngưng kết nối từ share,lệnh ñược chỉ ra với postexec sẽ thực thi
như tài khoản trên Samba server ñể làm bất cứ công việc dọn dẹp cần thiết nào.ðấy là chọn
lựa về cơ bản giống như chọn lựa preexec.Tuy nhiên phải nhớ rằng,lệnh thực thi như tài
khoản bằng tham biến %u và bất cứ thông tin này gửi theo kiểu output truyền thống sẽ bị bỏ
qua.
6.6.4.4 root postexec
Sau chọn lựa postexec,thì lệnh root postexec sẽ thực thi nếu như nó ñược chỉ ra.ðấy là một
chọn lựa chỉ ra một lệnh Unix và các giá trị của nó sẽ chạy như là tài khoản root trước khi
ngưng kết nối từ share.
6.6.5 Làm việc với NIS và NFS
Cuối cùng,Samba có khả năng làm việc với NIS và NIS+.Nếu có nhiều hơn một tập tin trên
server,Samba sẽ chạy lần lượt chúng.Nó muốn có các SMB clients kết nối ñến server chủ
nhân của các disk hiện tại là nhà ở của các tài khoản.ðó không phải là ý kiến tốt ñối với các
tập tin qua network trên vỉa NFS ñến Samba server,chỉ có gửi lại qua network ñến các client
vỉa SMB.
ðấy là một cặp chọn lựa chỉ cho Samba rằng NIS biết tên thực của server và chỉ ra thông tin
hiện thực mà NIS chứa ñựng
Table 6.12: NIS Options
Option Parameters Function Default Scope
nis
homedir
boolean If yes, use NIS instead of /etc/passwd to
look up the path of a user's home directory
no Global
homedir
map
string (NIS map
name)
Sets the NIS map to use to look up a user's
home directory
None Global
6.6.5.1 nis homedir và homedir map
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
203
Chọn lựa nis homedir và homedir map options cho Samba server trên site network nơi mà
catalog home Unix ñã ñược chuẩn bị sử dụng NFS ñể tự ñộng mout và NIS(Yellow Pages)
Chọn lựa nis homedir chỉ ra catalog home server cho người sử dụng cần nhìn thấy trong
NIS.Chọn lựa homedir map sẽ nói Samba biết rằng NIS map ñược nhìn thấy cho server mà
có catalog home của tài khoản.Server cần thành Samba server,ñể cho client có thể thực
hiện một kết nối SMB ñến nó và những Samba server khác cần cài ñặt NIS cũng có thể nhìn
thấy nó.
Ví dụ,nếu như tài khoản joe hỏi cho share có tên là [joe] và chọn lựa nis homedir có giá trị là
yes,Samba sẽ nhìn vào tập tin ñược chỉ ra bởi chọn lựa homedir map hoặc một catalog
home cho joe.Nếu như tìm thấy,Samba sẽ lập lại kết nối tên máy ñến client.Client cũng sẽ
cố gắng kết nối ñến máy và lấy share từ ñấy.ðể thực hiện NIS lookup như sau:
[globals]
nis homedir = yes
homedir map = amd.map
7. In ấn và tên ñược cho phép
Trong phần này Samba có hai vấn ñề chính:Thiết lập máy in với Samba server và cấu hình
Samba ñể sử dụng hoặc trở thành WINS Server(Windows Internet Name Service).Samba
cho phép máy clients gửi tài liệu ñến máy in kết nối qua Samba server.Thêm vào ñó,Samba
còn cho phép bạn có thể in ấn với các tài liệu Unix ñến máy in trên Windows.
7.1 Gửi yêu cầu in ấn ñến Samba
Một máy in ñược gắn với một Samba server sẽ ñược hiện ra trong danh sách share cho
phép trên Network Neighborhood.Nếu như máy ín ñược ñăng kí trên máy client và client
ñã cài ñặt driver cho máy in,khi ấy client có thể dễ dàng gửi yêu cầu in ấn ñến máy in có
trong Samba server như hình 7.1.
ðể quản lý máy in với Samba,bạn cần phải hiểu các tiến trình cơ bản ñể in ấn trên
network.Gửi ñi nhiệm vụ in ấn ñến máy in trên Samba server có 4 bước sau:
1. Mở và xác nhận kết nối ñến máy in share
2. Sao chép tập tin trên network
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
204
3. ðóng kết nối
4. In ấn và xoá ñi tập tin ñã sao chép
Hình 7.1
Khi mà nhiệm vụ in ấn thành công trên Samba server,dữ liệu in ấn thời gian sẽ ñược ghi lên
catalog mà ñược ñịnh ra trong chọn lựa path trên share printer.Samba sẽ thực hiện lệnh
print Unix ñể gửi các dữ liệu cần in ñến máy in.Bạn có thể sử dụng tài khoản guest tùy vào
cách cấu hình share.
7.1.1 Lệnh in ấn(Print Commands)
ðể in ấn tài liệu,bạn cần phải nói cho Samba biết lệnh nào cần in và xóa một tập tin.Trên
Linux lệnh như sau:
lpr -r -Pprinter file
Nó sẽ nói lpr sao chép tài liệu ñến khu vực spool,thường là /var/spool,truy tìm tên của máy
in trong tập tin cấu hình(/etc/printcap),và giải thích quy tắc kiểm soát nó tìm những quyết
ñịnh về các tiến trình trên dữ liệu và các thiết bị vật lý gửi ñến nó.Chú ý,bởi vì tham biến -r
có mặt,nên tập tin sẽ bị xóa ñi sau khi quá trình in ấn thành công.Tuy nhiên,tập tin lưu trữ
trên server bị xóa còn tập tin gốc trên client không hề bị ảnh hưởng.
Linux sử dụng kiểu Berkeley (BSD) ñể in ấn như sau:
lp -dprinter -s file; rm file
7.1.2 Các giá trị của quá trình in ấn
Table 7.1: Printing Variables
Variable Definition
%s The full pathname of the file on the Samba server to be printed
%f The name of the file itself (without the preceding path) on the Samba server to be
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
205
Table 7.1: Printing Variables
Variable Definition
printed
%p The name of the Unix printer to use
%j The number of the print job (for use with lprm, lppause, and lpresume)
7.1.3 Cấu hình tối thiểu cho in ấn
Giả sử chúng ta có hệ thống Linux và có máy in tên là lp ñược liệt kê trong tập tin quyền hạn
máy in,ñược bổ sung vào tập tin smb.conf sẽ làm công việc in ấn qua mạng như sau:
[printer1]
printable = yes
print command = /usr/bin/lpr -r %s
printer = lp
printing = BSD
read only = yes
guest ok = yes
Cấu hình này sẽ cho phép mọi người gửi dữ liệu ñến máy in,chúng ta có thể thay ñổi chúng
về sau.Tại thời ñiểm này,cái quan trọng cần hiểu là giá trị %sS trong chọn lựa print
command sẽ ñược thay thế tên của của tập tin ñến máy in khi Samba thực hiện hoàn tất
lệnh.Thay ñổi print command sẽ làm ngược lại phong cách ñặc thù của máy Unix chỉ ñặt
vào bên trong của chọn lựa print command với các lệnh nào mà cần thiết cho hệ thống và
thay ñổi mục tiêu của chọn lựa printing.Hãy xem dưới ñây:
print command = lp -d%p -s %s; rm %s
Tham biến %p ñịnh ra tên của máy in,trong khi tham biến %s lại quyết ñịnh tên của tập
tin.Sau ñó bạn có thể thay ñổi chọn lựa printing ñể thay thế rằng bạn ñang sử dụng kiểu hệ
thống System V:
printing = SYSV
Nếu bạn sử dụng hệ thống bảo mật cho lớp share,sẽ mang lại sự chú ý ñặc biệt cho tài
khoản guest bằng Samba.ðặc thù của cấu hình là nobody,có thể không cho phép in ấn trên
hệ thống.Nếu ñiều ñó sảy ra trên hệ thống của bạn,thì cần phải thay thế chọn lựa guest
account dưới share printing bằng cách chỉ ra các tài khoản có quyền hạn.Thông thường,với
Samba họ sử dụng tài khoản ftp,mà thường ñược tiền cấu hình ñến chế ñộ không nguy
hiểm thay thế cho tài khoản guest.Bạn có thể sử dụng như sau:
guest account = ftp
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
206
Một vấn ñề chung khác nảy sinh ñó là nhiều clients cần yêu cầu in ấn và gửi ñến Samba
server.Samba sẽ không từ chối một tài liệu từ khi bắt ñầu gửi ñến một share printer ñang
bận.Do ñó Samba cần có khả năng truyền ñạt không chỉ có trạng thái của tập nhiệm vụ in
ấn hiện thời mà ngay cả những tài liệu hiện thời ñang chờ ñợi ñể có thể in ấn.Samba cũng
sẵn sàng cho các client có khả năng tam dừng công việc in ấn,yêu cầu in ấn lại,hủy bỏ
nhiệm vụ in ấn.Chúng có dạng như sau:
1. lpq command
2. lprm command
3. lppause command
4. lpresume command
ðây là một vài ñiều quan trọng cần nhớ về share printing
1. Bạn phải ñặt printable = yes trên tất cả các share([printers]),mà Samba biết chúng là
những share printers.Nếu bạn quyên,shares sẽ không ñược sử dụng ñể in ấn và sẽ ñược
thay thế như là disk share
2. Nếu bạn thiết lập chọn lựa cấu hình path trong section printer,khi ñó bất cứ tập tin nào
ñược gửi ñến printers sẽ ñược sao chép ñến catalog mà bạn chỉ ra ñể thay thế cho vị trí
theo ngầm ñịnh là /tmp.Nhiều administrators sử dụng /var/spool hoặc những catalog khác
ñể thay thế.
3. Chọn lựa read-only ñược bỏ qua cho share printers
4. Nếu bạn thiết lập guest ok = yes trên share printer và Samba ñược cấu hình với hệ thống
bảo mật cho lớp share,nó sẽ cho phép bất cứ ai gửi dữ liệu ñến printer như tài khoản guest
Sử dụng một hoặc nhiều máy Samba như printers server sẽ giúp bạn có một hệ thống giao
dịch tốt trong LAN của bạn.Bạn có thể dễ ràng phân chia các tài nguyên máy in,hạn chế ñến
số lượng thành viên của công sở,có thể duy trì hoạt ñộng của máy in trong nhà băng cho
tất cả mọi người.Thêm vào ñó,bạn có thể thu hẹp máy in ñến mức nhỏ hơn bằng cách chỉ ra
giá trị thực cho chọn lựa valid users ñể ñịnh hướng cho share:
[deskjet]
printable = yes
path = /var/spool/samba/print
valid users = gail sam
7.1.4 Share [Printers]
Chương 4,Disk Share, ñã giới thiệu ngắn gọn về [printers] ñó là một share ñặc biệt ñược
tạo ra một các tự ñộng cho dịch vụ in ấn.Nếu bạn tạo ra một share có tên là [printers] trong
tập tin cấu hình,Samba sẽ tự ñộng ñọc các trữ lượng có bên trong tập tin máy in của bạn và
tạo ra các share printing cho mỗi máy in có mặt trong tập tin.Ví dụ,nếu Samba server có các
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
207
máy in là lp,pcl,ps ,Samba sẽ chuẩn bị sẵn ba share printers với tên như thế cùng với
những chọn lựa cấu hình cho chúng.
Nhắc lại rằng,Samba tuân theo các quy tắc sau khi mà một client yêu cầu share không
ñược tạo qua tập tin smb.conf:
1. Nếu như tên của share hợp lý và tên tài khoản có mặt trong tập tin mật khẩu hệ thống và
share [homes] cũng tồn tại,một share mới sẽ ñược tạo ra với tên của tài khoản và sử dụng
các giá trị có trong [homes] và section [global]
2. Nếu như tên của máy in khớp với tên trong tập tin kiểm soát máy in trên hệ thống,và
section [printers] cũng có tồn tại,một share mới sẽ ñược tạo ra với tên của máy in và lam
việc với những giá trị lấy trong section [printers](Giá trị trong section [global] không áp dụng
ở ñây)
3. Không cái nào thành công,Samba sẽ quan sát một default service share.Nếu như không
tìm thấy,nó sẽ thông báo lỗi.
ðây là một ví dụ [printers] share trên hệ thống Linux(BSD).Một vài chọn lựa là ngầm
ñịnh,tuy nhiên chúng ta vẫn liệt kê chúng:
[global]
printing = BSD
print command = /usr/bin/lpr -P%p -r %s
printcap file = /etc/printcap
min print space = 2000
[printers]
path = /usr/spool/public
printable = true
guest ok = true
guest account = pcguest
Bổ sung thêm,chúng ta tạo ra một share [printers] cho mỗi máy in trên hệ thống.Catalog
spool tam thời ñược chỉ ra theo ñường dẫn /usr/spool/public.
7.1.5 Kiểm tra in ấn
ðây là cách kiểm tra in ấn từ Samba server.ðầu tiên thực thi chương trình testparm trên
Samba server ñể thử nghiệm nội dung tập tin cấu hình mà chứa bên trong share print,như
ñã làm ở chương 2,cài ñặt Samba trên hệ thống Unix.ðiều này sẽ nói với bạn nếu như có
vấn ñề gì ñó nẩy sinh với tập tin cấu hình.Ví dụ như dưới ñây:
# testparm
Load smb config files from /usr/local/samba/lib/smb.conf
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
208
Processing configuration file "/usr/local/samba/lib/smb.conf"
Processing section "[global]"
Processing section "[homes]"
Processing section "[data]"
Processing section "[printers]"
No path in service printers - using /tmp
Loaded services file OK.
Press enter to see a dump of your service definitions
Global parameters:
load printers: Yes
printcap name: /etc/printcap
Default service parameters:
guest account: ftp
min print space: 0
print command: lpr -r -P%p %s
lpq command: lpq -P%p
lprm command: lprm -P%p %j
lppause command:
lpresume command:
Service parameters [printers]:
path: /tmp
print ok: Yes
read only: true
public: true
Tiếp theo,hãy gọi lệnh testprns pritername.ðấy là một chương trình kiểm tra lại tên máy in
ñã chỉ ra trong tập tin máy in trên hệ thống của bạn.Nếu như tập tin printcap không ñược ñặt
ở vị trí thông thường,bạn có thể chỉ ra tên ñầy ñủ của nó bằng tham biến thứ hai với lệnh
testprns như sau:
# testprns lp /etc/printcap
Looking for printer lp in printcap file /etc/printcap
Printer name lp is valid.
Tiếp theo,ñăng nhập như guest và chuyển ñến catalog spool,và chắc chắn rằng bạn cũng
sẽ có thể sử dụng in ấn như lệnh testparm sẽ chỉ dẫn cho Samba.
Cuối cùng,in ấn một vài thứ từ Samba server trên vỉa smbclient,nếu như sảy ra các ñiều
sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
209
Tài liệu cần in có mặt trên catalog spool Samba như theo ñường dẫn
Nhiệm vụ in ấn cần ñược hiển thị trong catalog spool cần in của hệ thống
Nhiệm vụ sẽ bị cấm hiện ra từ catalog spool mà Samba ñang sử dụng
Nếu như smbclient không thể in ñược,bạn có thể yêu thiết lập lại chọn lựa print command từ
hệ thống gỡ lỗi thông tin.
print command = /bin/cat %s >>/tmp/printlog; rm %s
hoặc
print command = echo "printed %s on %p" >>/tmp/printlog
Một vấn ñề chung với cấu hình máy in Samba là quên tên ñường dẫn ñầy ñủ chi lệnh;lệnh
ñơn thuần thường có thể không làm việc bởi vì ñường dẫn của tài khoản Guest không chứa
ñầy ñủ chúng.
7.1.6 Thiết lập và Thử nghiệm một Windows Client
Bây giờ Samba ñưa ra khả năng làm việc với máy in.Bạn cần thiết lập nó trên một Windows
Client.Hay xem Samba server trên Network Neighborhood .Nó hiển thị mọi máy in mà có thể
ñược.Hãy xem hình 7.1,chúng ta nhìn thấy máy in có tên là lp.
Tiếp theo,bạn cần có Windows client có thể công nhận máy in ñó.Nhấn kép lên biểu tượng
máy in ñể bắt ñầu.Nếu bạn cố gắng với máy in mà không có driver,Windows sẽ hỏi bạn nếu
bạn muốn hiển thị trợ giúp của hệ thống.Nếu chọn yes,sẽ mở ra Printer Wizard.
Bước ñầu tiên mà wizard sẽ hỏi bạn là bạn có cần in ấn từ DOS hay không.Giả sử bạn
không muốn và nhấn NO ,sau ñó chọn Next ñể tiến ñến tập hợp các model như hình 7.2:
Trong bảng bảng hội thoại này bạn có thể nhìn thấy danh sách các hãng sản xuất và các
loại model máy in thông dụng nhất.Nếu bạn không nhìn thấy loại máy in của bạn trên danh
sách,nhưng bạn biết nó là máy in PostScript,hãy chọn Apple như là hãng sản xuất và model
máy in là Apple LaserWriter.Nếu bạn ñã có sẵn một máy in PostScript,hệ thống sẽ hỏi bạn
về sự thay thế hoặc giữ nguyên driver ñã có.Nếu bạn muốn thay thế nó cho một cái mới,bạn
có thể làm một máy in khác hỏng.Chúng tôi khuyến khích bạn nên giữ các driver cho các
máy in ñã tồn tại trên máy ñể chúng có thể làm việc một cách thông thường.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
210
Printer Wizard sẽ hỏi bạn tên của máy in.Hình 7.3 như ví dụ ở ñây,nơi mà tên theo mặc ñịnh
là máy in laserwriter thứ hai.Ở ñây bạn ñổi tên nó từ Apple Laserwriter(Copy 2) thành "PS
on Samba server".Tuy nhiên bạn có thể thay ñổi nó tuy theo ý thích:
Cuối cùng,Printer Wizard sẽ hỏi bạn có muốn thử nghiệm in một trang văn bản nào ñó
không.Chọn Yes nếu như bạn muốn,bạn sẽ nhìn thấy thông báo như hình 7.4:
Nếu như in thử nghiệm không thành công,hãy kích vào no như trong hình 7.4 và Printer
Wizard sẽ hỏi bạn về các bươc gỡ lỗi.Nếu tất cả ổn thoả,cấu hình thiết lập thành công.Máy
in từ xa bây giờ có thể làm việc bình thường trên PC của bạn.
7.1.7 Tự ñộng thiết lập driver máy in
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
211
Như ñã nói về cách cấu hình driver máy in cho hệ thống Windows.Như một administrators
hệ thống,bạn không thể luôn tin rằng,những người sử dụng có thể làm việc mà không gặp
lỗi.Thật may mắn,bạn có thể hỏi Samba vể khả năng tự ñộng thiết lập driver máy in cho
những máy in ñã chỉ ra.
Samba có ba chọn lựa mà có thể sử dụng ñể tự ñộng xác ñịnh driver máy in cho clients
người mà kết nối ñến server trong những thời ñiểm ñầu tiên.ðó là printer driver, printer
driver file, and printer driver location.ðấy là những section khi sử dụng sẽ giúp ñỡ bạn bỏ
qua những hội thoại về hãng sản xuất máy in(Manufacturer dialog) trong mục Add Printer
Wizard như trên.
ðể có thêm thông tin,bạn có thể nhìn thấy tập tin PRINTER_DRIVER.TXT trong
distributions Samba.
Có bốn bước cơ bản sau:
1. Cài ñặt driver cho máy in trên Windows Client(Máy in có thể không cần kết nối)
2. Tạo ra một máy in ñịnh rõ tập tin từ những thông tin trên Windows
3. Tạo ra share PRINTER$ nơi mà chứa các tập tin drivers có thể ñược
4. Soạn thảo lại tập tin cấu hình Samba cho phù hợp
7.1.7.1 Cài ñặt drivers trên Windows clients
Hình 7.5
ðầu tiên hãy ñi ñến Printers trong My Computer và nhấn kép lên biểu tượng Add Printer
như hình 7.5
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
212
Tại lúc ñó,bạn có thể nhìn thấy bảng hội thoại Add Printer Wizard và hãy chọn hãng sản
xuất cũng như model mà bạn có.Nếu như nó hỏi bạn có muốn in từ DOS,hãy trả lời
NO.Windows sẽ tải driver cho máy in từ ñĩa CD-ROM nếu cần thiết và sẽ hỏi bạn có muốn
in thử không.Hãy trả lời không và ñóng bảng hội thoại Add Printer Wizard .
7.1.7.2 Tạo tập tin ñịnh dạng máy in
Bạn có thể tạo ra tập tin ñịnh dạng máy in bằng cách sử dụng script make_ printerdef trong
catalog /usr/local/samba/bin.ðể sử dụng script này,bạn cần phải sao chép bốn tập tin sau từ
Windows client.(Dưới Windows 95 client có thể chỉ có hai tập tin)
C:\WINDOWS\INF\MSPRINT.INF
C:\WINDOWS\INF\MSPRINT2.INF
C:\WINDOWS\INF\MSPRINT3.INF
C:\WINDOWS\INF\MSPRINT4.INF
Nếu bạn có bốn tập tin,bạn có thể tạo ra tập tin ñịnh dạng máy in sử dụng những driver máy
in thích hợp riêng biệt và những tập tin .INF của nó.Nếu driver máy in bắt ñầu từ A-K,sử
dụng một trong hai MSPRINT.INF file hoặc MSPRINT3.INF file.Nếu bắt ñầu với L-Z,sử
dụng một trong hai MSPRINT2.INF file hoặc MSPRINT4.INF file.Bạn có thể cần ñến grep
ñể nhìn thấy những driver ñặc biệt trong mỗi tập tin.Như ví dụ sau,ñể tạo ra tập tin ñịnh
dạng máy in HP DeskJet 560C có trong tập tin MSPRINT3.INF như sau:
$grep "HP DeskJet 560C Printer" MSPRINT.INF MSPRINT3.INF
MSPRINT3.INF: "HP DeskJet 560C Printer"=DESKJETC.DRV,HP_DeskJet_ ...
$make_printerdef MSPRINT3.INF "HP DeskJet 560C Printer" >printers.def
FOUND:DESKJETC.DRV
End of section found
CopyFiles: DESKJETC,COLOR_DESKJETC
Datasection: (null)
Datafile: DESKJETC.DRV
Driverfile: DESKJETC.DRV
Helpfile: HPVDJC.HLP
LanguageMonitor: (null)
Copy the following files to your printer$ share location:
DESKJETC.DRV
HPVCM.HPM
HPVIOL.DLL
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
213
HPVMON.DLL
HPVRES.DLL
HPCOLOR.DLL
HPVUI.DLL
HPVDJCC.HLP
color\HPDESK.ICM
7.1.7.3 Tạo một PRINTER$ share
Tạo ra một share có tên [PRINTER$] trong tập tin cấu hình smb.conf,ñó như là một ñiểm chỉ
ñến một catalog rỗng trên Samba server.Có thể làm ñiều ñó bằng cách,sao chép những tập
tin mà script make_ printerdef yêu cầu với bạn vào vị trí mà chọn lựa PATH chỉ ra trong
share [PRINTER$].Ví dụ như:
[PRINTER$]
path = /usr/local/samba/print
read only = yes
browsable = no
guest ok = yes
Những tập tin yêu cầu bởi script make_ printerdef thông thường nằm trong catalog
C:\WINDOWS\SYSTEM thậm chí bạn có thể sử dụng các lệnh sau ñể thực hiên chúng:
cd C:\WINDOWS
dir
filename /s
7.1.7.4 Thay ñổi lại tập tin cấu hình Samba
Những bước cuối cùng ñể thay ñổi tập tin cấu hình Samba bằng cách bổ sung ba chọn lựa
sau:
Printer Driver
Printer Driver File
Printer Driver Location
Chọn lựa toàn cục printer driver file chỉ ñến tập tin printers.def ñược ñặt trong section
[global] của bạn.Những chọn lựa khác có thể thiết lập share printer với khả năng tự ñộng
cấu hình driver máy in.Giá trị của chọn lựa printer driver sẽ khớp với giá trị mà hiển thị trong
Printer Wizard trên hệ thống Windows.Giá trị của chọn lựa printer driver location sẽ là tên
ñường dẫn của PRINTER$ share mà bạn thiết lập,không phải là dường dẫn Unix trên
server.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
214
[global]
printer driver file = /usr/local/samba/print/printers.def
[hpdeskjet]
path = /var/spool/samba/printers
printable = yes
printer driver = HP DeskJet 560C Printer
printer driver location = \\%L\PRINTER$
7.1.7.5 Kiểm tra cấu hình
Khởi ñộng lại Samba và sẽ nhìn thấy share [hpdeskjet] dưới tên máy có trong Network
Neighborhood.Cũng tại ñiểm ñó,nếu bạn nhấn kép lên biểu tượng máy in,bạn có thể nhìn
thấy quá trình cài ñặt và chào hỏi như hình 7.6:
ðấy là sự khác biệt từ hộp thoại mà bạn nhìn thấy khi cài ñặt máy in.Hộp thoại sẽ hỏi bạn có
giữ lại driver có sẵn hay là thay thế nó.Bạn muốn giữ driver ñã có sẵn hãy chọn mục ñó và
nhấn Next,Tiếp theo bạn có thể lấy tên máy in và in thử nghiệm một trang.Nếu công việc ổn
thoả,bạn có thể bắt ñầu lại quá trình này ở bất cứ Windows Client nào.
7.2 In ấn ñối với các máy in Windows Client
Nếu bạn có máy in,kết nối với clients trong Windows 95/98 hoặc NT 4.0,những máy in này
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
215
có thể truy cập ñược từ Samba với công cụ gọi là smbprint mà có thể sử dụng ñến hệ thống
cơ sở máy in Windows.Tuy nhiên bạn cần phải thiết lập máy in như là nguồn tài nguyên gốc
share trên các máy client.Nếu bạn không làm ñiều ñó,bạn có thể thiết lập lại từ Printers
Window trên nút Start như hình 7.7
ðánh dấu máy in ñã kết nối(như là Canon),nhấn chuột phải lên nó ñể lấy menu,sau ñó chọn
sharing.Nó sẽ ñưa ra cho bạn một bảng Sharing của khung Printer Properties như hình
7.8.Nếu bạn muốn bất cứ ai trên LAN ñược coi như là guest,hãy nhập vào mật khẩu rỗng.
7.2.1 Máy in BSD
Có hai bước bạn cần phải làm ñể BSD Unix công nhận máy in từ xa:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
216
1. Cần phải nhập ñầu vào cho máy in trong tập tin /etc/printcap
2. ðặt một tập tin cấu hình vào catalog /var/spool cho máy in
ðầu tiên,hãy soạn thảo lại tập tin /etc/printcap và nhập vào thông tin ñầu vào cho máy in ở
xa.Chú ý,bộ lọc ñầu vào cần phải chỉ ñến chương trình smbprint nếu như máy chạy trên
Windows 95/98.Bạn có thể làm như sau trên các máy Linux:
laserjet:\
:sd=/var/spool/lpd/laser:\
# spool directory
:mx#0:\
# maximum file size (none)
:sh:\
# surpress burst header (no)
:if=/usr/local/samba/bin/smbprint:
# text filter
Sau ñó bạn cần phải tạo ra tập tin cấu hình trong catalog spool mà bạn chỉ ra với tham biến
sd như trên(nếu như cần).Tập tin cần phải có tên .config và chứa các thông tin sau:
1. Tên NetBios của máy Windows với máy in
2. Tên dịch vụ mà thay cho máy in
3. Mật khẩu sử dụng ñể truy cập lên dịch vụ
Có hai tham biến mà cần phải có trên hộp thoại sharing ñể yêu cầu tài nguyên gốc trên máy
Windows.Trong tập tin .config có ba dòng sau:
server = phoenix
service = CANON
password = ""
7.2.2 Máy in System V
Gửi nhiệm vụ in ấn từ hệ thống V Unix là một ñiều ñơn giản.Bạn cần lấy ñược script
smbprint.sysv trong catalog /usr/local/samba/examples/printing và làm như sau:
1. Thay ñổi server,dịch vụ,mà mật khẩu trong script ñể hợp với máy NetBios,mà gửi lên dịch
vụ máy in và mật khẩu.Ví dụ như sau:
server = phoenix
service = CANON
password = ""
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
217
2. Chạy các lệnh sau,ñể tạo ra một sự tham khảo cho máy in trong tập tin quyền lực máy in.
# lpadmin -p canon_printer -v /dev/null -i ./smbprint.sysv
# enable canon_printer
# accept canon_printer
7.2.3 Chọn lựa của Samba Printing Bảng 7.2
Table 7.2: Printing Configuration Options
Option Parameters Function Default Scope
printing bsd, sysv, hpux, aix,
qnx, plp, softq, or
lprng
Sets the print system type for
your Unix system.
System
dependent
Share
printable (print
ok)
boolean Marks a share as a printing
share.
no Share
printer (printer
name)
string (Unix printer
name)
Sets the name of the printer
to be shown to clients.
System
dependent
Share
printer driver string (printer driver
name)
Sets the driver name that
should be used by the client
to send data to the printer.
None Share
printer driver file string (fully-qualified
pathname)
Sets the name of the printer
driver file.
None Global
printer driver
location
string (network
pathname)
Specifies the pathname of
the share for the printer
driver file.
None Share
lpq cache time numeric (time in
seconds)
Sets the amount of time in
seconds that Samba will
cache the lpq status.
10 Global
postscript boolean Treats all print jobs sent as
postscript by prepending %!
at the beginning of each file.
no Share
load printers boolean Automatically loads each of no Global
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
218
Table 7.2: Printing Configuration Options
Option Parameters Function Default Scope
the printers in the printcap file
as printing shares.
print command string (shell
command)
Sets the Unix command to
perform printing.
See below Share
lpq command string (shell
command)
Sets the Unix command to
return the status of the
printing queue.
See below Share
lprm command string (shell
command)
Sets the Unix command to
remove a job from the
printing queue.
See below Share
lppause
command
string (shell
command)
Sets the Unix command to
pause a job on the printing
queue.
See below Share
lpresume
command
string (shell
command)
Sets the Unix command to
resume a paused job on the
printing queue.
See below Share
printcap name
(printcap)
string (fully-qualified
pathname)
Specifies the location of the
printer capabilities file.
System
dependent
Global
min print space numeric (size in
kilobytes)
Sets the minimum amount of
disk free space that must be
present to print.
0 Share
queuepause
command
string (shell
command)
Sets the Unix command to
pause a queue.
See below Share
queueresume
command
string (shell
command)
Sets the Unix command to
resume a queue.
See below Share
7.2.3.1 printing
Chọn lựa cấu hình in ấn dễ ràng chỉ cho Samba về hệ thống Unix in ấn của bạn,nó là tập
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
219
hợp cú pháp in ấn ñược sử dụng.Với Unix có một vài khác biệt giữ họ các lệnh ñến các
quản lý in ấn cũng như trạng thái in ấn.Hãy xem bảng 7.3 :
Table 7.3: Printing Types
Variable Definition
BSD Berkeley Unix system
SYSV System V
AIX AIX Operating System (IBM)
HPUX Hewlett-Packard Unix
QNX QNX Realtime Operating System (QNX)
LPRNG LPR Next Generation (Powell)
SOFTQ SOFTQ system
PLP Portable Line Printer (Powell)
Giá trị cho chọn lựa này sẽ là một trong bẩy tham biến,ví dụ như:
printing = SYSV
Theo mặc ñịnh,giá trị của chọn lựa phụ thuộc vào hệ thống và ñược cấu hình ngay khi
Samba ñược biên dịch song.ðối với hầu hết các hệ thống,script configure sẽ tự ñộng xác
ñịnh hệ thống máy in và sử dụng nó thực sự trong makefile Samba.Tuy nhiên,nếu hệ thống
máy in của bạn là PLP,LPRNG hoặc QNX,bạn cần phải chỉ ra ñiều ñó trong tập tin makefile
hoặc share printing.
ðó là cái chung cho hệ thống BSD và SYSV.Mỗi máy in trên BSD server cần phải ñược
miêu tả rõ ràng trong tập tin quyền năng máy in của hệ thống /etc/printcap.
Chọn lựa cấu hình printing sẽ tự ñộng lấy ba chọn lựa ñúng nhất ñể trả lời cho những câu
hỏi: print command, lpq command, và lprm command.
7.2.3.2 printable
Chọn lựa printable cần phải nhận giá trị yes ñể share như là một dịch vụ in ấn.Nếu chọn lựa
không ñược thiết lập,share sẽ như là một disk share bình thường.Bạn có thể thiết lập như
sau:
[printer1]
printable = yes
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
220
7.2.3.3 printer
Chọn lựa này,hay còn gọi là printer name,chỉ ra tên của máy in trên server ñến ñiểm
share.Chọn lựa này không có giá trị mặc ñịnh và ñược chỉ ra trong tập tin cấu hình.Ví dụ
như:
[deskjet]
printer = hpdkjet1
7.2.3.4 printer driver
Chọn lựa printer driver chỉ ra các chuỗi mà Samba sử dụng ñể nói Windows máy in nào.Nếu
chọn lựa ñược xác lập chính xác,Windows Printer Wizard sẽ biết ñược ñấy là máy in
nào,và dễ ràng cài ñặt ñể sử dụng.Những thông tin khớp ñược chỉ ra trong Printer Wizard,
như là hình 7.9.Ví dụ,Apple LaserWriter sử dụng kiểu Apple LaserWriter;còn Hewlett
Packard Deskjet 560C sử dụng máy in HP DeskJet 560C.
hình 7.9:
7.2.3.5 printer driver file
ðấy là chọn lựa toàn cục lấy vị trí của tập tin ñịnh dạng máy in của Windows 95/98,mà cần
ñể lấy ra driver cho clients sử dụng một Samba printer.Theo mặc ñịnh giá trị của nó là
/usr/local/samba/lib/printers.def.Bạn có thể viết lại như sau:
[deskjet]
printer driver file = /var/printers/printers.def
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
221
7.2.3.6 printer driver location
ðấy là chọn lựa chỉ ra một share ñịnh trước mà chứa tập tin ñịnh dạng máy in của Windows
95/98.Không có giá trị mặc ñịnh cho tham biến này.Bạn có thể chỉ ra vị trí như là tên của
ñường dẫn trong network như sau:
[deskjet]
printer driver location = \\%L\PRINTER$
7.2.3.7 lpq cache time
Chọn lựa toàn cục lpq cache time cho phép bạn thiết lập số giây mà Samba sẽ nhớ trạng
thái in ấn hiện thời.Sau khoản thời gian ñó,Samba sẽ ñưa ra lệnh lpq ñể cập nhật thông tin
về trạng thái in ấn.Theo mặc ñịnh là 10s,nhưng bạn có thể thiết lập lại giá trị này lâu hơn
khoảng 30s như sau:
[deskjet]
lpq cache time = 30
7.2.3.8 postscript
Chọn lựa postscript phát huy sữc mạnh máy in ñến tất cả các dữ liệu gửi ñến nó như là
PostScript.Nó ñược quyết ñịnh trước bằng kí tự %! tại ñiểm bắt ñầu của dòng ñầu tiên của
mỗi công việc.Giá trị mặc ñịnh là no,nhưng bạn có thể thay ñổi lại nó như sau:
[deskjet]
postscript = yes
7.2.3.9 print command, lpq command, lprm command, lppause command, lpresume command Những chọn lựa này chỉ cho Samba cách Unix sử dụng lệnh ñể quản lý và gửi dữ liệu ñến
máy in.Các lệnh Unix phức tạp như: lpr (send to Line PRinter), lpq (List Printer Queue), lprm
(Line printer ReMove), and optionally lppause and lpresume.Ví dụ như sau:
lpq command = /usr/ucb/lpq %p
ðấy là dòng chỉ cho lpq command sử dụng /usr/ucb/lpq. Tương tự:
lprm command = /usr/local/lprm -P%p %j
mà thiết lập máy in Samba chuyển sang lệnh /usr/local/lprm, và sẵn sàng thực hiện số công
việc in ấn nhờ vào giá trị %j.
Bảng 7.4 chỉ ra các lệnh cơ bản cho mỗi chọn lựa in ấn.Nó phổ biến cho hệ thống BSD
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
222
Table 7.4: Default Commands for Various Printing Commands
Option BSD, AIX, PLP, LPRNG SYSV, HPUX QNX SOFTQ
print command lpr -r -P%p %s lp -c -d%p %s;
rm %s
lp -r -P%p
%s
lp -d%p -s %s;
rm %s
lpq command lpq -P%p lpstat -o%p lpq -P%p lpstat -o%p
lprm command lprm -P%p %j cancel %p-%j cancel
%p-%j
cancel %p-%j
lppause
command
lp -i %p-%j -H hold (SYSV
only)
None None None
lpresume
command
lp -i %p-%j -H
resume(SYSV only)
None None qstat -s -j%j -r
Những chọn lựa này có thể cần thiết lập rõ ràng nếu như hệ thống máy in của bạn không có
chọn lựa "-r" trên lệnh in ấn.Ví dụ như:
/usr/local/lpr -P%p %s; /bin/rm %s
Về góc ñộ lập trình,những chọn lựa smb.conf có thể sử dụng ñể gỡ lỗi như sau:
print command = cat %s >>/tmp/printlog; lpr -r -P%p %s
Sau BSD,hệ thống in ấn phổ biến nhất là SYSV hoặc System V,một vài phương án cho IBM
AIX và Hewlett-Packard's HP-UX.ðó là những hệ thống không hề có tập tin
/etc/printcap.Thay thế vào ñó,chọn lựa printcap file có thể thiết lập ñược một cách thích
ñáng lệnh lpstat cho hệ thống.Nó thông báo cho Samba cách lấy danh sách máy in từ lệnh
lpstat.Bạn có thể chỉ ra chọn lựa toàn cục printcap name ñến tên của giả mạo printcab mà
bạn chỉ ra.Nó là chữ thường và ñược cấu tạo từ một vài dòng sau:
lp|print1|My Printer 1
print2|My Printer 2
print3|My Printer 3
Mỗi dòng là tên của một máy in và ñược ñịnh ra bí danh của nó.Máy in ñầu tiên là lp,printer1
hoặc My Printer 1 mà ñược ưa thích sử dụng hơn.Tên ñầu tiên sẽ ñược sử dụng thay thế
%p trong bất cứ lệnh nào của Samba cho máy in.
Hai dạng máy in cũng có thể làm việc trong Samba là :LPRNG (LPR New Generation) và
PLP (Public Line Printer).Chúng như là những public domain và hệ thống in ấn mã nguồn
mở và ñược sử dụng nhiều trê các site.Thêm vào ñó,SOFTQ và QNX là những hệ thống
hiện nay cũng làm việc với Samba.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
223
7.2.3.10 load printers
Chọn lựa load printers chỉ cho Samba biết cách tạo share cho tất cả các máy in ñược nhận
dạng tên và tải những share vào trong danh sách trình duyệt.Samba sẽ tạo và liệt kê những
share printers cho mỗi tên máy in trong /etc/printcap(hoặc tương ứng).Ví dụ,nếu như tập tin
printcap của bạn như sau:
lp:\
:sd=/var/spool/lpd/lp:\
# spool directory
:mx#0:\
# maximum file size (none)
:sh:\
# surpress burst header (no)
:lp=/dev/lp1:\
# device name for output
:if=/var/spool/lpd/lp/filter:
# text filter
laser:\
:sd=/var/spool/lpd/laser:\
# spool directory
:mx#0:\
# maximum file size (none)
:sh:\
# surpress burst header (no)
:lp=/dev/laser:\
# device name for output
:if=/var/spool/lpd/lp/filter:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
224
# text filter
Bạn sẽ chỉ ra :
load printers = yes
Những share [lp] và [laser] sẽ tự ñộng ñược tạo ra sẽ có hiệu lực share print khi Samba
khởi ñộng.Cả hai sẽ mượn cấu hình ñược chỉ ra trong section [printers] ñể tự cấu hình
chính bản thân chúng.
7.2.3.11 printcap name
Nếu chọn lựa printcap name ñược nhìn thấy trong share printing,Samba sẽ sử dụng tập tin
như là tập tin quyền lực máy in của hệ thống.Thông thường là /etc/printcap.Tuy nhiên,bạn
có thể thiết lập lại nó ñến tập tin mà chứa ñựng nội dung chỉ dành cho máy in mà bạn muốn
gửi lên mạng.Bạn có thể làm như sau:
[deskjet]
printcap name = /usr/local/printcap
7.2.3.12 min print space
Chọn lựa min print space xác ñịnh không gian cần thiết của catalog spool có thể cho phép
trên disk trước khi in ấn.Giá trị của nó là zero(0) theo mặc ñịnh.Thiết lập này cho phép sử
dụng bất cứ lượng không gian nào còn trống theo kb.Bạn có thể thiết lập lại như sau:
[deskjet]
min print space = 4000
7.2.3.13 queuepause command
ðấy là chọn lựa dùng ñể chi cho Samba cách tạm dừng quá trình in ấn theo thứ tự của ñầu
vào thông tin,cũng như phản ñối lại công việc theo thứ tự.Theo mặc ñịnh giá trị của nó phụ
thuộc vào kiểu chọn in ấn.Có lẽ bạn không cần ñến nó.
7.2.3.14 queueresume command
ðấy là chọn lựa dùng ñể chi cho Samba cách lập lại một quá trình in ấn bị tam dừng hoặc
cũng như phản ñối lại quá trình lặp lại một công việc trên hàng in ấn.Theo mặc ñịnh giá trị
của nó phụ thuộc vào kiểu chọn in ấn.Có lẽ bạn không cần ñến nó.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
225
7.3 Giải pháp ñịnh danh với Samba
Nếu bạn cần ñịa chỉ của máy,bạn chỉ cần ñơn giản broadcast tên của nó qua network
và máy sẽ trả lời lại chính bản thân nó.ðó tương tự như:bất kì ai nhìn thấy máy có tên là
fred có thể hỏi broadcast và tìm thấy nó nếu như nó tồn tại và IP-address của nó là gì.
WINS và broadcast không chỉ nguyên là tiềm năng của giải pháp ñặt tên.Samba có bốn
nguyên lý có bốn cơ chế làm việc:
WINS
Broadcasting
Unix /etc/hosts hoặc NIS/NIS+ tương ứng
Tập tin LMHOSTS
Samba có thể làm việc với bất kỳ hoặc tất cả phương án ñịnh danh mà bạn chỉ ra trong tập
tin cấu hình Samba với tham biến name resolve order.Tuy nhiên trước tiên chúng ta hãy
làm việc với tập tin LMHOSTS trước.
7.3.1 Tập tin LMHOSTS
LMHOSTS là một tập tin host LAN Manager chính tắc sử dụng ñển quyết ñịnh tên ứng với
các IP-address trên hệ thống.Nó là NBT tương ứng với tập tin /etc/hosts chính tắc trên các
hệ thống Unix.Theo mặc ñịnh nó ñược lưu trữ ở /usr/local/samba/lib/LMHOSTS và share
với kiểu ñịnh dạng như là /etc/hosts. Ví dụ:
192.168.220.100 hydra
192.168.220.101 phoenix
Sự khác biệt là tên chuẩn bên phải là tên của NetBios thay thế bằng tên của DNS.Bởi
vì,chúng là tên NetBios,bạn có thể gán dạng gốc của nó như sau:
192.168.220.100 hydra#20
192.168.220.100 simple#1b
192.168.220.101 phoenix#20
Ở ñây,chúng ta ñịnh tên máy là hydra thành PDC của Domain SIMPLE như ñã chỉ ra với
ñịnh dạng tiêu chuẩn là <1B> ñứng sau IP-address của hydra ở dòng thứ hai.Chỉ có hai
trạm làm việc tiêu chuẩn.
Nếu bạn ñặt tập tin LMHOSTS ở một nơi khác so với vị trí theo mặc ñịnh,bạn sẽ cần phải
thông báo cho tiến trình nmbd khi bắt ñầu thực thi như sau:
nmbd -H /etc/samba/lmhosts -D
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
226
7.3.2 Thiết lập Samba ñể sử dụng WINS server khác
Bạn có thể cấu hình Samba ñể sử dụng như một WINS server cho bất cứ nơi nào trên
network bởi ảnh của nó ñến IP-address của WINS server.Nó ñược thực hiện với chọn lựa
toàn cục global wins server như sau:
[global]
wins server = 192.168.200.122
Với chọn lựa này,Samba sẽ gửi tất cả lời yêu cầu WINS ñến server tại 192.168.200.122.
Chú ý,bởi vì những yêu cầu ñược gửi tại một máy,chúng tôi không ghĩ ñến bất cứ vấn
ñề nào gắn liền với broadcast.Tuy nhiên,bạn ñã chỉ ra IP-address cho WINS server trên
tập tin cấu hình,Samba sẽ không nhất thiết sử dụng WINS server trước những dạng khác
của tên mà ñược ñề cử vào.Samba sẽ cố gắng thử những tên ñề ra ñể kĩ xảo hóa nó với
chọn lựa name resolve order mà chúng ta sẽ nói ngắn gọn về nó.
Nếu bạn có Samba trên Subnet,mà thầm lặng sử dụng broadcast và Samba server biết vị
chí hợp lý của WINS server trên một subnet khác,bạn có thể cấu hình Samba server ñể ñi
qua trước bất cứ tên yêu cầu ñề cử nào với chọn lựa wins proxy như sau:
[global]
wins server = 192.168.200.12
wins proxy = yes
7.3.3 Cấu hình Samba như là WINS server
Bạn có thể thiết lập Samba như là WINS server bởi hai chọn lựa cấu hình toàn cục như sau:
[global]
wins support = yes
name resolve order = wins lmhosts hosts bcast
Chọn lựa wins support quay ngược Samba ñến WINS server.ðó là tất cả bạn cần làm.Chọn
lựa wins support=yes và wins server loại trừ lẫn nhau;Bạn không thể ñồng thời làm Samba
như WINS server và cũng là ñiểm chỉ ñến ñến một hệ thống khác như là server.
Nếu Samba ñóng vai trò như là WINS server,bạn nên chắc chắn lấy thành một họ theo chọn
lựa name resolve order ñể dễ ràng hơn.Chọn lựa này chỉ cho Samba cách mà cố gắng thử
nó ñến một tên NetBios ñược cho phép.Bạn có thể sử dụng bốn giá trị sau:
lmhosts
Sử dụng tập tin LMHOST LAN Manager
hosts
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
227
Sử dụng phương pháp ñịnh danh tiêu chuẩn của hệ thống Unix,/etc/hosts,DNS,NIS hoặc
một tổ hợp
wins
Sử dụng WINS server
bcast
Sử dụng phương pháp broadcast
Bạn có thể sử dụng các giá trị trên trong tập tin cấu hình như sau:
name resolve order = wins lmhosts hosts bcast
ðấy là khả năng mà Samba sẽ cố gắng sử dụng ñầu vào WINS của nó cho việc quyết ñịnh
tên cho phép dưới tập tin LMHOST Lan Manager trên hệ thống.Tiếp theo,giá trị của hosts
có thể là nguyên nhân làm nó sử dụng phương pháp ñịnh dang Unix truyền thống.Tổ hợp
các từ trong hosts có thể sai lầm.Nó không chỉ ñối với tập tin /etc/hosts,mà ngay cả ñối với
việc sử dụng DNS và NIS.Cuối cùng,nếu cả ba ñều không làm việc,nó sẽ sử dụng
broadcast ñể cố gắng tìm ñến vị chí của máy tương ứng.
Như vậy bạn ñã có thể thiết lập Samba server như là WINS server ñể thử nghiệm với DNS
server của hệ thống nếu như lời yêu cầu hosts không thể tìm thấy trong hệ thống cơ sở dữ
liệu WINS của nó.Bạn có thể tìm thấy IP-address của DNS server bằng cách tìm trong tập
tin /etc/resolv.conf.Bạn sẽ nhìn thấy dạng tương tự như sau:
nameserver 127.0.0.1
nameserver 192.168.200.192
Nó chỉ ra DNS server nằm ở vị trí có IP là 192.168.220.192.
Sử dụng chọn lựa toàn cục dns proxy ñể cấu hình Samba như DNS server như sau:
[global]
wins support = yes
name resolve order = wins lmhosts hosts bcast
dns proxy = yes
7.3.4 Chọn lựa cấu hình của ñịnh danh tên
Table 7.5: WINS Options
Option Parameters Function Default Scope
wins
support
boolean If set to yes, Samba will act as a
WINS server.
no Global
wins
server
string (IP address
or DNS name)
Identifies a WINS server for Samba
to use for name registration and
None Global
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
228
Table 7.5: WINS Options
Option Parameters Function Default Scope
resolution.
wins proxy boolean Allows Samba to act as a proxy to a
WINS server on another subnet.
no Global
dns proxy boolean If set to yes, a Samba WINS server
will search DNS if it cannot find a
name in WINS.
no Global
name
resolve
order
lmhosts, hosts,
wins, or bcast
Specifies an order of the methods
used to resolve NetBIOS names.
lmhosts
hosts wins
bcast
Global
max ttl numerical Specifies the maximum time-to-live in
seconds for a requested NetBIOS
names.
259200 (3
days)
Global
max wins
ttl
numerical Specifies the maximum time-to-live in
seconds for NetBIOS names given
out by Samba as a WINS server.
518400 (6
days)
Global
min wins
ttl
numerical Specifies the minimum time-to-live in
seconds for NetBIOS names given
out by Samba as a WINS server.
21600 (6
hours)
Global
7.3.4.1 wins support
Samba sẽ sẵn sàng chuẩn bị tên dịch vụ WINS cho tất cả các máy trên network nếu bạn
thiết lập như sau dưới section [global] trong tập tin cấu hình smb.conf:
[global]
wins support = yes
Theo mặc ñịnh,giá trị của nó là no,mà sử dụng ñể cho phép Windows NT server khác trở
thành WINS server.Nếu bạn thực hiện chọn lựa này,hãy nhớ rằng,Samba WINS server hiện
thời không thể thay ñổi dữ liệu với bất cứ bản lưu trữ dự phòng dữ liệu WINS server.Nếu
ñược kích hoạt,chọn lựa này sẽ thực hiện nhờ vào nhau với tham biến wins server;bạn
không thể thiết lập cả hai giá trị yes tại cùng một thời ñiểm hoặc không Samba sẽ bị lỗi.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
229
7.3.4.2 wins server
Samba có thể sử dụng một WINS server hiện thời trên network nếu bạn chỉ ra chọn lựa toàn
cục wins server trong section [global] của tập tin cấu hình.Giá trị của chọn lựa này là
IP-address hoặc tên DNS của WINS server.Ví dụ như:
[global]
wins server = 192.168.220.110
hoặc
[global]
wins server = wins.example.com
7.3.4.3 wins proxy
ðấy là chọn lựa cho phép Samba ñóng vai trò như là một proxy ñối với WINS server
khác.WINS server có thể chỉ ra qua chọn lựa wins server.Proxy sẽ bật lại WINS server trả
lời ngược lại cho clients.Bạn có thể thực hiện chọn lựa này trong section [global]:
[global]
wins proxy = yes
7.3.4.4 dns proxy
Nếu bạn muốn DNS ñược sử dụng như là tên không tìm thấy trong WINS,bạn có thể sử
dụng như sau:
[global]
dns proxy = yes
ðấy sẽ là nguyên nhân nmbd thắc mắc cho máy sử dụng dịch vụ DNS server.Bạn có thể
ngắt hoạt ñộng của chọn lựa này nếu bạn không có kết nối thườn xuyên ñến DNS
server.Chúng tôi khuyên bạn nên sử dụng WINS server.Nếu bạn không có WINS server
trên network,hãy lấy Samba nhứ là một WINS server.Tuy nhiên,ñừng dùng hai máy Samba
server WINS cùng lúc có thể làm rối loạn trao ñổi dữ liệu trên cơ sở dữ liệu WINS
7.3.4.5 name resolve order
Chọn lựa toàn cục name resolve order chỉ ra cấp bậc của dịch vụ mà Samba sẽ sử dụng ñể
cố gắng quyết ñịnh tên nào ñược phép.Theo mặc ñịnh order sử dụng cho tập tin
LMHOSTS,sử dụng theo dạng ñịnh tên tiêu chuẩn Unix truyền thống,mà nghi ngờ WINS
server,và cuối cùng sử dụng broadcast ñể ñịnh rõ ñịa chỉ của tên NetBios.Bạn có thể thay
ñổi nó như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
230
[global]
name resolve order = lmhosts wins hosts bcast
Bạn có thể ñọc thêm section 7.3.3 cấu hình Samba như là WINS server ñể có thêm thông
tin
7.3.4.6 max ttl
ðấy là chọn lựa ñịnh ra thời gian lớn nhất trong quá trình tồn tại mà tên NetBios ñã ñược
ñăng kí với Samba server sẽ ñươc kích hoạt lại.Bạn có thể không cần ñến giá trị này.
7.3.4.7 max wins ttl ðấy là chọn lựa ñưa ra thời gian lớn nhất có thể tồn tại mà tên NetBios ñược nhận dạng từ
WINS server sẽ ñược kích hoạt lại.Bạn có thể không cần thay ñổi giá trị mặc ñịnh của nó.
7.3.4.8 min wins ttl
ðấy là chọn lựa ñưa ra thời gian nhỏ nhất có thể tồn tại mà tên NetBios ñược nhận dạng từ
WINS server sẽ ñược kích hoạt lại.Bạn có thể không cần thay ñổi giá trị mặc ñịnh của nó.
8.Bổ sung thêm thông tin Samba
8.1 Làm việc với lập trình viên
Nếu bạn có những lập trình viên truy cập trên Samba server của bạn,bạn sẽ muốn nhìn thấy
những chọn lựa ñặc biệt ñược liệt kê trong bảng 8.1
Table 8.1: Programming Configuration Options
Option Parameters Function Default Scope
time server boolean If yes, nmbd announces itself as a
SMB time service to Windows
clients.
no Global
time offset numerical (number Adds a specified number of 0 Global
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
231
Table 8.1: Programming Configuration Options
Option Parameters Function Default Scope
of minutes) minutes to the reported time.
dos filetimes boolean Allows non-owners of a file to
change its time if they can write to
it.
no Share
dos filetime
resolution
boolean Causes file times to be rounded to
the next even second.
no Share
fake directory
create times
boolean Sets directory times to avoid a MS
nmake bug.
no Share
8.1.1 Time synchronization
Time synchronization có thể rất quan trọng cho các nhà lập trình.Chú ý những chọn lựa sau:
time service = yes
dos filetimes = yes
fake directory create times = yes
dos filetime resolution = yes
delete readonly = yes
Nếu bạn thiết lập những chọn lựa này,Samba shares sẽ sẵn sàng cung cấp những loại tập
tin thời gian thích hợp với Visual C++,nmake,và những chương trình Microsoft lập trình
khác.Ngoài ra,PC make sẽ ñể ý ñến hoạt ñộng của tất cả các tập tin trong catalog cần ñể
biên dịch lại trong bất cứ thời ñiểm nào.Rõ ràng,ñó không phải là những ñiều bạn muốn.
8.1.1.1 time server
Nếu như Samba server có một ñồng hồ chính xác hoặc một client của Unix có thời gian trên
network,bạn có thể chỉ dẫn nó ñể mở rộng nó như là một SMB time bởi chọn lựa time server
như sau:
[global]
time service = yes
Client sẽ yêu cầu thởi gian chính xác với lệnh trong DOS như sau:
C:\NET TIME \\server /YES /SET
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
232
Lệnh này có thể ñặt trong một Windows Logon Script(xem chương 6)
Theo mặc ñịnh,giá trị của nó là no.Nếu bạn bật dịch vụ này lên,bạn có thể sử dụng lệnh trên
ñể giữ client thời gian không bị mât ñi.Time synchronization chính là ñiều quan trọng ñối với
clients sử dụng chương trình như là make,mà biên dịch cơ sở dữ liệu dựa vào thời ñiểm
thay ñổi cuối cùng của tập tin.
8.1.1.2 time offset
ðối với những client mà không ñưa ra một tiến trình ñể lưu lại chính xác,Samba ñã chuẩn bị
sẵn chọn lựa time offset.Nếu ñược thiết lập,nó xác ñịnh con số của phút so với thời ñiểm
hiện tại.ðó là một hình thức khéo léo,nếu bạn ở Newfoundland và Windows không biết về
sự chênh lệch 30 phút:
[global]
time offset = 30
8.1.1.3 dos filetimes
Chỉ có root và chủ sở hữu mới có thể thay ñổi thời gian biến ñổi lần cuối của tập tin trên hệ
thống Unix.Chọn lựa dos filetimes cho lớp share cho phép Samba server bắt chước những
kí tự của máy DOS/Windows:Bất cứ người nào cũng có thể thay ñổi thời gian cuối của tập
tin trên share nếu họ có quyền ghi lên tập tin ấy.
Theo mặc ñịnh,chọn lựa này bị cấm.Thiết lập nó giá trị yes thường tất yếu cho phép chương
trình PC make là việc chính xác.Không có nó,chúng không thể thay ñổi thời gian biến ñổi lần
cuối của chính chúng.
8.1.1.4 dos filetime resolution
Chọn lựa dos filetime resolution dành cho lớp share.Bạn có thể thực hiện như sau:
[data]
dos filetime resolution = yes
Chúng tôi khuyến khích bạn sử dụng chọn lựa này nếu như bạn sử dụng Microsoft Visual
C++ trên Samba
8.1.1.5 fake directory create times
Chọn lựa fake directory create times ñể giữ cho chương trình PC make ôn hoà.VFAT và
NTFS ghi lại thời gian tạo ra một catalog trong khi Unix lại không.Không có nó,Samba dễ
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
233
dàng ghi lại ngày tháng của catalog(thường là cho lần thay ñổi cuối cùng) và gửi lại nó cho
clients.Nếu như không ñủ,hãy thiết lập chọn lựa này dưới share ñược chỉ ra:
[data]
fake directory create times = yes
8.2Magic Scripts(Script kì diệu)
Những chọn lựa dưới ñây phân chia những magic scripts trên Samba server.Magic Scripts
là phương pháp thực thi chương trình trên Unix và gửi kết quả ngược lại ñến SMB
clients.Tuy nhiên,một vài người sử dụng và những chương trình của họ thầm lặng dựa vào
những chọn lựa này ñể các chức năng của chương trình chuẩn mực.Magic Scripts không
ñược tin cậy nhiều,chúng ñược sử dụng một cách chán nản trong các ñội Samba.
ðọc bảng 8.2 ñể có thêm thông tin:
Table 8.2: Networking Configuration Options
Option Parameters Function Default Scope
magic
script
string
(fully-qualified
filename)
Sets the name of a file to be
executed by Samba, as the
logged-on user, when closed.
None Share
magic
output
string
(fully-qualified
filename)
Sets a file to log output from the
magic file.
scriptname.out Share
8.2.1 magic script
Nếu chọn lựa magic script ñược thiết lập ñến tên tập tin và client tạo ra tập tin bởi tên trên
share,Samba thà chạy tập tin hơn là người sử dụng sẽ mở và ñóng nó.Ví dụ như:
[accounting]
magic script = tally.sh
Samba tiếp tục quan sát tập tin trên share.Nếu nó bằng tên của tally.sh bị ñóng(sau khi mở)
do người sử dụng,Samba sẽ thực thi nội dung của tập tin ñịa phương.Tập tin sẽ ñược gửi
ñến shell ñể thực thi.Nó trước tiên phải theo kiểu của Unix shell script.Khả năng ñó là nó
phải có một dòng kí tự mới như là dòng kết thúc trong Windows CR/LFs.Bổ sung thêm,nếu
bạn sử dụng phải có dấu #! tại ñiểm bắt ñầu của tập tin ñể chỉ ra bên dưới mà shell cần thực
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
234
thi.
8.2.2 magic output
ðấy là chọn lựa chỉ ra tập tin kết quả như trong script xác ñịnh bởi chọn lựa magic script mà
sẽ gửi kết quả ñến.Bạn phải chỉ ra tên tập tin trong một catalog có quyền hạn ghi.
[accounting]
magic script = tally.sh
magic output = /var/log/magicoutput
Nếu chọn lựa hoàn chỉnh,thì theo mặc ñịnh tên tập tin kết quả của script sẽ có phần mở
rộng .out.
8.3 Quốc tế hóa(internationalization)
Samba có hạn chế khi sử dụng các ngôn ngữ nước ngoài.Nếu bạn cần nhiều kí tự không
phải dạng ASCII chuẩn,một vài chọn lựa có thể giúp bạn như trong bảng 8.3:
Table 8.3: Networking Configuration Options
Option Parameters Function Default Scope
client code
page
Described in
this section
Sets a code page to expect from clients 850 Global
character
set
Described in
this section
Translates code pages into alternate UNIX
character sets
None Global
coding
system
Described in
this section
Translates code page 932 into an Asian
character set
None Global
valid chars string (set of
characters)
Obsolete: formerly added individual
characters to a code page, and had to be
used after setting client code page
None Global
8.3.1 client code page
Những kí tự ñược ñịnh dạng trên Windows ñược ñiều khiển bởi một khái niểm cơ bản là
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
235
code page(Bảng mã ).Những bảng mã ñược sử dụng cho DOS và Windows client ñể xác
ñịnh quy tắc sơ ñồ chữ thường ñến chữ hoa.Samba có thể ñược chỉ ra cách sử dụng một
giá trị của bảng mã qua việc sử dụng chọn lựa toàn cục client code page ñể phù hợp với
bảng mã ñược sử dụng trên clients.Chọn lựa sẽ tải một bảng mã ñược ñịnh ra trong tập tin
và có thể lấy các giá trị như trong bảng 8.4:
Table 8.4: Valid Code Pages with Samba 2.0
Code Page Definition
437 MS-DOS Latin (United States)
737 Windows 95 Greek
850 MS-DOS Latin 1 (Western European)
852 MS-DOS Latin 2 (Eastern European)
861 MS-DOS Icelandic
866 MS-DOS Cyrillic (Russian)
932 MS-DOS Japanese Shift-JIS
936 MS-DOS Simplified Chinese
949 MS-DOS Korean Hangul
950 MS-DOS Traditional Chinese
Bạn có thể gán bảng mã như sau:
[global]
client code page = 852
Theo mặc ñịnh,giá trị của nó là 850.Bạn có thể sử dụng công cụ make_smbcodepage ñi
cùng với Samba(theo mặc ñịnh /usr/local/samba/bin) ñể tạo ra bảng mã SMB của chính
mình.
8.3.2 character set
Chọn lựa toàn cục character set có thể sử dụng ñể chuyển tên tập tin cho trước về dạng
bảng mã DOS(xem section 8.3.1) tương ñương ñể có thể biểu diễn ñược bởi các kí tự
Unix.ví dụ,nếu bạn muốn chuyển ñổi kí tự Western European MS-DOS trên client thành kí
tự Western European Unix trên server,bạn có thể làm như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
236
[global]
client code page = 850
character set = ISO8859-1
Các kí tự ñược chấp nhận trong Samba 2.0 như dưới ñây:
Table 8.5: Valid Character Sets with Samba 2.0
Character Set Matching Code Page Definition
ISO8859-1 850 Western European Unix
ISO8859-2 852 Eastern European Unix
ISO8859-5 866 Russian Cyrillic Unix
KOI8-R 866 Alternate Russian Cyrillic Unix
Thông thường chọn lựa character set bị cấm hoàn toàn.
8.3.3 coding system
Chọn lựa coding system giống như chọn lựa character set.Tuy nhiên,mục ñích của nó ñể
xác ñịnh cách chuyển ñổi một bảng mã Japanese Shift JIS thành kí tự Unix tương ứng.ðể
sử dụng chọn lựa này,ñầu tiên chọn lựa client code page phải ñược nhận giá trị 932.Giá trị
có thể sử dụng cho Samba 2.0 ñược liệt kê như bảng 8.6:
Table 8.6: Valid Coding System Parameters with Samba 2.0
Character Set Definition
SJIS Standard Shift JIS
JIS8 Eight-bit JIS codes
J8BB Eight-bit JIS codes
J8BH Eight-bit JIS codes
J8@B Eight-bit JIS codes
J8@J Eight-bit JIS codes
J8@H Eight-bit JIS codes
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
237
Table 8.6: Valid Coding System Parameters with Samba 2.0
Character Set Definition
JIS7 Seven-bit JIS codes
J7BB Seven-bit JIS codes
J7BH Seven-bit JIS codes
J7@B Seven-bit JIS codes
J7@J Seven-bit JIS codes
J7@H Seven-bit JIS codes
JUNET JUNET codes
JUBB JUNET codes
JUBH JUNET codes
JU@B JUNET codes
JU@J JUNET codes
JU@H JUNET codes
EUC EUC codes
HEX Three-byte hexidecimal code
CAP Three-byte hexidecimal code (Columbia Appletalk Program)
8.3.4 vaild chars
Chọn lựa valid chars dưới Samba là sẽ bổ sung những kí tự ñặc biệt dến một bảng mã.Tuy
nhiên,chọn lựa này sẽ bắt ñầu phát triển ra ngoài một vài sự ưu ñãi trong nhiều kiểu mã hóa
hệ thống.Bạn có thể sử dụng như sau:
valid chars = Î
valid chars = 0450:0420 0x0A20:0x0A00
valid chars = A:a
Mỗi kí tự trong danh sách cần cách nhau dấu cách.Nếu là dấu ":" giữa hai kí tự hoặc các số
ñếm tương ứng,dữ liệu bên trái dấu ":" sẽ biến thành chữ hoa,trong khi ñó dữ liệu bên phải
dấu ":" biến thành chữ thường.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
238
Chúng tôi khuyến khích bạn nên sử dụng chọn lựa này.Thay vào ñấy,hãy chọn một bảng
mã có thể hiển thị rõ ràng cho section,tuy nhiên,nó phải ñược liệt kê sau chọn lựa client
code page
mà bạn muốn sử dụng ñể bổ sung thêm vào kí tự.
8.4 WinPopup Messanges
Bạn có thể sử dụng WinPopup tool (WINPOPUP.EXE) trong Windows ñể gửi ñi tin nhắn
ñến người sử dụng hoặc trong workgroup trên network. ðấy là công cụ ñược ñịnh ra với
Windows 95 OSR 2 và trở thành dạng tiêu chuẩn trong Windows 98.Với cả hai Windows 95
hoặc 98 ,bạn cần phải chạy WinPopup ñể nhận và gửi tin nhắn WinPopup.Với Windows
NT,bạn có thể nhận tin nhắn trừ khi sử dụng công cụ.Chúng sẽ tự ñộng hiện ra một khung
cửa sổ nhỏ như hộp thoại trên màn hình khi ñến ñích.Hình 8.1
Samba có chọn lựa WinPopup messaging và message command như bảng 8.7
Table 8.7: WinPopup Configuration Option
Option Parameter Function Default Scope
message
command
string (fully-qualified
pathname)
Sets a command to run on Unix
when a WinPopup message is
received.
None Global
8.4.1 message command
Chọn lựa message command của Samba sẽ chỉ ra ñường dẫn ñến chương trình mà sẽ
chạy trên Server khi một Windows popup message truyền ñến nơi tại server.Lệnh sẽ thực
thi như tài khoản Guest.Nếu bạn biết ñược có ai ñó sử dụng console,ñội Samba khuyến
khích bạn nên sử dụng như sau:
[global]
message command = /bin/csh -c 'xedit %s; rm %s' &
Chú ý ñến các giá trị sử dụng ở ñây.Tham biến %s sẽ ứng với tập tin chứa trong
messange.Tập tin ñược xóa ñi khi lệnh kết thúc.Còn lại sẽ xây dựng lên hệ thống tập tin
pop-up trên Samba server.
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
239
Bổ sung thêm ba giá trị có thể sử dụng cho message command như bảng 8.8:
Table 8.8: Message Command Variables
Variable Definition
%s The name of the file in which the message resides
%f The name of the client that sent the message
%t The name of the machine that is the destination of the message
8.5 Những chọn lựa mới ñược bổ sung thêm
Samba ñã có hàng loạt những chọn lựa ñược sử dụng trong Samba 2.0,nhưng một vài
trong ñó không làm việc hoặc trong quá trình bắt mới ñầu.Với Samba 2.0.7 chúng tỗi sẽ
cung cấp cho các bạn những chức năng thêm như dưới ñây bảng 8.9:
Table 8.9: Recently Added Options
Option Parameters Function Default Scope
change notify
timeout
numerical
(number of
seconds)
Sets the interval between checks
when a client asks to wait for a
change in a specified directory.
60 Global
machine
password
timeout
numerical
(number of
seconds)
Sets the renewal interval for NT
domain machine passwords.
604,800
(1 week)
Global
stat cache boolean If yes, Samba will cache recent
name mappings.
yes Global
stat cache size numerical Sets the size of the stat cache. 50 Global
utmp boolean Turns on logging of Samba users
in the utmp file. Requires
--with-utmp.
no Share
utmp dir string (pathname) Sets the directory where Samba
expects to find the utmp/utmpx
file.
None Share
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
240
Table 8.9: Recently Added Options
Option Parameters Function Default Scope
inherit
permissions
boolean Sets the permissions of newly
created directories to the same as
their parent.
no Share
write cache size numerical (bytes) Sets the size of a write cache
(buffer) used for oplocked files.
0 Share
source
environment
string (pathname) Sets a file to read environment
variable from.
None Global
min password
length
numerical
(number of
characters)
Sets the minimum length of a new
password which Samba will try to
update the password file with .
5 Global
netbios scope string Sets the NetBIOS scope. None Global
8.5.1 change notify timeout
Chọn lựa toàn cục notify timeout mô phỏng nét ñặc trưng của Windows NT SMB gọi là
change notification.ðấy là chọn lựa như là một client yêu cầu một Windows NT server quan
sát một catalog theo một chu kì tuần hoàn trên share ñối với bất cứ sự thay ñổi nào.Có bất
cứ biến ñổi nào,server sẽ thông báo cho client
Tại phiên bản 2.0,Samba sẽ thực hiện chức năng này cho clients của nó.Tuy nhiên,có thể
làm server bị down.ðấy là chọn lựa xác ñịnh khoảng thời gian Samba cần ñợi giữa hai lần
checks.Theo mặc ñịnh, là 60s;Tuy nhiên,bạn có thể sử dụng chọn lựa này ñể chỉ ra khoảng
thời gian của mình:
[global]
change notify timeout = 30
8.5.2 machine password timeout
Chọn lựa toàn cục machine password timeout chỉ ra một vòng lặp duy trì cho domain NT
mật khẩu.Theo mặc ñịnh,giống như là vòng lặp thời gian cho Windows NT4.0 là 604,800s(1
tuần).Chọn lựa này chỉ ra số giây mà Samba phải ñợi trước khi cố gắng thay ñổi mật
khẩu.Bạn có thể làm như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
241
[global]
machine password timeout = 86400
8.5.3 stat cache
Chọn lựa toàn cục stat cache bật lên bộ ñệm của sơ ñồ nhóm tên hoạt tính.Theo mặc ñịnh
là yes.Chúng tôi khuyến khích bạn ñừng lên thay ñổi tham biến này.
8.5.4 stat cache size
Chọn lựa toàn cục stat cache size chỉ ra số lượng bộ ñệm ñược sử dụng cho chọn lựa stat
cache.Theo mặc ñịnh là 50.Chúng tôi khuyến khích bạn ñừng lên thay ñổi tham biến này.
8.5.5 utmp
Nếu bạn chỉ ra --with-utmp trong lệnh configure nó sẽ bật lên utmp logging cho người sử
dụng:chúng ñược nhìn thấy ở trong tập tin utmp.Theo mặc ñịnh là no.
8.5.6 utmp dir Nếu như chọn lựa utmp ñược thiết lập,khi ấy chọn lựa utmp dir sẽ thay ñổi catalog Samba
như trong tập tin utmp.Nếu không ñược thiết lập,theo mặc ñịnh hệ thống sẽ ñặt nó ở chỗ
cần thiết.
8.5.7 inherit permissions
Chọn lựa này làm cho những tập tin và catalog khi ñược tạo ra sẽ mang những quyền hạn
giống như catalog chứa chúng.Ví dụ,catalog con sẽ lấy các inherit permissions từ catalog
cha mẹ của chúng.Chọn lựa này sẽ chèn ép những chọn lựa create mask, directory mask,
force create mode and force directory mode nhưng không thể làm gì ñối với các chọn lựa
map archive, map hidden and map system.Theo mặc ñịnh là off.
8.5.8 write cache size
Chọn lựa write cache size thiết lập dung lượng của bộ ñệm ñược sử dụng bởi Samba khi
viết lên các tập tin không bị khóa.Những tập tin này sẽ ñược viết trên các blocks cachesize
8.5.9 source environment
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
242
Chọn lựa này sẽ ñịnh ra tập tin của biến bao quanh mà Samba sẽ ñọc khi khởi ñộng.Những
tham biến có mặt trong tập tin có thể ñược sử dụng trong smb.conf như là $%name.Ví dụ
như:
HOME=/home/sofia trong biến bao quanh có thể sử dụng trong smb.conf như
sau:"path"="$HOME"
8.5.10 min password length
ðấy là chọn lựa ñịnh ra ñộ dài ngắn nhất của mật khẩu,số kí tự,mật khẩu không mã hóa,.mà
Samba sẽ cho phép thay ñổi như Unix password.Chọn lựa này ñể chỉ cho Samba biết ñộ
nhỏ nhất của hệ thống ñược ñịnh ra mà nó có thể gây lỗi cho clients.
8.5.11 netbios scope(phạm vi)
ðấy là chọn lựa ñịnh ra phạm vi của NetBios cho Samba như sau:Samba sẽ không truyền
ñạt với bất cứ máy nào có phạm vi khác.Chọn lựa này không lên thiết lập trừ khi những máy
khác trong Lan cũng sử dụng nó.
8.6 Những chọn lựa hỗn tạp
Những chọn lựa trong bảng 8.10 liên hệ với một vài vấn ñề ñã biết.Chúng tôi không thay
ñổi chúng và khuyến khích bạn cũng làm như vậy:
Table 8.10: Miscellaneous Options
Option Parameters Function Default Scope
deadtime numerical
(number of
minutes)
Specifies the number of minutes of
inactivity before a connection should
be terminated.
0 Global
dfree
command
string (command) Used to provide a command that
returns disk free space in a format
recognized by Samba.
None Global
fstype NTFS, FAT, or Sets the filesystem type reported by NTFS Global
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
243
Table 8.10: Miscellaneous Options
Option Parameters Function Default Scope
Samba the server to the client.
keep alive seconds Sets the number of seconds between
checks for an inoperative client.
0
(none)
Global
max disk size numerical (size in
MB)
Sets the largest disk size to return to
a client, some of which have limits.
Does not affect actual operations on
the disk.
0
(infinity)
Global
max mux numerical Sets the maximum number of
simultaneous SMB operations that
clients may make.
50 Global
max open files numerical Limits number of open files to be
below Unix limits.
10,000 Global
max xmit numerical Specifies the maximum packet size
that Samba will send.
65,535 Global
nt pipe support boolean Turns off an experimental NT feature,
for benchmarking or in case of an
error.
yes Global
nt smb support boolean Turns off an experimental NT feature,
for benchmarking or in case of an
error.
yes Global
ole locking
compatib-ility
boolean Remaps out-of-range lock requests
used on Windows to fit in allowable
range on Unix. Turning it off causes
Unix lock errors.
yes Global
panic action command Program to run if Samba server fails;
for debugging.
None Global
set directory boolean If yes, allows VMS clients to issue set
dir commands.
no Global
smbrun string Sets the command Samba uses as a None Global
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
244
Table 8.10: Miscellaneous Options
Option Parameters Function Default Scope
(fully-qualified
command)
wrapper for shell commands.
status boolean If yes, allows Samba to monitor
status for smbstatus command.
yes Global
strict sync boolean If no, ignores Windows applications
requests to perform a sync-to-disk.
no Global
sync always boolean If yes, forces all client writes to be
committed to disk before returning
from the call.
no Global
strip dot boolean If yes, strips trailing dots from Unix
filenames.
no Global
8.6.1 deadtime
Chọn lựa này ñịnh ra số phút mà Samba sẽ ñợi ñể ngắt ñi hoạt ñộng của client trước khi
ñóng session của nó với Samba server.Một client coi là không hoạt ñộng khi nó không mở
các tập tin và không có dữ liệu gửi ñi từ nó.Theo mặc ñịnh là 0,khi ấy,Samba sẽ ñóng bất cứ
kết nối nào không phải là chính mà chúng ñã bị ngưng hoạt ñộng trong thời gian dài.Bạn có
thể thay ñổi giá trị của chọn lựa như sau:
[global]
deadtime = 10
Nó bảo Samba giới hạn lại bất cứ client session nào không hoạt ñộng sau 10 phút.
8.6.2 dfree command
ðấy là chọn lựa toàn cục sử dụng trên hệ thống ñể xác ñịnh chính xác không gian còn thừa
trên disk.Theo mặc ñịnh,giá trị cho chọn lựa này là no mà Samba ñã biết cách ñể tính toán
không gian còn thừa trên disk của nó sở hữu và kết quả là ñáng tin cậy.Bạn có thể làm như
sau:
[global]
dfree command = /usr/local/bin/dfree
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
245
Chọn lựa này cần ñiểm nối ñến một script mà sẽ dùng ñể lập lại tổng không gian ñĩa trên
các block và con số của các block.Chúng tôi khuyên bạn sử dụng như sau:
#!/bin/sh
df $1 | tail -1 | awk '{print $2" "$4}'
Trên hệ thống System V như sau:
#!/bin/sh
/usr/bin/df $1 | tail -1 | awk '{print $3" "$5}'
8.6.3 fstype
ðấy là chọn lựa cho lớp Share ñược ñịnh kiểu của hệ thống tập tin mà Samba thông báo khi
client yêu cầu.Bạn hãy xem bảng 8.11:
Table 8.11: Filesystem Types
Variable Definition
NTFS Microsoft Windows NT filesystem
FAT DOS FAT filesystem
Samba Samba filesystem
Theo mặc ñịnh,giá trị của nó là NTFS mà là ñại diện cho Windows NT filesystem.Tuy nhiên
bạn có thể làm như sau:
[data]
fstype = FAT
8.6.4 keep alive
ðây là chọn lựa toàn cục chỉ ro số giây mà Samba ñợi giữa hai lần gửi packages NetBios
keep-alive.Những packages này sử dụng ñể ping client với mục ñích xác ñịnh client có mặt
hay không trên network.Theo mặc ñịnh là 0,có nghĩa là Samba sẽ không gửi bất cứ
packages nào ñến tất cả.
Bạn có thể chọn như sau:
[global]
keep alive = 10
8.6.5 max disk size
ðây là chọn lựa toàn cục diễn tả một giới hạn trong Mb cho mỗi share má Samba sử
dụng.Theo mặc ñịnh là 0,có nghĩa là không giới hạn cho tất cả.Bạn có thể thay ñổi chúng
như sau:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
246
[global]
max disk size = 1000
8.6.6 max mux
ðây là chọn lựa toàn cục chỉ ra con số lớn nhất các quá trình có thể của SMB trong cùng
một lúc.Theo mặc ñịnh là 50.Bạn có thể thay ñổi nó như sau:
[global]
max mux = 100
8.6.7 max open files
ðây là chọn lựa toàn cục chỉ ra con số lớn nhất những tập tin mà Samba cho phép mở tại
các thời ñiểm khác nhau trên tất cả các tiến trình.Những giá trị này có thể tương ñương
hoặc ít hơn tổng số cho phép của hệ thống.Theo mặc ñịnh là 10,000.Bạn có thể thay ñổi
chúng như sau:
[global]
max open files = 8000
8.6.8 max xmit
ðây là chọn lựa thiết lập số packages lớn nhất mà Samba có thể trao ñổi với clients.Theo
mặc ñịnh là 65535.Bạn có thể thiết lập lại như sau:
[global]
max xmit = 4096
8.6.9 nt pipe support
ðây là chọn lựa dung ñể cho phép hoặc cấm khả năng Windows NT clients kết nối ñến NT
SMB-ñặc biệt IPC$ pipes.Bạn có thể thay ñổi như sau:
[global]
nt pipe support = yes
8.6.10 nt smb support
ðây là chọn lựa dùng ñể ñàm phán với chọn lựa NT-specific SMB với Windows NT
clients.Nếu là người sử dụng thông thường,bạn chắc chắn không thể thay ñổi giá trị mặc
ñịnh của nó:
[global]
nt smb support = yes
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
247
8.6.11 ole locking compatibility
Nếu bạn là một nhà chuyên nghiệp Unix,bạn có thể làm như sau;
[global]
ole locking compatibility = no
8.6.12 panic action
ðây là chọn lựa ñịnh ra một lệnh ñể thực thi những vấn ñề bên trong nó mà Samba gặp phải
những lỗi khi tải hoặc thực thi.Nó không có giá trị mặc ñịnh.Bạn có thể thực hiện như sau:
[global]
panic action = /bin/csh -c
'xedit < "Samba has shutdown unexpectedly!'
8.6.13 set directory
ðây là chọn lựa logic cho lớp share cho phép Digital Pathworks clients sử dụng lệnh setdir
ñể thay ñổi thư mục trên server.Nếu bạn không sử dụng Digital Pathworks client,bạn không
cần thay ñổi chọn lựa này.Theo mặc ñịnh là no,bạn có thể thay ñổi nó như sau:
[data]
set directory = yes
8.6.14 smbrun
ðây là chọn lựa thiết lập vị trí của lệnh smbrun mà Samba sử dụng như là lệnh run trên vỏ
lệnh.Theo mặc ñịnh,giá trị cho chọn lựa là tự ñộng ñược thiết lập khi Samba biên dịch thành
công.Nếu bạn không cài ñặt Samba theo catalog chuẩn tắc,bạn có thể chỉ ra tập tin nhị
phân của nó như sau:
[global]
smbrun = /usr/local/bin/smbrun
8.6.15 status
ðấy là chọn lựa mà ñịnh hướng Samba ghi chép lại hết tất cả các kết nối ñang ñược kích
hoạt ñến tập tin trạng thái.Tập tin này ñược sử dụng bởi lệnh smbstatus.Nếu bạn không có
mục ñích sử dụng nó hãy thiết lập giá trị là no.Theo mặc ñịnh giá trị là yes.Bạn có thể làm
như sau:
[global]
status = no
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
248
8.6.16 strict sync
Theo mặc ñịnh là no,nhưng bạn có thể làm như sau:
[data]
strict sync = yes
8.6.17 sync always Theo mặc ñịnh là no,nhưng bạn có thể ñịnh lại như sau:
[data]
sync always = yes
8.6.18 strip dot
ðây là chọn lựa xác ñịnh việc di chuyển dấu dot từ tên tập tin Unix như là ñịnh dạng với dấu
dot ở cuối.Theo mặc ñịnh là no.Bạn có thể viết lại nó như sau:
[global]
strip dot = yes
Chọn lựa này cần phải ñược cân nhắc,thay thế vào ñó hãy sử dụng chọn lựa mangled map.
8.7 Sao lưu dự phòng với smbtar(Backups with smbtar)
Vấn ñề cuối cùng của chúng ta trong chương này là sử dụng smbtar.Một vấn ñề chung với
kiểu PC là ñĩa floppy và CD-ROM thường quá nhỏ cho backups.Tuy nhiên,trên một vài hệ
thống cá nhân cũng có thể ñủ.Có nhiều site không thể backups PC của chúng lại tất
cả.Thay vào ñó,chúng ta phải cài ñặt lại chúng sử dụng ñĩa floppy hoặc CD-ROM khi chúng
hỏng.
Samba cũng cho phép chúng ta sử dụng chọn lựa khác:Bạn có thể backups dữ liệu của PC
bằng cách sử dụng smbtar.Bạn có thể tiến hành một cách thông thường nếu như bạn giữ
thông tin trên hệ thống Samba của bạn hoặc chỉ là ngẫu nhiên hoặc các chương trình ứng
dụng cũng như các tập tin cấu hình ñể khi cần thiết có thể sửa chữa nhanh chóng hệ thống.
ðể backup PC từ Unix server bạn cần làm như sau:
1. Chắc chắn là tập tin và máy Share Printing ñã cài ñặt trên PC và giới hạn ñến TCP/IP
protocol
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
249
2. Disk share trên PC dứt khoát phải ñọc ñược trên server
3. Có tồn tại script backup trên server
Chúng tôi sử dụng Windows 95/98 ñể diễn ñạt hai bước trên.Tiến ñến biểu tượng
Networking trên Control Panel Windows và chọn mục File and Printer Sharing cho Microsoft
Networks như hình 8.2
Nếu như "File and printer sharing for Microsoft Networks" không ñược cài ñặt,bạn có thể cài
ñặt chúng bằng cách kích lên nút Add trên Network panel.Sau ñó chọn nó.Bạn sẽ bị hỏi
cách bổ sung nó như thế nào.Chọn Service and move forward, và bạn sẽ bị hỏi cho một
vendor and a service ñể cài ñặt,Cuối cùng,chọn "File and printer sharing for Microsoft
Networks," và nhấn kép ñể kết thúc việc cài ñặt dịch vụ.
Nếu bạn ñã cài ñặt "File and printer sharing for Microsoft Networks,"thì hãy quay trở lại
Network panel và chọn TCP/IP protocol ñể làm việc với Samba network adapter của
bạn.Sau ñó kích lên nút Properties và chọn bảng Bindings.Bạn nhìn thấy hộp hội thoại như
hình 8.3.Ở ñây bạn cần phải ñịnh cho "File and Printer Sharing"ñược ñánh dấu và sử dụng
nó ñể truy cập ñến TCP/IP.
Hình 8.3:
Bước tiếp theo là cấu hình share disk mà bạn muốn backup với băng ghi server.Chuyển
ñến My Computer và chọn như ví dụ,là catalog My Documents.Kích chuột phải lên biểu
tượng và chọn Properties của nó.Bạn nhìn thấy như hình 8.4:
Chọn bảng share và bật nó lên.Bạn bây giờ có thể chon cho disk quyền hạn red-only hoặc
read-write hoặc những quyền khác với những mật khẩu tương ứng.ðấy là cho phiên bản
Windows 95/98,chỉ ñịnh ra chế ñộ bảo mật cho lớp share.Bạn có thể làm như hình 8.5.Khi
nhập mật khẩu và kích OK,bạn sẽ ñược gợi ý ñể nhập lại nó.Sau ñó bạn có thể kết thúc
bước thứ hai:
Sử dụng Samba Chuyển sang PDF bởi Phan Vũ, email:[email protected]
Biên dịch: Vũ Dũng([email protected]) website:http://khigiacmoquayve.narod.ru 1-10-2005 Voronezh Russian
250
Kêt thúc,là bước cuối sử dụng script backup trên băng ghi server bằng chương trình
smbtar.Bạn có thể làm như sau:
smbtar -s client -t /dev/rst0 -x "My Documents" -p password
Nó backup hoàn toàn share //client/My Documents ñến thiết bị /dev/rst0.Tất nhiên nó ñược
thực hiện một cách an toàn.
Tuy nhiên,nếu bạn muốn tốt hơn,có một vài khả năng mà smbtar có thể làm:
1. Backup các tập tin bổ sung sử dụng ñặc tính archive DOS.Nó ñòi hỏi client share có thể
truy cập read-write ñể có thể don dẹp bởi smbtar
2. Backup chỉ những tập tin bị thay ñổi từ một thời ñiểm nhất ñịnh(sử dụng -N filename)
3. Backup ñầu vào driver PC bằng cách gửi lên tất cả của C: hoặc D:
Chú ý,có thể làm giảm ñi sự an toàn của hệ thống khi gửi ñi mật khẩu trong script qua
command line ñến PC chứa share.
Biên dịch: Vũ Dũng([email protected])
website:http://khigiacmoquayve.narod.ru
1-10-2005 Voronezh Russian