DHCP (Dynamic Host Configuration Protocol) Server cung cấp cấu hình tự động cho các 
máy trạm (IPv4): 
- Địa chỉ IP 
- Subnet mask 
- Default Gateway 
- DNS Server 
- NTP Server 
- WINS Server 
DHCP Server cho các máy trạm "thuê" (lease) các địa chỉ và thông tin cấu hình liên quan 
trong một thời gian chỉ định trước. 
DHCP dùng giao thức UDP và các thông tin thuộc layer 2 để yêu cầu và gán địa chỉ: 
- Discovery ("dò tìm") máy trạm gởi thông điệp broadcast để tìm DHCP Server. 
- Offer ("chào hàng") DHCP Server gởi các cấu hình đề nghị cho máy trạm.
- Request ("yêu cầu") máy trạm gởi thông điệp để chính thức yêu cầu địa chỉ do máy trạm chọn. 
- Acceptant ("chấp nhận") DHCP Server khẳng định địa chỉ cho thuê.
                
              
                                            
                                
            
 
            
                 10 trang
10 trang | 
Chia sẻ: maiphuongdc | Lượt xem: 3031 | Lượt tải: 1 
              
            Bạn đang xem nội dung tài liệu Network cơ bản – DHCP – Samba, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Network cơ bản – DHCP – Samba 
I. Lệnh quản trị mạng cơ bản 
- Các lệnh theo dõi mạng căn bản: 
+ ping dùng kiểm tra khả năng kết nối đến một host từ xa. Lệnh ping gởi các thông điệp 
ICMP echo request và nhận các thông điệp ICMP echo reply do host từ xa phản 
hồi. ping cũng thống kê các thông số đường truyền đến host từ xa: số packet gởi/nhận, 
phần trăm packet mất, thời gian thực hiện, rtt (round-trip time), … 
Ví dụ: 
ping -c 3 localhost Gởi 3 (c: count) thông điệp ICMP echo request đếnlocalhost. 
Chú ý lệnh ping localhost thực hiện phân giải địa chỉ bằng cách dùng tập tin /etc/hosts. 
Đây là tập tin lưu các ánh xạ tên host – IP thiết lập tĩnh. 
Một số đối số: 
i (interval) thời gian (tính bằng giây) giữa các lần gởi packet, mặc định 1 giây, chỉ có root 
mới thiết lập trị dưới 0.2s 
s (size) kích thước dữ liệu trong packet gởi đi, mặc định là 56 (+8 byte ICMP header = 64 
byte). 
+ ifconfig dùng 
ifconfig Xem tất cả các interface đang hoạt động. 
ifconfig Xem thông tin của interface if_name. 
ifconfig -a Xem tất cả các interface, kể cả các interface không active. 
ifdown Bất hoạt (down) interface if_name. 
ifup Kích hoạt (up) interface if_name. 
hostname Xem tên máy tính. 
netstat -rn Xem Default Gateway. 
route -n Xem Default Gateway. 
route delete default Xóa Default Gateway. 
route add default gw Thêm Default Gateway mới với IP là ip. 
Thêm route đến mạng con subnet có subnet mask là snetmask, qua gateway ip: 
route add -net netmask gw 
Muốn các cấu hình tồn tại khi khởi động lại máy, ta phải lưu vào tập tin/etc/rc.local, tập tin 
này chạy các custom script sau khi các script hệ thống khởi chạy. 
- Để cấu hình DNS Client, ta cần hiệu chỉnh tập tin /etc/resolv.conf, các thông số cấu 
hình: 
nameserver DNS1 
... 
nameserver DNSn 
- Để thay đổi thông tin chứa tên các host, hiệu chỉnh tập tin /etc/hosts, các thông số cấu 
hình: 
 Host1 
... 
 Hostn 
