利用外部邮箱发送邮件的方法

bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的

资源占用。而通过修改配置文件可以使用外部SMTP服务器,可以达到不使用sendmail而用外部的smtp服务器发送邮件的目的:

修改/etc/nail.rc (/etc/mail.rc)

set from=fromUser@domain.com smtp=smtp.domain.comset smtp-auth-user=username smtp-auth-password=passwordset smtp-auth=login
说明:

from是发送的邮件地址

smtp是发生的外部smtp服务器的地址

smtp-auth-user是外部smtp服务器认证的用户名

smtp-auth-password是外部smtp服务器认证的用户密码

smtp-auth是邮件认证的方式

配置成功后,就可以使用了

可以发送一封邮件测试一下:

mail -s "test" user@sohu.com <content.txt 其中-s后面的是邮件标题,user@sohu.com是收件人地址,content.txt里面是邮件正文

以上内容转自: http://www.diybl.com/course/6_system/linux/Linuxjs/20091119/182839.html

我试了一把,2006年之前注册的163邮箱可以的,tom邮箱都是可以的

postfix

postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件,想成为sendmail替代产品,它试图成为更快、更容易管理、更安全的MTA,

  安装:

  rpm -ivh /mnt/cdrom/Server/postfix-2.3.3-2.i386.rpm postfix主程序

  rpm -ivh /mnt/cdrom/Server/postfix-pflogsumm-2.3.3-2.i386.rpm postfix日志工具

  rpm -ivh /mnt/cdrom/Server/dovecot-1.0-1.2.rc15.el5.i386.rpm POP程序

  首先查看是否安装过postfix服务,用rpm –qa |grep postfix ,

  

  我这里是装过的,在这里先用rpm –e postfix删除postfix,然后再安装

  

  同样,需查看是否有安装过POP,这个服务用的是dovecot服务器,这里我也装过,删除后重新安装即可

  

  

  安装后是不是就可以直接运行了呢?

  

显然是不行的,它的一些必要的参数没有生效是不能运行的,下面修改几个常用的选项:

  Hostname 邮件主机的FQDN

  Mydomain 地机邮件主机所在的域

  Myorigin 本地邮件发送时的域名

  Mydestinatin 本地邮件接收是域名

  Inet_interface 邮件主机监听的端口号

  Mynetworks 本地邮件服务器信赖的网络

  Relay_domain 本地邮件服务器传递的域

  Smtpd_banner 登录时显示的标题,最好是把具体的版本号给隐藏起来(增加安全性)

  

  

  

  

  

  

  

  

这样就完成了一个最基本的smtp的服务器了,当然还要做很多事情,如限制收、发邮人,别名,虚拟域等等,下面重启看看效果如何

  

  当然不要忘记了修改我们的POP服务设置,直接修改/etc/dovecot.conf ,把#protocols = imap imaps pop3 pop3s前面的#去掉即可,重启看看:

  

  

  然后用我们最熟悉的Outlook登录,

  

  奇怪了?不会是postfix设置错了吧?先看看日志:

  Tail –f /var/log/maillog

  

  出现这个错就是dovecot的配置问题了?明明以前直接修改dovecot支持的邮件接收方法就行了,这次为什么不行呢?试试telnet wudionline.com 25和telnet wudionline.com 110 看看

  

  

