问题
Hi I have RHEL5 with ssmtp installed on it ssmtp-2.61-22.el5.i386.rpm
my /etc/ssmtp/ssmtp.conf updated as below :-
AuthUser=mymail@gmail.com
AuthPass=mypassword
FromLineOverride=YES
mailhub=smtp.gmail.com:587
UseSTARTTLS=YES
UseTLS=Yes
RewriteDomain=gmail.com
also revaliases updated as below :
root:mymail@gmail.com:smtp.gmail.com:587
i have shutdown sendmail service
when i try to send email with ssmtp i get below error
[root@ctmtest ssmtp]# echo "test" | ssmtp -vvv mymail@gmail.com
[<-] 220 smtp.gmail.com ESMTP v26sm42795996pfi.56 - gsmtp
[->] EHLO ctmtest
[<-] 250 SMTPUTF8
[->] STARTTLS
[<-] 220 2.0.0 Ready to start TLS
ssmtp: Cannot open smtp.gmail.com:587
i searched lots of tag with this error , but unable to fix this
my system is able to connect smtp.gmail.com on port 587
[root@ctmtest ssmtp]# telnet smtp.gmail.com 587
Trying 74.125.200.108...
Connected to smtp.gmail.com (74.125.200.108).
Escape character is '^]'.
220 smtp.gmail.com ESMTP o90sm11695907pfi.17 - gsmtp
is there anyone who have fixed this ? please suggest
回答1:
I encountered the same problem. The following steps worked for me:
- sudo vi/etc/ssmtp/ssmtp.conf Add the following:
TLS_CA_FILE=/etc/pki/tls/certs/ca-bundle.crt
root=XXXX@gmail.com
mailhub=smtp.gmail.com:587
AuthUser=XXXX
AuthPass=XYXYX
UseSTARTTLS=Yes
UseTLS=Yes
hostname=AAAA
Replace: XXXX- username(mail) XYXYX- password(mail password) AAAA- hostname(get by running $hostname)
- sudo vi /etc/ssmtp/revaliases Add the following:
root:XXXX@gmail.com:smtp.gmail.com:587
Replace : XXXX - username(mail)
Try running the mail now:
$mail -s "adasdas" XXXX@gmail.com
CC: XYZLoremIpsum . 'ctrl+D'
It solved my problem. Hopefully for a system(Office) you need to configure correct proxy settings otherwise you will get an error:
cannot send message: Process exited with a non-zero status
回答2:
try changing this option
Allowing less secure apps to access your account
https://support.google.com/accounts/answer/6010255?hl=en
回答3:
This is perhaps because you're not setting the hostname
parameter of ssmtp.conf
. It should be a resolvable, fully-qualified domain name; yours is defaulting to the machine name of ctmtest
(as shown in the EHLO
command that you quote above).
The issue that user963 mentions in their answer may also be in action here, but in that case you'll get a different error message, something like ssmtp: Authorization failed (534 5.7.14 ...)
.
回答4:
first to get your hostname type in terminal : hostname
copy it and past in hostname parameter in ssmtp.conf
回答5:
On my Gentoo Linux system, the error ssmtp: Cannot open smtp.server.com:port
was caused by an ownership/permissions issue: the file /etc/ssmtp/ssmtp.conf
should belong to the group ssmtp
, which it didn't (and any user allowed to access ssmtp should be a member of that group).
回答6:
I ws looking for a solution for cacti smtp mail sender. And found myself actually sending an email using the postfix service . I also used localhost in the postfix config. Thanks!
回答7:
Mail functions are all highly broken, so are the numerous tutorials on the internet.
This is pretty bad, for something that MUST be EASY for BEGINNERS.
A little panels of unclear errors you will face:
mailx: unrecognized option '-d'
💩
mailx: unrecognized option '-v'
💩
s-nail: Setting up PseudoRandomNumberGenerator: *SSL RAND_*
s-nail: New-style URL used without *v15-compat* being set
/home/you/dead.letter 3/106
s-nail: ... message not sent
💩
s-nail: Connecting to XX.XX.XX.XXX:465 ... connected.
s-nail: SMTP: Resource temporarily unavailable
💩
s-nail: Obsoletion warning: Use of old-style credentials, which will vanish in v15!
💩
s-nail: Obsoletion warning: please don't use *smtp*: assign a smtp:// URL to *mta*!
💩
s-nail: Unexpected EOF on SMTP connection
💩💩💩
No, there is no needs of any credentials to send a simple mail.
STEP 1: Install mail-utils
sudo apt install mailutils
STEP 2: Install mutt
sudo apt install mutt
STEP 3: Run the postfix setup
sudo dpkg-reconfigure postfix
Usage press TAB to select OK
Select "Internet site"
Enter your domain, or whatever
Leave all other settings as default. (Press RETURN till the end)
Mails will then be sent from this email: yourCurrentsession@whatever.com
STEP 4: Apply settings
service postfix reload
STEP 5: Send email
echo "Hello world" | mutt -s "Message sent at $(date)" recipient@gmail.com -y
STEP 6: Optional. Change sender email and name. Create a .muttrc file in the home folder.
echo -e "set from = \"aname@something.net\"\nset realname = \"Yay\"" > ~/.muttrc
来源:https://stackoverflow.com/questions/35130119/linux-configuration-ssmtp-cannot-open-smtp-gmail-com587