Để đặt tên cho máy tính, hiệu chỉnh tập tin /etc/sysconfig/network, các thông số cấu 
hình: 
HOSTNAME= # Tên máy client 
GATEWAY= # Đặt Default Gateway cho client 
- Để kích hoạt tính năng IP forwarding, biến máy chạy Linux thành router, hiệu chỉnh tập 
tin /etc/sysctl.conf, thông số: 
net.ipv4.ip_forward= # Đặt thành 1 là cho phép IP forward. 
Nạp lại cấu hình đã chỉnh sửa bằng lệnh: sysctl –p 
- Thay đổi IP tạm thời: 
Thay đổi ip tạm thời cho interface có tên ip_name: ifconfig netmask 
Thay đổi IP có lưu lại trong cấu hình: chọn setup, chọn Network rồi đặt lại IP. Sau đó cập 
nhật IP bằng lệnh: 
service network restart 
Ngoài ra có thể thay đổi bằng cách hiệu chỉnh tập tin:/etc/sysconfig/network-
scripts/ifcfg- 
II. Samba 
Samba là dịch vụ hỗ trợ chia sẻ tài nguyên trên hệ thống Linux (tập tin, máy in, …) với các 
hệ thống khác như Linux khác, Windows, … Samba chạy trên nền giao thức SMB (Server 
Message Block). 
1. Cài đặt 
Kiểm tra Samba đã được cài đặt hay chưa bằng dòng lệnh: 
#rpm -q samba 
hoặc 
#locate samba 
Nếu Samba đã được cài đặt thì lệnh trên sẽ báo cho biết phiên bản của gói Samba đã cài, 
nếu chưa thì sẽ có thông báo lỗi. 
Trường hợp chưa tồn tại gói Samba, có thể download từ trang web Samba:Samba -- 
Opening Windows to a Wider World hay About Rpmfind.Net WWW Server a.k.a. 
Rufus.W3.Org 
Nếu lần đầu tiên Samba được cài đặt thì dùng lệnh: 
#rpm -i samba.rpm 
Nếu Samba đã được cài đặt trước, muốn nâng cấp lên phiên bản mới thì dùng lệnh: 
#rpm -U samba.rpm 
Hoặc có thể cài đặt từ CD-ROM như cách sau: 
#mount /mnt/cdrom ; mount file system của ổ CD-ROM 
#cd /mnt/cdrom/Redhat/RPMS 
#rpm -Uvh Samba-common-2.0.7-8.i386.rpm 
#rpm -Uvh Samba-2.0.7-8.i386.rpm 
2. Cấu hình 
Samba được cấu hình thông qua tập tin /etc/samba/smb.conf. 
File smb.conf gồm có 2 phân đoạn chính: 
[global] chứa thông số điều khiển mọi hoạt động của Samba server 
workgroup tên workgroup. 
server string tên máy Linux cài Samba server. 
hosts allow dãy IP được phép truy cập vào Samba server. Ví dụ: 192.168.1, nghĩa là các 
máy có IP bắt đầu bằng 192.168.1. đều có thể truy cập vào Samba server. 
security kiểu bảo mật dùng chia sẻ dữ liệu. Samba hỗ trợ 4 kiểu bảo mật 
là: user, share, domain và server. 
+ Dùng kiểu user khi máy con yêu cầu kết nối thông qua username/password, đây là dạng 
bảo mật đơn giản nhất. 
+ Trong cấp độ bảo mật share, các máy con xác nhận quyền của nó trên mỗi đối tượng 
chia sẻ. 
passdb backend cơ sở dữ liệu lưu password đăng nhập Samba, thường là tập 
tin /etc/samba/smbpasswd 
printing, local master, encrypt password,… có thể tham khảo thêm trong tài liệu 
Samba HOWTO. 
[share] khi có một yêu cầu truy xuất từ các máy trạm, Samba sẽ tìm các thư mục chia sẻ 
trong phân đoạn [share]. Nếu thư mục tồn tại nó sẽ kiểm tra password mà máy trạm cung 
cấp với mật khẩu Samba, nó sẽ chia sẻ thư mục này qua mạng nếu mật khẩu được thỏa 
mãn. 
comment folder chia sẻ 
path đường dẫn chứa folder được share, dùng đường dẫn tuyệt đối. 
valid users cho phép user hay nhóm user truy cập vào folder. 
Các user được cách bởi space, nhóm user thì trước tên nhóm là dấu @. 
browseable cho phép hiển thị hay không hiển thị trên trình duyêt các folder/file được chia 
sẻ. 
read only cho phép người dùng máy trạm có thể thay đổi nội dung file hay không. Nếu bỏ 
dấu chú thích tại dòng read only = no thì người dùng có thể thay đổi nội dung file, ngược 
lại (vẫn để dấu thì người dùng chỉ có thể xem nội dung mà không thể tạo thêm hay 
thay đổi bất cứ gì trong thư mục đó. 
Trong tập tin smb.conf có một số thông số không thể gán giá trị bằng "yes", ví dụ: read 
only. Nếu read only = yes thì smbd không hiểu giá trị và phát sinh lỗi cấu hình. Thực chất 
giá trị read only = yes chính là ;read only = no. 
Sau khi thiết lập tập tin cấu hình, Samba cung cấp hai công cụ dùng kiểm tra cấu hình 
là testparm và smbstatus. Để kiểm tra chính xác cần đảm bảo máy trạm và máy chủ phải 
nối được với nhau. 
a) Công cụ kiểm tra testparm 
testparm là chương trình cho phép kiểm tra giá trị của thông số trong tập tin cấu hình 
Samba. Cú pháp lệnh: 
testparm configfile [hostname hostIP] 
configfile là đường dẫn và tên tập tin cấu hình, mặc định là/etc/samba/smb.conf. 
hostname và hostIP là hai thông số tùy chọn, nó hướng dẫn Samba kiểm tra các dịch vụ 
đã liệt kê trong tập tin smb.conf. trên máy xác định bởihostname và hostIP. 
b) Công cụ kiểm tra smbstatus 
smbtatus là chương trình thông báo các kết nối hiện tại. Cú pháp lệnh: 
smbstatus [-d][-p][-s configfile] 
Tham số configfile mặc định là /etc/samba/smb.conf. Tham số –d cho ra kết quả đầy 
đủ. 
3. Tạo user cho Samba server 
Khi kết nối với các hệ điều hành khác, ví dụ Windows, phải thiết lập các Samba user dùng 
để đăng nhập. Các Samba user được tạo ra phải trùng username với các user trong Linux 
nhưng phải khác password của user đó trong Linux. Vì vậy, ta tạo tập tin mật khẩu riêng 
cho Samba từ tập tin/etc/passwd, dùng lệnh: 
#cat /etc/passwd | mksmbpassswd.sh > /etc/samba/smbpasswd 
Cấp quyền chỉ đọc và ghi cho user root: 
#chmod 600 /etc/samba/smbpasswd 
Tạo mật khẩu cho người dùng Samba: 
#sambapasswd samba_user 
Sau khi cấu hình đầy đủ cho Samba, khởi động dịch vụ Samba (daemon smb) như sau: 
#service smb start 
Nếu trước đó dịch vụ Samba đã được khởi động, ta chỉ cần khởi động lại dịch vụ như sau: 
#service smb restart 
Do Samba cần mở một số port khi chạy (139, 445, …) nên ta cần cấu hình firewall để mở 
các port này hay tắt firewall: 
#service iptables stop 
4. Samba client 
a) Kết nối Samba server từ Windows 
Nhập IP của Samba server (ví dụ: \\192.168.1.10) trong Windows Explorer. 
b) Kết nối Samba server từ Linux khác 
Mount thư mục chia sẻ từ Samba server với điểm mount trên máy trạm: 
#mkdir /mnt/samba 
#mount -o username=test password=test //192.168.36.230/share /mnt/samba 
#ls -l /mnt/samba 
5. Chia sẻ thư mục trên Samba server 
Tạo thư mục chia sẻ, gán quyền: 
#mkdir homework 
#chmod 755 homework 
Tạo nhóm: 
#groupadd GROUP1 
Tạo user thuộc nhóm: 
#useradd –m –G GROUP1 –c student01 
#passwd student01 
#smbpasswd student01 ; người dùng có password Samba khác với password Linux 
Gán quyền sở hữu folder cho user: 
#chown student01 homework 
Liệt kê tài nguyên được chia sẻ trong Samba: 
#smbclient -L //172.16.1.12 –U folder_name 
II. DHCP 
DHCP (Dynamic Host Configuration Protocol) Server cung cấp cấu hình tự động cho các 
máy trạm (IPv4): 
- Địa chỉ IP 
- Subnet mask 
- Default Gateway 
- DNS Server 
- NTP Server 
- WINS Server 
DHCP Server cho các máy trạm "thuê" (lease) các địa chỉ và thông tin cấu hình liên quan 
trong một thời gian chỉ định trước. 
DHCP dùng giao thức UDP và các thông tin thuộc layer 2 để yêu cầu và gán địa chỉ: 
- Discovery ("dò tìm") máy trạm gởi thông điệp broadcast để tìm DHCP Server. 
- Offer ("chào hàng") DHCP Server gởi các cấu hình đề nghị cho máy trạm. 
- Request ("yêu cầu") máy trạm gởi thông điệp để chính thức yêu cầu địa chỉ do máy trạm 
chọn. 
- Acceptant ("chấp nhận") DHCP Server khẳng định địa chỉ cho thuê. 
1. Cài đặt 
2. Cấu hình 
DHCP được cấu hình thông qua tập tin /etc/dhcpd.conf. Thông thường ta sao chép tập tin 
cấu hình mẫu có trong gói cài đặt dhcpd.conf.sample rồi hiệu chỉnh lại: 
#cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf 
Ý nghĩa một số tùy chọn trong tập tin cấu hình dhcpd.conf: 
[IMG]file:///C:/DOCUME%7E1/DIGIST%7E1/LOCALS%7E1/Temp/msohtml1/01/clip_image
001.gif[/IMG]ddns-update-style interim Không cho phép DHCP 
ignore client-updates cập nhật động DNS 
subnet … netmask … Subnet và netmask, ví dụ: subnet 192.168.1.0 netmask 
255.255.255.0 { } 
option routers Default gateway được dùng bởi các client, ví dụ: option routers 
192.168.1.1; 
option subnet-mask Netmask cấp cho các client, ví dụ: option subnet-mask 
255.255.255.0; 
option nis-domain NIS domain 
option domain-name Domain mame 
option domain-name-servers IP của DNS server, ví dụ: option domain-name-servers 
192.168.1.100; 
range dynamic-bootp Vùng địa chỉ cấp phát cho các client, ví dụ: range 192.168.1.201 
192.168.1.220; 
default-lease-time Thời gian mặc định cấp IP cho một client, tính bằng giây, ví dụ: 
default-lease-time 86400; 
max-lease-time Thời gian tối đa cấp IP cho một client, tính bằng giây, ví dụ: max-lease-
time 86400; 
host ns Khai báo những máy luôn nhận IP cố định 
Theo dõi tình hình cấp phát DHCP trên server: 
#cat /var/lib/dhcp/dhcpd.leases 
Dùng script /etc/init.d/dhcpd để khởi động/dừng/khởi động lại DHCP sau khi khởi động hệ 
điều hành: 
#/etc/init.d/dhcpd start 
#/etc/init.d/dhcpd stop 
#/etc/init.d/dhcpd restart 
Phải khởi động lại DHCP mỗi lúc thay đổi tập tin cấu hình. 
Để máy trạm có thể nhận địa chỉ IP từ máy chủ DHCP, phải khai báo cấu hình để máy trạm 
"nhận địa chỉ tự động từ một máy chủ". Khi tùy chọn này được thiết lập, máy trạm có thể 
"thuê" (lease) một địa chỉ IP từ máy chủ DHCP bất cứ lúc nào. 
Các bước để chia sẽ share thư mục và file trong Linux 
Một vấn đề mà người làm IT nào cũng muốn cho thuận tiện khi mình quản trị 1 hệ thống 
mạng mà trong đó không phải chỉ có OS Windows mà là OS Linux 
* Tạo ra 3 thư mục muốn chia sẽ sau nằm ở ngay thư mục / (root) 
Ex : 
Trích: 
#mkdir /smb1 
#mkdir /smb2 
#mkdir /smb3 
* Mở file smb 
Ex : 
Trích: 
#gedit /etc/samba/smb.conf 
* Kiểm tra những dòng sau, cái nào chưa có thêm vào : 
Ex : 
netbios name = Linux-Study <<<--- thêm dòng này vào .(Đây là Netbios name của PC mình 
đang muốn chia sẽ) 
workgroup = WORKGROUP <<<--- thêm chữ WORKGROUP vào .(Giống như bên OS 
Windows ta phải join vào workgroup ấy mà) 
server string = Linux-Study 
host allow = 192.168.100. 127. <<<--- Đây là những host hay máy tính nào ta muốn cho 
phép truy cập vào ta 
log file = /var/log/samba/%m.log 
#Log files can be at most 50KB 
max log size = 50 
security = user 
smb passwd file = /etc/samba/smbpasswd <<<--- thêm dóng này vào .(Đây là chỉ định nơi 
chứa file smd passwd của Samba) 
encrypt passwords = yes <<<--- thêm dòng này vào .(Cái này chắc không cần nói, các a pro 
thì quá bít rùi) 
dns proxy = no 
[home] 
comment = Home Directory 
browseable = yes <<<--- thay chữ no thành yes 
writables = yes 
[priters] 
comment = All Printer 
path = /var/spool/samba 
browseable = yes 
writable = no 
printable = yes 
[smb1] <<<--- thêm những dòng này vào 
comment = smb1 <<<--- hiện thị thư mục muốn chia sẽ 
path = /smb1 <<<--- đường dẫn chính xác của thư mục muốn chia sẽ 
browseable = ye 
writable = yes 
printable = no 
available = yes 
[smb2] 
comment = smb2 <<<--- hiện thị thư mục muốn chia sẽ 
path = /smb2 <<<--- đường dẫn chính xác của thư mục muốn chia sẽ 
browseable = yes 
writable = yes 
printable = no 
available = yes 
[smb3] 
comment = smb3 <<<--- hiện thị thư mục muốn chia sẽ 
path = /smb3 <<<--- đường dẫn chính xác của thư mục muốn chia sẽ 
browseable = yes 
writable = yes 
printable = no 
available = yes 
* Lưu lại cấu hình bằng Ctrl+S 
* Sử dụng câu lệnh sau để kiểm tra file cấu hình có chạy đúng hay không ? 
Ex : 
Trích: 
#testparm 
Ctrl+C : hủy bỏ kiểm tra 
* Tạo 1 group .(Để tiện cho các bạn quản lý về group được quyền truy cập vào thư mục 
chia sẽ này trên các OS khác) 
Ex : 
Trích: 
#groupadd gsamba10 
* Tạo user và đưa user đó vào group vừa tạo ra trên 
Ex : 
Trích: 
# useradd testsamba20 -g gsamba10 
* Thiết lập password cho user 
Ex : 
Trích: 
#passwd testsamba20 
* Thiết lập password cho smb 
Ex : 
Trích: 
#smbpasswd -a testsamba20 
* Chuyển quyền sở hữu các thư mục chia sẽ cho group tạo ra ở trên 
Ex : 
Trích: 
# chgrp gsamba10 /smb1 
# chgrp gsamba10 /smb2 
# chgrp gsamba10 /smb3 
* Thiết lập quyền hạn trên các thư mục chia sẽ 
Ex : 
Trích: 
#chmod 775 /smb1 
#chmod 776 /smb2 
#chmod 777 /smb3 
* Khởi động dịch vụ 
Ex : 
Trích: 
#service samba start 
* Còn từ máy OS Linux muốn truy cập vào thư mục chia sẽ của 1 máy OS Windows, chúng 
ta sử dụng cách sau : (Nếu các bạn sử dụng giao diện đồ họa nhá còn commanline thì e 
newbie quá nên không nhớ nổi mong các a pro đừng quát mắng e nhé 
) . 
1. Share 1 thư mục trên máy windows (VD : Studyshare) 
2. Tạo 1 user và thiết lập password cho user đó trên máy windows (VD: Study) 
3. Trên máy Linux 
Trích: 
. Places --> Connect to Server --> 
Service type : (Chọn Windows share) 
Server: (nhập địa chỉ IP hoặc tên máy windows đang share) 
Share : (nhập tên thư mục share trên windows -- VD : Studyshare) 
... 
User Name : (username đã tạo trên máy windows) 
. Nhấn Connect (Xong) 
Chú ý sau khi làm xong các bước trên muốn Linux chạy được các dịch vụ 1 cách ổn định 
thì sử dụng câu lệnh sau để tắt firewall của Linux : 
Trích: 
#iptables -F 
Theo Thế Giới Mạng 
            Các file đính kèm theo tài liệu này:
 network_co_ban_dhcp_samba_3937.pdf network_co_ban_dhcp_samba_3937.pdf