CÀI ĐẶT VÀ CẤU HÌNH CHO SENDMAIL

Một phần của tài liệu TÌM HIỂU VỀ CÁC WEB SERVER THÔNG DỤNG (Trang 117 - 146)

Hệ thống Sendmail được cấu hình chủ yếu thơng qua một file nàm ở /etc/senmail.cf (mặc dù một vài hệ thống đặt nĩ ở /usr/lib/sendmail.cf hoặc ở nơi khác). Ngơn ngữ sử dụng trong file cấu hình senmail.cf thì hồn tồn khác so với các file cấu hình khác và rất phức tạp.

File Sendmail.cf điều khiển các chức năng mặc định của hệ thống gửi mail. Cĩ nhiều file khác cũng cĩ liên qua trong quá trình cấu hình, đĩ là:

Decnetxtable: cĩ nhiệm vụ đổi địa chỉ thơng thường sang địa chỉ DEC.

Genericfrom: Cĩ nhiệm vụ đổi địa chỉ bên trong sang địa chỉ thơng thường.

Mailtertable: Định nghĩa các xử lý đặc biệt cho các máy chủ từ xa và các tên miền.

Pathtable: Định nghĩa các đường dẫn UUCP đến các máy từ xa và các tên miền.

Uucprelays: Cho phép gián tiếp đến các máy chủ từ xa. Xaliases: Đổi địa chỉ thơng thường thành địa chỉ bên trong.

Sendmail + hệ thống IDA sử dụng một bộ tiền xử lý chẳng hạn như m4 hoặc dbm để tạo ra các file cấu hình sau khi người sử dụng chỉ định các giá trị cho các thơng số. Sau khi sử dụng bộ tiền xử lý, hệ thống sử dụng một bộ tạo file để tạo ra các file cấu hình cuối cùng.

1. File sendmail.cf

Khi sử dụng Sendmail + IDA, file sendmail.cf khơng được thiết lập các giá trị phù hợp với hệ thống và cơng việc của người sử dụng. Thay vì quá trình cấu hình xử lý các thay đổi sinh ra, một quá trình cấu hình bình thường được điều khiển bởi một file gọi là sendmail.m4, nĩ cung cấp các thơng tin cơ bản về tên hệ thống, đường dẫn sử dụng trên hệ thống của người sử dụng và mailer mặc định đang sử dụng. Mặc dù việc thay đổi file sendmail.m4 cĩ thể mất nhiều thời gian nhưng nĩ cần thiết đối với các thơng tin cơ bản cho việc cài đặt Linux sử dụng uucp và SMTOP cho việc chuyển vận mail.

Phần quan trọng nhất trong file sendmail.m4 là phần khai báo các thư mục. Phần này thường bắt đầu với một dịng khai báo LIBDIR:

dnl #define(LIBDIR, /usr/local/lib/mail)

Thư mục LIBDIR là nơi Sendmail + hệ thống IDA tìm kiếm các file định dạng và các bảng router, thơng thường dịng này được bỏ qua nhưng đường dẫn mặc định thì nằm ở vị trí thơng thường cho tất cả hệ thống

Linux mail. Nếu đường dẫn hiển thị trong Sendmail là chính xác, khơng cần điều chỉ lại file này. Đường dẫn này thường ghi mã trực tiếp vào trong bộ nhị phân Sendmail và khơng cần thiết để ghi đè lên bởi file sendmail.m4 (hoặc sendmail.cf). Nếu cần phải thay đổi đường dẫn này, phải gỡ bỏ giá trị dnl ở dịng bắt đầu, thêm vào đường dẫn đúng và sau đĩ lưu lại trong file sendmail.cf

Mailer cục bộ được sử dụng bởi Sendmail được khai báo tại một dịng cĩ giá trị LOCAL_MAILER_DEF

define(LOCAL_MAILER_DEF, mailers.linux)dnl

