sendmail 发信问题 linux 邮件服务器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sendmail 发信问题 linux 邮件服务器相关的知识,希望对你有一定的参考价值。

在Ubuntu中用sendmail做mail服务器
配置好后
我用mail命令
比如 mail xxxxxxx@qq.com
然后输入抄送,主题,正文
按ctrl+d发送

但是这样收到的信的发件人那里显示的是我服务器的那个账号(也就是root)
而不是正确的邮件地址
怎么设置或者怎么发送
才会让对方知道是谁发送的

dns我简单的配置了下
用的是bind9
(只是在本机中可以ping我的域名而已)
直接用xp的outlook express发信?
我这个是linux下的服务器。。。不是windows的。。
1楼的也不行

3楼:普通用户也一样额

你用的是root用户登录的吗·如果是那可定是已root用户身份发送的
你换那个要发的用户登录发的话,对发收到的就是改用户的邮件地址
而已linux 中默认是root是不能登录邮件系统的所以 root用户是没有邮件地址的

回楼主:
不应该啊~我试过了啊~用普通用户登录~在发邮件,别人收到的就是他的邮件地址啊!如果能发邮件DNS可定没问题的~
参考技术A 可以试试这个方法,用来做邮件服务器排错也很好用:
telnet localhost 25
helo test.com
mail from:xxx@qq.com
rcpt to:收信人邮件地址
data
subject:test
邮件内容
.
quit
参考技术B "但是这样收到的信的发件人那里显示的是我服务器的那个账号(也就是root)
而不是正确的邮件地址"

啥是正确的?登陆网易邮箱发是正确的,可你非要在服务器上发,
你仔细琢磨琢磨电子邮箱地址的涵义吧
参考技术C 可以把域名加在hosts里面,直接用xp的outlook express发信 看看 这样更直接! 参考技术D 那你直接在邮箱那发了,不用那么麻烦。 第5个回答  2010-06-12 这个是邮件的配置问题,也就是出站地址的伪装,你在网上看看,有很多,这里我就不罗嗦了。

Zabbix外部邮件告警配置mailx

  1. 关闭sendmail或者postfix
    service sendmail stop
    chkconfig sendmail off
    service postfix stop
    chkconfig postfix off
    备注:
    使用外部邮箱账号时,不需要启动sendmail或者postfix
    如果在sendmail或者postfix启动的同时使用外部邮箱发送报警邮件,首先会读取外部邮箱

  2. 设置mailx发信账号
    yum -y install mailx
    ln -s /bin/mailx /bin/mail
    vim /etc/mail.rc
    #服务端转发邮件到指定邮箱
    set [email protected]

#填写发送邮箱服务器地址smtp
set smtp=smtp.163.com
#个人邮箱用户
set [email protected]
#个人邮箱密码
set smtp-auth-password=****
set smtp-auth=login

  1. zabbix服务器端编写邮件发送脚本
    #进入zabbix脚本目录
    cd /usr/lib/zabbix/alertscripts
    #编辑邮件脚本
    vim mailx.sh
    #!/bin/bash
    messages=echo $3 | tr ‘ ‘ ‘ ‘
    subject=echo $2 | tr ‘ ‘ ‘ ‘
    echo "${messages}" | mail -s "${subject}" $1 >>/tmp/mailx.log 2>&1

  2. 增加可执行权限并测试,邮件日志可以在 /tmp/mailx.log 看到
    touch /tmp/mailx.log
    chown -R zabbix.zabbix /tmp/mailx.log
    chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
    chown -R zabbix.zabbix /usr/share/zabbix/
    发送测试邮件
    echo "zabbix test mail" |mail -s "zabbix" [email protected]

  3. zabbix配置: 管理-->配置-->创建媒体类型

{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

  1. 用户报警配置

  2. 添加报警动作:配置—动作-创建动作

名称:mailx
默认接收人:
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
默认信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

恢复主旨:
恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
恢复信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

8.设置步骤操作,发送用户

9.查看报警邮件

  1. 关闭sendmail或者postfix
    service sendmail stop
    chkconfig sendmail off
    service postfix stop
    chkconfig postfix off
    备注:
    使用外部邮箱账号时,不需要启动sendmail或者postfix
    如果在sendmail或者postfix启动的同时使用外部邮箱发送报警邮件,首先会读取外部邮箱

  2. 设置mailx发信账号
    yum -y install mailx
    ln -s /bin/mailx /bin/mail
    vim /etc/mail.rc
    #服务端转发邮件到指定邮箱
    set [email protected]

#填写发送邮箱服务器地址smtp
set smtp=smtp.163.com
#个人邮箱用户
set [email protected]
#个人邮箱密码
set smtp-auth-password=****
set smtp-auth=login

  1. zabbix服务器端编写邮件发送脚本
    #进入zabbix脚本目录
    cd /usr/lib/zabbix/alertscripts
    #编辑邮件脚本
    vim mailx.sh
    #!/bin/bash
    messages=echo $3 | tr ‘ ‘ ‘ ‘
    subject=echo $2 | tr ‘ ‘ ‘ ‘
    echo "${messages}" | mail -s "${subject}" $1 >>/tmp/mailx.log 2>&1

  2. 增加可执行权限并测试,邮件日志可以在 /tmp/mailx.log 看到
    touch /tmp/mailx.log
    chown -R zabbix.zabbix /tmp/mailx.log
    chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
    chown -R zabbix.zabbix /usr/share/zabbix/
    发送测试邮件
    echo "zabbix test mail" |mail -s "zabbix" [email protected]

  3. zabbix配置: 管理-->配置-->创建媒体类型
    技术分享图片

{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

  1. 用户报警配置
    技术分享图片

  2. 添加报警动作:配置—动作-创建动作
    技术分享图片
    名称:mailx
    默认接收人:
    故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
    默认信息:
    告警主机:{HOSTNAME1}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY1}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
    事件ID:{EVENT.ID}

恢复主旨:
恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
恢复信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

8.设置步骤操作,发送用户
技术分享图片

9.查看报警邮件

技术分享图片

以上是关于sendmail 发信问题 linux 邮件服务器的主要内容,如果未能解决你的问题,请参考以下文章

linux搭建邮件服务器

linux怎么接收windows发送的信息( 邮件)?

linux下多个sendmail服务器怎么互发邮件

linux PHPMailer 发送邮件sendmail 发邮件失败问题

Zabbix外部邮件告警配置mailx

Linux sendmail到底怎么往外发邮件