Exim có phần mềm chuyển đổi thư truyền qua nguồn mở có tính tùy chỉnh cao

exim Dịch vụ email giao dịch

Đại lý chuyển thư nguồn mở thay thế cho sendmail

Exim là tác nhân chuyển thư nguồn mở có thể tùy chỉnh cao để định tuyến và gửi email. Nó là sự lựa chọn số một cho các tổ chức cấp doanh nghiệp cho tính linh hoạt của nó.

Tổng quan

Giao tiếp qua thư điện tử đã trở nên nguyên thủy trong cuộc sống của chúng ta. Để gửi email từ máy tính để bàn, thiết bị di động hoặc bất kỳ thiết bị nào khác là một vấn đề hàng ngày đối với hầu hết mọi người. Giao thức chuyển thư đơn giản (SMTP) là giao thức tiêu chuẩn được sử dụng để gửi email. IMAP và POP3 là các giao thức để nhận email. IMAP có một số lợi thế so với POP do đồng bộ hóa trên các thiết bị. Vì vậy, một tác nhân chuyển thư có nguồn mở và hỗ trợ tất cả các giao thức cần thiết này là rất quan trọng. Chạy tác nhân chuyển thư của bạn là một công việc rất tẻ nhạt và do đó, sự lựa chọn bạn đưa ra cho phần mềm MTA đòi hỏi một phân tích sâu sắc so với ma trận yêu cầu của bạn. Exim là một trong những tác nhân chuyển thư nguồn mở linh hoạt nhất có thể được sử dụng để thay thế tác nhân chuyển thư mặc định của các hệ thống UNIX nhất .. Exim đi kèm với một bó các tính năng tiên tiến bao gồm khả năng tương thích SendMail, hỗ trợ CPANEL, cấu hình linh hoạt và trên hết là hỗ trợ cộng đồng nguồn mở khổng lồ. Exim giống như một khung với ngôn ngữ ứng dụng của nó để thiết lập các cấu hình phức tạp. Nó có logic xử lý thư nhiều bước tiên tiến giúp nó giải quyết các trường hợp sử dụng phức tạp. SendMail đã bị mất để postfix trong tất cả các khía cạnh, tuy nhiên, Postfix ít linh hoạt hơn Exim. Nó có hỗ trợ tích hợp tuyệt vời và nó cung cấp mọi thứ mà một quản trị viên hệ thống có thể yêu cầu. Exim hỗ trợ hầu hết các tính năng chuyển đổi thư bằng cách này hay cách khác.

Yêu cầu hệ thống

Trước khi xây dựng Exim, một tệp cấu hình cục bộ chỉ định các tùy chọn độc lập với bất kỳ hệ điều hành nào phải được tạo với tên cục bộ/makefile. Một mẫu cho tệp này được cung cấp dưới dạng tệp SRC/EDITME và nó chứa các mô tả đầy đủ về tất cả các cài đặt tùy chọn trong đó. Do đó, những mô tả này không được lặp lại ở đây. Nếu bạn đang xây dựng Exim lần đầu tiên, điều đơn giản nhất cần làm là sao chép SRC/Editme vào Local/Makefile, sau đó đọc nó và chỉnh sửa nó một cách thích hợp. Có ba cài đặt mà bạn phải cung cấp, vì Exim sẽ không xây dựng mà không có chúng. Chúng là vị trí của tệp cấu hình thời gian chạy (cấu hình \ _file), thư mục trong đó các nhị phân exim sẽ được cài đặt (bin \ _directory) và danh tính của người dùng Exim (Exim \ _user và có thể là \ _group). Giá trị của cấu hình \ _file trên thực tế có thể là một danh sách các tên tệp được phân tách đại tràng; Exim sử dụng đầu tiên trong số chúng tồn tại. Có một vài tham số khác có thể được chỉ định tại thời điểm xây dựng hoặc thời gian chạy, để cho phép sử dụng cùng một nhị phân trên một số máy khác nhau. Tuy nhiên, nếu các vị trí của thư mục tệp và thư mục nhật ký của Exim (nếu không trong thư mục ống chỉ), bạn nên chỉ định chúng trong cục bộ/makefile thay vì thời gian chạy, do đó các lỗi đã phát hiện sớm trong quá trình thực hiện của Exim (như vậy Là một tệp cấu hình không đúng định dạng) có thể được ghi lại. Giao diện Exim, để gọi Virus và phần mềm quét spam trực tiếp từ danh sách kiểm soát truy cập không được biên dịch theo mặc định. Nếu bạn muốn bao gồm các cơ sở này, bạn cần thiết lập

