Mô tả các chức năng cảu các dịch vụ mạng DNS, DHCP, WWW, File Sever triển khai các dịch vụ này trên hệ điều hành Linux
Trang 1KHOA CÔNG NGHỆ THÔNG TIN
Trang 2LỜI NÓI ĐẦU
Cùng với xu thế toàn cầu hóa, sự mở rộng hợp tác giao lưu quốc tế ngày càng tăng, quan hệ hợp tác kinh doanh không chỉ dừng lại trong phạm vi một huyện, một tỉnh, một nước mà còn mở rộng ra toàn thế giới Một công ty có thể có nhiều chi nhánh, có các đối tác kinh doanh ở nhiều quốc gia và giữa họ luôn có nhu cầu trao đổi thông tin với nhau cho nên doanh nghiệp ứng dụng CNTT ngày càng rộng rãi vào quá trình hoạt động sản xuất kinh doanh của mình nên đòi hỏi một hạ tầng CNTT vững mạnh, ổn định để có thể triển khai các dịch vụ, ứng dụng phục vụ hoạt động kinh doanh và lưu trữ các thông tin, dữ liệu quan trọng khác của doanh nghiệp.
Xây dựng và triễn khai các dịch vụ mạng như ( DNS , DHCP , Web, Mail , File Server….) là rất quan trọng Để lưu trữ, truy xuất và bào đảm bí mật các thông tin được trao đổi để tránh gây lãng phí tài nguyên.
Qua thời gian tìm hiểu với sự hướng dẫn của thầy Vũ Hầu và kết hợp với kiến thức khi còn ngồi trên ghế nhà trường Chúng tôi làm bài báo cáo này để cho thấy được mục tiêu, ý nghĩa, cách thức cài đặt, cấu hình, và ứng dụng thực tế của các dịch vụ mạng ngày nay để đáp ứng được nhu cầu mà doanh nghiệp đưa ra
Với khả năng và kiến thức còn hạn chế, đề tài không tránh khỏi sự thiếu sót, chúng tôi mong nhận được sự góp ý, giúp đỡ của bạn bè, thầy cô để có thể đạt kết quả tốt và hoàn thiện hơn
Nhóm sinh viên thực hiện.
Trang 3
Trang 5
MỤC LỤC
I Giới Thiệu Mô Hình Mạng 3
II.Cấu Hình IP Cho Các Máy Dịch Vụ 3
III Cấu Hình Services DHCP Server Tại Máy 1 6
3.1 Cấu hình trên máy Server DHCP 6
3.2 Cấu hình trên máy Client 8
IV.Cấu Hình Dịch Vụ DNS Server Trên Máy 1 11
4.1 Cài đặt gói bind 11
4.2 Tạo file named.conf 12
4.3 Tạo các file zone 13
4.4 Định nghĩa các file có trong zone 13
V.Cấu Hình Dịch Vụ DNS SLAVE Server Trên Máy 2 16
5.1 Cài đặt gói bind 16
5.2 Cấu hình DNS SLAVE Server 16
VI.Cấu Hình Dịch Vụ WEB SEVER Trên Máy 2 18
6.1 Cấu hình default website 18
6.2 Cấu hình APACHE WEBSERVER 18
6.3 Sửa cấu hình apache server 19
6.4 Test WEB 22
6.5 Cấu hình website alias (virtuak durectiry) 23
6.6 Giới hạn quyền truy cập cho trang web admin(basicau thentication) 26
VII Cấu Hình Dịch vụ MAIL SERVER Trên Máy 2 28
7.1 Cài đặt gói Postfix 28
7.2 Cấu hình SMTP GATEWAY với postfix 29
7.3 Cấu hình POP3 , IMAP SERVER sử dụng DOVECOT 33
Trang 67.3.c Cấu hình THUNDERBIRD duyệt mail pop3 , imap trên linux 40
7.3.e Cấu hình THUNDERBIRD 41
7.4 Cấu Hình SQUIRRELMAIL 45
7.4.a Cài đặc các gói 45
7.4.b Cấu hình SQUIRRELMAIL 46
7.4.c Test SQUIRRELMAIL 47
VIII.Cấu Hình Dịch Vụ SAMBA SERVER Trên Máy 4 49
8.1 Giới Thiệu Các Gói Cài Đặt Và Các Bước Cài Đặt 49
8.1.a Bước 1 Cài Đặt Gói 50
8.1.b Bước 2 Cấu Hình SAMBA 51
8.2 Tích Hợp SAMBA Và WINS (Dùng cho việc chia sẽ file bằng hostname) 56
8.3 Cấu Hình Chia Sẽ File Trong SAMBA 62
Trang 7I Mô hình mạng như sau :
Mô hình mạng của công ty gồm có :
Một máy Server Firewall/Proxy có địa chỉ IP là 10.0.0.1Một máy Server DNS –DHCP có địa chỉ IP là 10.0.0.2Một máy Server WEB-MAIL có địa chỉ IP là 10.0.0.3Một máy Server FILE SERVER có địa chỉ IP là 10.0.0.4Một máy WINS WIN2K3 có địa chỉ Ip là 10.0.0.5
Các máy Client dành cho nhân viên có địa chỉ IP được cung cấp bằngdịch vụ DHCP (vùng ip 10.0.0.11-10.0.0.100)
II.Cấu Hình IP Cho Các Máy Dịch Vụ :
Dùng vmware card mạng kết nối , sử dụng VMNET 2 cho 3 máy
Máy 1 (DNS-DHCP) : ip address : 10.0.0.2
Subnetmask : 255.0.0.0
Default gateway : 10.0.0.1
Trang 8Máy 2:(WEB-MAIL) : ip address : 10.0.0.3
Card external :
Ip add và netmask : 192.168.1.10/24
Default gateway : 192.168.1.1 (ip của router ADSL)
Trang 9Máy 4 (FILE SERVER) : ip address : 10.0.0.4
Trang 10Lưu ý : Các máy Client còn lại dùng để test
III.Cấu Hình Services DHCP Server Tại Máy 1
3.1 Cấu hình trên máy Server DHCP
Dùng lệnh rpm –qa | grep dhcp xem máy 1 đã cài gòi DHCP chưa ,nếu chưa cài thì ta dùng lệnh rpm –ivh dhcp-3.0.5.el5.i386.rpm (phải dùng lệnh cd
vào thư mục của gói cài này tròng bài này tôi đặt trong thư mục /home )
Sau khi cài đặt xong ta vào đường dẫn này cat /etc/dhcpd.conf để xem file cấu
Trang 11Lưu file cấu hình lại :
Service dhcpd start : khởi động dịch vụ
Chkconfig dhcpd on : khởi động máy lên thì dịch vụ sẽ được chạy
Chkconfig-list dhcpd : kiểm tra xem có trong list chưa
Chú ý : Tại những máy server ta nên cấp ip static để cố định địa chỉ đó tránhtrường hợp cấp ip dynamic cho những máy server vì khi hết thời gian thuê bao ipnày sẽ tự động thay đổi khiến hệ thống mạng của ta không ổn định , ta chỉ nêndùng dịch vụ DHCP cho những máy client
Trang 123.2 Cấu hình trên máy Client
Tiếp theo ở máy client ta phải chọn ở chế độ cấp ip động :
Trang 13Sau đó vào Start => run => cmd gõ lện như sau :
Trang 14
Tại máy dhcp server muốn xem máy client nào đã nhận ip rồi thì ta làm như sau :
Trang 15IV.Cấu Hình Dịch Vụ DNS Server Trên Máy 1
4.1 Cài đặt gói bind :
Dùng lệnh rpm –qa | grep bind xem máy 1 đã cài gòi bind chưa , nếu chưa thì ta
dùng lệnh rpm cài 4 gói sau đây :
rpm –ivh bind-9.3.6-4.P1.el5.i386.rpm
rpm –ivh bind-chroot-9.3.6-4.P1.el5.i386.rpm
rpm –ivh bind-devel-9.3.6-4.P1.el5.i386.rpm
rpm –ivh bind-libs-9.3.6-4.P1.el5.i386.rpm
hoặc yum install bind*
Phải dùng lệnh cd vào thư mục chứa 4 gói cài này , trong đây tôi đặt tại thư mụchome
Chú Ý :
Gói bind-chroot-9.3.6-4.P1.el5.i386.rpm nếu chỉ cần cài đặt dịch vụ DNS thì có
thể chỉ cần cài gói bind và các gói hổ trợ thư viện và chức năng khác Tuy nhiên ,như vậy sẽ không đảm bảo tính bảo mật của hệ thống , một hacker có thể từ hệthống DNS biết được toàn bộ cấu trúc hệ thống của chúng ta
Để khắc phục điều đó ta sữ dụng gói bind-chroot.
Chức năng của gói này là : Thay vì các file record và cấu hình chính của DNS nằm trongthư mục /var/named thì bây giờ , bên trong sẽ được tạo ra các thư mục con như thể đây là một cấu trúc thu nhỏ với /var/named/chroot làm root Khi
xâm nhập vào hệ thống, hacker chỉ có thể thấy được cấu trúc bên trong củachroot mà không thể biết cấu trúc thật của hệ thống , lúc này file cấu hình thật sự
của DNS nằm trong /var/named/chroot/etc v2 các file record nằm
ở /var/named/chroot/var/named.
Trang 164.2 Tạo file named.conf
Tạo file named.conf trong thư mục /var/named/chroot/etc bằng cách copy file
named.conf từ thư mục
/usr/share/doc/bind-9.3.6./sample/etc/named.conf
Vi /var/named/chroot/etc/named.conf định nghĩa file cấu hình này như sau :
Trang 17Chú ý :
Khi khai báo trong zone là file nào thì khi tạo file zone trong
/var/named/chroot/var/named phải theo đúng tên đó
4.3 Tạo các file zone
Tạo file named.root trong thư mục /var/named/chroot/var/named/ bằng cách copy file named.root từ thư mục /usr/share/doc/bind-9.3.6/sample/ var/named/named.root
Tạo file thuan trong thư mục /var/named/chroot/var/named// bằng cách
/usr/share/doc/bind-9.3.6/sample/var/named/named.local
Tạo file nghich trong thư mục /var/named/chroot/var/named// bằng cách
/usr/share/doc/bind-9.3.6/sample/var/named/named.local
4.4 Định nghĩa các file có trong zone
Đối với file named.root ta không chỉnh sửa gì cả vì nó là nơi quản lý những
top-level domain trên internet và nhiệm vụ của nó trả lời những yêu cầu cần phân giải ,
nó bao gôm 13 root hint lớn nhất
Dùng lệnh vi /var/named/chroot/var/named/thuan để định ngĩa file “thuan”
Trang 18Dùng lệnh vi /var/named/chroot/var/named/nghich để định ngĩa file
“nghich”
Giải thích về các thông số :
Serial: là số căn cứ cho quá trình update của secondary DNS đối với
primary DNS Khi slave thấy số serial của mình nhỏ hơn của master, nó lậptức cập nhật những thông tin mới của master đồng thời tăng giá trị serial củamình lên 1 Ngược lại, khi master sửa chữa hoặc thêm bớt bất cứ thông tinnào về các record thì sau khi thực hiện, đều phải tăng giá trị serial lên 1 đểbáo cho slave rằng cần phải cập nhật thông tin mới
Refresh: là khoảng thời gian (tính bằng giây) để slave làm mới lại các thông
tin về DNS của mình từ master
Retry: là khoảng thời gian (tính bằng giây) mà slave sẽ tiến hành kết nối lại
với master, nếu trước đó kết nối không thành công
Expire: là khoảng thời gian (tính bằng giây) nếu sau khoảng thời gian đó
slave không thể kết nối và cập nhật thông tin từ master thì các dữ liệu zonetrên slave sẽ quá hạn và máy chủ sẽ không trả lời bất cứ một truy vấn nào vềzone này nữa
TTL (time-to-live): giá trị này áp dụng cho mọi record trong zone Là
khoảng thời gian chỉ định mà các máy chủ server có thể cache lại các thôngtin trả lời DNS giúp cho việc truy vấn trở nên nhanh hơn Sau khoảng thờigian TTL, các cache sẽ được xóa
Trang 19Mở file /etc/resolv.conf bằng trình soạn thảo vi Sửa lại các thông tin sau:
Việc thay đổi này bao gôm cả cấu hình trên client
Khởi động dịch vụ DNS Service named start hoặc /etc/init.d/named start
Để dịch vụ named luôn chạy khi khởi động ta vào linux ta dùng lệnh Chkconfig named on
Đảm bảo client đã được trỏ DNS server về địa chỉ IP 10.0.0.2 Dùng lệnh nslookup để kiểm tra hoạt động của DNS(lưu ý rằng phải tắt firewall trên máy
DNS Server)
Đối với máy là win 2k3 kết quả như sau :
Trang 20Đối với máy là linux kết quả như sau:
V.Cấu Hình Dịch Vụ DNS SLAVE Server Trên Máy 2
5.1 Cài đặt gói bind :
Dùng lệnh rpm –qa | grep bind xem máy 1 đã cài gòi bind chưa , nếu chưa thì ta
dùng lệnh rpm cài 4 gói sau đây :
5.2 Cấu hình DNS SLAVE Server :
Tạo file named.conf trong thư mục /var/named/chroot/etc bằng cách copy file named.conf từ thư mục /usr/share/doc/bind-9.3.6./sample/etc/named.conf
Cấu hình file named.conf như sau :
Dùng lệnh vi /var/named/chroot/etc/named.conf
Trang 21Chú ý: phải cấu hình các file zone của slaves DNS nằm trong thư mục
/var/named/chroot/var/named/slaves, thư mục này dùng để chứa các file zone được cập nhận (zone transfer) từ master DNS
Ngoài ra ta còn phải làm thêm 1 bước là copy file named.root vào
/var/named/chroot/var/named/slaves
Trang 22Mở file /etc/resolv.conf bằng trình soạn thảo vi Sửa lại các thông tin sau:
search lablinux.com
nameserver 10.0.0.2
nameserver 10.0.0.3
5.3 Khởi động lại dịch vụ DNS.
service named restart hoặc /etc/init.d/named restart
(sau khi khởi động lại dịch vụ DNS, lập tức quá trình zone transfer được thựchiện, các file zone sẽ lập tức được chép vào trong
Nếu nọi việc đều tốt thì quá trình cấu hình slave DNS đã xong
Cấu hình cho các client truy vấn dùng lệnh nslookup để kiểm tra.
VI.Cấu Hình Dịch Vụ WEB SEVER Trên Máy 2
6.1 Cấu hình default website
Kiểm tra 2 máy đã cài gói httpd-2.2.3-11.el5_1.centos.3.i386.rpm , nếu chưa cài
thì cài vào ( gói cài đặt này được đặt trong thư mục /home )
Dùng lệnh rpm –ivh httpd-2.2.3-11.el5_1.centos.3.i386.rpm
Hoặc yum install httpd -y
6.2 Cấu hình APACHE WEBSERVER
Web server được sử dụng ở đây là Apache Web Server Các cấu hình cho Apache
Server nằm trong file /etc/httpd/conf/httpd.conf.
Trang 23Các thuộc tính cấu hình cho Apache:
ServerRoot“etc/httpd”: định nghĩa thư mục chính chứa tất cả các file
cấu hình của Apache server Nó giúp cho Apache server biết cần tìm cácfile cấu hình các thuộc tính ở đâu
Timeout 120: là thời gian mà Server chờ các request từ phía client trước
khi đóng kết nối Mặc định giá trị này là 120
MaxClients 150: là số client cho phép request cùng một lúc đến server.
Con số này tùy thuộc vào web server, nếu server có cấu hình càng cao thì
con số này có thể càng lớn Mặc định giá trị là 150.
ServerLimit256: là giá trị ngưỡng cho MaxClients, giá trị này cũng tùy
thuộc vào cấu hình Server Giá trị mặc định là 256.
Listen<ip:port> hoặc Listen <port>: định nghĩa cách mà server nhận
các request của client, fix theo IP và port hoặc chỉ fix trên port và accepttrên tất cả các interface có trên server (thông thường port được sử dụng ở
đây là 80 hay 443).
DocumentRoot“/var/www/html”: là thư mục mà ta sẽ đặt source web.
Mặc định đường dẫn sẽ trỏ đến /var/www/html Ta có thể sửa nều muốn.
6.3 Sửa cấu hình apache server :
Tạo thư mục gốc cho website
Tạo 1 trang web default.html trong thư mục /lablinux
Trang 24Gán quyền đọc và thực thi cho thư mục /lablinux
Chmod 755 –R /lablinuxVào file cấu hình chính httpd.conf
Vi /etc/httpd/conf/httpd.conf
Đây là trang cấu hình chính , ta nhấn ESC gõ :set nu để xem tiêu đề các dòng , ta
di chuyễn đến dòng 265 bằng cách gõ :265
Trang 25Ta sữa như sau :
ưu ý : đối với phiên bản centos 5.5 thì bạn cần phải điều chỉnh lại chế độ firewall
basic,nếu không chỉnh lại thì bạn sẽ vướng phải hạn chế của nó là chế độ bảo mậtSElinux , sẽ không tương thích những thay đổi trong apache khi bạn start dịch vụhttpd nó sẽ báo lỗi (vì trong bài lab này tôi điều chỉnh Documentroot về 1 thư mụckhác).như vậy ta phải khắc phục như sau :
chcon -R -h -t httpd_sys_content_t /lablinux
Cho dịch vụ httpd chạy ta dùng lệnh
Trang 26Trên máy client internal ta mở trình duyệt IE www.lablinux.com truy cập vàowebsite của mạng mình
Trang 276.5 Cấu hình website alias (virtuak durectiry) :
Tạo 2 thư mục chứa 2 website
Trang 28Cấu hình alias :
Vào file cấu hình apache vi/etc/httpd/conf/httpd.conf
Tìm đến dòng 539 có chữ alias ta bắt đầu cấu hình cho nó
Copy từ dòng 539 đến dòng 546
Trang 29Ta tiếp tục copy từ dòng 548 đến 555
Ta khái báo alias cho forum và admin
Lưu lại và khởi động lại dịch vụ
Service httpd restart
Tại máy client internal test xem đã đươc lưu vào chưa
Trong khung Address gõ www.lablinux.com/diendan
Trang 30Trong khung Address gõ www.lablinux.com/quanly
6.6 Giới hạn quyền truy cập cho trang web admin ( basicau thentication )
Tạo ra 1 số user dùng lệnh
Tạo 1 file password chứa danh sách các user cho dịch vụ apache đểchứng thực khi truy cập web
Trang 31Chú ý : Tiện ích httpasswd là do apache hổ trợ giúp tạo tập tin password 1 cách
dễ dàng , trong đó có option “–c” sẽ tạo 1 tập tin password mới nếu tập tin này
tồn tại nó sẽ xóa nội dung cũ ghi vào nội dung mới Khi tạo thêm một người
dùng, tập tin password đã tồn tại bạn không cần dùng tùy chon “-c”
Vào file cấu hình apache vi/etc/httpd/conf/httpd.conf di chuyển đến dòng
558 thêm vào như hình
Dùng lệnh “service httpd retart”
Tại máy client internal ta test thử www.lablinux.com/quanly
Trang 32VII Cấu Hình Dịch vụ MAIL SERVER Trên Máy 2
7.1 Cài đặt gói Postfix
Kiểm tra máy 2 đã cài gói postfix-2.3.3-2.i386.rpm nếu chưa thì cái vào (gói này được đặt trong thư mục /home )
rpm –ivh postfix-2.3.3-2.i386.rpm
Các option cần chú ý:
Trang 33myhostname = mail.domain.com: chỉ ra hostname của mail server, tên này
nên là FQDN Name của mail server
mydomain = domain.com: tên domain gửi và nhận mail Thông thường, tên
myhostname phải nằm trong mydomain
myorigin = $mydomain: giữ nguyên thông tin của domain khi gửi.
inet_interfaces = all: lắng nghe trên tất cả các interface của mail server mynetworks: định nghĩa mạng nào được phép sử dụng mail server để
chuyển mail
relay_domains: các domain dùng mail server để relay mail.
relayhost: host được dùng để mail relay.
mailbox_size_limit =100000000: dung lượng của mailbox, tính bằng byte message_size_limit =10000000: dung lượng tối đa của một message, tính
bằng byte
smtpd_sender_restrictions: các cấu hình từ chối mail:
permit_mynetworks: chỉ nhận mail từ trong mynetworks.
reject_non_fqdn_sender: từ chối các mail có reverse lookup DNS không
xác định
reject_unknown_sender_domain: từ chối các domai không xác định.
reject_rhsbl_sender dsn.rfc-ignorant.org: từ chối các mail bắt nguồn từ
các nguồn được đánh dấu là Spam
maximal_queue_lifetime = 2d: thời gian sống của hàng đợi, nếu quá thời
gian này mà mail không được giải quyết sẽ bị hủy
header_checks và body_checks: là các cấu hình dùng để kiểm tra header và
nội dung mail phòng tránh spam
7.2 Cấu hình SMTP GATEWAY với postfix
Trước khi cấu hình postfix ta phải stop dịch vụ sendmail vì mặc định nó
Trang 34Chkconfig sendmail off Bước tiếp theo phải chuyển mail transport agent tức là MTA từ sendmail sang
postfix ta dùng lệnh sau :
Alternatives - -config mta
Bước tiếp theo cấu hình chính cho posfix ta vào tập tin cấu hình như sau :
Vi /etc/postfix/main.cf
Gõ “:set nu” hiển thị số dòng
Di chuyển đến dòng 70,71 ta sửa lại như sau
Dòng 71 là khai báo cho database cho postfix
Trang 35Service postfix start
Chkconfig postfix on
Trước khi test ta tạo ra 1 số user trong này tôi đã tạo sãn 2 user hv1 và nv1
Xem dịch vụ smtp đã được khởi động chưa ta dùng lệnh
Netstat –an | grep :25
Trang 36Để check mail của nv1 ta dùng lệnh mail –u nv1 :
Sau khi check mail xong nhấn exit để thoát ra
Hoàn tất cấu hình mail-smtp trên postfix