也都没问题啊,想想前两天装的时候这样配置明明是可以在outlook登录的啊,但前两天是这种情况:

  可以用outlook登录,但outlook接收不到邮件,可以发邮件,收邮件可以在/var/spool/mail里看到,就是接收不到本地outlook来,经网上参考,最好把#mail_location =mbox:~/mail:INBOX=/var/mail/%u前的#去掉,就可以在本地收邮件了,经分析那里因为dovecot设置的邮件接收路径不对,所以改一点就OK了,但这次是登录不上去啊,网上找了半天也没有答案,于是试试把 #mail_location =mbox:~/mail:INBOX=/var/mail/%u,前的#去掉,

  

  重启看看

  

  真的登录成功了。试了一下收、发邮件都没有问题了。

  平时由于root账号默认接收系统各种错误日志,但是用root登录个人觉得不太方便,于是想用一个普通用户也接收发给root的邮件,看了一下配置帮助文档,按这样的格式就可以用别名的方式接收其它用户的邮件:

  root: wuzh

  当然得写入/etc/aliases文件里,这样当系统出错错误或其它的事件日志的时候,就会把日志附加一份发给wuzh这个普通用户了这个就不截图了:),改了过后直接发一封邮件给root,然后在wuzh这个账号里就可以看到邮件原文了

  还有一个功能:虚拟域利用一个虚拟域名来代表实际域来收发邮件(以我这样的低水平来说,我感觉我用不上,它只能用于内部交流,如果与外界收发邮件的时候虚拟域就无法在广域网上实行解析,也就是根本就接收不到邮件,)如图:我把我的域名wudionline.com改成wudionline.net发信给我的另一个邮箱

  

  发送人地址是变了,可是要回复那就难了…….看

  

  他的好处就是隐藏自己的域名,好让别人找不到他(如果担心别人找他的话….),当然还有其它的好处的,我的水平菜还不知道怎么用.等学会了再来更新……

  这里还是演示一下如何设置吧:

  在main.cf里加入virtual_maps = hash:/etc/postfix/virtual, 这个是虚拟域的位置,还要往这个文件里加入内容,格式为:

  Wudionline.net anything

  wuzh@wudionline.net wuzh

  之后,用postmap命令生成虚拟域数据库:

  postmap /etc/postfix/virtual

  前面是虚拟用户,后面是系统用户,其实收邮件还是系统用户收发的,只是允许虚拟用户对其操作而已

postfix部分转自:http://www.webjx.com/server/linux-14673.html

自动发送邮件的脚本

记得在学校的时候,有一次和老师讨论问题,有一些不明白的地方,他说,你可以编个程序验证一下。我差点没有晕过去。因为那时的我非常害怕编程。不过还好,有很多事情我们不需要编程就可以实现。

比如最近,我开始厌烦在桌子上面的两条电脑之间转来转去,于是我打算写一小段shell脚本,当linux/unix下面的工作完成的时候,系统自动发送一个邮件到windwos下面通知我。

在Linux和Unix下面发送邮件非常方便,如果只是要发送一个消息,那么需要的命令就更简单了,只不过不同的系统邮件服务器命令稍有不同。对于我,经常工作的电脑是HP的C8000工作站,它的系统是HP-UX,还有一台也是HP,安装的是redhat AS系统。

HP-UX的邮件程序需要在terminal下面输入:mail命令,然后进去写信,而redhat的邮件发送程序就比较方便,只要一条命令就可以指定主题、附件、内容:

echo "Content:The work is done" | mail -s "This is subject" mwang@veryword.com

下面这一段脚本就是通过某一个文件是否已经生成进行判断,如果生成了就发送通知邮件到指定邮箱。否则就每30秒钟检查一次,有完成的就发送通知邮件,有没有完成的就休眠后继续循环,一直到全部完成再退出。

#!/bin/csh set arrayA = ($*)set i=1set SysInfo = `uname`set arrayB = ()while ( $i <= $#arrayA )if ( -f ${arrayA[$i]}/result_data.txt) thenif ($SysInfo == HP-UX ) thenmail mwang@veryword.com << !Subject:'${arrayA[$i]} is finished''${arrayA[$i]} is finished'.!elseecho "${arrayA[$i]} is finished" | mail -s "${arrayA[$i]} is finished" mwang@veryword.comendifecho "${arrayA[$i]} is finished, a mail is sent to mwang"elseset arrayB = ( $arrayB $arrayA[$i] )endifif ( ( $i >= $#arrayA ) && $#arrayB) thenset arrayA = ($arrayB)echo "$arrayA is under calculation, please wait. Now: " `date`set arrayB = ()set i = 0sleep 30endif@ i++end转自 http://www.veryword.com/2008/11/10/auto-send-mail-script.html

