CentOS发送邮件(sendmail/mstmp)方法总结 – shao.bing的专栏 – 博客频道 – CSDN.NET

我们先要知道一定的是CentOS默认不能发送邮件,需要发送邮件的我们要先安装一个sendmail程序,如果不使用sendmail来操作,我们还可以使用mstmp来发,下面我来一一介绍。

先来看使用sendmail发邮件配置

安装sendmail

执行:

 代码如下 复制代码

[root@vps478753 ~]# yum -y install sendmail

程序会自动搜索出sendmail安装程序自动安装。

安装好sendmail以后执行以下命令启动sendmail

 代码如下 复制代码

 [root@vps478753 ~]# service sendmail start Starting sendmail:                                         [  OK  ] Starting sm-client:                                        [  OK  ]

 

启动以后我们可以执行mail命令测试一下是否能发送邮件

一、通过文件内容发送邮件

首先创建一个body.txt

 代码如下 复制代码

 [root@vps478753 ~]# touch body.txt

写入内容

 代码如下 复制代码

 [root@vps478753 ~]# echo ‘This is test mail’>body.txt

发送邮件

 代码如下 复制代码

 [root@vps478753 ~]# mail -s ‘Test mail’ mail@lizhong.me < body.txt

点击打开,正文内容就是body.txt的内容

 This is test mail

 

二、使用管道符直接发送邮件内容

如果不想通过文件发送邮件内容也可以这么发送

 代码如下 复制代码

 [root@vps478753 ~]# echo “This is test mail” | mail -s ‘Test mail’ mail@lizhong.me

如果提示mail: command not found

 [root@vps478753 ~]# mail -s ‘Test mail’ mail@lizhong.me < body.txt  -bash: mail: command not found

那么就是没有安装mail命令,此时需要安装mail命令

 代码如下 复制代码

 [root@vps478753 ~]# yum install mailx -y

然后再重新发送以下邮件就好了!

使用mutt发邮件

一、安装配置msmtp

1、下载、解压 msmtp

先使用putty等工具登陆ssh

 代码如下 复制代码

wget http://downloads.sourceforge.net/msmtp/msmtp-1.4.16.tar.bz2?modtime=1217206451&big_mirror=0

tar jxvf msmtp-1.4.16.tar.bz2

2、安装

 代码如下 复制代码

./msmtp-1.4.16/configure –prefix=/usr/local/msmtp

make

make install

注意红色标记出的目录,因为是解压到那个目录的。不知道为什么不能用yum直接安装,会提示出错。

3、配置msmtp账号

切换到,cd /usr/local/msmtp

新建文件夹etc,mkdir etc

使用vi新建文件,输入:vi /usr/local/msmtp/etc/msmtprc ,编辑内容如下:

 代码如下 复制代码

# Set default values for all following accounts.

defaults

logfile /usr/local/msmtp/msmtp.log

# The SMTP server of the provider.

account test@163.com

# SMTP邮件服务器地址

host smtp.163.com

# 发送的邮件Email

from test@163.com

auth login

# 邮件服务器登录账号

user xiaobaichi@i0554.com

# 邮件服务器登陆密码

password 123456

# Set a default account

account default : test@163.com

Esc,shift+:进入命令模式,输入wq,保存退出。

由于password是明码,所以我们需要修改此文件的权限 chmod 600 .msmtprc

4、测试

 代码如下 复制代码

/usr/local/msmtp/bin/msmtp youremail@test.com

输入任意字符,然后按Ctrl+D退出,查看邮件是否收到。

由于设置了日志,可以到 /usr/local/msmtp/msmtp.log,查看日志,发信成功失败都会有记录。

通过上面的步骤就可以发邮件了,这里发邮件还是使用的是SMTP发的,msmtp相当于一个第三方工具。

二、安装配置mutt

1、一般Linux都会默认安装mutt,CentOS也不例外

可以使用which mutt查看mutt安装的路径,如果没有安装可以使用 # yum install mutt

3、测试一下mutt是否有效

 代码如下 复制代码

echo “测试测试” | mutt -s “测试” 测试邮件地址

echo “test” |mutt -s “my_first_test” yangcheng@i0554.com

经过测试发送成功.

备注:刚才又经过测试,不需要安装msmtp,直接安装mutt就可以发邮件了,这样即使你没有SMTP账号,也可以照常发邮件,COOL

来源URL:http://cache.baiducontent.com/c?m=9d78d513d98806f04fede53f5a4a81394a0fde777b978e1a2592d50a8465285c5a36bde67235107382842a3b16af3e00bdb62b336d507de7c094dd12debb96357cc8616f2142d15c44845ffc901864dc2b9a59e8ae18ec&p=85769a479e8411a058ee942a1651a5&newp=9b33c818cd8412a05abd9b7e0e169e231610db2151d4d215&user=baidu&fm=sc&query=yum+sendmail&qid=e6fa70770001a346&p1=5