linux下发送邮件

来源:互联网 发布:网络监控app都有哪些 编辑:程序博客网 时间:2024/05/02 02:53

由于某些原因,我们可能需要在linux下发送邮件以提示用户相关信息。比如我们要监控linux的某些服务,如果出现错误了,可以把错误信息通过邮件的方式发送给用户,以便可以即时的处理。

刚开始的时候采用QQ邮箱账号来发送,但是一直都不成功,老是提示SSL错误,后面改用139邮箱帐号,就可以发送成功了。


linux系统是Centos6.5     64位


开始安装:

(1)执行命令

yum  -y install   sendmail   mailx


[root@mysql5 ~]# yum install -y mailx sendmail
Loaded plugins: fastestmirror, security
Setting up Install Process
base                                                                            | 3.7 kB     00:00     
base/primary_db                                                                 | 4.7 MB     00:02     
extras                                                                          | 3.4 kB     00:00     
extras/primary_db                                                               |  37 kB     00:00     
updates                                                                         | 3.4 kB     00:00     
updates/primary_db                                                              | 2.6 MB     00:01     
Package mailx-12.4-8.el6_6.x86_64 already installed and latest version
Resolving Dependencies
--> Running transaction check
---> Package sendmail.x86_64 0:8.14.4-9.el6_8.1 will be installed
--> Processing Dependency: procmail for package: sendmail-8.14.4-9.el6_8.1.x86_64
--> Processing Dependency: libhesiod.so.0()(64bit) for package: sendmail-8.14.4-9.el6_8.1.x86_64
--> Running transaction check
---> Package hesiod.x86_64 0:3.1.0-19.el6 will be installed
---> Package procmail.x86_64 0:3.22-25.1.el6_5.1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=======================================================================================================
 Package               Arch                Version                          Repository            Size
=======================================================================================================
Installing:
 sendmail              x86_64              8.14.4-9.el6_8.1                 updates              717 k
Installing for dependencies:
 hesiod                x86_64              3.1.0-19.el6                     base                  20 k
 procmail              x86_64              3.22-25.1.el6_5.1                base                 162 k

Transaction Summary
=======================================================================================================
Install       3 Package(s)

Total download size: 899 k
Installed size: 1.9 M
Downloading Packages:
(1/3): hesiod-3.1.0-19.el6.x86_64.rpm                                           |  20 kB     00:00     
(2/3): procmail-3.22-25.1.el6_5.1.x86_64.rpm                                    | 162 kB     00:00     
(3/3): sendmail-8.14.4-9.el6_8.1.x86_64.rpm                                     | 717 kB     00:00     
-------------------------------------------------------------------------------------------------------
Total                                                                  956 kB/s | 899 kB     00:00     
warning: rpmts_HdrFromFdno: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
Importing GPG key 0xC105B9DE:
 Userid : CentOS-6 Key (CentOS 6 Official Signing Key) <centos-6-key@centos.org>
 Package: centos-release-6-7.el6.centos.12.3.x86_64 (@anaconda-CentOS-201508042137.x86_64/6.7)
 From   : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : hesiod-3.1.0-19.el6.x86_64                                                          1/3
  Installing : procmail-3.22-25.1.el6_5.1.x86_64                                                   2/3
  Installing : sendmail-8.14.4-9.el6_8.1.x86_64                                                    3/3
  Verifying  : procmail-3.22-25.1.el6_5.1.x86_64                                                   1/3
  Verifying  : sendmail-8.14.4-9.el6_8.1.x86_64                                                    2/3
  Verifying  : hesiod-3.1.0-19.el6.x86_64                                                          3/3

Installed:
  sendmail.x86_64 0:8.14.4-9.el6_8.1                                                                   

Dependency Installed:
  hesiod.x86_64 0:3.1.0-19.el6                   procmail.x86_64 0:3.22-25.1.el6_5.1                  

Complete!


(2)修改/etc/mail.rc配置文件,添加的内容如下

set from=13977304685@139.com smtp=smtp.139.com
set smtp-auth-user=13977304685@139.com smtp-auth-password=hadoop@root123 smtp-auth=login

执行以下命令:

cat  >> /etc/mail.rc<<EOF

set from=13977304685@139.com smtp=smtp.139.com
set smtp-auth-user=13977304685@139.com smtp-auth-password=hadoop@root123 smtp-auth=login

EOF


[root@mysql5 ~]# cat  >> /etc/mail.rc<<EOF
>
> set from=13977304685@139.com smtp=smtp.139.com
> set smtp-auth-user=13977304685@139.com smtp-auth-password=hadoop@root123 smtp-auth=login
>
> EOF


(3)重启sendmail服务

执行命令  /etc/init.d/sendmail  restart


[root@mysql5 ~]# /etc/init.d/sendmail restart
Shutting down sendmail:                                    [FAILED]
Starting sendmail:                                         [  OK  ]
Starting sm-client:                                        [  OK  ]


(4)发送邮件

执行命令  echo  "这是邮件内容" | mail   -s  "这是邮件的主题"   408337259@qq.com


这样就可以通过linux来发送邮件了,还有一种发送文本内容的写法

mail   -s  "这是邮件的主题"   408337259@qq.com  < /etc/mail.rc

注意:文件的内容如果太多的话,可能会被对方服务器屏蔽的,比如我发了邮件的配置内容给QQ账号,这个邮件在QQ服务器那里被当作垃圾邮件处理了。





0 0
原创粉丝点击