利用外部邮箱发送邮件的方法相关推荐

  1. php模拟登录qq邮箱_PHP 利用QQ邮箱发送邮件的实现

    这篇文章主要介绍了关于PHP 利用QQ邮箱发送邮件的实现,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下在 PHP 应用开发中,往往需要验证用户邮箱.发送消息通知,而使用 PHP 内置的 ...

  2. 内网邮件JAVA535报错_利用网易邮箱发送邮件535报错处理

    相信看到535报错的同学代码编写方面都没有问题,只是不明白为什么填写了帐号密码后还是报535错误,使用网易的126或者163邮箱都会有如此问题. Python报错如下: Traceback (most ...

  3. ABP VNext 利用QQ邮箱发送邮件

    ABP VNext 利用QQ邮箱发送邮件 1.配置邮箱 1.1 设置 1.2账户 1.3 开启邮箱服务 1.4 生成授权码 2 默认的SmtpEmailSender发送邮件 2.1 生成数据库 2.2 ...

  4. 利用163 邮箱发送邮件

    1.利用163邮箱发送邮件 # _*_ coding:UTF-8 import time import smtplib from email.mime.text import MIMEText fro ...

  5. python向自己qq邮箱发信息_Python实现给qq邮箱发送邮件的方法

    本文实例讲述了Python实现给qq邮箱发送邮件的方法..具体实现方法如下: #-*-coding:utf-8-*- #======================================== ...

  6. Java实现利用QQ邮箱发送邮件

    博主在做项目时,要求能够系统能够通过点击按钮来向某一个用户发送邮件. 于是博主使用了开启QQ邮箱的STMP来进行邮件发送,下面是完成步骤: 首先我们需要开启邮箱发送端口:首先我们打开自己的邮箱 就是这 ...

  7. java实现发邮件qq邮箱,Java实现利用QQ邮箱发送邮件

    博主在做项目时,要求能够系统能够通过点击按钮来向某一个用户发送邮件. 于是博主使用了开启QQ邮箱的STMP来进行邮件发送,下面是完成步骤: 首先我们需要开启邮箱发送端口:首先我们打开自己的邮箱 就是这 ...

  8. php怎么做一个163邮箱发送,laravel5.4利用163邮箱发送邮件的步骤详解

    前言 其实发送邮箱其实不难,不如说挺简单的,本文将详细介绍关于laravel5.4用163邮箱发送邮件的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 一.首先还是现在16 ...

  9. TP5实现邮件发送(PHP 利用QQ邮箱发送邮件「PHPMailer」)

    在 PHP 应用开发中,往往需要验证用户邮箱.发送消息通知,而使用 PHP 内置的 mail() 函数,则需要邮件系统的支持. 如果熟悉 IMAP/SMTP 协议,结合 Socket 功能就可以编写邮 ...

最新文章

  1. python qtdesigner 提升类_python3+PyQt5+Qt Designer实现扩展对话框
  2. 春招实习前端面试题汇总
  3. 电脑维修:电脑故障通用处理思路,你有必要了解一下!
  4. I+关系网络分析发布,提供完整的可视化分析和关系引擎功能
  5. 分计算iv值_筛选变量的指标—IV值
  6. python在线包安装mysql_python安装mysql的依赖包mysql-python操作
  7. 1002.ubuntu系统级BUG-/dev/ttyUSB0
  8. Python中流程控制-for循环(序列/字典举例)
  9. 小红书用户画像分析_2018年小红书app用户群体分析报告
  10. 推荐几个设计师常去的优秀素材网站!收藏好哦!
  11. C#报错Newtonsoft.Json.JsonSerializationException: “A member with the name ‘phone‘ already
  12. Android自动化测试框架Robotium
  13. Pr:图形与基本图形面板
  14. springboot网上投资借贷中介服务毕业设计-附源码221506
  15. php 读取docx,PHP怎么获取docx里面内容
  16. excel服务器条形码不显示,excel怎么制作条形码教程 excel条形码显示不出怎么办...
  17. 异常检测中的浅层模型与深度学习模型综述(A Unifying Review of Deep and Shallow Anomaly Detection)
  18. 小学五计算机课程安排,2021年小学五年级信息技术教学计划(干货4篇)
  19. Flutter iOS问题记录 - Fastlane打包的ipa包上传fir后不显示应用版本名称
  20. 抖音小程序实践二:常用权限申请

热门文章

  1. 青春的记忆,小个子前锋,阿圭罗
  2. WAP网站开发 比较全面的开发资料
  3. 【前端框架】Vue2-Vue3
  4. 给自己的论坛装一个视频聊天室
  5. [学习笔记·翻译稿] Video Based Face Recognition by Using Discriminatively Learned Convex Models
  6. 可可英语奇文老师 新东方奇文老师词根词汇速记20000单词(免费下载)
  7. 《LabVIEW数据采集》视频教程第8集:程序框图的节点
  8. python实现本地音乐播放器
  9. dfuse 与 EOS Nation 推出官方 dfuse 社区版服务
  10. Teams Surface pro上进行Teams会议,插耳机无效的问题