Dịng này là cần thiết bởi vì Sendmail khơng điều khiển các mail gửi đi. Một chương trình khác sẽ đảm nhận việc này thay cho Sendmail. Mặc dịnh, giá trị dùng cho mailer cục bộ được chứa trong một file gọi là mailers.linux. File này được chuyển đến mục nhập LOCAL_MAILER_DEF trong file sendmail.m4, điều này cĩ nghĩa là người sử dụng cần phải kiểm tra file mailer.linux trong thư mục con tương tự (thường là /usr/local/lib/mailer.linux) để chắc chắn chương trình chuyển (hoặc một chương trình bất kỳ đã sử dụng) đã được nhập các thuộc tính.

Nội dung một file mailer.linux sẽ bao gồm như sau:

# mailers.linux

Mlocal, P=/usr/bin/deliver, F=SlsmFDMP, S=10,R=25/10, A=deliver $u

Mprog, P=/bin/sh, F=lsDFMeuP, S=10, A=sh -c $u

Một agent phát thư đi cũng được chỉ định trong file sendmail.mc, file này được dùng để xây dựng file sendmail.cf. Nếu agent phát khơng chuyển thư đi, phải kiểm tra file sendmail.mc để chắc rằng agent chuyển mail đã được thiết lập các thuộc tính. Sendmail.mc là một file quan trọng và nĩ phải được đọc khi sendmail.m4 được xử lý. Thường cĩ một dịng khai báo trong file sendmail.m4 để chắc rằng việc này phải xảy ra. Dịng này thường nằm ở phần đầu file sendmail.m4

Người sử dụng cần phải chỉ định một vài mục nhập trong biến PSEUDOMAINS. Biến này được dùng để điều khiển hệ thống mà nĩ khơng thể mở rộng vào trong các tên miền một cách chính xác, thơng thường là hệ thống UUCP. Các mục nhập trong trường PSEUDOMAINS chỉ ra rằng Sendmail + IDA khơng sử dụng DNS cho những mạng đĩ. Biến PSEUDOMAINS được khai báo như sau:

define(PSEUDODOMAINS, BITNET UUCP)dnl

Cĩ thể sử dụng biến PSEUDONYMS để làm ẩn tên máy của người sử dụng. Ví dụ, một mail nhận trên mạng khác sẽ chỉ thấy địa chỉ tpci.com mà khơng quan tâm đến việc dù là được gửi từ merlin.tpci.com hay chatton.tpci.com. Khi sử dụng biến PSEUDONYMS, Sendmail chấp nhận mail từ tất cả các máy được khai báo trong trường PSEUDONYMS. Trường PSEUDONYMS được hiển thị như sau:

define(PSEUDONYMS, tpci.com)dnl

Mục vào nhày cho phép một máy tính bất kỳ của mạng tpci.com gửi mail thơng qua Sendmail.

Để định nghĩa tên máy, sử dụng biến DEFAULT_HOST. Biến này thường được gán giá trị tên mail server của người sử dụng. Người sử dụng cĩ thể khai báo như sau để thiết lập tên mail server mặc định:

define(DEFAULT_HOST, merlin.tpci.com)dnl

Nếu khơng gán một tên đúng cho biến DEFAULT_HOST sẽ khơng cĩ mail được trả về chính xác đến hệ thống đang sử dụng.

Nếu hệ thống khơng phải là một cổng nối mail lên Internet (hoặc các mạng khác được truy cập từ mạng LAN) người sử dụng cĩ thể thiết lập cho hệ thống Linux cho phép gửi mail lên một máy khác để xử lý bằng cách thiết lập các biến RELAY_HOST và RELAY_MAILER trong file sendmail.m4. Các biến này sẽ đặt tên của mail server mà tất cả các mail sẽ được chuyển đến. Ví dụ: Để thiết lập cho hệ thống cục bộ dẫn hướng tất cả các mail bên ngồi đến một máy tên là wizard, phải khai báo 2 dịng như sau:

define(RELAY_HOST, wizard)dnl

define(RELAY_MAILER, UUCP=A)dnl

Dịng thứ hai chỉ định mailer sử dụng để gửi message đến máy RELAY_HOST.

2. Điều chỉnh UUCP:

Nếu phải đang làm việc với một hệ thống mail trên nền tảng UUCP, người sử dụng phải điều chỉnh một vài mục nhập trong file sendmail.m4. Sự điều chỉnh này là cần thiết bởi vì một hệ thống mail UUCP thường đánh địa chỉ khác so với các hệ thống trên nền tảng DNS. Các khai báo của UUCP trong file sendmail.m4 như sau:

