Làm cách nào để thiết lập ssmtp và gửi email?


9

Tôi mới đến mâm xôi pi.

Tôi đã cài đặt hệ điều hành raspian trên nó. Tôi muốn gửi email từ nó bằng tài khoản gmail của tôi. Tôi muốn gửi từ giao diện dòng lệnh và từ các tập lệnh php.

Tôi làm theo hướng dẫn này. http://iqjar.com/jar/seinating-emails-from-the-raspberry-pi/

Tôi đã làm các bước 1,2,3,4 từ liên kết.

Khi tôi gửi email bằng mã bên dưới bằng

echo "Test text" | mail -s "Test Mail" me2@gmail.com

Không có gì xảy ra, không có gì được in trên màn hình và tôi không nhận được email.

Trên "revaliases", nếu tôi thay thế "mail.google" bằng "smtp.gmail", thì tôi nhận được thông báo nói rằng

send-mail: Cannot open mail.google.com:587

hoặc là

send-mail: Server didn't like our AUTH LOGIN (530 5.7.0 Must issue a STARTTLS command first. ml2sm3592928igb.10 - gsmtp)

Có ai biết làm thế nào để sửa lỗi này? Cảm ơn

Dưới đây là hai tập tin dưới đây:

ssmtp.conf

#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
# root=postmaster

# The place where the mail goes. The actual machine name is required no 
# MX records are consulted. Commonly mailhosts are named mail.domain.com
# mailhub=mail

# Where will the mail seem to come from?
#rewriteDomain=

# The full hostname
hostname=raspberrypi

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
FromLineOverride=YES


root=me@gmail.com
mailhub=smtp.gmail.com:587
AuthUser=me@gmail.com
AuthPass=mypass
UseSTARTTLS=YES

đánh giá lại

# sSMTP aliases
# 
# Format:   local_account:outgoing_address:mailhub
#
# Example: root:your_login@your.domain:mailhub.your.domain[:port]
# where [:port] is an optional port number that defaults to 25.

root:me@gmail.com:mail.google.com:587

2
Đây không phải là một câu hỏi Raspberry cụ thể, hãy thử: - unix.stackexchange.com
Milliways

hãy xem cái này nó raspberry.znix.com/2013/03/postfix-better-solution-for-rpi.html . Ngoài ra nếu bạn sử dụng 2factor auth với google, bạn cần sử dụng mật khẩu dành riêng cho ứng dụng chứ không phải mật khẩu bạn sử dụng để đăng nhập vào gmail qua web.
Steve Robillard

Làm thế nào để tôi có được mật khẩu cụ thể của ứng dụng ??
omega

Bạn đã thử với UseSTARTTLS=NO?
goldilocks

có, nhưng nó vẫn không hoạt động.
omega

Câu trả lời:


4

Bây giờ bạn có thể đã tìm ra nó, nhưng tôi nhận thấy trong tệp ssmtp.conf của bạn, bạn có: root=me @ gmail

Tuy nhiên, trong liên kết bạn đã đăng, nó nói: root = postmaster

Tôi đã để nó như thế và chỉ thay đổi các phần khác của me@gmail.com và nó hoạt động với tôi. Cảm ơn vì sự giúp đỡ của bạn, nó đã đưa tôi đến ...


2

Trong thực tế, bạn không cần phải cài đặt bất cứ điều gì. Exim đã được cài đặt trên Raspbian, nhưng nó được cấu hình theo mặc định để giữ nguyên cục bộ. Bạn chỉ cần thay đổi tệp "update-exim4.conf.conf" "dc_eximconfig_configtype = 'vệ tinh', v.v."


1

Tôi đã có cùng một vấn đề.

Hóa ra gmail đã chặn yêu cầu vì ứng dụng khách smtp bị liệt vào danh sách đen là không an toàn (có thể đó là một trong những máy khách bị ảnh hưởng bởi lỗi đau lòng )

Bạn có thể cho phép các khách hàng kém an toàn hơn trên cài đặt gmail của mình tại đây: https://support.google.com/accountsals/6010255?hl=vi

hoặc, tốt hơn nữa, nâng cấp lên phiên bản mới hơn của máy khách smtp, nếu có thể


1

Tôi nghĩ rằng bạn đang tìm kiếm điều này:

/unix/363814/simplest-way-to-send-one-line-mail-out-via-command-line-USE-gmail

NGOẠI TRỪ:

Câu trả lời cho việc gửi tin nhắn một dòng là sử dụng ssmtp

Cài đặt nó với các lệnh sau:

sudo apt-get update
sudo apt-get install ssmtp

Sau đó đi vào / etc / ssmtp và chỉnh sửa ssmtp.conf để trông như thế này:

root=rpi3abc@gmail
mailhub=smtp.gmail.com:465
FromLineOverride=YES
AuthUser=rpi3abc@gmail.com
AuthPass=testing123
UseTLS=YES

Gửi một lớp lót như vậy:

echo "Testing...1...2...3" | ssmtp myusername@gmail.com

Bạn cũng có thể gửi toàn bộ tập tin và gửi nó dưới dạng tin nhắn.


Nếu bạn muốn gửi tệp hình ảnh dưới dạng tệp đính kèm, thì bạn muốn tệp này:

/unix/381131/simplest-way-to-send-mail-with-image-attachment-from-command-line-USE-gmail

Về cơ bản là giống nhau, nhưng thêm:

Cài đặt mpack:

apt-get update
sudo apt-get install mpack

Sau đó gửi một hình ảnh như một tệp đính kèm như vậy:

mpack -s "P&L Proj 2018" /home/pi/Desktop/finance/PL18.png importantdude@gmail.com

Nếu tệp nằm trong thư mục hiện tại, thì không cần thiết phải sử dụng đường dẫn đủ điều kiện đến tệp đính kèm.

Và nếu được sử dụng trong cron, hãy nhớ rằng các công việc luôn chạy trong thư mục chính của người dùng, vì vậy tốt nhất là sử dụng đường dẫn thư mục đầy đủ đến tệp đính kèm.

Voila. Đó là nó. Không thể dễ dàng hơn.

Nó hoạt động cả trên Raspbian và tất cả các phiên bản sau của Ubuntu.

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.