WITH_CONTENT_SCAN=yes

trong địa phương/makefile của bạn. Để biết chi tiết về các cơ sở Nếu bạn định xây dựng màn hình Exim, một quy trình cấu hình tương tự là bắt buộc. Tệp Exim \ _Monitor/Editme phải được chỉnh sửa một cách thích hợp cho cài đặt của bạn và được lưu dưới tên Local/eximon.conf. Nếu bạn hài lòng với các cài đặt mặc định được mô tả trong Exim \ _Monitor/Editme, Local/Eximon.Conf có thể trống, nhưng nó phải tồn tại. Đây là tất cả các cấu hình cần thiết trong các trường hợp đơn giản cho các hệ điều hành đã biết. Tuy nhiên, quy trình xây dựng được thiết lập để dễ dàng ghi đè các tùy chọn được đặt theo mặc định hoặc bằng các tệp cấu hình dành riêng cho hệ điều hành, ví dụ, để thay đổi trình biên dịch C, mặc định là GCC.

Đặc trưng

Exim hỗ trợ tất cả các tính năng hiện đại mà bạn có thể tưởng tượng từ phần mềm Đại lý chuyển thư nguồn mở hàng đầu. Đây là một số tính năng chính của Exim:

  • Exim tuân theo cùng một cách tiếp cận chung của kiểm soát phi tập trung mà Smail làm. Không có quy trình trung tâm thực hiện quản lý tổng thể về việc gửi thư. Tuy nhiên, không giống như Smail, các quy trình phân phối độc lập chia sẻ dữ liệu dưới dạng ‘gợi ý’, điều này làm cho việc phân phối hiệu quả hơn trong một số trường hợp. Các gợi ý được giữ trong một số tệp DBM. Nếu bất kỳ tệp nào trong số này bị mất, hiệu ứng duy nhất là thay đổi mô hình của các nỗ lực phân phối và thử lại.
  • Nhiều tùy chọn cấu hình có thể được đưa ra dưới dạng chuỗi mở rộng, được chuyển đổi theo nhiều cách khác nhau khi chúng được sử dụng. Vì chúng có thể bao gồm tra cứu tệp, phần lớn hoạt động của Exim có thể được thực hiện theo bảng điều khiển nếu muốn. Ví dụ: có thể thực hiện giao hàng cục bộ trên máy mà người dùng không có tài khoản. Tính linh hoạt cuối cùng có thể được lấy (với giá) bằng cách chạy trình thông dịch Perl trong khi mở rộng một chuỗi.
  • Truy cập để xem các thông điệp lịch sử.
  • Truy cập để xem toàn bộ & amp; Hàng đợi tin nhắn đến.
  • EXIM có các thuật toán thử lại linh hoạt, áp dụng cho địa chỉ định hướng và định tuyến cũng như giao hàng.
  • Exim chứa các cơ sở viết lại tiêu đề và phong bì.
  • Địa chỉ không đủ tiêu chuẩn chỉ được chấp nhận từ các máy chủ hoặc mạng được chỉ định.
  • EXIM có thể thực hiện nhiều lần giao hàng xuống cùng một kênh SMTP sau khi giao hàng đã bị trì hoãn.
  • EXIM có thể được cấu hình để thực hiện giao hàng cục bộ ngay lập tức nhưng để lại việc giao hàng từ xa (SMTP) cho đến khi tin nhắn được chọn bởi một quy trình chạy hàng đợi. Điều này làm tăng khả năng nhiều tin nhắn được gửi xuống một kết nối SMTP duy nhất.
  • Giao hàng từ xa của cùng một thông điệp đến các máy chủ khác nhau có thể được thực hiện song song.
  • Tin nhắn SMTP đến bắt đầu giao hàng ngay khi nhận được, mà không cần chờ cuộc gọi SMTP đóng.
  • EXIM có hỗ trợ cho tiện ích mở rộng SMTP AUTH để xác thực các máy khách và cho tiện ích mở rộng StartTLS để thiết lập các kết nối được mã hóa.
  • Biểu thức chính quy tương thích Perl có sẵn trong một số tham số cấu hình.
  • Danh sách miền có thể bao gồm tra cứu tệp, cho phép hỗ trợ số lượng rất lớn các tên miền cục bộ.
  • EXIM hỗ trợ kiểm tra tùy chọn đường dẫn trả về (người gửi) và địa chỉ máy thu khi chúng được SMTP nhận được.
  • Các cuộc gọi SMTP từ các máy cụ thể, tùy chọn từ các IDENT cụ thể, có thể bị khóa và các tin nhắn SMTP đến từ người gửi cụ thể cũng có thể bị khóa. Exim cũng hỗ trợ việc sử dụng danh sách chặn thời gian thực (RBL).
  • Máy chủ được phép chuyển tiếp thư qua máy sang miền bên ngoài khác có thể được kiểm soát bởi số IP hoặc số mạng IP. Kiểm soát chuyển tiếp theo tên miền người nhận và địa chỉ người gửi cũng có sẵn.
  • Tin nhắn trên hàng đợi có thể được quản trị viên ‘đóng băng’ và ’tan băng’.
  • EXIM có thể xử lý một số miền cục bộ độc lập trên cùng một máy; Mỗi miền có thể có các tệp bí danh riêng, v.v … Cơ sở này đôi khi được gọi là ‘miền ảo’.
  • Danh sách gửi thư đơn giản có thể được xử lý trực tiếp bởi chính Exim (nhưng đối với các hoạt động danh sách gửi thư ’nghiêm túc’, tốt nhất là sử dụng nó kết hợp với phần mềm danh sách gửi thư chuyên gia).
  • Exim thống kê thư mục nhà của người dùng trước khi tìm kiếm tệp `.forward ‘, để phát hiện trường hợp gắn kết NFS bị thiếu. Giao hàng bị trì hoãn nếu thư mục không có sẵn.
  • Exim chứa một cơ sở lọc thư tích hợp tùy chọn. Điều này có thể được cấu hình để cho phép người dùng cung cấp các tệp bộ lọc cá nhân và cũng có thể áp dụng tệp bộ lọc trên toàn hệ thống cho mọi thông báo.
  • Có hỗ trợ cho nhiều hộp thư người dùng được điều khiển bởi các tiền tố hoặc hậu tố trên tên người dùng, thông qua cơ chế bộ lọc hoặc thông qua nhiều tệp `.forward ‘.
  • Cảnh báo định kỳ được tự động gửi đến người gửi tin nhắn khi giao hàng bị trì hoãn - thời gian giữa các cảnh báo có thể định cấu hình. Các cảnh báo có thể được thực hiện có điều kiện trên nội dung của tin nhắn.
  • Một lần chạy hàng đợi có thể được bắt đầu thủ công để chỉ cung cấp một phần cụ thể của hàng đợi hoặc những tin nhắn đó có người nhận có địa chỉ chứa một chuỗi nhất định. Có sự hỗ trợ cho lệnh ETRN trong SMTP để giao diện với điều này.
  • EXIM có thể được cấu hình để chạy dưới dạng gốc mọi lúc, ngoại trừ khi thực hiện giao hàng cục bộ, điều này luôn luôn làm trong một quy trình riêng biệt theo UID và GID thích hợp. Ngoài ra, nó có thể được cấu hình để chạy dưới dạng root chỉ khi cần thiết; Cụ thể, nó không cần phải chạy dưới dạng root khi nhận tin nhắn đến hoặc khi gửi tin nhắn qua SMTP. Xem Chương 55 để thảo luận về các vấn đề bảo mật.
  • Tôi đã cố gắng làm cho từ ngữ của các thông điệp thất bại giao hàng và đơn giản hơn, vì lợi ích của những người ít có kinh nghiệm hiện đang sử dụng email. Từ ngữ thay thế cho các tin nhắn này có thể được cung cấp trong một tệp riêng biệt.
  • Màn hình Exim là một tùy chọn bổ sung; Nó hiển thị thông tin về xử lý của Exim trong cửa sổ X và quản trị viên có thể thực hiện một số hành động điều khiển từ giao diện cửa sổ. Tuy nhiên, tất cả các hành động như vậy cũng có sẵn từ giao diện dòng lệnh.

