Làm cách nào tôi có thể thiết lập Tác nhân chuyển thư?


17

Tôi dự định sử dụng muttđể gửi email tự động thông qua cronhoặc atcó tệp đính kèm đến địa chỉ gmail của tôi khi các sự kiện cụ thể xảy ra trên máy chủ Ubuntu của tôi. Hiện tại, muttkhông thể gửi email đến các địa chỉ email bên ngoài, tôi tin rằng điều này là do tôi cần thiết lập Đại lý chuyển thư. Làm cách nào để chọn một MTA phù hợp và làm cách nào để thiết lập nó để thực hiện những gì tôi cần nó để làm gì?


1
Bạn không cần mutt để có cron hoặc gửi thư đến tài khoản gmail của bạn. Bất kỳ MTA được cấu hình đúng sẽ là đủ cho điều đó.
JanC

Tôi cần có thể bao gồm các tệp đính kèm với thư gửi đi vì vậy tôi nghĩ rằng tôi sẽ cần mutt cho điều đó.
conorgriffin

1
Đây là một câu hỏi quan trọng. Rất nhiều người trong chúng ta thiết lập máy chủ Linux và cần một số cách để gửi các sự kiện và báo cáo. Trong nhiều trường hợp (hầu hết!), Một máy chủ thư đầy đủ là quá mức cần thiết. Tôi đã học được rằng gần đây thiết lập Postfix cho một nhiệm vụ như vậy. Tôi nên đã thiết lập một công cụ chỉ gửi như một trong số đó, và tôi sẽ trong tương lai.
Don Faulkner

Câu trả lời:


20

Có một vài lựa chọn được thực hiện khi chọn MTA để cài đặt; đầu tiên là bạn muốn MTA chỉ gửi hay bạn cần một máy chủ thư chính thức.

Bài viết Unix.SE này cung cấp một danh sách toàn diện các MTA chỉ gửi có sẵn; tất cả chúng đã được đóng gói cho Ubuntu 10.10. Có một vài điều bạn có thể muốn xem xét khi chọn MTA chỉ gửi:

  1. cho dù nó có thể xếp hàng e-mail để gửi sau trong trường hợp thất bại: IIRC, chỉ nullmailercó thể làm điều này.

  2. liệu nó sẽ thay thế đại lý chuyển phát thư hệ thống (tìm kiếm một dòng Provides: mail-transport-agenttrong đầu ra của apt-cache show package). Nếu đúng như vậy, thì tất cả thư có nguồn gốc từ hệ thống (bao gồm các báo cáo từ công việc định kỳ, thống kê mức độ phổ biến, v.v.) sẽ được xử lý bởi MTA bạn cài đặt: nếu bạn không thiết lập bí danh thư chính xác cho người dùng root và người dùng khác, email có thể cuối cùng được gửi tại địa chỉ sai (thông thường, một số sysadmin tại ISP của bạn). Hiện tại, các gói nullmailer, esmtp-run(nhưng không esmtp) và ssmtpthuộc loại này.

  3. Tất cả các MTA chỉ gửi sẽ chuyển tiếp email của bạn đến một máy chủ khác (được gọi là "máy chủ chuyển tiếp" hoặc "smarthost"; thông thường đó là máy chủ SMTP của ISP) và sau đó cho phép nó xử lý tất cả các chi tiết của việc gửi thư qua Internet thực. Bạn cần tìm hiểu xem có bất kỳ yêu cầu đặc biệt nào để kết nối với máy chủ ISP (ví dụ: một số loại xác thực hoặc TLS) và chọn MTA hỗ trợ các tính năng cần thiết (ví dụ: ssmtpkhông hỗ trợ bất kỳ loại xác thực hoặc SSL / TLS).

Các máy chủ thư đầy đủ bao gồm exim , postfixsendmail . Kịch bản cài đặt sau khi cài đặt cho Debian / Ubuntu sẽ làm rất tốt việc tạo cấu hình hoạt động cho một số thiết lập chung (chỉ gửi thư đến hệ thống cục bộ; gửi email qua "smarthost" - tức là máy chủ thư bạn phễu tất cả các email của bạn thông qua, thường là máy chủ SMTP của ISP, trang web internet có đầy đủ kết nối trong và ngoài nước). IMHO, postfix là cách dễ nhất để chạy và định cấu hình, nhưng vì nó có khả năng, nên hướng dẫn cấu hình của nó dài hơn bất kỳ MTA nào chỉ gửi.

Ngoài ra, rủi ro thực sự khi thiết lập máy chủ thư là, nếu bạn mắc lỗi trong cấu hình cục bộ, bạn sẽ kết thúc bằng thư được gửi đến sai địa điểm (đọc: bị mất) hoặc -worse- với hệ thống chuyển tiếp mở có thể được sử dụng bởi những kẻ gửi thư rác (và, tin tôi đi, họ có thể tìm thấy một rơle mở trước khi bạn nhận ra máy chủ của mình là một).

Lời khuyên của tôi là sau đó hãy bắt đầu với MTA chỉ gửi và sau đó nâng cấp lên máy chủ thư đầy đủ nếu bạn thấy cần thiết (không phải là trường hợp nếu bạn chỉ muốn gửi email đến địa chỉ Gmail của mình).


OK, vì vậy, giả sử tôi thiết lập một địa chỉ email như myserver@gmail.com và bật smtp trên tài khoản gmail. Tôi có thể định cấu hình chương trình máy khách trên máy chủ để gửi thư bằng tài khoản gmail này qua SMTP và do đó tránh được sự phức tạp của cài đặt máy chủ thư hoàn chỉnh?
conorgriffin

@Griffo: Vâng, đây chính xác là những gì một MTA "chỉ gửi" làm; chỉ cần sử dụng msmtp(như được đề xuất trong câu trả lời của ixtmixilix) hoặc chọn một từ danh sách tại URL tôi đã đăng ở trên.
Riccardo Murri

+1 cho nullmailer ... Tôi sử dụng nó trên các máy chủ của mình và nó rất tiện lợi. Rất nhẹ, tương đối dễ cài đặt. Và một khi nó hoạt động, bạn không cần phải bận tâm về nó nữa :)
Little Jawa

Ngoài ra mda (Đại lý thư DragonFly) có thể xếp hàng email để gửi sau.
Tomasz Zieliński

Đó là dma, không phải mda (The DragonFly Mail Agent).
Andreas J.

6

Tôi muốn giới thiệu msmtp. Thiết lập các hệ thống thư khác, chẳng hạn như sendmail, chắc chắn là khá rắc rối. Khi bạn đã msmtpthiết lập, bạn có thể sử dụng nó muttvà bạn cũng có thể giả trang nó sendmailđể các chương trình không biết sự khác biệt giữa hai MTA. Chi tiết đầy đủ có sẵn trên trang web.


3

Các liên kết dưới đây cung cấp tất cả các lựa chọn MTA bạn có thể chọn, theo phiên bản Ubuntu của bạn:

http://packages.ubfox.com/precise/mail-transport-agent (cho 12.04)
http ://packages.ub Ubuntu.com/trusty/mail-transport-agent (cho 14.04)

Cá nhân tôi thấy rằng ssmtprất dễ cài đặt và chạy, chỉ cần 2 lệnh sẽ làm:

$ sudo aptitude install mailutils ssmtp
$ sudo dpkg-reconfigure ssmtp

1
Theo wiki ArchLinux, ssmtp không còn được duy trì và họ khuyên dùng msmtp .
sebastian-c
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.