Làm cách nào để thiết lập Ubuntu Mail Server với Google Apps?


17

Tôi có một tên miền, hãy gọi nó là foobar.com. Tất cả các bản ghi MX cho foobar.com đều trỏ đến các máy chủ thư của Google vì tôi đang sử dụng Google Apps cho tên miền của bạn để quản lý nó. Thật tuyệt vời vì mọi người đều nhận được tất cả các lợi thế của GMail, nhưng địa chỉ email của chúng tôi không phải là @ gmail.com.

Tôi cũng có một máy chủ. Chủ yếu, nó là một máy chủ web, nhưng nó cũng phục vụ những thứ khác. Một trong những thứ nó phục vụ là trang web cho foobar.com và cũng là trang web cho nhiều máy chủ ảo khác nhau như shop.foobar.com và forum.foobar.com. Máy chủ đang chạy Ubuntu 8.04, vì tôi thích sử dụng các bản phát hành LTS trong sản xuất.

Vấn đề là, có nhiều ứng dụng khác nhau đang chạy trên máy chủ cần khả năng gửi email. Các ứng dụng khác nhau, như các công việc định kỳ, gửi cho tôi e-mail trong trường hợp có lỗi. Một số ứng dụng web cần gửi e-mail đến người dùng khi họ quên mật khẩu, để xác nhận người dùng đã đăng ký mới, v.v ... Cuối cùng, thật tuyệt khi có thể gửi e-mail từ dòng lệnh bằng cách sử dụng lệnh mail hoặc mutt .

Làm cách nào tôi có thể thiết lập thư trên máy chủ web để đi qua máy chủ thư của ứng dụng Google? Tôi không cần máy chủ web để nhận thư, mặc dù điều đó sẽ rất tuyệt. Tôi cần nó để có thể gửi thư dưới dạng bất kỳ địa chỉ hợp pháp nào @ foobar.com. Bằng cách đó, ứng dụng diễn đàn có thể gửi thư với forum@foobar.com trong trường từ và ứng dụng thương mại điện tử sẽ có shop@foobar.com trong trường từ. Ngoài ra, bằng cách gửi thư qua các máy chủ của Google, chúng tôi có thể tránh được rất nhiều vấn đề với các email bị chặn bởi các bộ lọc thư rác khác nhau trên web. Các máy chủ SMTP của Google được tin cậy hơn rất nhiều so với của tôi.

Tôi khá giỏi trong việc quản trị các hệ thống Linux, nhưng tôi hoàn toàn chết não khi nói đến e-mail. Tôi cần hướng dẫn từng bước từ đầu đến cuối về cách thiết lập này. Tôi cần biết mọi thứ để cài đặt và mỗi thay đổi đối với các tệp cấu hình cần thiết. Tôi đã thử làm theo nhiều hướng dẫn và hướng dẫn khác nhau trong quá khứ, nhưng không ai trong số họ hoàn toàn đúng. Hoặc là họ đã không làm việc gì cả, hoặc họ cung cấp một cấu hình không phải là điều tôi muốn.

Xin vui lòng giúp đỡ. Cảm ơn.

Câu trả lời:


19

Cách dễ nhất để làm điều này là tránh sử dụng exim và sử dụng sSMTP, một MTA nhẹ.

Tất cả bạn cần làm là cài đặt nó:

sudo apt-get install ssmtp mailutils

và định cấu hình nó (chỉnh sửa /etc/ssmtp/ssmtp.conf) để sử dụng máy chủ Google Mail của bạn, xem:

root=noreply@yourdomain.com
mailhub=smtp.gmail.com:587
UseSTARTTLS=yes
UseTLS=yes
AuthUser=youremail@yourdomain.com
AuthPass=password
FromLineOverride=YES

Tôi đã sử dụng thiết lập này được một thời gian và nó chỉ hoạt động - Thật tuyệt khi không cần phải chạy exim khi không cần thiết và hãy để máy chủ thư của Google xử lý mọi thứ cho bạn.


Ngọt! Nó hoàn toàn làm việc. Bạn là người hùng của tôi.
Apreche

Tôi nhận được tin nhắn này; Gói mailx là gói ảo được cung cấp bởi: mailutils 1: 2.2 + dfsg1-3 heirloom-mailx 12.5-1build1 bsd-mailx 8.1.2-0.20100314cvs-1 Bạn nên chọn một cách rõ ràng để cài đặt. E: Gói 'mailx' không có ứng cử viên cài đặt
Yasin Okumuş

Cảm ơn vì điều đó. Một điều tôi đã tìm thấy là tôi phải kích hoạt "Ứng dụng kém an toàn hơn" trong tài khoản google cho người dùng này
mikestreety