Hướng dẫn cài đặt

Cài đặt các nhị phân và tập lệnh exim

Lệnh thực hiện cài đặt chạy tập lệnh Exim \ _Install mà không có đối số. Kịch bản sao chép các nhị phân và tập lệnh tiện ích vào thư mục có tên được chỉ định bởi cài đặt bin \ _directory trong cục bộ/makefile. Tập lệnh cài đặt chỉ các tệp sao chép nếu chúng mới hơn các tệp mà chúng sẽ thay thế. Nhị phân Exim được yêu cầu phải thuộc sở hữu của root và có bộ bit setuid, cho các cấu hình thông thường. Do đó, bạn phải chạy cài đặt dưới dạng gốc để nó có thể thiết lập nhị phân Exim theo cách này. Tuy nhiên, trong một số tình huống đặc biệt (ví dụ, nếu một máy chủ không thực hiện giao hàng cục bộ), có thể chạy Exim mà không tạo ra gốc setuid nhị phân (xem Chương 56 để biết chi tiết). Tệp cấu hình thời gian chạy EXIM được đặt tên bởi Cài đặt cấu hình \ _File trong cục bộ/Makefile. Nếu tên này đặt tên cho một tệp duy nhất và tệp không tồn tại, tệp cấu hình mặc định SRC/configure.default được sao chép ở đó bởi tập lệnh cài đặt. Nếu một tệp cấu hình thời gian chạy đã tồn tại, nó sẽ bị bỏ lại một mình. Nếu định cấu hình \ _File là danh sách được phân tách đại tràng, đặt tên một số tệp thay thế, không có mặc định nào được cài đặt. Một thay đổi được thực hiện cho tệp cấu hình mặc định khi nó được cài đặt: Cấu hình mặc định chứa một bộ định tuyến tham chiếu tệp bí danh hệ thống. Đường dẫn đến tệp này được đặt thành giá trị được chỉ định bởi System \ _aliases \ _File trong cục bộ/makefile (/etc/bí danh theo mặc định). Nếu tệp bí danh hệ thống không tồn tại, tập lệnh cài đặt sẽ tạo nó và xuất ra nhận xét cho người dùng. Tệp được tạo không chứa bí danh, nhưng nó có chứa các bình luận về các bí danh mà một trang web thường có. Các bí danh thư theo truyền thống đã được giữ trong /etc /bí danh. Tuy nhiên, một số hệ điều hành hiện đang sử dụng/etc/mail/bí danh. Bạn nên kiểm tra xem bạn có phải là một trong số này không và thay đổi cấu hình Exim, nếu cần thiết. Cấu hình mặc định sử dụng tên máy chủ cục bộ là tên miền cục bộ duy nhất và được thiết lập để thực hiện giao hàng cục bộ vào thư mục /var /mail được chia sẻ, chạy như người dùng cục bộ. Bí danh hệ thống và các tệp .forward trong thư mục nhà của người dùng được hỗ trợ, nhưng không có hỗ trợ NIS hoặc NIS+ được cấu hình. Các tên miền khác với tên của máy chủ cục bộ được định tuyến bằng DNS, với việc phân phối qua SMTP. Có thể cài đặt Exim cho các mục đích đặc biệt (như xây dựng phân phối nhị phân) trong phần riêng tư của hệ thống tệp. Bạn có thể làm điều này bằng một lệnh như

