sendEmail的主页http://caspian.dotconf.net/menu/Software/SendEmail/
下载地址http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
#tar –zxvf sendEmail-v1.56.tar.gz
#cd sendEmail-v1.56
#cp sendEmail /usr/local/bin
然后给确认确实它具有执行权限
ll /usr/local/bin/sendEmail
-rwxr-xr-x 1 root root 77882 11-03 14:23 /usr/local/bin/sendEmail
这样程序就装好了,使用也很简单.直接运行sendEmail就会显示详细的用法
先看一个典型的例子
/usr/local/bin/sendEmail –f sender@163.com –t receiver@163.com –s smtp.163.com –u “from nagios” –xu sender –xp 123456 –m happy
解释:
-f 表示发送者的邮箱
-t 表示接收者的邮箱
-s 表示SMTP服务器的域名或者ip
-u 表示邮件的主题
-xu 表示SMTP验证的用户名
-xp 表示SMTP验证的密码(注意,这个密码貌似有限制,例如我用d!5neyland就不能被正确识别)
-m 表示邮件的内容
如果你不带-m参数的话,就会提示你自行输入
Reading message body from STDIN because the ‘-m’ option was not used.
If you are manually typing in a message:
- First line must be received within 60 seconds.
- End manual input with a CTRL-D on its own line
输入完成后使用CTRL-D来结束
当然我们也可以将一个文件的内容作为邮件的正文发出去的
那么就可以使用:
cat 文件名 | /usr/local/bin/sendEmail –f sender@163.com –t receiver@163.com –s smtp.163.com –u "subject” –xu sender –xp 123456 –m happy
有关sendEmail的用法就讲到这里
既然nagios要使用sendEmail来发警告邮件,那么就要修改commands.cfg中关于发邮件的命令的定义,我们现在来修改notify-by-email这个命令,如下(注意其中粗体的部分)
# 'notify-by-email' command definition
define command{
command_name notify-by-email
command_line /usr/bin/printf "%b" "***** Nagios 2.9 *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$" | /usr/local/bin/sendEmail -f sender@163.com -t $CONTACTEMAIL$ -s smtp.163.com -u "** $NOTIFICATIONTYPE$ alert - $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" -xu sender -xp 123456
}
注:其实sendEmail是一个十分有用的程序,我们在这个地方用了它,其实别的地方也可以用,典型的好处就是你不需要每台机器都装sendmail,开启smtp服务.直接用现成的一台邮件服务器就行了,这无疑很大的加强了系统的安全性,也节约了资源.
分享到:
相关推荐
Linux下局域网邮件服务器的建立.pdf
Linux邮件 Linux脚本发送邮件,装一些工具,写个脚本。实现邮件的特定格式的发送
linux操作系统下,C语言发送和接收邮件。运行时,将接收人和发件人邮箱改为需要的邮箱,将SMTP服务器地址改为相应的服务器地址即可。
自己编写的在linux系统下自动发送邮件的程序。 用的是C++,已经过测试,友情奉献。 具体用法参看http://blog.csdn.net/redeg/archive/2011/01/28/6167429.aspx
Linux shell发邮件如何才能同时发送邮件给多个人???这里揭晓答案
在linux平台下主要实现邮件发送功能,c代码
使用纯C代码Linux下的实现!
linux shell 发送email 邮件教程,包括部分源码,大家可以下载来看看
linux监控磁盘并发送邮件
一、刚开始网上一通逛搜,发现Linux环境下,发邮件使用较多的方法是libesmtp包,网上也有示例,按照相关章的指引,很容易就实现的邮件的发送,但问题是不知道如何实现SSL。 二、发现libesmtp文件中有个smtp_starttls...
linux邮件发送SMTP类,已调试通过,运行正确。
* 可以发送带附件的邮件,附件大小限制由发送方服务器而定,暂未测试具体为多少MB * 附件可以是多个 * 邮件内容和主题可以是空,但当有附件时,主题取第一个附件的文件名(不含扩展名) * 密码验证均为base64加密 * ...
在Linux下成功搭建起Postfix服务器。
在Linux命令行发送邮件,对于系统管理员,可以附加备份文件、日志文件/系统运行报告或任何相关信息,并将其发送到远程计算机,是一件非常有用的。
改程序用c语言在linux环境下编写,成功发送邮件。
邮件发送:修正过的jwSMTP库,支持html,解决中文乱码问题,支持多个接收者等
curl 邮件 c++ 类 完整工程示例 带makefiel
由于自己记性太差,很难记住朋友的生日,所以突发奇想,写了个简单的shell程序,主要目的就是为了能在固定的节日(如:圣诞、元旦等,可以指定)和朋友生日的时候自动给朋友发送祝福信件,同时密送给自己,程序虽然...
念书的时候写的一个 linux 下的smtp 内网邮件服务器.能够接收outlook 邮件
linux中sendmail发送邮件成功但收不到邮件.docx