3

Về cơ bản, nó rất dễ dàng.

$ sudo dpkg-reconfigure exim4-config

Chọn tất cả những thứ có ý nghĩa đối với bạn - miễn là bạn chọn thứ gì đó với smarthost. Khi câu hỏi hỏi bạn nên sử dụng smarthost nào, hãy trả lời: smtp.gmail.com: giáp87

Sau đó chỉnh sửa tệp /etc/exim4/passwd.client để khớp

gmail-smtp.l.google.com:login@yourappdomain.com:p@sSw0rd
*.google.com:login@yourappdomain.com:p@sSw0rd
smtp.gmail.com:login@yourappdomain.com:p@sSw0rd

Và đó là công việc.

ssmtp cũng hoạt động tốt, nhưng xuất hiện khá chậm để gửi thư. Ngoài ra, tôi thích có một deamon để kết nối.


2

Hãy nhớ rằng phiên bản GMail miễn phí có giới hạn gửi ngoài ~ 500 tin nhắn / ngày. Nếu bạn không vượt quá giới hạn này, giải pháp muffin sẽ rất tốt cho bạn.


Nếu tôi vượt quá nhiều email đó, tôi sẽ nhận được một dịch vụ gửi thư chuyên dụng.
Apreche

1

Bạn sẽ có thể sử dụng các máy chủ thư của Google làm cổng SMTP và xác thực với người dùng.

Tích hợp hỗ trợ

Đây là một số mã xác thực cơ bản để cung cấp cho bạn một ý tưởng:

smtpHost = smtp.gmail.com
smtpUsername = name@domain.com
smtpPassword = your_password
smtpType = tls
smtpPort = 465

CẬP NHẬT:

Đây là một liên kết có thể giúp một chút. Nó không chính xác những gì tôi đang tìm kiếm nhưng đủ hợp lý (tôi hy vọng) để cung cấp cho bạn một ý tưởng rằng có thể có các công việc cron gửi email thông qua các ứng dụng google.

http://bakingnoodles.com/tag/linux/

Ứng dụng nhỏ này cũng có thể hữu ích (cảnh báo: Tôi chưa thử nó)

http://linux.softpedia.com/get/C truyền thông / Email / Email-6805.shtml


Một tùy chọn khác có thể là định cấu hình Postfix để sử dụng Google Apps cho tất cả việc gửi thư của bạn. Nếu bạn tìm kiếm "cấu hình ứng dụng google postfix", bạn sẽ tìm thấy một loạt các liên kết, bao gồm liên kết này:

http://blog.twinklesprings.com/2008/03/27/remote-mail-delivery-for-google-apps-and-postfix-mail-server/


Ubuntu có sử dụng postfix hay exim không? Nếu exim của nó giống như Debian, thì dpkg-cấu hình lại exim4-config sẽ cung cấp cho bạn tùy chọn gửi thư qua smarthost và bạn có thể định cấu hình trên đó để gmail.
derobert

Postfix là tác nhân chuyển thư mặc định (MTA) trong Ubuntu. Ít nhất là cho 8.04 tôi tin.
KPWINC

Tôi không thể thực hiện các tùy chọn cổng vì tôi có Google Apps miễn phí, không phải phiên bản trả tiền. Ngoài ra, gateway không có vẻ như nó làm chính xác những gì tôi muốn. Tôi không muốn định tuyến bất kỳ thư nào thông qua máy chủ của mình. Tôi chỉ muốn máy chủ có thể gửi thư với bất kỳ địa chỉ nào từ địa chỉ @mydomain. Ngoài ra, tôi đã thử smarthost trong quá khứ. Nó hoạt động, nhưng tất cả các email đi ra đều được lấy từ người dùng mà tôi sử dụng để xác thực smarthost.
Apreche

1

Nếu bạn không cần nhận thư, bạn thực sự không cần gửi qua Google. Nếu bạn thiết lập bản ghi DNS chính xác, bạn sẽ có thể gửi thư từ MTA trên máy chủ web.

Nếu bạn đang sử dụng SPF, bạn sẽ muốn đảm bảo rằng bạn cập nhật nó để bao gồm máy chủ ứng dụng của bạn.


1

Nó khá đơn giản trong postfix:

nano /etc/postfix/main.cnf

thay đổi như sau

mydestination = mydomain.com, localhost.mydomain.com, localhost

đến

mydestination = localhost.mydomain.com, localhost

khởi động lại máy chủ của bạn và bạn đã hoàn tất!


Điều này đã khắc phục vấn đề của tôi.
dguaraglia
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.