define(UUCPNAME, tpci)dnl

define(UUCPNODES, |uuname|sort|uniq)dnl define(BANGIMPLIESUUCP)dnl

define(BANGONLYUUCP)dnl

Dịng đầu tiên khai báo UUCPNAME dùng để chỉ định tên của hệ thống cục bộ trong giới hạn UUCP. Tên này cĩ thể khác hơn tên sử dụng trong DNS, mặc dù thơng thường thì các tên đĩ trơng cũng khơng khác nhau mấy.

Biến UUCPNODES khai báo lệnh sử dụng để cung cấp một danh sách tên các host mà hệ thống kết nối tới thơng qua UUCP.

Biến BANGIMPLIESUUCP để cho Sendmail biết là bất kỳ một địa

chỉ nào chứa dấu ! đều là địa chỉ kiểu UUCP. Biến BANGONLYUUCP thì

làm điều ngược lại. Cả 2 biến này thường được khai báo bởi vì một vài hệ thống DNS sử dụng phương pháp đánh địa chỉ kiểu dấu chấm than.

3. Cấu hình các bảng định vị

Cĩ nhiều dịng trong file sendmail.m4 dùng để khai báo các bảng cấu hình. Các bảng cấu hình này nằm dưới thư mục khai báo bởi biến LIBDIR. Phần này gồm các dịng sau:

define(ALIASES, LIBDIR/aliases)dnl

Cĩ khoảng 7 file cấu được chỉ định trong tồn bộ. Người sử dụng cĩ thể thay đổi bất kỳ giá trị nào nếu muốn nhưng phải chắc chắn rằng việc di chuyển nĩ thị vị trí được chỉ định. Để bảo đảm, tốt nhất nên gỡ bỏ các file khỏi các ví trí mặc định của nĩ.

4. Cấu hình mailertable

Bảng mailertable khai báo các điều khiển đặc biệt cho cac host hoặc các tên miền. Trong hầu hết các trường hợp, mailertable chỉ định các tên miền chắc chắn hoặc các host được truy cập và các giao thức nào sử dụng cho các tên miền và các host đĩ. Người sử dụng khơng phải điều chỉnh file này nếu hệ thống đang sử dụng UUCP nhưng phải kiểm tra nội dung của nĩ nếu là đang sử dụng SMTP hoặc DNS.

File mailertable được dọc từ dịng đầu tiên xuống và Sendmail xử lý mail dựa trên mỗi dịng trong file này. Trong mỗi trường hợp, nơi mà hầu hết các quy tắc chỉ định nằm ở đầu file, theo sau bởi các quy tắc thơng thường khác. Các quy tắc chỉ ra phương thức của kết nối đầu tiên và sau đĩ liệt kê các hệ thống từ xa hoặc tên miền:

mailer delimiter relayname remote

Trong khai báo trên, mailer là giao thức chuyển vận được sử dụng, delimiter là ký tự đặc biệt, relayname là tên của hệ thống chuyển mail đến và remote là host từ xa hoặc tên miền.

Mailer cĩ thể là các giá trị:

TCP-A: TCP với địa chỉ kiểu Internet. TCP-U: TCP với địa chỉ kiểu UUCP. UUCP-A: UUCP với địa chỉ kiểu Internet.

Delimiter cĩ một ý nghĩa đặc biệt và phải là một trong cac ký tự sau: ! Gỡ bỏ tên host từ phần địa chỉ trước khi gửi đi.

, Khơng điều chỉnh địa chỉ cho tất cả.

: Gỡ bỏ tên host chỉ khi các host trung gian được chỉ định.

Cĩ thể xây dựng các quy tắc mailertable một các dễ dàng khi chuyển mail đến một mail server từ xa. Ví dụ, để bắt buộc Sendmail sử dụng UUCP

thơng qua một mail server từ xa gọi là wizard kết nối đế một hệ thống từ xa roy.sailing.org, thêm một quy tắc như sau vào file mailertable:

UUCP-A,wizard roy.sailing.org

