Sử dụng proxy có hai lợi thế quan trọng, thứ nhất là bạn chỉ cần ít, hay một địa chỉ IP chính thức mà lại có thể cho nhiều máy cùng được truy cập Internet, thứ hai là nếu một trang Web đ[r]
(1)Mục lục chính
Bài 1: Giới thiệu, cài đặt Redhat, tổng quan lệnh thông thường 2
Bài 2: Cài đặt Cấu hình DHCP Server 17
Bài 3: Cài đặt Cấu hình DNS Server 20
Bài 4: Cài đặt Cấu hình Samba Server 24
Bài 5: Cài đặt Cấu hình Squid Server 33
Bài 6: Cài đặt Cấu hình Apache Server 37
Bài 7: Cài đặt Cấu hình Sendmail 53
Bài 8: Cài đặt Cấu hình RAS 57
(2)Giới thiệu LINUX
Linux miễn phí (free) Đối với hôm không quan trọng WindowsNT server “free” Nhưng tương lai, muốn hòa nhập vào giới, muốn có thu nhập đáng cho người lập trình, tượng chép trộm phần mềm cần phải chấm dứt Khi đó, free thông số quan trọng để chọn Linux
Linux ổn định Trái với suy nghĩ “truyền thống” “của rẻ ôi “, Linux từ phiên cách 5-6 năm ổn định Ngay server Linux mạng lớn (hàng trăm máy trạm) hoạt động ổn định
Linux đầy đủ Tất bạn thấy IBM, SCO, Sun … có Linux C compiler, perl interpeter, shell , TCP/IP, proxy, firewall, tài liệu hướng dẫn đầy đủ có chất lượng Hệ thống chương trình tiện ích đầy đủ Linux HDH hoàn toàn 32-bit Như Unix khác, từ đầu, Linux HDH 32 bits
Linux mềm dẻo cấu hình Linux cho người sử dụng cấu hình linh động, ví dụ độ phân dải hình Xwindow tùy ý, dễ dàng sửa đổi kernel …
Linux chạy nhiều máy khác từ PC 386, 486 tự lắp SUN Sparc.
(3)1 Cài đặt Redhat 7.3 Thiết bị cần thiết :
a Server : yêu cầu cấu hình :
+ CPU : Intel PII 400 cao + RAM : 128MB cao + HDD : 10GB cao + NIC card : 100 Mbps
+ External Modem + ……
b Swicth có tốc độ 100 Mbps
c Cable thiết bị cần thiết khác d Các máy client có cấu hình :
+ CPU từ 486 trở lên + RAM : 64 MB
+ HDD : 4.3GB cao + NIC card : 100 Mbps
+ ………
Cài đặt cấu hình :
Bước đầu tiên, cài đặt khởi động từ CDROM Đưa đĩa Red Hat 7.3 thứ vào, dấu nhắc “boot : ”, nhấn ENTER Khi vào bên trong, bỏ qua bước kiểm tra CDROM, hình xuất sau :
(4)Hãy lựa chọn thiết bị phần cứng cho thích hợp, sau Click Next, hình sau
(5)Hãy lựa chọn loại hình muốn sử dụng, chọn “Custom System” để thêm số package cần thiết Click NEXT
(6)Ví dụ tạo phân vùng sau :
Lưu ý với / boot nơi chứa toàn ảnh kernel, partition Swap nơi làm nhớ ảo Linux, phân vùng Swap có dung lượng gấp đơi số dung lượng RAM có Phân vùng /home nơi chứa dung lượng user, nghĩa user có dung lượng 100MB, /home số user x 100
(7)Server có phân vùng sau : + /boot : 100MB
+ swap : RAM x
+ /home : tuỳ theo số user + /var : GB
+ /opt : 512 MB
+ / : sử dụng toàn dung lượng cịn lại
Ngồi có số phân vùng khác tuỳ theo package sử dụng chúng làm nơi lưu trữ nào.( ví dụ : /cache, /chroot, ……)
Sau tạo xong phân vùng, hình :
Hệ điều hành đánh dấu phân vùng cần format, click NEXT
(8)Tiếp theo quy định thơng số mạng theo hình Click NEXT
Tới đây, quy định chế độ bảo mật cho hệ thống, theo tuỳ chọn “No Firewall”, chức này, thay đổi dễ dàng vào giao diện Linux Click NEXT
(9)Chọn múi khu vực nơi cài đặt Click NEXT
Ở đây, quy định mật user root( Administrator), việc tạo số account khác Click NEXT
(10)Tuỳ theo mục đích sử dụng mà cài đặt package cần thiết Click NEXT hệ điều hành bắt đầu cài đặt
(11)2 Các lệnh file cấu hình:
init
Linux cho phép khởi động từ chế độ khác nhau:
Chế độ (Run level)
Trường hợp sử dụng (Common Usages) Tắt máy – shutdown
1 chế độ người dùng (single user)
2 Đa người dùng – không hỗ trợ Network
3 Đa người dùng – có hỗ trợ Network
4 Chưa sử dụng
5 Đa người dung, network, Graphic
6 Restart
Cú pháp: # init [run level]
Ví dụ:
để vào chế độ Graphic Redhat : # init để vào chế độ textmode đa người dung: # init
- Trong trình khởi động, mặc định init chạy tập tin /etc/inittab chế độ Bạn chỉnh sửa chế độ khởi động tập tin Trong thư mục /etc/rc.d/rcX.d lưu trữ files, file script mà tên file bắt đầu chữ K có nghĩa file khơng kích hoạt, bắt đầu chữ S file kích hoạt chế độ
Shutdown
Cú pháp: # shutdown –h <minute:seconde>
Ví dụ: # shutdown –h 22:00 (tới 10:00pm tiến hành shutdown máy) # shutdown –h now (shutdown lập tức)
# shutdown –r now ( restart )
(12)vi
Cú pháp: # vi <tên file> Ví dụ: # vi /etc/issue
Sau vào chương trình soạn thảo vi có chế độ cần quan tâm:
Chế độ soạn thảo chế độ nhập lệnh Mặc định vào Vi bạn chế độ nhập lệnh, muốn vào chế độ soạn thảo nhấn phím “i” “a” Sau chế độ soạn thảo mà muốn chế độ nhập lệnh nhấn “ESC” Các chức Vi bạn cần quan tâm:
- “i” dùng để bắt đầu chế độ soạn thảo văn - Ở chế độ nhập lệnh có chức sau
+ “:w” dùng để lưu đoạn văn vừa thay đổi + “:q” dùng để thoát khỏi Vi
+ “dd” dùng để xóa dịng dấu nhắc trỏ thời + “/string” dung để tìm kiếm chuỗi đoạn văn bản + “u” undo
+ Ctrl + F cuộn xuống trang hình Vi + Ctrl + B cuộn lên trang hình Vi
cat : lệnh dung xem nội dung tập tin Cú pháp: # cat <tên_file_cần_hiển_thị> Ví dụ: # cat myfile.txt
# cat /tmp/temp.text
Logging in and out of a Linux System
Tại dấu nhắc hệ thống phải nhập tên bạn Password để đăng nhập vào hệ thống Linux
Dấu nhắc : “#” nghĩa là account root “$” nghĩa là account thường
Linux hệ điều hành đa người dùng, cho phép nhiều người lúc sử dụng hệ thống nhiều đường khác nhau:
(13)Dùng vi để modify file /etc/securetty sau: vc/1
vc/2 #vc/3 #vc/4 #vc/10 #vc/11 tty1 tty2 #tty3 #tty4 #tty10 #tty11
man : hiển thị thông tin chi tiết công dụng cách dung lệnh khác Cú pháp: # man < tên_lệnh_khác>
Ví dụ: # man ls # man man
( Để kết thúc lệnh man gõ kí tự “q” )
ls: liệt kê danh sách tập tin thư mục thời Cú pháp: # ls <tham số>
Ví dụ: # ls –la (sẽ hiển thị toàn dang sách kể file ẩn)
(14)pwd : hiển thị thư mục thời Cú pháp: # pwd
cp: copy tập tin thư mục
Cú pháp: # cp <tham số> [source] [destination]
Ví dụ: # cp –R /tmp/ /etc/ (copy toàn thư mục tmp sang /etc/) # cp /etc/shadow /tmp/ (copy tập tin shadow sang thư mục /tmp)
mv: di chuyển tập tin thư mục Lệnh di chuyển hay đổi tên file từ nơi đến nơi khác
Cú pháp: # mv <file_hoặc_thư_mục_nguồn> <file_hoặc_thư_mục_đích> mkdir: tạo thư mục
Cú pháp: # mkdir [tên thư mục]
Ví dụ: # mkdir jupiter (tạo thư mục Jupiter)
# mkdir –p /etc/1/2/3 (tạo loạt thư mục phả hệ )
rmdir: dung để xóa thư mục
Cú pháp: # rmdir <thư_mục_muốn_xóa> Ví dụ: # rmdir /tmp
rm: xoá tập tin thư mục Cú pháp: # rm <tham số> [tên]
Ví dụ: # rm –rf xoá nội dung bên thư mục => lệnh nguy hiểm, bạn cần kiểm tra lại trước xóa
# rm –f /etc/ITdep.txt
exit logout: text mode, Linux cung cấp cho bạn desktop (tty1… tty6) để làm việc Để di chuyển qua lại desktop cách nhấn tổ hợp phím Alt-F1, Alt-F2….,Alt-F6 HAi lệnh dung để thoát khỏi phiên làm việc desktop trở hình login
Cú pháp: # exit # logout
chown : lệnh dung để thay đổi chủ sở hữu tập tin hay thư mục, gán cho tập tin thư mục thuộc quyền sở hữu user
Cú pháp: # chown username[.groupname] <tên_file_hoặc_thư_mục> # chown groupname <tên_file_hoặc_thư_mục>
Ví dụ: # chown user1.user /tmp # chown user /tmp
(15)chmod : lệnh dùng thay đổi thuộc tính file thư mục Có tất 3 thuộc tính read, write, execute áp đặt lên nhóm Owner, Group, Other
Quyền Giá trị r (read) w (write) x (execute)
Cú pháp: # chmod thuộc_tính_dạng_số <tên_file_hoặc_thư_mục> Ví dụ: # chmod 755 /tmp
Thư mục /tmp owner có quyền (r,w,x = + + 1=7), group có quyền (r,x = + = 5), other ( r,x = + = 5)
(16)useradd : dung để them account vào hệ thống Cú pháp: # useradd <username>
Ví dụ: # useradd usertest
Sau tạo account bạn phải đặt password cho account lệnh “passwd”
userdel : xóa account khỏi hệ thống Cú pháp: # userdel <username>
Ví dụ: # userdel usertest
passwd: thay đổi mật mã account Cú pháp: # passwd <username>
Ví dụ: # passwd usertest
chkconfig : kiểm tra bật tắt dịch vụ Linux Cú pháp: # chkconfig <tham số> <tên dịch vụ> <on/off>
Ví dụ: # chkconfig list ( liệt kê danh sách dịch vụ tồn ) # chkconfig –level 345 kudzu on (bật dịch vụ kudzu chế độ 345)
* Khi sử dụng lệnh không tác dụng mà tác dụng bạn khởi động lại máy tương ứng với Level
ntsysv: giống chkconfig giao diện GUI
mount : dung để ánh xạ ổ đĩa vào thư mục bất kì
(17)(DHCP Server)
1 Khái niệm:
Khi quản trị hệ thống mạng, thường ta phải cung cấp địa IP cho máy tính khác để máy liên lạc với Với mơ hình mạng tương đối nhỏ (khoảng 10 đến 20 máy), việc cung cấp IP cho máy tính mạng tương đối dễ dàng cho quản trị viên, việc sử dụng vài thao tác quen thuộc việc gán địa IP Nhưng mơ hình mạng lớn ( từ 20 máy trở lên ) việc cung cấp IP thật mệt mỏi khó khăn rồi, có vấn đề di chuyển thường xuyên máy tính với cơng việc phức tạp phí sức
Chính lý mà ngày nay, hầu hết tất hệ điều hành cung cấp cho dịch vụ để giải vấn đề cần thiết trên, dịch vụ cung cấp địa IP động DHCP (Dynamic Host Configuration Protocol).
Không cung cấp IP mà dịch vụ cịn đưa cho nhiều tính để cung cấp yếu tố khác cho máy client, ví dụ cung cấp địa máy tính dùng để giải tên miền DNS, địa Gateway router, địa máy WINS v.v
Thành phần DHCP server bao gồm bốn mục sau :
Thành phần Chức năng
Options
Scope
Reservation
Lease
Dùng để cung cấp yếu tố cho phía client địa IP, địa subnet mask, địa Gateway, địa DNS v.v…
Một đoạn địa quy định trước DHCP server mà dùng để gán cho máy client
Là đoạn địa dùng để “để dành” scope mà quy định
Thời gian “cho thuê” địa IP client
2 Cài đặt:
Để sử dụng dịch vụ DHCP này, bạn phải cài đặt vào hệ thống thơng thường bằng gói dịch vụ có sẵn đĩa CD có phần mở rộng rpm, ngồi ra chúng ta cài đặt package dạng source code tải gói từ trang web GNU Quá trình cài đặt bao gồm bước sau :
Ở dạng phần đuôi mở rộng rpm, ta chạy lệnh:
rpm –ivh dhcp-*.rpm
Ở dạng source code, ta biên dịch sau :
tar –xzvf dhcp-*.tar.gz cd dhcp-*
./configure make
(18)- Sau hoàn tất xong trình cài đặt, cấu hình để dịch vụ hoạt động theo ý muốn cách tạo sửa đổi file /etc/dhcpd.conf Tập tin có nội dung sau :
deny client-updates; ddns-update-style interim;
subnet 192.168.0.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.0.190 192.168.0.240;
option routers 192.168.0.10;
option subnet-mask 255.255.255.0;
option nis-domain "mydomain.com"; option domain-name "mydomain.com"; option domain-name-servers 192.168.0.20; option netbios-name-servers 192.168.0.100; option ntp-servers 192.168.0.25;
option smtp-server 192.168.0.35;
default-lease-time 360000; max-lease-time 259200; }
# Client-definitions
host big-daddy {
hardware ethernet 00:a0:d9:cb:94:8a; fixed-address 192.168.0.18;
}
- Các dịng có ý nghĩa sau :
Hai dịng khơng cho phép DHCP Server cập nhật động DNS
Dòng đoạn địa mà bạn cần cung cấp cho hệ thống máy bạn, bao gồm địa NET IDs đoạn địa (Như Server cấp cho phía máy đoạn địa chạy từ 192.168.0.190 đến 192.168.0.240 )
o Option routers cung cấp cổng gateway mặc định
o Option subnet-mask Subnet mask mặc định cho phía client o Option nis-domain cung cấp tên NIS Domain Server
o Option domain-name cung cấp tên domain mặc định sử dụng FQDN
o Option domain-name-servers cung cấp name-servers cho mạng bạn
o Option netbios-name-servers cung cấp địa mặc định WINS-server
o Option ntp-servers cung cấp địa timeserver
(19) Dòng cuối bạn dự định cấp địa cố định cho máy bạn phải khai báo địa MAC máy IP tương ứng
- Và trước khởi động DHCP Server lên bạn phải tạo tập tin cuối dùng để xem xét việc cấp phát địa IP cho phía client:
touch /etc/dhcpd.lease
- Để bật tắt dịch vụ DHCP bạn chạy hai script tương ứng sau:
(20)Chương III: DNS Server: Bind
Đây dịch vụ quan trọng Internet DNS quan trọng DNS hoạt động sai khơng hoạt động, tồn phần mạng Internet liên quan bị tê liệt hoàn toàn Hiểu rõ DNS quan trọng với quản trị viên máy chủ có kết nối Internet Nó cho phép quản trị viên tìm nhanh chóng ngun nhân trục trặc mạng
DNS nói cách đơn giản dịch vụ cho phép ánh xạ , chuyển đổi tên hệ thống nối Internet địa IP Nguyên nhân tồn DNS người có thói quen đặt tên cho trang thiết bị mà trang thiết bị lại dùng số để liên lạc với Vào thời kỳ Internet, người ta lập bảng mối liên hệ tên địa IP cài đặt máy tính để tất tham khảo Nhưng với phát triển nhanh Internet, bảng phát triển nhanh chóng khơng máy hoàn thành nhiệm vụ đơn giản lại quan trọng Hơn nữa, thay đổi dù đâu phải thông qua server trung tâm Điều trở nên khơng thể chấp nhận ln có thay đổi Internet Một giải pháp cộng đồng Internet chấp nhận chia tồn khơng gian địa IP tên thành nhóm logic nhỏ Mỗi nhóm có quyền tổ chức thơng tin máy
Như bước đầu tiên, máy nối vào Internet, không phụ thuộc vào việc có chạy hay khơng DNS server, phải cấu hình resolver, tức cách thức hành động có yêu cầu phân giải địa Resolver cấu hình qua tập tin /etc/host.conf :
[info@123doc.orgql]# more /etc/host.conf order hosts,bind
multi on
Dòng thứ /etc/host.conf cho biết có yêu cầu phân giải tên, resolver xem xét tập tin /etc/hosts sau đến sử dụng DNS server (bind)
Dòng thứ hai cho phép host có nhiều địa IP tập tin /etc/hosts
Tập tin /etc/hosts tiền thân dịch vụ DNS Hiện nay, /etc/hosts chỉ thường lưu địa mạng nội hay dùng tới máy Khi yếu cầu phân giải vượt qua khả trả lời /etc/hosts từ khóa bind chỉ cần phải sử dụng dịch vụ DNS BIND viết tắt Berkeley Internet Name Domain triển khai rộng rãi dịch vụ DNS
Khi đó, resolver cần thơng tin DNS server Thông tin lưu trữ tập tin /etc/resolv.conf Tập tin kiểm tra cách resolver sử dụng DNS để phân giải địa Nó định DNS server cụ thể cần phải truy vấn cách bổ sung phần domain cho phần tên máy Ví dụ tập tin /etc/resolv.conf
[info@123doc.org]# more /etc/resolv.conf search hcmutrans.edu.vn
(21)Dòng cho phép resolver không phân giải tên chương trình client yêu cầu, mà trường hợp phân giải không thành công, tiếp tục thử phân giải tên với phần domain tiếp nối sau Ví dụ bạn muốn tìm địa máy ITdep Nếu trình phân giải ITdep không thành công, resolver thử phân giải
Itdep.hcmutrans.edu.vn Dòng địa name server cần phải truy
vấn Nhớ địa name server số IP tên, ngược lại, người phân giải tên cho máy làm nhiệm vụ phân giải tên?
Bây chuyển qua xem xét đến cấu hình thân name server Chương trình server DNS name server chương trình daemon named (đọc nêm đê) Named thường khởi động từ đầu với khởi động hệ thống Thường named chạy thơng qua script /etc/rc.d/rc3.d/named Trong trình khởi động named đọc tập tin liệu chờ yêu cầu phân giải qua cổng xác định tập tin /etc/service (thông thường cổng 53) Named dùng giao thức UDP để phân giải tên, phân giải UDP khơng có kế quả, named dùng TCP sau
Tập tin named tham chiếu /etc/named.conf Nội dung tập tin Linux Redhat 7.3 cài mặc định :
options {
directory "/var/named"; };
zone "." { type hint; file "root.hints"; };
zone "0.0.127.in-addr.arpa" { type master;
file "pz/127.0.0";
};
Mở đầu từ khóa options cho phép nhập tùy chọn (options) tồn cục
directory "/var/named"; cho biết tập tin sau tương đối thư
mục
Ta bổ sung thêm phần options dòng lệnh :
forwaders {203.162.4.1 ; 203.162.0.11;};
Khi đó, DNS server tham chiếu name server 203.162.4.1;
203.162.0.11 khơng tìm thấy câu trả lời liệu mà có Sau
phần tham số toàn cục options, ta thấy khối zone “tên_zone “ { type master (hoặc slave hint); file “tên_tập_tin”; }; liên tiếp
Đối với domain, cần tập tin liệu Tập tin thứ lưu trữ liệu liên quan đến phân giải “xuôi “ từ name sang IP tập tin thứ hai để phân giải “ngược“ từ IP name Trừ miền “.” có tính chất giúp đỡ có tập tin cache đặc biệt
; There might be opening comments here if you already have this file. ; If not don't worry.
;
(22)6D IN NS K.ROOT-SERVERS.NET. 6D IN NS L.ROOT-SERVERS.NET. 6D IN NS M.ROOT-SERVERS.NET. 6D IN NS A.ROOT-SERVERS.NET. 6D IN NS H.ROOT-SERVERS.NET. 6D IN NS B.ROOT-SERVERS.NET. 6D IN NS C.ROOT-SERVERS.NET. 6D IN NS D.ROOT-SERVERS.NET. 6D IN NS E.ROOT-SERVERS.NET. 6D IN NS I.ROOT-SERVERS.NET. 6D IN NS F.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET 5w6d16h IN A 192.112.36.4 J.ROOT-SERVERS.NET 5w6d16h IN A 198.41.0.10 K.ROOT-SERVERS.NET 5w6d16h IN A 193.0.14.129 L.ROOT-SERVERS.NET 5w6d16h IN A 198.32.64.12 M.ROOT-SERVERS.NET 5w6d16h IN A 202.12.27.33 A.ROOT-SERVERS.NET 5w6d16h IN A 198.41.0.4 H.ROOT-SERVERS.NET 5w6d16h IN A 128.63.2.53 B.ROOT-SERVERS.NET 5w6d16h IN A 128.9.0.107 C.ROOT-SERVERS.NET 5w6d16h IN A 192.33.4.12 D.ROOT-SERVERS.NET 5w6d16h IN A 128.8.10.90 E.ROOT-SERVERS.NET 5w6d16h IN A 192.203.230.10 I.ROOT-SERVERS.NET 5w6d16h IN A 192.36.148.17 F.ROOT-SERVERS.NET 5w6d16h IN A 192.5.5.241
Đây thực chất địa IP name server gốc (root) Internet Ví dụ miền hcmutrans.edu.vn ta cần có :
zone "hcmutrans.edu.vn" { type master;
file "db.hcmutrans.edu.vn"; };
zone "1.16.172.in-addr.arpa" { type master;
file "db.172.16.1";
Chú ý viết cú pháp 1.16.172.in-addr.arpa cho tên miền phân giải ngược IP name
Sau ta xem xét đến cấu trúc tập tin /var/named/db.hcmutrans.edu.vn
@ IN SOA hcmutrans.edu.vn root.hcmutrans.edu.vn ( 199609206 ; serial, todays date + todays serial # 8H ; refresh, seconds
2H ; retry, seconds 1W ; expire, seconds 1D ) ; minimum, seconds NS hcmutrans.edu.vn.
MX 10 hcmutrans.edu.vn ; Primary Mail Exchanger TXT "MCSEVIETNAM Corporation"
localhost A 127.0.0.1
hcmutrans.edu.vn A 172.16.1.1 linuxsrv A 172.16.1.1
(23)mail CNAME hcmutrans.edu.vn. news CNAME hcmutrans.edu.vn.
Ký tự “@” thay cho miền hcmutrans.edu.vn; IN Internet ; SOA Start Of Authority; tiếp nối tên miền địa người chịu trách nhiệm Chú ý địa email người chịu trách nhiệm, dấu @ quen thuộc thay dấu chấm “.” Sau tên miên có dấu chấm “.” cuối Trong tất tập tin liệu DNS, tên không kết thúc dấu chấm DNS server thêm vào tên miền tương ứng tập tin Ví dụ tập tin ứng với miền
hcmutrans.edu.vn, ITdep bổ sung thêm thành ITdep.hcmutrans.edu.vn.
Sau phần ngoặc đơn với số miêu tả số serie thông số thời gian thông tin, bắt đầu dòng (record) liệu Khoảng trắng đầu dòng tương đương với tên miền (như dấu @), NS ám record dạng nameserver MX mail exchange, dùng để máy chịu trách hiệm nhận thư điện tử cho domain Số 10 múc độ ưu tiên cho mail server Độ ưu tiên cao số nhỏ A viết tắt Address, địa IP CNAME
canonical name Với CNAME ta gán cho máy biệt danh tùy ý tiện cho việc sử dụng Các dòng bắt đầu ; thích
Ví dụ tập tin dùng cho phân giải ngược /var/named/db.172.16.1
@ IN SOA hcmutrans.edu.vn root.hcmutrans.edu.vn ( 199609206 ; Serial
28800 ; Refresh 7200 ; Retry 604800 ; Expire
86400) ; Minimum TTL NS hcmutrans.edu.vn. ;
; Servers ;
1 PTR simbahcm.hcmutrans.edu.vn. 2 PTR trantungbtre.hcmutrans.edu.vn. 3 PTR hungden.hcmutrans.edu.vn. ;
Cấu trúc tập tin /var/named/db.172.16.1 có phần đầu giống hệt tập tin phân giải xi Chỉ có từ khóa PTR = Pointer khác.
(24)Chương IV:SAMBA
I. Giới thiệu 1 Khái niệm:
Ngày nhu cầu chia sẻ tài nguyên mạng nội thiếu Chia sẻ đĩa, chia sẻ thư mục, máy in dùng chung mạng nội Trong bài hướng dẫn nối mạng Linux với Windows sử dụng giao thức Server
Message Block (SMB) , hay gọi Session Message Block để giao tiếp
và chia sẻ tập tin, máy in lẫn Sử dụng chương trình Samba để đáp ứng nhu cầu Biểu tượng Linux PC xuất Windows Network Neighborhood
2 Samba: giao thức Server Message Block (SMB) , hay gọi Session
Message Block
Giao thức SMB dùng để chia sẻ dĩa máy in cho Microsoft Windows 3.11, NT 95/98 Sử dụng cơng cụ Samba Linux chia sẻ tài nguyên Linux cho Windows Bốn điều Samba làm: - Chia sẻ dĩa Linux cho Windows
- Chia sẻ SMB với máy Linux
- Chia sẻ máy in Linux cho Windows - Chia sẻ máy in Windows cho Linux
II. Cài đặt
1 Cài đặt cấu hình Samba
- Kiểm tra xem Samba cài chưa rpm –qi samba
+ Nếu chưa cài hình terminal trả
(25)Thư mục cài Samba
Directory Miêu tả
/usr/local/samba Thư mục
/usr/local/samba/bin Binaries
/usr/local/samba/lib smb.conf, lmhosts, configuration files, etc.
/usr/local/samba/man Tài liệu hướng dẫn Samba
/usr/local/samba/private File password mã hóa
/usr/local/samba/swat Files SWAT
/usr/local/samba/var Samba log files, lock files, browse list info, shared memory files, process ID files
- Nếu chưa cài Samba bạn vào website www.samba.org theo hướng dẫn trang web để tải tập tin RPM Để cài đặt dùng lệnh
rpm –i samba
- Từ Version 2.0 trở Samba kèm theo tện ích Swat ( công cụ quản trị Samba qua giao diện Web) , cơng cụ cho phép cấu hình Samba cách dễ dàng Swat cho phép bạn dùng trình duyệt web thay đổi trực tiếp lên tập tin cấu hình Samba /etc/smb.conf
- File cấu hình Samba /etc/samba/smb.conf
# Samba config file created using SWAT # from localhost (127.0.0.1)
# Date: 2000/05/25 10:29:40 # Global parameters
[global]
workgroup = ONE netbios name = TERRY server string = Samba Server security = SHARE
log file = /var/log/samba/log max log size = 50
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
wins support = Yes hosts allow = 192.168.1 hosts deny = all
[homes]
comment = Home Directories read only = No
[printers]
(26)path = /var/spool/samba guest ok = Yes
print ok = Yes browseable = Yes [test]
path = /tmp/sambatest valid users = test read only = no guest ok = no browseable = yes [global]
[Global] phần smb.conf, phần smb.conf gồm lựa chọn giá trị định dạng: option = values Bạn có hàng trăm lựa chọn giá trị định dạng khác Dưới định dạng chung
Workgroup = TuanQL tên workgroup xuất network properties máy windows
Netbios name = Linux tên mà Samba server biết bởi máy windows
Server string = Samba Server tên Samba server Security = SHARE mức độ quyền Server, mức độ
khác: User , Default, Domain, Server Sử dụng Share dễ dàng tạo chia sẻ cho anonymous, không cần chứng thực
Log_file = /var/log/samba/log thư mục chứa tập tin log max log size = 50 dung lượng tối đa tập tin log tính
KB
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 tối ưu hóa server
wins support = Yes samba server đóng vai trò Wins Server hosts allow = 192.168.1 cho phép yêu cầu từ network này hosts deny = all không nhận yêu cầu từ tất host
[Homes]
Lựa chọn cho phép người dung nhanh chóng truy nhập vào thư mục home họ
comment = Home Directories ghi chú
read only = No người dung có tồn quyền thư mục home họ
[printers]
Thiết lập lựa chọn máy in
Path = /var/spool/samba thư mục máy in Guest ok = Yes cho phép guest truy cập vào máy in Print ok = Yes cho phép người dùng sử dụng máy in
Browseable = Yes biểu tượng máy in xuất browse list
[test]
Cấu hình chia sẻ thư mục test Linux
Path = /tmp/sambatest đường dẫn thư mục chia sẻ
(27) Guset ok = No không cho guest quyền truy nhập
read only = No người dung có tồn quyền thư mục home họ
Browseable = Yes thư mục share xuất browse list 2 Sử dụng Swat:
Trước sử dụng Swat cần thay đổi tập tin để bật tiện ích lên + Thêm vào /etc/services
Swat 901/tcp + Thêm vào /etc/inetd.conf
Swat stream tcp nowait.400 root /usr/sbin/swat swat
+ khởi động lại Inetd
killall –HUP inetd
- Sử dụng trình duyệt web để chạy Swat http://localhost:901 Hộp thoại yêu cầu nhập User ID mật xuất hiện, đăng nhập với quyền root:
- Đầu tiên bạn phải cấu hình [globals] cách bấm vào biểu tượng GLOBALS
(28)Trang Global Variables cho dễ cấu hình [Globals] file smb.conf
Trang Global Variables chia thành lựa chọn Base Options
Security Options Logging Options Tuning Options Browse Options WINS Options
(29)Log, tuning, browse, WINS options
Sau điền vào giá trị cần thiết, bấm vào Commit Changes để lưu thay đổi
- Tiếp theo chọn biểu tượng SHARES để mở trang Share Parameters
Trang Share Parameters
(30)Điền vào thong tin cấu hình để Windows truy cập vào Samba server
Sau hoàn tất nhấn Commit Changes để lưu vào file smb.conf
- Tiếp theo chia sẻ máy in cho máy Windows sử dụng Chọn biểu tượng PRINTERS
Hiển thị tên máy in mà bạn chọn
Để tạo chọn Create Printer, bạn có sẵn máy in bạn chọn từ menu Drop-down Chú ý bạn cài sẵn máy in RedHat, sử dụng máy in mặc định samba khơng thể xóa Nhấn vào Commit Changes để lưu lại vào smb.conf
(31)tiện ích testparm kiểm tra lỗi tập tin smb.conf
- Sau thay đổi file smb.conf, bạn phải khởi động lại samba Khởi động Samba dòng lệnh: /usr/sbin/samba start /etc/init.d/samba start Để khởi động Samba Swat chọn biểu tượng STATUS dịch vụ smbd nmbd phải khởi động
Trang Server Status cho biết trạng samba server
- Sau Samba khởi động, dùng lệnh smbclient localhost để thấy thơng tin cấu hình samba: smbclient –L localhost
(32)Trên máy Windows Client phải cài “Client for Microsoft Network” “File and printer sharing for Microsoft Networks”
Hộp thoại Network Properties
4 Kiểm tra Samba server
Bạn kiểm tra lại thứ bạn làm chắn khơng có sai sót Trên máy Windows -> Network Neighborhood Trong cửa sổ Network Neighborhood bạn thấy danh sách máy Windows, thư mục chia sẻ, bạn thấy Linux Server Trên máy Linux bạn truy cập vào thư mục Windows lệnh smbclient: smbclient //tên máy tính/tên thư mục
III. Kết luận
Vậy bạn cấu hình Samba server để kết nối máy tính dùng HĐH Linux với Windows thơng qua giao thức SMB ( Server Message Block) Bạn dùng NFS ( Network File System ) để chia sẻ file mạng nội bộ, dễ cấu hình dùng Samba
(33)1/ Khái niệm:
- Proxy cho phép bạn cần máy nhóm nhỏ máy để trợ giúp cho việc truy cập Internet cho tất máy bạn Sử dụng proxy có hai lợi quan trọng, thứ bạn cần ít, hay địa IP thức mà lại cho nhiều máy truy cập Internet, thứ hai trang Web lấy về, lưu đĩa máy proxy có yêu cầu khác lấy trang web đó, proxy không cần phải Internet lấy liệu mà lấy thẳng từ đĩa cứng lưu lại lần trước tiết kiệm đường kết nối Internet thường mắc tiền bận bịu Mơ hình sử dụng Proxy minh hoạ sau :
- Nhưng với cấp độ lớn hơn, sử dụng mơ hình cache nhiều lớp bao gồm nhóm máy Proxy tương tự sau :
2/ Linux SQUID Proxy Server:
(34)có nhiều chương trình proxy-server chúng lại có hai nhược điểm, thứ nhất phải trả tiền để sử dụng, thứ hai hầu hết không hỗ trợ ICP ( ICP sử dụng để cập nhật thay đổi nội dung URL sẵn có cache – nơi lưu trữ trang web mà bạn qua ) Squid lựa chọn tốt cho proxy-cache server, squid đáp ứng hai yêu cầu sử dụng miễn phí sử dụng đặc trưng ICP
- Squid đưa kỹ thuật lưu trữ cấp độ cao web client, đồng thời hỗ trợ dịch vụ thông thường FTP, Gopher HTTP Squid lưu trữ thông tin dịch vụ RAM, quản lý sở liệu lớn thơng tin đĩa, có kỹ thuật điều khiển truy cập phức tạp, hỗ trợ giao thức SSL cho kết nối bảo mật thông qua proxy Hơn nữa, squid liên kết với cache proxy server khác việc xếp lưu trữ trang web cách hợp lý
- Sau thực cách thức cài đặt Proxy server
3./ Cài đặt:
- Đầu tiên nên có số khái niệm địi hỏi phần cứng proxy server:
*** Tốc độ truy cập đĩa cứng : quan trọng squid thường xuyên phải đọc ghi liệu ổ cứng Một ổ đĩa SCSI với tốc độ truyền liệu lớn ứng cử viên tốt cho nhiệm vụ
*** Dung lượng đĩa dành cho cache phụ thuộc vào kích cỡ mạng mà Squid phục vụ Từ đến Gb cho mạng trung bình khoảng 100 máy Tuy nhiên số có tính chất ví dụ nhu cầu truy cập Internet yếu tố định cần thiết độ lớn đĩa cứng
*** RAM : quan trọng, RAM Squid chậm cách rõ ràng
*** CPU : không cần mạnh lắm, khoảng 133 MHz chạy tốt với tải requests/second
- Cài đặt Squid với RedHat Linux đơn giản Squid cài bạn chọn q trình cài đặt từ đầu Hoặc bạn cài Linux không Squid, bạn có thể cài sau qua tiện ích rpm với lệnh :
rpm –i tên_gói_Squid
Khi squid cài bạn bước qua phần cấu hình squid - Các thư mục mặc định squid:
/usr/sbin /etc/squid /var/log/squid
- Cài đặt từ source :
+ Ta có file source squid squid-version.tar.gz, ta thực bước lệnh sau:
tar –xzvf squid-version.tar.gz cd squid-version
./configure make make install
Sau ta thực lệnh trên, coi ta cài đặt xong squid
3./ Cấu hình Squid:
- Sau cài đặt xong squid, ta phải cấu hình squid để phù hợp với yêu cầu riêng Ta cấu hình số tham số file /etc/squid/squid.conf sau:
(35)** cache_dir: khai báo kích thước thư mục cache cho squid, mặc định là:
cache_dir /var/spool/squid/cache 100 16 256
Giá trị 100 tức dùng 100MB để làm cache, dung lượng đĩa cứng lớn, ta tăng thêm tuỳ thuộc vào kích thước đĩa Như squid lưu cache trong thư mục /var/spool/squid/cache với kích thước cache 100MB.
** Access Control List Access Control Operators: ta dùng hai chức để ngăn chặn giới hạn việc truy xuất dựa vào destination domain, IP address máy mạng Mặc định squid từ chối phục vụ tất cả, ta phải cấu hình lại tham số Để vậy, ta cấu hình thêm cho thích hợp với yêu cầu hai tham số : acl http_access.
Ví dụ: Ta cho phép mạng 172.16.1.0/24 dùng proxy server từ khoá src acl.
acl MyNetwork src 172.16.1.0/255.255.255.0
http_access allow MyNetwork http_access deny all
+ Ta cấm máy truy xuất đến site khơng phép bằng từ khố dstdomain acl, ví dụ:
acl BadDomain dstdomain yahoo.com http_access deny BadDomain
http_access deny all
+ Nếu danh sách cấm truy xuất đến site dài quá, ta lưu vào file text, file danh sách địa chủ sau:
acl BadDomain dstdomain “/etc/squid/danhsachcam” http_access deny BadDomain
+ Theo cấu hình file /etc/squid/danhsachcam file văn lưu địa chỉ không phép truy xuất ghi theo dịng
+ Ta có nhiều acl, ứng với acl phải có http_access sau:
acl MyNetwork src 172.16.1.0/255.255.255.0 acl BadDomain dstdomain yahoo.com http_access deny BadDomain
http_access allow MyNetwork http_access deny all
+ Như cấu hình cho ta thấy proxy cấm máy truy xuất đến site
www.yahoo.com có mạng 172.16.1.0/24 phép dùng proxy “http_access deny all”: cấm tất ngoại trừ acl khai báo.
- Nếu proxy khơng thể kết nối trực tiếp với Internet khơng có địa IP thực proxy nằm sau Firewall ta phải cho proxy query đến proxy khác dùng Internet tham số sau :
cache_peer ITdep.hcmutrans.edu.vn parent 8080 8082
+ Cấu hình cho thấy proxy query lên proxy “cha”
ITdep.hcmutrans.edu.vn với tham số parent thông qua http_port 8080 icp_port 8082.
- Ngồi mạng có nhiều proxy server ta cho proxy server query lẫn sau:
cache_peer proxy2.hcmutrans.edu.vn sibling 8080 8082 cache_peer proxy3.hcmutrans.edu.vn sibling 8080 8082
sibling dùng cho proxy ngang hàng với nhau.
4./ Khởi động Squid:
- Sau cài đặt cấu hình lại squid, ta phải tạo cache trước chạy squid lệnh:
(36)- Nếu trình tạo cache bị lỗi, ta ý đến quyền thư mục cache khai báo tham số cache_dir Có thể thư mục khơng phép ghi Nếu có ta phải thay đổi bằng:
chown squid:squid /var/spool/squid chmod 770 /var/spool/squid
- Sau tạo xong thư mục cache, ta khởi động dừng squid script sau:
/etc/init.d/squid star /etc/init.d/squid stop
- Sau squid khởi động, muốn theo dõi quản lý việc truy cập client hay squid hoạt động cache nào, ta thường xuyên xem xét file sau đây:
*** cache_log: bao gồm cảnh báo thông tin trạng thái của cache
*** store_log: bao gồm sở liệu thơng tin cập nhật cache hết hạn
*** access_log: chứa tất thông tin việc truy cập client, bao gồm địa nguồn, đích đến, thời gian……
- Về phần Server cài đặt xong, cịn phía client, bạn phải hiệu chỉnh lại cấu hình địa Server port proxy Server, ví dụ hình sau:
(37)I .Giới thiệu
A Quá trình phát triển
- Apache web Server vào giới Server từ năm 90 Một nhà lập trình nhận định: “Apache viên đá quí chương trình mã nguồn mở, chi phí cho khơng có, hoạt động tốt đối thủ cạnh tranh khác, sử dụng ngày rộng rãi Web Servers thương mại khác”
- Apache thường kèm với phân phối Linux tải từ trang
www.apache.org (nó đảm bảo cho bạn ln có phiên nhất)
Trang www.apache.org/dist/htppd
- Apache thống trị thị trường web Server từ sớm Thông tin tham khảo Netcraft (www.netcraft.com), Ziff-Davis (www.zdnet.com), Apache Week (www.apacheweek.com), Apache Today (www.apachetoday.com)
B Tiến trình giải yêu cầu đặc điểm Apache
- Web Server kết hợp phần cứng phần mềm phục vụ cho tài liệu HTTP client yêu cầu Một web Server máy tính với hệ điều Linux, file hệ thống đầy đủ khà hổ trợ tốt cho ứng dụng Web Server, kết nối mạng (đó đặt trưng cho Internet tổ chức intranet) Khi làm việc với Web Server cần có cân nhắc loại người dùng đảm bảo hệ thống chạy thực hiệu quả, là:
Mục đích Web Server
(38)+ Mục đích Web Server thay đổi Từ đơn giản mạng server nội bộ, đến phức tạp e-commerce server Nó quan trọng để xác định mục đích Server trước xây dựng đưa vào hoạt động
+ Tiến trình request/response việc Client yêu cầu, thường từ trình duyệt Web, trả lời từ Server, trả thông tin cho Client
- Tiến trình hoạt động Web Server
+ Client sử dụng trình duyệt Web kết nối đến Server đưa yêu cầu Yêu cầu sử dụng giao thức HTTP mà người dùng muốn Server cung cấp, nói cho Server biết phiên HTTP dùng để trả lời Web Server lắng nghe yêu cầu mạng Khi yêu cầu gửi đến , Web Server phân tích thành phần:
Cách thức sử dụng GET, POST, hay HEAD Phương pháp GET yêu cầu Uniform Resource Indicator (URI - định tài nguyên đồng nhất) tài liệu từ Web server Phương pháp POST gửi liệu điều khiển định URI Phương pháp HEAD yêu cầu headers từ Web server
Tài nguyên yêu cầu: Web Server đổi URI, xác định đối tượng yêu cầu thành đường dẫn vật lý hệ thống file Web server
Phiên HTTP
+ Web Server tiếp tục quy trình giải yêu cầu việc dùng child processes ( tiến trình ) để hồn thành u cầu, gửi trả lời lại cho người dùng Trong khoản thời gian Web Server kiểm tra quyền hạn Client Trước hoàn tất yêu cầu, Web Server xác định loại MIME đối tượng yêu cầu đặt lại aliases
+ Yêu cầu Client thực Trình duyệt Web cập nhập thơng tin Ví dụ trang HTML, file, thơng báo lỗi xuất Khi kết thúc yêu cầu Web server cập nhập lại file log ngắt kết nối đến Client
- Đặc điểm Web Server:
Là phần mềm mã nguồn mở hoàn toàn miễn phí Hỗ trợ hệ điều hành khác như: Linux, UNIX, Windows (95, 98, NT, and 2000), OS/2, Solaris, FreeBSD, OpenBSD, HP/UX
Apache Modular, dễ lựa chọn tích hợp với sản phẩm khác IBM Websphere
II Cài đặt cầu hình
A Xây dựng cài đặt Apache Web Server
- Khi bạn tải phiên Apache Có cách để cài : từ source code từ tập tin nhị phân ( RPM ) Bạn sử dụng cách để cài đặt
- Cài đặt từ RPM
(39)+ Login với quyền Root gõ lệnh:
rpm –ivh apache-1.3.xx-y.i386.rpm
+ Nếu muốn nâng cấp bạn phải stop Apache gõ lệnh rpm –Uvh apache-1.3.xx-y.i386.rpm
- Cài đặt từ Source: việc cài đặt từ nguồn khơng dễ cài từ RPM Có địi hỏi khác hệ điều hành khác
+ Tải file tgz hay tar.gz từ trang http://www.apache.org/dist/httpd/ vào thư mục /usr/local/src
+ Từ thư mục /usr/local/src giải nén file apache_1.3.24.tar.gz gõ lệnh tar zxvf apache_1.3.24.tar.gz
+ Apache source giải nén nằm thư mục /usr/local/src/apache_1.3.24 + Tạo User Group mặc định cho Apache
groupadd www ( tạo group www) useradd –g www www
Chú ý: Sau tạo user www, dùng lệnh passwd với tham số -l để khoá user www Điều đảm bảo tính bảo mật cao sau sử dụng root để cấu hình
+ Sử dụng configure Script gõ lệnh:
#./configure prefix=/usr/local/apache server-uid=www server-gid=www htdocsdir=/opt/web/html cgidir=/opt/web/cgi-bin enable-module=most enable-shared=max
Tham số server-uid=www định Apache server chạy với user www
User www phải tạo trước
Tham số server-gid=www định Apache server chạy với nhóm www
Tham số htdocsdir định Web site files mặc định đặt thư mục
/opt/web/html
Tham số cgidir=/opt/web/cgi-bin định thư mục mặc định cài CGI
/opt/web/cgi-bin
+ Gõ lệnh make
+ Gõ lệnh make install
+ Hướng dẫn cài đặt tham khảo từ
(40)- Kiểm tra chạy thử Apache http://127.0.0.1
B Cấu hình Apache
1 Cấu hình Apache tổng quát
- Trong mục nghiên cứu hướng dẫn bảng hướng dẫn cấu hình Apache tổng quát Giá trị giá trị mặc định
Tham số Miêu tả
ServerType standalone Điều khiển Apache chạy standalone process hay chạy inetd
ServerRoot /etc/httpd Định nghĩa thư mục gốc Apache chứa tập tin cấu hình tập tin log
PidFile
/var/run/httpd.pid
Qui định tập tin chứa PID ( Process ID) tiến trình Master Server
Timeout 300 Thời gian tối đa tính giây mà Apache chờ để gửi nhận packet
(41)MaxKeepAliveRequests
100 Đặt số lượng request cho phép cho connection
KeepAliveTimeout 15 Khoản thời gian trôi qua yêu cầu từ Client kết nối KeepAlive chế độ On
MinSpareServers Thời gian rãnh tối thiểu cho Child servers MaxSpareServers 20 Thời gian rãnh tối đa cho Child servers (
master server sinh ra)
StartServers Số lượng Child server tạo Apache khởi động
MaxClients 150 Số lượng kết nối lúc mà Child server hỗ trợ
MaxRequestsPerChild
100 Số lượng Requests tối đa Child Server trước đạt đến giới hạn Listen [ipaddress:]80 Xác định kết hợp địa IP Port mà
Apache cho phép kết nối, nhiều port sử dụng
LoadModule modname
filename Đường dẫn module tập tin thư viện server thêm vào danh sách modules hoạt động Modname
ClearModuleList Xóa list module hoạt động, xây dựng lại dùng lệnh AddModule
AddModule module.c Kích hoạt built-in khơng active module module.c
- Khi đường dẫn tập tin log file cấu hình, mặc định gán đường dẫn /etc/httpd Ví dụ: tập tin log khai báo /logs/mylog.log đường dẫn /etc/httpd/logs/mylog.log
- Khai bào KeepAlive On cải thiện hoạt động Server, làm tăng kết nối thành công Client Server Thông số MinSpareServers MaxSpareServers cho phép Apache tự điều chỉnh, them vào xóa tiến trình tài nguyên hệ thống thay đổi đột ngột Khi có nhiều số MaxClient kết nối, yêu cầu đưa vào hàng chờ ( first-in-first-out vào trước trước ), dịch vụ nhận theo thứ tự kết thời đóng lại, thong số có lợi cho WebSite có lượng truy cập lớn
- Đối với nhiều Sites giá trị tập tin cấu hình mặc định khơng cần thay đổi Và không cần thay đổi thứ tự nạp Module kích hoạt Module tham số LoadModule AddModule bạn biết bạn làm Một vài Module lệ thuộc vào Module khác để hoạt động Apache không Start lên Module nạp không
(42)- Các thông số không cần thay đổi nhiều, giá trị đưa Apache Group
2 Cấu hình mặc định ( không chứa Virtual hosts)
- Trước đây, nói đến Default Server hay Primary Server nói đến Web Server trả lời tất yêu cầu HTTP không dùng đến Virtual Hosts hay Vitual Servers Virtual Hosts hay Vitual Servers Web Server chạy máy giống Default Server Main Server có nhiều host name IP Cấu hình Default Server dùng cấu hình Vitual Servers
- Bảng hướng dẫn cấu hình Default Server
Tham số Miêu tả
Port 80 Cổng dùng cho kết nối đến Server User [#]apache Chỉ định UID có quyền thực thi Apache Group [#]apache Chỉ định GID có quyền thực thi Apache ServerAdmin
info@123doc.org
Địa mail gửi đến Client có lỗi
ServerName Tên Server www.mydomain.com , khác tên host server
DocumentRoot
“/var/www/html”
Đường dẫn thư mục mặc định chứa trang web
UserDir public_html Đường dẫn thư mục thư muc Home User dùng chứa trang web
DirectoryIndex filename Chỉ định hay nhiều tên file Index mà yêu cầu xác định file
AccessFileName htaccess
Qui định quyền truy cập tập tin thư mục hay thư mục con, tập tin định AccessFile
UseCanonicalName On Apache tự tham chiếu đến URL Nếu On sử dụng tên Server Port, off sử dụng tên Host Port cung cấp cho Client
TypesConfig
/etc/mime.types Quy định tên tập tin theo chuẩn MIME, phần mở rộng phép Server DefaultType text/plain Chuẩn mặc định kiểu MIME có yêu cầu
được gửi đến
(43)ErrorLog
/var/log/httpd/error _log Xác định đường dẫn file error log
LogLevel warn Xác định thông tin chi tiết Apache ghi vào tập tin error log
LogFormat formatstr Định dạng kiểu formatstr, Apache ghi lại log vào Access log
CustomLog
/var/log/httpd/access_log combined
Xác định tên tập tin access log định dạng tập tin log
ServerSignature On Hiển thị tên Server phiên vào cuối trang có thơng báo lỗi, liệt kê tập tin FTP,
Alias urlpath dirpath Liên kết đường dẫn thư mục liên quan đến
DocumentRoot, đến thư mục tập tin hệ thống, nằm hệ thống tập tin server
ScriptAlias urlpath dirpath
Hoạt động giống Alias dung đường dẫn chức script CGI
IndexOptions FancyIndexing
Xác định đặc điểm hoạt động thư mục Apache indexing
AddIconByEncoding mimeencoding
Đặt biểu tượng xuất bên cạnh tập tin dạng mimeencoding, sử với FancyIndexing
AddIconByType icon mimetype
Đặt biểu tượng xuất bên cạnh tập tin dạng mimetype, sử với FancyIndexing
AddIcon icon name Đặt biểu tượng bên cạnh tập tin có phần mở rộng name
DefaultIcon
/icons/unknown.gif Đặt biểu tượng mặc định với tập tin MIME không xác định loại AddDescription str file Gán kiểu String cho phần miêu tả với hay nhiều
tập tin file, dung với FancyIndexing AddEncoding
mimeencoding name
Gán kiểu mã hoá MIME mimeencoding cho tập tin có phần mở rộng name
AddType mimetype name
(44)Dưới tham khảo cấu hình Default Server Port 80 User apache Group apache ServerAdmin info@123doc.org DocumentRoot “/var/www/html” <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory “/var/www/html”>
Options Indexes Includes FollowSymLinks AllowOverride None
Order allow,deny Allow from all </Directory>
UserDir public_html
DirectoryIndex index.html index.htm index.shtml index.php index.php4 index.php3 index.cgi
AccessFileName htaccess <Files ~ “^\.ht”>
Order allow,deny Deny from all </Files> UseCanonicalName On TypesConfig /etc/mime.types DefaultType text/plain <IfModule mod_mime_magic.c> MIMEMagicFile conf/magic </IfModule> HostnameLookups Off ErrorLog /var/log/httpd/error_log LogLevel warn
LogFormat “%h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined LogFormat “%h %l %u %t \”%r\” %>s %b” common
LogFormat “%{Referer}i -> %U” referer LogFormat “%{User-agent}i” agent
CustomLog /var/log/httpd/access_log combined ServerSignature On
Alias /icons/ “/var/www/icons/” <Directory “/var/www/icons”> Options Indexes MultiViews AllowOverride None
Order allow,deny Allow from all </Directory>
ScriptAlias /cgi-bin/ “/var/www/cgi-bin/” <Directory “/var/www/cgi-bin”>
AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory>
IndexOptions FancyIndexing
AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip AddIconByType (TXT,/icons/text.gif) text/*
(45)AddIconByType (SND,/icons/sound2.gif) audio/* AddIconByType (VID,/icons/movie.gif) video/* AddIcon /icons/binary.gif bin exe
AddIcon /icons/binhex.gif hqx AddIcon /icons/tar.gif tar
AddIcon /icons/world2.gif wrl wrl.gz vrml vrm iv AddIcon /icons/compressed.gif Z z tgz gz zip AddIcon /icons/a.gif ps eps
AddIcon /icons/layout.gif html shtml htm pdf AddIcon /icons/text.gif txt
AddIcon /icons/c.gif c AddIcon /icons/p.gif pl py AddIcon /icons/f.gif for AddIcon /icons/dvi.gif dvi
AddIcon /icons/uuencoded.gif uu
AddIcon /icons/script.gif conf sh shar csh ksh tcl AddIcon /icons/tex.gif tex
AddIcon /icons/bomb.gif core AddIcon /icons/back.gif
AddIcon /icons/hand.right.gif README AddIcon /icons/folder.gif ^^DIRECTORY^^ AddIcon /icons/blank.gif ^^BLANKICON^^ DefaultIcon /icons/unknown.gif
ReadmeName README.html HeaderName HEADER.html
IndexIgnore ??* *~ *# HEADER* README* RCS CVS *,v *,t AddEncoding x-compress Z
AddEncoding x-gzip gz tgz AddLanguage en en AddLanguage fr fr AddLanguage de de AddLanguage da da AddLanguage el el AddLanguage it it
LanguagePriority en fr de <IfModule mod_php4.c>
AddType application/x-httpd-php php4 php3 phtml php AddType application/x-httpd-php-source phps
</IfModule>
<IfModule mod_php3.c>
AddType application/x-httpd-php3 php3
AddType application/x-httpd-php3-source phps </IfModule>
<IfModule mod_php.c>
AddType application/x-httpd-php phtml </IfModule>
AddType application/x-tar tgz AddType text/html shtml
AddHandler server-parsed shtml AddHandler imap-file map
BrowserMatch “Mozilla/2” nokeepalive
BrowserMatch “MSIE 4\.0b2;” nokeepalive downgrade-1.0 force-response-1.0 BrowserMatch “RealPlayer 4\.0” force-response-1.0
BrowserMatch “Java/1\.0” force-response-1.0 BrowserMatch “JDK/1\.0” force-response-1.0 <IfModule mod_perl.c>
(46)SetHandler perl-script
PerlHandler Apache::Registry Options +ExecCGI
</Location> </IfModule>
Alias /doc/ /usr/share/doc/ <Location /doc>
order deny,allow deny from all
allow from localhost localdomain Options Indexes FollowSymLinks </Location>
- Tham số User Group cho biết apache chủ Child Server Điều an tồn khơng cần quyền root
- Tham số ServerName rõ tên trả cho Client Ví dụ: tên Server DNS webbeast.mydomain.com bạn đặc tên Server
www.mydomain.com , lúc Server trả lời yêu cầu gửi đến www.mydomain.com
- DocumentRoot /var/www/html xác định thư mục chứa trang Web Server Ví dụ: tên server www.mydomain.com Client truy cập trang
www.mydomain.com/index.html ,server trả tập tin /var/www/html/index.html cho Client
- Mỗi thẻ <Directory> </Directory> cấu hình quyền thư mục hay thư mục Thẻ đặt quyền cho tất thư mục:
<Directory />
Options FollowSymLinks AllowOverride None </Directory>
+ Thẻ tác dụng lên /var/www/html, /var/www/icons /var/www/cgi-bin + Dưới Options áp dụng lên thư mục là:
All : chấp nhận tất Option trừ MultiViews All giá trị mặc định
ExecCGI : cho phép thực thi CGI
FollowSymLinks : cho phép Link symbolic thư mục
Includes : cho phép SSI (server-side includes) IncludesNOEXEC : cho phép SSI không cho
phép lệnh #exec #include cho CGI scripts
Indexes : cho Server trả danh sách list thư mục tập tin khơng có index.html
MultiViews : cho phép tìm kiếm MultiViews Nếu Server nhận yêu cầu cho tài ngun khơng tồn ví dụ /doc/resource, sau Server scans thư mục tên
resouces.* ,nếu có lựa chọn phù hợp trả cho Client
None : tắt hết option cho thư mục thư mục
(47)+ Ở phần có Option cho tất thư mục từ / (root)
FollowSymLinks Từ trở tất khác biệt với Option / (root) có tác dụng thư mục bạn qui định
<Directory “/var/www/html”>
Options Indexes Includes FollowSymLinks AllowOverride None
Order allow.deny Allow from all </Directory>
+ Mục AllowOverride nói cho Server biết có quyền truy cập tập tin qui định AccessFileName (AccessFileName htaccess trường hợp trên) Nếu chọn None Server lờ tập tin access file Nếu chọn All tập tin AccessFileName htaccess có hiệu lực
+ Order điều khiển thứ tự áp đặc quyền hạn cho tài nguyên Order có giá trị:
Order Deny.Allow : Xét quyền Deny trước Allow sau, mặc định cho phép truy cập Client không bị Deny Allow truy cập Order Allow.Deny : Xét quyền Allow trước Deny sau mặc định
Deny Client không Allow bị Deny khơng truy cập Order Mutual-failure : Client có danh sách Allow
khơng có danh sách Deny truy cập
- Cài đặt quyền hạn cho file thư mục quan trọng cho Apache chạy ổn định bảo mật Root làm chủ file httpd.conf thư mục bin Những User (web) làm chủ thư mục log v.v
3 Cấu hình Virtual Hosts
- Bản hướng dẫn sau dùng cho cấu hình Vitual Server
Tham số Miêu tả
<Virtual Host ipaddr[:port]> directives </VirtualHost>
Xác định địa IP Virtual host Directives tham số cấu hình default server
NameVirtualHost
ipaddr[:port] Địa IP Vitual Host ServerName fqdn Tên đầy đủ Server
VitualHost
ServerAlias altname Cho phép Vitual Host trả lời host names khác
- Cấu hình chuẩn Vitual Server :
(48)ServerName www.that.domain.com </VirtualHost>
- Trong ví dụ www.domain.com www.that.domain.com aliases (CNAME records) cho địa 192.168.0.1 , có nghĩa tên miền
webbeast.domain.com trỏ đến 192.168.0.1 NameVirtualHost qui định địa 192.168.0.1, tên ServerName tên máy tính chạy Server
webbeast.domain.com Yêu cầu gửi đến www.that.doamain.com đáp ứng tứ /var/www/thatdomain, yêu cầu gửi đến www.domain.com
sẽ đáp ứng tứ /var/www/thisdomain
III Cài đặt cấu hình kết hợp bảo mật Apache hỗ trợ PHP A Chiến lược bảo mật sử dụng Apache
- Việc bảo mật Apache gắn liền với việc bảo mật PHP, ngơn ngữ lập trình sử dụng để tạo trang web động tương tác với người dùng liệu người dùng lưu sở liệu local Việc bảo mật mang lại :
PHP cấu hình tối ưu chế bảo mật tốt
Đoạn mã PHP thực thi môi trường chrooted Apache Server từ chối yêu cầu (Get
Post) chứa thẻ HTML ( bị cơng phương pháp Cross-Site-Scripting) kí tự (‘) hay (“) ( chống lại công phương pháp SQL Injection )
Khơng có lời cảnh báo PHP thông báo lỗi
B Cài đặt cấu hình Apache
- Cần đảm bảo MYSQL cài Server đặt thư mục “/usr/local/mysql” tích hợp SQL với PHP Trước tiên cần tải phiên mã nguồn Apache, PHP, modules
mod_security ( www.modsecurity.org ) module dùng bảo vệ CSS công SQL injection Tiến hành giải nén chương trình vào thư mục HOME, mod_security chép vào
apache_1.3.27/src/modules/extra/
gzip dc apache_1.3.27.tar.gz | tar xvf gzip dc php4.3.2.tar.gz | tar xvf
gzip dc mod_security_1.5.tar.gz | tar xvf -cp mod_security_1.5/apache1/mod_security.c apache_1.3.27/src/modules/extra/
- Trước biên dịch chương trình cần định phương pháp mà PHP cài :
Một Web Server với module tĩnh
Một Web Server với module động
Thể CGI
(49)mới PHP cần biên dịch lại hoàn toàn Lựa chọn thứ biên dịch module động nâng cấp không cần biên dịch lại họat động web server giảm 5% Phương pháp thứ cài PHP CGI liên kết chế suEXEC Apache, hồn tồn giải pháp tốt, không cài đặt trở thành lỗi bảo mật nghiêm trọng Lựa chọn tốt cho việc bảo mật tối ưu dùng phương pháp thứ Phần hướng dẫn sau làm theo phương pháp thứ
- Q trình cài đặt Apache có PHP giống với cài trình cài Apache phần có thêm modules mod_php mod_security Cần tạo User Group “apache” trước biên dịch Apache Làm theo bước sau:
cd apache_1.3.27 /configure
+ Biên dịch module PHP cd /php-4.3.2
./configure with-mysql=/usr/local/mysql with-apache= /apache_1.3.27 enable-safe-mode
make su
make install
+ Chuyển vào thư mục Apache tiếp tục cài đặt cd /apache_1.3.27
./configure prefix=/usr/local/apache disable-module=all server-uid=apache server-gid=apache module=access module=log_config module=dir module=mime enable-module=auth activate-module=src/modules/extra/mod_security
enable-module=security activate-module=src/modules/php4/libphp4.a make
su
make install
chown -R root:sys /usr/local/apache
“./configure” module cần thiết cho bảo mật cài
+ Bước chuyển vào thư mục PHP chép tập tin cấu hình PHP mặc định
cd /php-4.3.2 mkdir /usr/local/lib chmod 755 /usr/local/lib
cp php.ini-recommended /usr/local/lib/php.ini chown root:sys /usr/local/lib/php.ini
chmod 644 /usr/local/lib/php.ini
+ Cấu hình /usr/local/apache/conf/httpd.conf điều khiển PHP Script
AddType application/x-httpd-php php
+ Lúc tiến hành chạy thử kiểm tra PHP giao tiếp với MySQL chưa, Tạo tập tin “test.php” thư mục /var/www/html
<html><body> <?php
(50)or die;
print "Everything works OK!"; mysql_close($link);
?>
</body></html>
Nếu khơng chạy cần kiểm tra lại q trình cài đặt Apache MySQL
C Bảo mật Apache Chrooting Server
- Bước bảo mật tạo môi trường chrooted cho Apache với
module PHP Để tạo môi trường “Chrooting Server” xem tài liệu hường dẫn kèm Phần thêm vào sau dùng cho PHP Trước chạy Apache lần đầu môi trường chrooted cần chép thêm vào thư viện sau:
cp /usr/local/mysql/lib/mysql/libmysqlclient.so.12 /chroot/httpd/usr/lib/ cp /usr/lib/libm.so.2 /chroot/httpd/usr/lib/
cp /usr/lib/libz.so.2 /chroot/httpd/usr/lib/
- Chép tập tin cấu hình PHP mặc định
umask 022
mkdir -p /chroot/httpd/usr/local/lib
cp /usr/local/lib/php.ini /chroot/httpd/usr/local/lib/
- Tạo thư mục “/chroot/httpd/tmp” Thư mục phải Root chmod 1777 Sau tạo mơi trường kiểm tra Apache hoạt động tốt:
chroot /chroot/httpd /usr/local/apache/bin/httpd
- Trước cấu hình PHP cần phải cẩn thận kiểm tra lại giao tiếp PHP MySQL Bởi giao tiếp PHP MySQL local việc sử dụng socket “/tmp/mysql.sock” Sau dùng PHP môi trường chrooted cần tạo hard link đến môi trường chrooted
ln /tmp/mysql.sock /chroot/httpd/tmp/
2 Cấu hình PHP
- Để Apache tích hợp PHP cần thêm vào tập tin httpd.conf
AddModule mod_php4.c
AddType application/x-httpd-php php AddType application/x-httpd-php inc AddType application/x-httpd-php class
Có thể thêm phần mở rộng khác html, dhtml tùy thuộc vào Server - Những thay đổi quan trọng cải thiện bảo mật PHP cho tập tin
“/chroot/httpd/usr/local/lib/php.ini”
(51)Safe_mode= on PHP Script truy cập tập tin mà Owner tập tin Owner PHP Script Đó kĩ thuật bảo mật quan trọng cho PHP Ngăn chặn hiệu việc truy cập file hệ thống (/etc/passwd)
Safe_mode_gid=off Khi safe_mode on safe_mode_gid off, PHP script truy cập tập tin Owner group
Open_basedir = directory[: ]
Khi open_basedir thiết lập PHP truy cập tập tin thư mục định ( thư mục con)
safe_mode_exec_dir = directory[: ]
Khi safe_mode on, hàm system(), exec() hoạt động thực thi chương trình bị từ chối ,nếu không đặt vào thư mục định
expose_php = Off Tắt “expose_php” PHP từ chối cho HTTP Headers gửi đến Client trả lời yêu cầu
register_globals = Off
Khi register_global on tất biến EGPCS
( Environment, Get, Post, Server ) tự động đăng kí biến global, tạo lỗi bảo mật nghiêm trọng Nên tắt register_global ( Mặc định từ phiên 4.2.0 tham số off )
display_errors = Off Nếu display_errors tắt, PHP error lời cảnh báo khơng xuất Bởi lời cảnh báo thường để lộ thông tin đường dẫn, câu truy vấn SQL v.v log_errors = On Khi log_errors bật, tất lỗi cảnh báo ghi
nhận vào tập tin khai báo error_log Nếu không khia báo error_log thông tin Apache server ghi nhận lại
Error_log = filename Chỉ định tên tập tin dùng ghi lại cảnh báo lỗi (User group Apache có quyền ghi)
3 Chống lại cách công CSS SQL Injection
- Bước cuối cho việc bảo mật thực việc logging GET POST, đồng thời thực việc bảo vệ CSS SQL injection Chúng ta sử dụng module mod_security Thêm vào tập tin httpd.conf
AddModule mod_security.c
- Bật chế độ logging GET POST, thêm vào tập tin httpd.conf
<IfModule mod_security.c>
AddHandler application/x-httpd-php php
SecAuditEngine On
SecAuditLog logs/audit_log SecFilterScanPOST On SecFilterEngine On </IfModule>
- Những lệnh bật chức Audit Engine có nhiệm vụ logging lại yêu cầu, lọc POST Engine log lại yêu cầu POST Để bảo vệ ứng dụng Web chống lại CSS cần thêm vào trước “</IfModule>”
(52)SecFilter "<(.|\n)+>"
- Dòng Server trả thong báo “Internal Server Error” yêu cầu tìm kiếm cụm từ biến SecFilter gửi đến Dòng thứ thiết lập cho lọc tìm thẻ HTML yêu cầu GET POST
- Một kí hiệu điển hình việc cơng SQL Injection dấu (‘) (“) yêu cầu GET hay POST Bằng việc từ chối yêu cầu chứa kí tự làm cho việc cơng SQL Injection trở nên khó hơn, thêm vào tập tin httpd.conf
SecFilter "'" SecFilter "\""
- Việc lọc kí tự <,>,’,” giúp chống lại việc công CSS SQL Injection, ứng dụng PHP hoạt động khơng tốt, người dùng khơng thể sử dụng kí tự forms HTML Để giải vấn đề ngôn ngữ JavaScript dùng cho phía Client, thay kí tự với thẻ < > " …
IV Những liên kết tham khảo
- Apache HTTP Server Project: http://httpd.apache.org/
- Sample httpd.conf: www.securityfocus.com/data/tools/httpd.conf
- Sample apache.sh: www.securityfocus.com/data/tools/apache.sh
- Securing Apache: Step-by-Step: www.securityfocus.com/infocus/1694
- Sample httpd.conf with PHP support:
www.securityfocus.com/unix/linux/images/maj_httpd.conf
- PHP: www.php.net
(53)Chương VII: DỊCH VỤ THƯ ĐIỆN TỬ (Sendmail)
1 Khái niệm:
Thư điện tử, Electronic mail, Email, dịch vụ nói quan trọng người sử dụng Internet Do tính phổ cập email, việc cấu hình tốt Mail server, tạo điều kiện cho người sử dụng trao đổi Email công việc quan trọng người quản trị Một cấu hình sai email dẫn đấn tình trạng
khơng gửi nhận thư, tệ thư mà khơng có phản hồi Hoạt động dịch vụ mail gắn chặt chẽ với cầu hình DNS
Chúng ta thử hình dung trình gửi mail để hiểu chế hoạt động hệ thống Email
Đầu tiên, bạn phải có chương trình cho phép bạn soạn thảo mail Có nhiều chương trình thực nhiệm vụ : Internet Explorer, Eudora, Netscape cho Windows; eml, netscape, mail cho Unix … Các chương trình cho phép bạn đánh địa Email người nhận Địa ngày có dạng
info@123doc.org , ví dụ info@123doc.org Sau bạn soạn thảo nội dung
thư gửi lệnh hay nhấp chuột Khi đó, chương trình mail client theo cấu hình mà bạn làm, tìm SMTP server, outgoing server SMTP viết tắt Simple Mail Transfer Protocol server sử dụng giao thức SMTP gọi SMTP server Người ta thường quen dùng mail server Khi bạn khai báo SMTP server bạn thường dùng tên bạn phải sử dụng DNS server mà máy bạn phải khai báo từ trước để nhờ phân giải tìm địa IP tương ứng Sau tìm địa IP SMTP server, chương trình mail bạn thực kết nối TCP/IP với SMTP server vào cổng 25, cổng quy định cho SMTP server Hai tiến trình mail client mail server trao đổi thông tin với
thông qua SMTP protocol Nếu việc thông suốt, email bạn chấp nhận lưu trữ SMTP server chương trình mail client bạn kết thúc phiên làm việc
Công việc SMTP server bạn tìm cách gửi mail bạn tới người nhận Để làm việc này, SMTP server bạn thực thao tác :
+ Tìm mail server người nhận email bạn
+ Gửi email bạn đến mail server người nhận email bạn Thao tác hoàn toàn dựa vào DNS servers Cụ thể SMTP bạn đóng vai trị DNS client để hỏi DNS server miền bạn xem “ai mail server miền hcmutrans.edu.vn ?” Quá trình tra hỏi đưa đến việc tìm ra một record có dạng hcmutrans.edu.vn IN MX 10 mailserver.hcmutrans.edu.vn. nằm CSDL DNS server đó, thường DNS server miền
hcmutrans.edu.vn
Nếu q trình khơng thành công, thư bạn không gửi bạn nhận thông báo trả lời email bạn khơng “host unknown” Nếu ngược lại, SMTP bạn mở kết nối TCP/IP đến
mailserver.hcmutrans.edu.vn vào cổng 25 để gửi email bạn Lúc SMTP
của bạn đóng vai trò mail client Giao thức SMTP lại sử dụng để chuyển thư khâu
Nếu thứ thành công, email bạn lưu trữ
(54)Trên miêu tả trình gửi mail điển hình Internet Trên thực tế, q trình phức tạp thay đổi nhiều phụ thuộc vào cấu hình mạng Đó yếu tố làm phức tạp hóa nhiều hệ thống Email khó khăn công tác quản trị dịch vụ Email Các bạn nhận thấy có máy tính tham gia vào trình chuyển mail, nhiều lần DNS server tham gia vào hệ thống DNS server khơng chạy hồn hảo, khơng thể gửi Email
2 Dịch vụ mail server Linux (Sendmail):
Có nhiều chương trình SMTP server, Sendmail có lẽ chương trình SMTP server tiếng Unix từ lâu tính mạnh tính phức tạp Chương trình Sendmail viết Eric Allman ông là sinh viên University of California at Berkeley vào năm 1979 RedHat Linux có hai chương trình mail server smail sendmail Nhìn chung smail thích hợp cho mạng đơn giản, cịn sendmail dùng cho hai Trong khuôn khổ viết này, nghiên cứu chương trình sendmail
Chương trình sendmail gọi lên nhớ hai cách Cách thứ sendmail gọi lên chương trình mail client, ví dụ chương trình tên mail Khi sendmail mở kết nối để gửi mail Đây cấu hình sendmail máy bạn SMTP server Cách thứ hai sendmail hoạt động theo kiểu daemon, tức thường trú nhớ Khi đó, daemon sendmail “nghe“ sau cổng 25 kết nối đến Mỗi có kết nối đến cổng 25, sendmail daemon sinh tiến trình sendmail để tiếp nhận kết nối này, còn thân tiếp tục chờ đợi kết nối khác Với lệnh netstat –n ta có thể hiển thị kết nối thực Sendmail sử dụng tập tin cấu hình thư mục sau:
- Đầu tiên, Sendmail sử dụng tập tin cấu hình /etc/sendmail.cf gọi lên nhớ Tập tin thích hợp cho cơng tác sendmail cực kỳ khó hiểu người đọc Ví dụ đoạn sau sendmail.cf:
R$- $@ $1@${HUB} user -> user@hub
R$-@$w $@ $1@${HUB} info@123doc.org -> user@hub
- Đây nhược điểm đồng thời ưu điểm sendmail cho phép cấu hình sendmail uyển chuyển thỏa mãn yêu cầu dù éo le mail server Nếu bạn chưa lần phải “vỡ đầu” ký tự ả rập bạn chưa phải quản trị viên thực thụ
- Trong tập tin sendmail.cf có số trường quan trọng :
# Alias for this host
CwITdep.hcmutrans.edu.vn tuanql.ittvn.com. Cwlocalhost linuxsrv.hcmutrans.edu.vn.
- Dòng thứ xác định tất email với địa info@123doc.org, info@123doc.org thuộc máy mà chương trình sendmail chạy, cần
phải đưa cho chương trình chuyển mail máy local phải thử xem user có tồn máy khơng Tất mail với phần domain Cw coi cho miền phải chuyển qua mạng sendmail
# Smart host
Dssrv.hcmutrans.edu.vn
# Use this mailer to reach the Smart host DNsmtp
(55)- Để thử xem sendmail có phân giải địa chuyển thư theo ý định của hay khơng, bạn dùng lệnh sendmail –bt mail –v địa_chỉ
[info@123doc.org]$ /usr/sbin/sendmail -bt
ADDRESS TEST MODE (ruleset NOT automatically invoked) Enter <ruleset> <address>
> 3,0 info@123doc.org
rewrite: ruleset input: a @ ITdep.hcmutrans.edu.vn rewrite: ruleset 96 input: a < @ ITdep.hcmutrans.edu.vn > rewrite: ruleset 96 returns: a < @ ITdep.hcmutrans.edu.vn > rewrite: ruleset returns: a < @ ITdep.hcmutrans.edu.vn > rewrite: ruleset input: a < @ ITdep.hcmutrans.edu.vn > rewrite: ruleset 196 input: a < @ ITdep.hcmutrans.edu.vn > rewrite: ruleset 196 returns: a < @ ITdep.hcmutrans.edu.vn > rewrite: ruleset 98 input: a < @ ITdep.hcmutrans.edu.vn > rewrite: ruleset 98 returns: a < @ ITdep.hcmutrans.edu.vn > rewrite: ruleset 195 input: a < @ ITdep.hcmutrans.edu.vn > rewrite: ruleset 195 returns: $# local $: a
rewrite: ruleset returns: $# local $: a >
> 3,0 info@123doc.org
rewrite: ruleset input: a @ yahoo com rewrite: ruleset 96 input: a < @ yahoo com > rewrite: ruleset 96 returns: a < @ yahoo com > rewrite: ruleset returns: a < @ yahoo com > rewrite: ruleset input: a < @ yahoo com > rewrite: ruleset 196 input: a < @ yahoo com > rewrite: ruleset 196 returns: a < @ yahoo com > rewrite: ruleset 98 input: a < @ yahoo com > rewrite: ruleset 98 returns: a < @ yahoo com > rewrite: ruleset 195 input: a < @ yahoo com >
rewrite: ruleset 90 input: < yahoo com > a < @ yahoo com > rewrite: ruleset 90 input: yahoo < com > a < @ yahoo com > rewrite: ruleset 90 returns: a < @ yahoo com >
rewrite: ruleset 90 returns: a < @ yahoo com >
rewrite: ruleset 95 input: < srv.hcmutrans.edu.vn > a < @ yahoo com > rewrite: ruleset 95 returns: $# smtp $@ srv.hcmutrans.edu.vn $: a < @ yahoo com >
rewrite: ruleset 195 returns: $# smtp $@ srv.hcmutrans.edu.vn $: a < @ yahoo com >
rewrite: ruleset returns: $# smtp $@ srv.hcmutrans.edu.vn $: a < @ yahoo com >
3 Cài đặt cấu hình Sendmail:
+ Cài đặt :
- Để cài đặt Sendmail từ package rpm, ta dùng lệnh :
rpm –ivh sendmail-x.xx.x-xx.rpm
+ Cấu hình :
- Để cấu hình Sendmail, ta cấu hình file /etc/mail/sendmail.cf Trong file này, ta cấu hình số tham số thường dùng sau :
Các tham số cần điều chỉnh Giải thích
(56)# "Smart" relay host (may be null)
Dslinuxsrv.hcmutrans.edu.vn Các mail chuyển lên máy linuxsrv.hcmutrans.edu.vn để gởi # maximum number of recipients per
SMTP envelope
O MaxRecipientsPerMessage=50
Giới hạn số người nhận mail
# maximum message size
O MaxMessageSize=3000000 Giới hạn kích thước tối đa mail, tính theo đơn vị bytes
- Ngồi phải cấu hình cho sendmail nhận relay mail cho miền khai báo(linuxsrv.hcmutrans.edu.vn) file /etc/mail/sendmail.cf ta thêm tên miền đó (linuxsrv.hcmutrans.edu.vn) vào file /etc/mail/access sau :
Linuxsrv.hcmutrans.edu.vnRELAY
- Dòng khai báo cho phép client gửi mail thông qua mail server sendmail này, mặt khác mail server nhận mail cho miền
linuxsrv.hcmutrans.edu.vn gọi chế chóng relay : ngồi miền này, sendmail khơng nhận chuyển mail cho miền
- Sau thêm dòng vào, ta phải chuyển file dạng text sang dạng chuẩn sendmail đọc lệnh sau :
Cd /etc/mail/
Makemap hash access<access
- Khi thực xong bước trên, ta khởi động sendmail lệnh :
(57)Chương VIII: PPP SERVER
Cài đặt PPP Server Linux ( sử dụng kernel 2.2.x hay 2.4.x ) PPP server tương tự RAS server bên windows Cho phép client truy cập từ xa vào server thông qua modem Server sử dụng modem External gắn vào COM1 hoac COM2 Đảm bảo package sau cài đặt:
mgetty-1.1.28-9.i386.rpm
mgetty-sendfax-1.1.28-9.i386.rpm (netpbm) mgetty-viewfax-1.1.28-9.i386.rpm
mgetty-voice-1.1.28-9.i386.rpm mingetty-1.00-3.i386.rpm
ppp-2.4.1-7.i386.rpm
2 Mở tập tin /etc/inittab tìm đến
# Run gettys in standard runlevels 1:2345:respawn:/sbin/mingetty tty1 2:2345:respawn:/sbin/mingetty tty2 3:2345:respawn:/sbin/mingetty tty3 4:2345:respawn:/sbin/mingetty tty4 5:2345:respawn:/sbin/mingetty tty5 6:2345:respawn:/sbin/mingetty tty6 Thêm vào :
7:2345:respawn:/sbin/mgetty ttyS0 -n ( Nếu modem gắn vào COM1)
8:2345:respawn:/sbin/mgetty ttyS1 -n ( Nếu modem gắn vào COM2)
# số lấn Ring xác định bắng tham số -n ( ring lần) Kích hoạt lại inittab
kill -HUP
Sau kích hoạt lại inittab đèn tín hiệu AA TR (AA: Auto Answer, TR: Terminal Ready) bật sáng Lúc quay số vào PPP Server thấy tín hiệu trả lời
4 Mở tập tin /etc/mgetty+sendfax/login.config them vào:
/AutoPPP/ - a_ppp /usr/sbin/pppd auth -chap +pap login debug
5 Mở tập tin /etc/ppp/pap-secrets them vào “*” cho server, “ “” “ cho secret “*” cho địa IP, bạn định tên, password IP cho việc chứng thực PAP
6 Mở tập tin /etc/ppp/options them vào options: lock
-detach modem crtscts proxyarp asyncmap
lock: Tạo tậptin lock giành riêng quyền truy xuất thiết bị đặt biệt -detach: nói cho pppd khơng phân mảnh thành tiến trình
(58) modem: người dùng phải đợi tín hiệu từ modem để xác nhận thiết bị serial mở, không định trước
crtscts: sử dụng phần cứng điều khiển flow
proxyarp: định cho client xuất mạng Lan ngang hàng asyncmap 0: thiết lập pppd không cài sử dụng escape control
sequences
7 Tạo tập tin /etc/ppp/options.ttyname định IP cho client server cổng tty
192.168.0.1:192.168.0.100 #serverIP:clientIP
www.samba.org http://localhost:901 www.yahoo.com và www.apache.org http://www.rpmfind.net http://www.apache.org/dist/httpd/ http://www.php.net/manual/en/install.unix.php http://127.0.0.1 webbeast.mydomain.com www.mydomain.com www.mydomain.com/index.html www.domain.com www.that.domain.com webbeast.domain.com www.that.doamain.com ( www.modsecurity.org http://httpd.apache.org/ www.securityfocus.com/data/tools/httpd.conf www.securityfocus.com/data/tools/apache.sh www.securityfocus.com/infocus/1694 www.securityfocus.com/unix/linux/images/maj_httpd.conf www.php.net