linux脚本发送邮件 shell发送邮件
Posted by 破冰 on 2012-11-3 9:04 Saturday
原理:
使用 msmtp+mutt+shell来实现
之前在Linux下使用mail命令来发送邮件,配置起来比较麻烦,需要配置sendmail的很多东西。而且还必须启动sendmail才能保证邮件发送成功。其实我们就只要能发送邮件就可以,服务器多开个东西就等于多一个入侵的门。而且sendmail漏斗是很多的。那么有没有类似于foxmail,outlook这样的邮件客户端软件,并且有命令行的形式,来发送邮件呢。mutt和msmtp提供了一个很好的解决方案。
开始:
这里因为很多路径我写死了,所以最好按照我的安装路径来安装。或者根据自己的环境修改路径。注意后面的注释。
因为这个我已经写成sh文件,只要执行install.sh就可以,但是这里不能传附件,我就拆开写吧,注意有2个隐藏文件。
我使用的是163的免费邮。如果你用别的,修改相应的smtp地址。后面的注释不用复制。
mkdir -p /usr/local/msmtp/etc
vi /root/.msmtprc //注意文件名前面有个“点"
host smtp.163.com //smtp地址
tls off
auth plain
from meiti_jiankong@163.com //从哪个邮件发出来
user meiti_jiankong //用户名
password a#^*225*mgYjm21 //邮箱密码
vi /root/.muttrc
set sendmail="/usr/local/msmtp/bin/msmtp" //msmtp的安装位置。根据自己的情况改
set use_from=yes
set from=meiti_jiankong@163.com //用户名
set envelope_from=yes
vi /usr/local/msmtp/etc/msmtprc
defaults
account meiti_jiankong //用户名
host smtp.163.com // smtp -IP
from meiti_jiankong@163.com //用户名
auth login
port 25
tls off
user meiti_jiankong@163.com //用户名
password a#^*225*mgYjm21 //密码
account default : meiti_jiankong
logfile /usr/local/msmtp/log/msmtp.log //用户名
以上3个文件就这样保存,请确保用户名、密码、stmp的正确性。再来:
mkdir -p /usr/local/msmtp/log
echo 'set sendmail="/usr/local/msmtp/bin/msmtp"' >>/etc/Muttrc
echo "set use_from=yes" >>/etc/Muttrc
echo 'set realname="meiti_jiankong@163.com"' >>/etc/Muttrc //这里改成自己的邮箱
echo 'set editor="vim"' >>/etc/Muttrc
安装软件包msmtp
tar jxvf msmtp-1.4.21.tar.bz2
cd msmtp-1.4.21
./configure --prefix=/usr/local/msmtp
make
sleep 3
make install
sleep 3
cd ..
tar zxvf mutt-1.5.21.tar.gz
cd mutt-1.5.21
./configure --prefix=/usr/local/mutt
make
sleep 3
make install
sleep 3
cd ..
ln -s /usr/local/msmtp/bin/msmtp /usr/bin
这样就完成了
发送命令:
/usr/local/mutt/bin/mutt -s "邮件标题" 281450202@qq.com -c 1516070****@139.com </root/jiankong_log/data.log -a /tmp/附件.txt
-s 邮件标题 紧接的是接收邮件地址 -c 抄送地址 "</root/jiankong_log/data.log "为邮件正文 -a是附件。
如果发送不成功,请检测下配置文件。
作者:李坤山
使用 msmtp+mutt+shell来实现
之前在Linux下使用mail命令来发送邮件,配置起来比较麻烦,需要配置sendmail的很多东西。而且还必须启动sendmail才能保证邮件发送成功。其实我们就只要能发送邮件就可以,服务器多开个东西就等于多一个入侵的门。而且sendmail漏斗是很多的。那么有没有类似于foxmail,outlook这样的邮件客户端软件,并且有命令行的形式,来发送邮件呢。mutt和msmtp提供了一个很好的解决方案。
开始:
这里因为很多路径我写死了,所以最好按照我的安装路径来安装。或者根据自己的环境修改路径。注意后面的注释。
因为这个我已经写成sh文件,只要执行install.sh就可以,但是这里不能传附件,我就拆开写吧,注意有2个隐藏文件。
我使用的是163的免费邮。如果你用别的,修改相应的smtp地址。后面的注释不用复制。
mkdir -p /usr/local/msmtp/etc
vi /root/.msmtprc //注意文件名前面有个“点"
host smtp.163.com //smtp地址
tls off
auth plain
from meiti_jiankong@163.com //从哪个邮件发出来
user meiti_jiankong //用户名
password a#^*225*mgYjm21 //邮箱密码
vi /root/.muttrc
set sendmail="/usr/local/msmtp/bin/msmtp" //msmtp的安装位置。根据自己的情况改
set use_from=yes
set from=meiti_jiankong@163.com //用户名
set envelope_from=yes
vi /usr/local/msmtp/etc/msmtprc
defaults
account meiti_jiankong //用户名
host smtp.163.com // smtp -IP
from meiti_jiankong@163.com //用户名
auth login
port 25
tls off
user meiti_jiankong@163.com //用户名
password a#^*225*mgYjm21 //密码
account default : meiti_jiankong
logfile /usr/local/msmtp/log/msmtp.log //用户名
以上3个文件就这样保存,请确保用户名、密码、stmp的正确性。再来:
mkdir -p /usr/local/msmtp/log
echo 'set sendmail="/usr/local/msmtp/bin/msmtp"' >>/etc/Muttrc
echo "set use_from=yes" >>/etc/Muttrc
echo 'set realname="meiti_jiankong@163.com"' >>/etc/Muttrc //这里改成自己的邮箱
echo 'set editor="vim"' >>/etc/Muttrc
安装软件包msmtp
tar jxvf msmtp-1.4.21.tar.bz2
cd msmtp-1.4.21
./configure --prefix=/usr/local/msmtp
make
sleep 3
make install
sleep 3
cd ..
tar zxvf mutt-1.5.21.tar.gz
cd mutt-1.5.21
./configure --prefix=/usr/local/mutt
make
sleep 3
make install
sleep 3
cd ..
ln -s /usr/local/msmtp/bin/msmtp /usr/bin
这样就完成了
发送命令:
/usr/local/mutt/bin/mutt -s "邮件标题" 281450202@qq.com -c 1516070****@139.com </root/jiankong_log/data.log -a /tmp/附件.txt
-s 邮件标题 紧接的是接收邮件地址 -c 抄送地址 "</root/jiankong_log/data.log "为邮件正文 -a是附件。
如果发送不成功,请检测下配置文件。
作者:李坤山
分类
评论
日志
推荐
友情链接
存档Archives
- 2019年4月(3)
- 2019年3月(2)
- 2019年2月(7)
- 2019年1月(6)
- 2018年11月(2)
- 2018年10月(17)
- 2018年9月(13)
- 2018年8月(19)
- 2018年7月(5)
- 2018年6月(15)
- 2018年5月(11)
- 2018年4月(17)
- 2018年3月(33)
- 2018年2月(6)
- 2018年1月(41)
- 2017年12月(10)
- 2017年11月(27)
- 2017年10月(17)
- 2017年9月(17)
- 2017年8月(11)
- 2017年7月(20)
- 2017年6月(12)
- 2017年5月(31)
- 2017年4月(12)
- 2017年3月(26)
- 2017年2月(13)
- 2017年1月(21)
- 2016年12月(21)
- 2016年11月(24)
- 2016年10月(23)
- 2016年9月(12)
- 2016年8月(23)
- 2016年7月(14)
- 2016年6月(10)
- 2016年5月(7)
- 2016年4月(3)
- 2016年3月(9)
- 2016年2月(4)
- 2016年1月(6)
- 2015年12月(9)
- 2015年11月(7)
- 2015年10月(5)
- 2015年9月(8)
- 2015年8月(3)
- 2015年6月(2)
- 2015年4月(1)
- 2015年3月(1)
- 2015年1月(1)
- 2014年10月(1)
- 2014年9月(1)
- 2014年8月(1)
- 2014年7月(2)
- 2014年6月(3)
- 2014年5月(7)
- 2014年4月(10)
- 2014年3月(5)
- 2014年2月(13)
- 2014年1月(6)
- 2013年12月(8)
- 2013年11月(16)
- 2013年10月(13)
- 2013年9月(20)
- 2013年8月(31)
- 2013年7月(18)
- 2013年6月(76)
- 2013年5月(49)
- 2013年4月(33)
- 2013年3月(55)
- 2013年2月(44)
- 2013年1月(98)
- 2012年12月(84)
- 2012年11月(40)
- 2012年10月(16)
- 2012年9月(59)
- 2012年8月(123)
- 2012年7月(257)
- 2012年6月(207)
- 2012年5月(49)
- 2012年4月(24)
- 2012年3月(48)
- 2012年2月(13)
发表评论: