阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux下配置使用外部SMTP发邮件

87次阅读
没有评论

共计 1911 个字符,预计需要花费 5 分钟才能阅读完成。

原来使用 Linux 的 sendmail 发邮件,后来做安全的时候把一 sendmail 服务给关了,导致一直不能发送邮件了。现在我就来配置使用外部 SMTP 发邮件,这样就不用 sendmail 了。

原来系统自带有 mailx 程序,因为我是 RedHat5 的系统所以不能直接用外部 smtp 发送邮件,只能升级 mailx 程序才可以用。所以首先下载 mailx 包。

在 Linux 下利用 Google 的 SMTP 来发邮件  http://www.linuxidc.com/Linux/2013-05/85064.htm

mailx-12.4.tar.bz2

解压该文件并进行编译安装:

[root@linuxidc ~]# tar jxvf mailx-12.4.tar.bz2                                                                                           
mailx-12.4/mailx.spec
mailx-12.4/nail.rc
mailx-12.4/v7.local.c
mailx-12.4/rcv.h
mailx-12.4/md5.h
mailx-12.4/glob.h
mailx-12.4/extern.h
mailx-12.4/def.h
mailx-12.4/version.c
mailx-12.4/vars.c
 ...                                                                                                                   
                                                                                                                    
[root@localhost ~]# cd mailx-12.4                                                                                                         
[root@localhost mailx-12.4]# make                                                                                                         
/bin/sh ./makeconfig                                                                                                                     
checking if a hello world program can be built ... okay                                                                                  
checking for <alloca.h> ... okay                                                                                                         
checking for alloca() ... okay                                                                                                           
...                                    
[root@localhost mailx-12.4]# make install UCBINSTALL=/usr/bin/install                                                                     
test -d /usr/local/bin || mkdir -p /usr/local/bin                                                                                        
/usr/bin/install -c mailx /usr/local/bin/mailx                                                                                           
strip /usr/local/bin/mailx                                                                                                               
test -d /usr/local/share/man/man1 || mkdir -p /usr/local/share/man/man1                                                                  
/usr/bin/install -c -m 644 mailx.1 /usr/local/share/man/man1/mailx.1                                                                     
test -d /etc || mkdir -p /etc                                                                                                            
test -f /etc/nail.rc || \                                                                                                                
                /usr/bin/install -c -m 644 nail.rc /etc/nail.rc  
[root@localhost mailx-12.4]# whereis mailx                                                                                                
mailx: /bin/mailx /usr/local/bin/mailx /usr/share/man/man1p/mailx.1p.gz                                                                  

 

在上面我用 whereis 命令查看 mailx 命令的路径,发现第一个还是原来 mailx 命令的路径,所以直接执行 mailx 命令的时候还是使用原来的 mailx,所以不能发送邮件。

所以我把新的 mailx 直接替换老的 mailx,在这里我先删除原来的,再建一个软链接。

[root@localhost bin]# cd /bin
[root@localhost bin]# rm -rf mailx                                                                                                        
[root@localhost bin]# ln -s /usr/local/bin/mailx mailx                                                                                    
[root@localhost bin]# mailx -V                                                                                                            
12.4 7/29/08                                                                                                                             
[root@localhost bin]# cd                                                                                                                  
[root@localhost ~]# chkconfig --list |grep sendmail                                                                                       
sendmail        0:off   1:off   2:off   3:on    4:off   5:on    6:off                                                                    
[root@localhost ~]# chkconfig --level 35 sendmail off

上面的步骤是安装软件的步骤, 下面我们开始配置使能够通过外部 SMTP 发送邮件。

[Oracle@localhost ~]$ vi /etc/nail.rc
--- 在文件的最下面添加下面内容。
set from=123456789@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=123456789
set smtp-auth-password=youpassword
set smtp-auth=login

 

然后通过命令发送邮件:

echo  hello word | mailx -v -s "title" 123456789@qq.com
--- 在这里邮件地址和上面设置的邮件地址是一样的, 这样相当于自已给自已发送邮件.

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计1911字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中