make DESTDIR=/some/directory/ install

Điều này có tác dụng của việc xem trước thư mục được chỉ định đến tất cả các đường dẫn tệp, ngoại trừ tên của tệp bí danh hệ thống xuất hiện trong cấu hình mặc định. . Chạy Cài đặt không sao chép tập lệnh chuyển đổi Exim 4 Convert4R4. Bạn có thể sẽ chạy điều này chỉ một lần nếu bạn đang nâng cấp từ Exim 3. Không có tệp tài liệu nào trong thư mục Doc được sao chép, ngoại trừ các tệp thông tin khi bạn đặt thông tin \ _Directory, như được mô tả trong Phần 4.17 bên dưới. Đối với các chương trình tiện ích, các phiên bản cũ được đổi tên bằng cách thêm hậu tố .o vào tên của chúng. Bản thân nhị phân Exim, tuy nhiên, được xử lý khác nhau. Nó được cài đặt dưới một tên bao gồm số phiên bản và số biên dịch, ví dụ, EXIM-4,94-1. Kịch bản sau đó sắp xếp cho một liên kết tượng trưng được gọi là Exim để trỏ đến nhị phân. Nếu bạn đang cập nhật phiên bản trước của Exim, tập lệnh sẽ cẩn thận để đảm bảo rằng tên Exim không bao giờ vắng mặt trong thư mục (như được xem bởi các quy trình khác). Nếu bạn muốn xem cài đặt thực hiện sẽ làm gì trước khi chạy thật, bạn có thể chuyển tùy chọn -N cho tập lệnh cài đặt theo lệnh này:

make INSTALL_ARG=-n install

Nội dung của biến cài đặt \ _arg được chuyển đến tập lệnh cài đặt. Bạn không cần phải là root để chạy thử nghiệm này. Ngoài ra, bạn có thể chạy tập lệnh cài đặt trực tiếp, nhưng điều này phải từ bên trong thư mục xây dựng. Ví dụ: từ thư mục Exim cấp cao nhất, bạn có thể sử dụng lệnh này:

(cd build-SunOS5-5.5.1-sparc; ../scripts/exim_install -n)

Có hai tùy chọn khác có thể được cung cấp cho tập lệnh cài đặt.

  • -Không \ _chown bỏ qua cuộc gọi để thay đổi chủ sở hữu của nhị phân đã cài đặt thành gốc và cuộc gọi để biến nó thành một nhị phân setuid.
  • -No \ _SymLink bỏ qua việc thiết lập liên kết tượng trưng exim đến nhị phân đã cài đặt. Cài đặt \ _arg có thể được sử dụng để chuyển các tùy chọn này cho tập lệnh. Ví dụ:
make INSTALL_ARG=-no_symlink install

Tập lệnh cài đặt cũng có thể được cung cấp các đối số chỉ định các tệp nào sẽ được sao chép. Ví dụ: để cài đặt chỉ nhị phân Exim và không có gì khác, mà không tạo liên kết tượng trưng, ​​bạn có thể sử dụng:

make INSTALL_ARG='-no_symlink exim' install

Cài đặt tài liệu thông tin

Không phải tất cả các hệ thống đều sử dụng hệ thống thông tin GNU cho tài liệu và vì lý do này, nguồn tài liệu Exim của TexInfo không được bao gồm trong phân phối chính. Thay vào đó, nó có sẵn riêng biệt với trang web FTP (xem Phần 1.5). Nếu bạn đã xác định thông tin \ _Directory trong Local/Makefile và nguồn tài liệu TexInfo được tìm thấy trong cây nguồn, hãy chạy Cài đặt tự động xây dựng các tệp thông tin và cài đặt chúng.

 Tiếng Việt