5. File cấu hình uucprelays

File uucprelays dùng để bỏ qua đường dẫn UUCP đến một site từ xa khi một đường dân tốt hơn đã tồn tại. Ví dụ, nếu người sử dụng thường sử dụng đường dẫn wizard!bignet!merlin!tpci và cĩ thể tạo ra một liên kết chỉ đường đến tpci, nên sử dụng file uucprelays để đổi lại đường dẫn địa chỉ mail.

6. File cấu hình uucpxtalbe

File uucpxtalbe được sử dụng khi một địa chỉ kiểu UUCP được sử dụng trong việc vận chuyển mail. File này cung cấp các chỉ dẫn cho cơng việc chuyển một địa chỉ kiểu DNS sang UUCP. Nếu người sử dụng đang sử dụng một mail server khác hơn mail server hiện tại hoặc muốn sử dụng UUCP để kết nối đến một máy cụ thể vì độ tin cây, file này thực sự cần thiết.

File này chứa các mục vào liệt kê tên kiểu UUCP theo sau bởi tên miền: Chatton chatton.com

Mục vào này chỉ ra rằng Sendmail mà một mail chatton.com bất kỳ nào đĩ đều phảøi được cập nhập qua UUCP đến chatton ( đánh địa chỉ kiểu

UUCP). Mục vào này bắt buộc các địa chỉ mail đến yvone@chatton.com

phải được viết lại giống như chatton!yvone, một địa chỉ mà UUCP cĩ thể sử dụng.

7. Xây dựng file sendmail.cf từ file sendmail.m4

Bây giờ, đã cấu hình xong file sendmail.m4 và các file cĩ liên qua của nĩ, cĩ thể sử dụng bộ xử lý m4 để tạo ra file sendmail.cf. Một khi file sendmail.m4 đã sẵn sàng để làm việc, bắt nguồn từ dịng lệnh:

Make sendmail.cf

Một khi file đã được tạo, chép nĩ sang thư mục /etc và khởi động Sendmail với dịng lệnh:

/usr/lib/sendmail –bd –q1h hoặc khởi động lại máy tính.

II. SỬ DỤNG SENDMAIL PHIÊN BẢN 8.0

Trên đĩa CD-ROM Linux luơn kèm theo chương trình Sendmail 8.0 và cĩ thể sẵn sàng cài đặt để sử dụng. Cĩ một thay đổi nhỏ so với các phiên bản trước là Sendmail 8.0 gồm cĩ 4 phần khác nhau để chọn lựa.

- uucp-old: (cũng giống như uucp) : Sử dụng phiên bản này nếu cần khả năng tương thích với các hệ thống UUCP kiểu cũ.

- uucp-new: (phiên bản mới nhất gần đây là suucp) cũng giống như Sendmail chỉ trừ việc nĩ cĩ thêm lệnh rmail để gửi đến nhiều người nhận đồng thời. Phiên bản này khơng cĩ cải tiến gì mấy so với uucp-old.

- uucp-dom: Cho phép sử dụng các địa chỉ kiểu tên miền. Phiên bản này khơng cĩ khả năng tương thích với một số hệ thống khác mà người sử dụng kết nối đến.

- uucp-uudom: Là một sự kết hợp giữa uucp-new và uucp-dom cung cấp các nét đặc trưng nhất của cả hai. Nĩ cho phép sử dụng địa chỉ kiểu UUCP và kiểu tên miền.

Thiết lập các thư mục cấu hình cho Sendmail

Các file cấu hình Sendmail ngày càng trở nên nhỏ hơn để làm cho cơng việc của người quản trị được dễ dàng hơn. Hệ thống Sendmail cĩ các thư mục chứa các file cần thiết cho cơng việc cấu hình, đĩ là:

- cf: Thư mục này cung cấp cho người sử dụng các thơng tin về các host được sử dụng bởi Sendmail.

- hack: Thư mục này là một danh sách của các hack được sử dụng bởi các macro m4 để cung cấp các chỉ định mở rộng. Các thơng tin mà thư mục này hỗ trợ được cung cấp một cách hợp lý trong các file cấu hình chính.

