Khi server có một ổ RAID được mount vào địa chỉ /mnt/raiddrives và quản trị viên muốn chia sẻ nó trên mạng của mình để mọi người có quyền truy cập đầy đủ vào nó. Quy định của Linux bắt buộc nhà quản trị phải tạo ra một mục share như dưới đây trong tệp smb.conf:
[share]
comment = RAID File Server Share path = /srv/samba/share
browsable = yes guest ok = yes read only = no create mask = 0755
Tuy nhiên, giả sử các quyền đang được đặt với giá trị create mask, thì 0755 không có nghĩa gì với tôi. Tìm kiếm trên web chỉ đưa ra hàng trăm người sử dụng các số khác nhau mà không có lời giải thích rõ ràng về ý nghĩa của các con số. Vì vậy, ai đó có thể cho tôi biết những con số có ý nghĩa gì và làm thế nào tôi có thể tìm ra số tôi muốn sử dụng xin vui lòng?
Đây là vấn đến liên quan đến phân quyền truy cập tập tin trên Linux Có ba loại hạn chế truy cập:
Permission Action chmod option ====================================== read (view) r or 4
execute (execute) x or 1 Ngoài ra còn có ba loại hạn chếngười dùng: User ls output ================== owner -rwx--- group ----rwx--- other ---rwx 1.7.1 Quyền thư mục/thư mục
Hình 1.14 Quyền truy cậptập tin thư mục và giá trịtương ứng.
1.7.2 Ký hiệu số
Một phương pháp khác để biểu diễn các quyền của Linux là ký hiệu bát phân nhưđược hiển thị bởi stat -c %a. Ký hiệu này bao gồm ít nhất ba chữ số. Mỗi trong ba chữ số ngoài cùng bên phải đại diện cho một thành phần khác nhau của các quyền: chủ sở hữu, nhóm và những người khác.
Mỗi chữ số này là tổng của các bit thành phần của nó trong hệ thống số nhị phân:
Câu hỏi đặt ra ởđây: con số 755 có nghĩa là gì?
User: 7 = rwx; Group: 5 = r-x; Other: 5 = r-x
Điều này có nghĩa là thư mục có các quyền mặc định -rwxr-xr-x(được biểu thị bằng ký hiệu bát phân là 0755).
1.8 Câu hỏi và Bài tập cuối chương
1.8.1 Câu hỏi lý thuyết
1. Hãy trình bày cấu trúc LDAP trong Linux?
2. Nêu quy trình nâng cấp Samba domain trên Centos? 3. Cấu hình domain đồng cấp gồm những bước nào?
1.8.2 Thực hành
Cho mô hình mạng như sau:
DC1 Smb Domain DNS: hotec.vn CLIENT IP: 192.168.x.1 SN: 255.255.255.0 GW: Để trắng DNS: 192.168.x.1 DC2 Ad DC DNS: hotec.vn IP: 192.168.x.2 SN: 255.255.255.0 GW: Để trắng DNS: 192.168.x.1 IP: 192.168.x.3 SN: 255.255.255.0 GW: Để trắng DNS: 192.168.x.3 Mô tả:
- Mô hình gồm có 2 máy Centos tên dc1 và dc2
- Một máy Windows 7 Thực hiện
1. Gán IP cho các máy như hình vẽ
2. Sử dụng samba-tool nâng cấp máy dc1 lên domain với tên miền hotec.vn 3. Sử dụng công cụ dòng lệnh để:
a. Tạo OU SV và OU GV
b. Tạo user s1, s2 thuộc nhóm sv nằm trong OU SV (pass: 123456@) c. Tạo user g1, g2 thuộc nhóm gv nằm trong OU GV (pass: 123456@) 4. Thực hiện join máy Win 7 vào domain hotec.vn bằng user g1
5. Cấu hình chính sách nhóm (GPO) trên domain hotec.vn cho user thường có thể shutdown máy client
6. Cấu hình chính sách cho OU SV:
a. Control Panel chỉ xuất hiện system, date/time b. Menu start không có nút run
7. Cấu hình máy DC2 thành Addition Domain Controller a. Tên miền lấy từ DC1
b. Cấu hình uỷ quyền DNS trên DC1 cho DC2
c. Tạo thêm user mk1 trên DC2, kiểm tra dữ liệu user trên DC1 8. Kiểm thử:
a. Tắt máy DC1, đăng nhập trên máy Client vào Domain bằng mk1 b. Tạo thêm user mk2 trên DC2, kiểm tra dữ liệu user trên DC1 c. Trên máy Client hãy phân giải tên miền của hệ thống
CHƯƠNG 2. TRIỂN KHAI HẠ TẦNG MẠNG
➢ Giới thiệu chương:
Trong chương này, người học sẽ được giới thiệu và hướng dẫn thực hiện các dịch vụ làm hạ tầng mạng như DNS, các phương pháp định tuyến (tĩnh,động) bằng phần mềm Quagga, Zebra. Bên cạnh đó, việc cấp phát IP động cũng được trình bày và hướng dẫn cấu hình cho một mạng và nhiều mạng. Cấp phát IP liên mạng bằng bộ định tuyến và dhcp relay agent.
➢ Mục tiêu chương:
- Trình bày được ý nghĩa của dịch vụ DNS trong hệ thống mạng.
- Nêu được công dụng và quy trình cấu hình bộđịnh tuyến bằng Quagga/Zebra
- Trình bày được vai trò và chức năng dịch vụ cấp phát động địa chỉ IP cho các máy trạm.
- Cấu hình phân giải tên miền trên máy Linux
- Cấu hình được dịch vụ DHCP Server trên hệđiều hành Linux.
- Cấu hình bộđịnh tuyến tĩnh,định tuyến động bằng Zebra. Đồng thời sử dụng nó để làm máy DHCP Relay Agent.
2.1 Xây dựng máy chủ phân giải tên miền
2.1.1 DNS đơn
2.1.1.1 Giới thiệu
DNS (Domain Name System) là một hệcơ sở dữ liệu phân tán dùng để ánh xạ giữa các tên miền vê các địa chỉ IP. DNS đưa ra một phương pháp đặc biệt để duy trì vê liên kết các ánh xạ nêy trong một thể thống nhất.
BIND (Berkeley Internet Name Distributed) là phần mềm DNS Server được sử dụng nhiều nhất hiện nay trên thế giới. Một chương trình phục vụ DNS trên nền các hệ thống AIX/BSD/HP-UX/Unix/Linux…
Bind chạy nhanh, hiệu suất cao, đáp ứng được số lượng user lớn, cấu hình linh hoạt, …
DNS (Domain Name System): là hệ thống phân giải tên miền.
Mỗi máy tính, thiết bị mạng tham gia vào mạng Internet đều giao tiếp với nhau bằng địa chỉ IP (Internet Protocol) .Để thuận tiện cho việc sử dụng và dễ nhớ ta dùng tên miền (domain name) để xác định thiết bị đó.Hệ thống tên miền (Domain Name System) được sử dụng để ánh xạ tên miền thành địa chỉ IP. Vì vậy, khi muốn liên hệ tới các máy, chúng chỉ cần sử dụng chuỗi ký tự dễ nhớ (domain name) như: www.hotec.edu.vn , www.yahoo.com.., thay vì sử dụng địa chỉ IP là một dãy số dài khó nhớ [4].
Hình 2.1- Cấu trúc hệ thống tên miền
Domain root: Nó là đỉnh của nhánh cây của tên miền. Nó có thể biểu diễn đơn giản chỉ là dấu chấm “.”.
Top-level-domain: gồm vài kí tự xác định một nước, khu vưc hoặc tổ chức. Nó đươc thể hiện là “.us” , “.vn” , “.com” , “.edu”….
Second-level-domain: Nó rất đa dạng rất đa dạng có thể là tên một công ty, một tổ chức hay một cá nhân.
Subdomain: Chia thêm ra của tên miền cấp hai trở xuống thường được sử dụng như chi nhánh, phòng ban của một cơ quan hay chủđề nào đó.
2.1.1.2 Phân loại:
- Máy chủ DNS chính (Primary Name Server): Mỗi một máy chủ tên miền có một tên miền riêng. Tên miền riêng này được đăng ký trên Internet.
- Máy chủ DNS dự phòng – tên miền thứ hai (Secondary name server): đây là một DNS Server được sử dụng để thay thế cho Primary name server DNS Server bằng cách sao lưu lại tất cả những bản ghi dữ liệu trên Primary name Server và nếu Primary Name Server bị gián đoạn thì nó sẽ đảm nhận việc phân giải và ánh xạ tên miền và địa chỉ IP.
- Caching Name Server: Đây là một Server đảm nhiệm việc lưu trữ tất cả những tên miền, địa chỉ IP đãđược phân giải và ánh xạ thành công. Nó được sử dụng trong những trường hợp sau:
o Làm tăng tốc độ phân giải bằng cách sử dụng cache
o Giảm bớt gánh nặng phân giải tên máy cho các DNS Server
o Giảm lưulượng tham gia vào mạng và giảm độ trễ trên mạng (rất quan trọng).
2.1.1.3 Kiểm tra và cài các package sau:
#bind
#bind-chroot
2.1.1.4 Demo “DNS SERVER –MASTER”
Xây dựng DNS Server chịu trách nhiệm phân giải cho domain hotec.info
a. Cấu hình
- Tạo tập tin cấu hình từ tập tin mẫu
#cp /usr/share/doc/bind-9.3.3/sample/etc/named.conf /var/named/chroot/etc
- Hiệu chỉnh tập tin /etc/named/chroot/etc/named.conf, xóa từ dòng 25 đến hết và thêm vào đoạn sau:
zone “hotec.vn” { type master;
file hotec.vn.zone; };
zone “1.168.192.in-addr.arpa” { type master;
file 192.168.1.zone; };
- Tạo file database được lưu trong thư mục /var/named/chroot/var/named, gồm 2 file là file thuận và file nghịch. hoặc có thể copy từ thực mục chứa tập tin mẫu /usr/share/doc/bind-9.3.3/sample/
Tạo file thuận
#vi /var/named/chroot/var/named/hotec.vn.zone
Với nội dung sau:
$TTL 86400
@ IN SOA dns.hotec.vn. dns2.hotec.vn. ( 2009060601 3H 15M 1W 1D ) IN NS dns.hotec.vn. @ IN A 192.168.1.213 dns IN A 192.168.1.106 www IN CNAME hotec.vn. ftp IN CNAME hotec.vn. Tạo file nghịch #vi /var/named/chroot/var/named/192.168.1.zone với nội dung sau: $TTL 86400
@ IN SOA dns.hotec.vn. dns2.hotec.vn. ( 2009060601
3H 15M
1W 1D ) IN NS dns.hotec.vn. 106 IN PTR dns.hotec.vn. 213 IN PTR hotec.vn. Cấu trúc như sau:
[Tên_miền] IN SOA [Tên_Primarry_Server] [Tên_Second_Server] Serial number Refresh number Retry number Expire number TTL number ) Trong đó:
- Serial number: khi Second server kết nối tới primary server để lấy dự liệu, trước tiên nó sẽ kiểm tra số serial này, nếu số serial này của primary server mà lớn hơn số serial của second server tức là dữ liệu trên second server đã hết hạn sử dụng và nó sẽ phải nạp lại dữ liệu mới. mỗi lần cập nhật dữ liệu trên primary server chúng ta nên tăng số serial này.
- Refresh number: khoảng thời gian (giây) mà second server phải làm mới lại dữ liệu của mình.
- Retry number: nếu second server không thể kết nối tới primary server thì nó tự động kết nối lại sau retry giây này.
- Expire number: Nếu second server không thể kết nối tới primary server sau khoảng thời gian expire giây này, thì second server sẽ không trả lời cho vùng dữ liệu đó khi được truy vấn, vì nó cho rằng dữ liệu này đã quá cũ.
- TTL number: giá trị này cho phép các server khác cache lại dữ liệu trong 1 khoảng thời gian TTL này.
- Khởi động dịch vụ DNS
#service named start
- Xem file log
- Chỉnh sửa DNS Client trên DNS Server, xóa bỏ tất cả các dòng trong file /etc/resolv.conf và thêm vào dòng sau:
nameserver 192.168.1.106
- Truy vấn Dns Domain hotec.info từ máy Windows và Linux, sử dụng lệnh nslookup
2.1.2 Multi DNS
2.1.2.1 Thực nghiệm DNS Chủ - Tớ (DNS SERVER – SLAVE)
Xây dựng Slave DNS Server cho domain hotec.vn * Chuẩn bị
+ Đặt IP, Hostname + Tắt Firewall, SELinux
+ Kiểm tra và cài package bind, bind-chroot * Thực hiện
#cp /usr/share/doc/bind-9.3.3/sample/etc/named.conf /var/named/chroot/etc
- Hiệu chỉnh tập tin /etc/named/chroot/etc/named.conf, xóa từ dòng 25 đến hết và thêm vào đoạn sau:
zone “hotec.vn” { type slave;
masters {192.168.1.106;}; file “slaves/hotec.vn.zone”; };
zone “1.168.192.in-addr.arpa” { type slave;
masters {192.168.1.106;}; file “slaves/192.168.1.zone”; };
- Trên Master DNS của bạn thêm option allow-transfer, để cho phép Slave dns được update từ con Master
allow-transfer {192.168.218.136;};
rndc reload
- Kiểm tra kết quả bằng lệnh
ls –l /var/named/chroot/var/named/slaves
- Restart dịch vụ named
service named restart
- Hiệu chỉnh Dns Client trong file /etc/resolv.conf trỏ vào Slave Dns Server
nameserver 192.168.9.206 –> slave server IP
* Kiểm tra dịch vụ bằng nslookup
2.1.2.2 Demo “DNS SERVER –ỦY QUYỀN”
Yêu cầu: Cấu hình DNS ủy quyền quản lý cho DNS domain con. B1.Xây dựng DNS Server Master dc1.hotec.vn (máy 1)
B2. Xây dựng DNS Server cho domain dc1.hotec.vn (máy 2), chú ý: + sửa 1 thành dc2
+ Đặt hostname, ip, tắt SELinux cho máy 2.
- Trên máy 1 – DNS Server hotec.vn, thêm vào dòng 9 của file /var/named/chroot/var/named/hotec.vn.zone đoạn sau:
dc2 IN NS dc2.hotec.vn. dc2 IN A 192.168.1.206
- Thêm vào cuối file /var/named/chroot/var/named/192.168.1.zone dòng sau:
206 IN PTR DC2.hotec.vn
- Restart dịch vụ named
service named restart
–> Kiểm tra từ máy 1 phân giải các record của hcm.hotec.vn
* Cấu hình để máy 2 truy vấn được các record của domain hotec.vn
- Thêm vào dòng 17 của file /etc/named/chroot/etc/named.conf nội dung sau:
forwarders {192.168.1.106;};
- Restart dịch vụ
2.1.2.3 Thực nghiệm “DNS SERVER – Internal View & External View”
Trong thực tế, khi triển khai DNS, ta cần thiết lập đến 2 bộ DNS phân giải riêng biệt một là cho mạng nội bộ và một là cho các truy vấn từ bên ngoài vào.
VD: Domain cùa công ty hiện tại là hotec.vn. Trong hệ thống có xây dựng các dịch vụ mail, web và tình huống đặt ra là khi người dùng trong hệ thống sử dụng dịch vụ sẽ đi bằng IP lan còn khi ở bên ngoài hệ thống sẽ đi bằng IP wan trên internet. Thông thường cần đến hai DNS server riêng biệt hoặc 2 zone khác nhau hotec.local và hotec.vn trong dns server. Tuy nhiên Bind DNS hỗ trợ chúng ta tính năng view dùng để xác định với đối tượng nào sẽ sử dụng bộ phận giải nào.
Đơn cử ở đây tôi dùng hai view: internal và external ý nghĩa là đối tượng trong Lan khi truy vấn sẽ dùng bộ internal còn đối tượng ngoài internet vào sẽ truy vấn dùng bộ external.
Ta triển khai như sau:
Trong file named.conf, thiết lập internals dùng để xác định nhóm các đối tượng được xem là dành cho LAN. Ởđây mạng Lan tôi có net là 10.0.0.0/24
acl internals { 10.0.0.0/24; localhost; };
Bây giờ ta tiến hành cấu hình thêm vào bên dưới một tí:
view "internal" {
match-clients { internal; };
// xác định nhóm đối tượng sẽ áp vào view internal có thể thay bằng subnet hoặc địa chỉ ip cụ thể không nhất thiết là tạo trước nhóm internals như trên
zone "hotec.vn" IN { type master; file "hotec.vn.zone.lan"; }; zone "0.0.10.in-addr.arpa" IN { type master;
file "10.0.0.zone.lan"; }; }; Với mạng bên ngòai: view "external-view" { match-clients { any; }; //xác định là tất cả zone "hotec.vn" IN { type master; file "hotec.vn.zone.wan"; }; zone "0.0.10.in-addr.arpa" IN { type master; file "10.0.0.zone.wan"; }; };
Cách cấu hình tương tựnhư các phần trên cho 4 file này. Tuy nhiên để dễ dàng kiểm chứng thì các bạn phải cấu hình các ip thật sự khác nhau nhưđang làm trên thực tếđể dễ kiểm chứng kết quả trả về
hotec.vn.zone.wan 10.0.0.zone.wan hotec.vn.zone.lan 10.0.0.zone.lan
Tiếp đến là kiểm tra thành quả bằng nslookup:
Do lúc đầu quên nên giờ tôi gắn thêm 1 card cùng net với máy client vơi mục đích là kiểm tra kết quả cho các truy vấn khác ngoài mạng Lan.
Và sau đó cấu hình thêm trong named.conf thuộc mục Options nhà để cho phép lắng nghe các truy cập trên tất cả các card mạng:
Và giờ chỉ việc kiểm tra bằng nslookup trên máy client
2.2 Tạo bộđịnh tuyến động
2.2.1 Khái niệm và định tuyến tĩnh
Bạn có thể sử dụng Linux để thực hiện định tuyến như một Router, cả định tuyến tĩnh và định tuyến động.
Trước tiên chúng ta sẽ cùng tìm hiểu định tuyến tĩnh trên CentOS. Thực hiện trên mô hình sau:
Hình 2.2-Sơđồ bài toán định tuyến
Hôm nay chúng ta sẽ thực hiện trên 4 máy là R1, R2, Server1 và PC C2 (máy C2 chạy Ubuntu).
Bước đầu tiên, đặt IP tương ứng cho mỗi thiết bị, sau đó xem bảng định tuyến trên R1,R2
Hình 2.4-Thông tin định tuyến trên các card mạng R2
Xem thông tin card mạng eth2 bằng lệnh ifconfig
Hình 2.5-Lệnh ifconfig trên card mạng eth2
Dùng lệnh route -n trên máy Ubuntu để xem bảng tịnh tuyến của Client, qua đó ta xác định được default gateway mà máy Ubuntu sẽđi ra ngoài mạng
Hình 2.6-Thông tin bảng định tuyến trên Ubuntu
Như các bạn thấy, lúc này PC C2 không thể kết nối đến Server1. Lý do đơn giản là vì R1 chưa có route đến mạng 192.168.10.0/24. Kiểm tra bảng route trên R1.
Hình 2.7-Thông tin bảng định tuyến R1 chưa thấy Destination 192.168.10.0/24