Linux下sendmail发送邮件

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 [email protected] –t [email protected] –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 [email protected] –t [email protected] –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 [email protected] -t $CONTACTEMAIL$ -s smtp.163.com -u "** $NOTIFICATIONTYPE$ alert - $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" -xu sender -xp 123456
        }

注:其实sendEmail是一个十分有用的程序,我们在这个地方用了它,其实别的地方也可以用,典型的好处就是你不需要每台机器都装sendmail,开启smtp服务.直接用现成的一台邮件服务器就行了,这无疑很大的加强了系统的安全性,也节约了资源.  转自:http://blog.csdn.net/zhuying_linux/article/details/7091688 小菜鸟的天地

时间: 2024-11-01 11:43:02

Linux下sendmail发送邮件的相关文章

linux利用sendmail发送邮件的方法

linux利用sendmail发送邮件, 方法1 安装sendmail即可使用, mail -s "test" [email protected] <content.txt bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的资源占用. 方法2.利用外部的smpt服务器 而通过修改配置文件可以使用外部SMTP服务器,可以达到不使用sendmail而用外部的smtp服务器发送邮件的目的: 修改

linux下sendmail邮件系统安装操作记录

电子邮件系统的组成: 1)邮件用户代理(Mail User Agent , MUA),MUA是一个邮件系统的客户端程序,它提供了阅读,发送和接受电子邮件的用户接口. 最常用的 MUA 有: linux 中的 mail , elm , pine 等. Windows 的 outlook , foxmail 等  2)邮件代理器( Mail Transfer Agent , MTA ) MTA 负责邮件的存储和转发( store and forward ). MTA 监视用户代理的请求,根据电子邮件

Linux系统下sendmail发送邮件失败的问题

     问题是:安装完sendmail,启动服务后,发送邮件第一次发送成功,后面再次无论怎么发送都不行,换邮箱也不行.在确认我的邮件发送格式正确无误后,想到查看邮件发送日志: [[email protected] ~]# tail -20 /var/log/maillogOct  6 23:26:40 backup-11 sendmail[1307]: t96FQeu7001305: to=<[email protected]>, ctladdr=<[email protected]&

利用linux服务器sendmail发送邮件方式

yum install mail vim /etc/mail.rc   //设置发件人 set [email protected] smtp=smtp.126.com [email protected] smtp-auth-password=xxxxxx smtp-auth=login echo "内容" | mail -s "主题"  [email protected]  使用该命令来发送邮件

linux下shell发送邮件方法

首先需要安装mutt和msmtp sudo apt-get install mutt sudo apt-get install msmtp 编辑mutt配置文件系统全局设置/etc/Muttrc,如果使用某个系统用户,可以在~/.muttrc中设置.vim .muttrcset sendmail="/usr/bin/msmtp"set use_from=yesset realname="123"              set [email protected] 

Linux下安装配置msmtp和mutt发送邮件

Linux下安装配置msmtp和mutt Linux下有发送邮件的需求,mail搞不定,因为很多邮件服务器屏蔽了mail发送的请求(明显嘛,都木有发送源-_-). 在网上搜了一把,使用msmtp+mutt可以搞定,记录如下. 一.安装配置msmtp 1.下载.解压 msmtp wget http://downloads.sourceforge.net/msmtp/msmtp-1.4.16.tar.bz2 msmtp-1.4.16.tar.bz2tar jxvf msmtp-1.4.16.tar.

linux下msmtp+mutt+shell发送邮件

Linux下安装配置msmtp和mutt发送邮件 作者: 纵横域内 日期: 2014 年 12 月 11 日发表评论 (0)查看评论 Linux下安装配置msmtp和mutt Linux下有发送邮件的需求,mail搞不定,因为很多邮件服务器屏蔽了mail发送的请求(明显嘛,都木有发送源-_-).在网上搜了一把,使用msmtp+mutt可以搞定,记录如下. 一.安装配置msmtp1.下载.解压 msmtpwget http://downloads.sourceforge.net/msmtp/msm

linux下mutt邮件发送系统安装操作记录

之前介绍了Linux下sendmail和sendemail邮件系统环境部署,今天介绍下使用mutt发送邮件的环境部署过程.mutt这个软件,它是一款基于文字界面的邮件客户端,是一款功能强大的email程序,非常小巧,可以用它来读写,回复保存和删除你的邮件,能在linux命令行模式下收发邮件和附件. 1)mutt的安装[[email protected] ~]# yum -y install sendmail                  //需要安装sendmail并开启防火墙的25端口,如

JavaMail在Windows平台下正常发送邮件,部署到Linux后则发送失败

问题: 在本机(Windows)环境下可以成功发送邮件,但部署到Linux服务器上后不能成功发送,前台不提示错误或提示502. linux下日志提示:javamail isssl false.... JavaMail: package com.ruili.uitl; import java.util.Date; import java.util.Properties; import javax.mail.Session; import javax.mail.Transport; import j