- m4: Thư mục này cung cấp các file chứa các thơng tin thích hợp cho tất cả các file cấu hình.

- mailer: Thư mục này chứa các file định nghĩa các mailer được sử dụng bởi m4. Các file này thường cung cấp các thơng tin cho mạng cục bộ, UUCP, USENET, phần mềm FAX …

- site config: Thư mục này chứa các thơng tin về site cục bộ. Một số các site rất quan trọng để cài đặt Sendmail và xử lý cấu hình.

III. SỬ DỤNG SMAIL

Hệ thống Smail cũng giống như hệ thống Sendmail trong hầu hết các chức năng, mặc dù quá trình cấu hình cấu hình thì khác. Trong nhiều trường hợp, Smail dễ dàng làm việc hơn Sendmail và nĩ cĩ thể là một lựa chọn tốt cho các hệ thống nhỏ và vừa.

Smail điều khiển việc chuyển nhận mail như thế nào?

Hệ thống Smail được quản lý bởi một daemon, được khởi tạo khi hệ thống chạy ở chế độ nhiều người sử dụng đồng thời. Sau đĩ Smail chờ cho đến khi cĩ kết nối (thường là TCP hoặc UUCP) và sẽ xử lý tất cả các mail vừa mới được nhận. Bởi vì Smail chạy như một daemon, điều này cho phép nĩ xử lý và phân phát nhanh các mail mới nhập mà khơng cần khởi động một chương trình mail.

Hệ thống Smail điều khiển các mail gửi đi bằng cách sử dụng các kết nối đến mailer của người sử dụng. Ví dụ: Nếu message được gửi từ một mailer agent chẳng hạn như ELM hoặc mail, các chương trình dùng để gửi mail và các tên người nhận đến rmail, một chương trình chuyển phát mail. Cĩ một vài mailer agent gửi mail đến chương trình Sendmail thay vì rmail. Như vậy, cả các mail nhận được và các mail gửi đi được điều khiển bằng các liên kết giữa Smail, rmail và Sendmail.

Chương trình xử lý của Smail được chia thành 3 phần riêng biệt, bao gồm: Bộ dẫn đường (router), Bộ chuyển hướng (director) và chuyển vận (transport).

- Bộ dẫn đường điều khiển quá trình xử lý các địa chỉ và cách mà message được gửi đi giữa các máy

- Bộ chuyển hướng điều khiển quá trình gửi chuyển tiếp giữa các máy và giải quyết các bí danh được sử dụng trong message.

- Bộ chuyển vận điều khiển các chuyển vận hiện tại của message. Hầu hết các hệ thống Linux đều cĩ chương trình Smail nằm trong thư mục /usr/local/bin mặc dù cũng cĩ khi chúng nằm ở thư mục khác vì thế cần phải biết chính xác đường dẫn đến thư mục Smail để cấu hình hệ thống một cách đúng đắn. Cĩ thể định vị đường dẫn của nĩ với dịng lệnh:

Find /-name Smail –print 1. Cài đặt Smail

Hệ thống Smail địi hỏi nhiều liên kết để Smail cĩ thể thi hành đúng. Cĩ 2 liên kết quan trọng hầu hết là đều đưa đến file /usr/sbin/rmail và /usr/lib/sendmail. Các liên kết này thực sự cần thiết bởi vì hầu hết những chương trình gửi mail của người sử dụng đều gửi mail đến hoặc là rmail hoặc là Sendmail (phụ thuộc vào chương trình mail đang sử dụng) và các mail này cịn được gửi thêm một lần nữa đến Smail. Các liên kết cho phép quá trình chuyển hướng này xảy ra trong suốt đối với người sử dụng và các ứng dụng mail.

Phải kiểm tra các file rmail và Sendmail cĩ được liên kết đến Smail hay chưa, nếu chưa cĩ thì phải thiết lập các liên kết. Các liên kết cĩ sẵn thường chỉ được thiết lập tượng trưng và được hiển thị trong thư mục liệt kê các mục nhập như sau:

Một phần của tài liệu TÌM HIỂU VỀ CÁC WEB SERVER THÔNG DỤNG (Trang 117 - 146)

Tải bản đầy đủ (DOC)

(146 trang)
w