linux通过使用mail发送电子邮件
通过外部方法发送的电子邮件
|
bin/mail默认为本地sendmail发送电子邮件,求本地的机器必须安装和启动Sendmail服务。配置很麻烦,并且会带来不必要的 资源占用。而通过改动配置文件能够使用外部SMTPserver,能够达到不使用sendmail而用外部的smtpserver发送邮件的目的: 改动/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是发生的外部smtpserver的地址 smtp-auth-user是外部smtpserver认证的username smtp-auth-password是外部smtpserver认证的用户密码 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替代产品,它试图成为更快、更easy管理、更安全的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,这个服务用的是dovecotserver,这里我也装过,删除后又一次安装就可以 安装后是不是就能够直接执行了呢? 显然是不行的,它的一些必要的參数没有生效是不能执行的,以下改动几个经常使用的选项: Hostname 邮件主机的FQDN Mydomain 地机邮件主机所在的域 Myorigin 本地邮件发送时的域名 Mydestinatin 本地邮件接收是域名 Inet_interface 邮件主机监听的port号 Mynetworks 本地邮件server信赖的网络 Relay_domain 本地邮件server传递的域 Smtpd_banner 登录时显示的标题。最好是把详细的版本给隐藏起来(添加安全性) 这样就完毕了一个最主要的smtp的server了,当然还要做非常多事情。如限制收、发邮人,别名,虚拟域等等,以下重新启动看看效果怎样 当然不要忘记了改动我们的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里看到,就是接收不到本地 重新启动看看 真的登录成功了。试了一下收、发邮件都没有问题了。 平时因为root账号默认接收系统各种错误日志,可是用root登录个人认为不太方便,于是想用一个普通用户也接收发给root的邮件,看了一下配置帮助文档,按这种格式就能够用别名的方式接收其他用户的邮件: root: wuzh 当然得写入/etc/aliases文件中。这样当系统出错错误或其他的事件日志的时候,就会把日志附加一份发给wuzh这个普通用户了这个就不截图了:),改了过后直接发一封邮件给root,然后在wuzh这个账号里就能够看到邮件原文了 另一个功能:虚拟域利用一个虚拟域名来代表实际域来收发邮件(以我这种低水平来说,我感觉我用不上。它仅仅能用于内部交流,假设与外界收发邮 发送人地址是变了,但是要回复那就难了…….看 他的优点就是隐藏自己的域名,好让别人找不到他(假设操心别人找他的话….),当然还有其他的优点的,我的水平菜还不知道怎么用.等学会了再来更新…… 这里还是演示一下怎样设置吧: 在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以下发送邮件很方便。假设仅仅是要发送一个消息。那么须要的命令就更简单了,仅仅只是不同的系统邮件server命令稍有不同。 对于我,常常工作的电脑是HP的C8000工作站,它的系统是HP-UX,另一台也是HP,安装的是redhat AS系统。 HP-UX的邮件程序须要在terminal以下输入:mail命令,然后进去写信,而redhat的邮件发送程序就比較方便,仅仅要一条命令就能够指定主题、附件、内容:
以下这一段脚本就是通过某一个文件是否已经生成进行推断,假设生成了就发送通知邮件到指定邮箱。 否则就每30秒钟检查一次。有完毕的就发送通知邮件,有没有完毕的就休眠后继续循环,一直到所有完毕再退出。 #!/bin/csh |
linux通过使用mail发送电子邮件的更多相关文章
- System.net.mail发送电子邮件
之前做的实现发送邮件的功能,基于System.net.mail,在本地测试是可以发送邮件的,发布到服务器上发送不了邮件,后来发现STMP默认使用25端口收发邮件,服务器封掉25了端口,导致发送邮件失败 ...
- Linux下使用mail命令发送邮件
因为需要经常备份网站的数据,所以了解并学习了下linux下如何通过shell来发送邮件,这里以CentOS为例,使用mail命令来进行外部邮件的发送.mail命令的语法如下: Usage: mail ...
- WordPress ”无法发送电子邮件,可能原因:您的主机禁用了mail()函数“的解决办法
WordPress网站中出现 "无法发送电子邮件,可能原因:您的主机禁用了mail()函数"的情况一般都是因为所在主机环境不支持在线邮件收发功能导致,如果不支持的话,那么像类似 N ...
- linux 原生系统发送电子邮件 (在本地与因特网)
有用的资料在 Linux mail 命令 http://www.cnblogs.com/JemBai/archive/2012/01/24/2329136.html 还有这里 Linux系统下mail ...
- linux使用mail发送外部smtp邮件
linux使用mail发送外部smtp邮件 第一章 说明 参考资料: http://coolnull.com/2614.html linux自带的mail可以实现外部smtp发邮件.不需要本地配置po ...
- C# 发送电子邮件(含附件)用到的类 system.web.mail
主要是用到了System.Web.Mail命名空间,用到了此空间的三个类,分别是: ●MailMessage类,用于构造电子邮件●MailAttachment类,用于构造电子邮件附件●SmtpMail ...
- WordPress无法发送电子邮件,可能原因:您的主机禁用了mail()函数解决方案
体验更优排版请移步原文:http://blog.kwin.wang/website/wp-cant-send-email-solution.html 最近折腾了下WordPress,给米表 搭了个论坛 ...
- C# ASP.NET发送电子邮件System.Net.Mail
1.补充知识 (1)POP3和SMTP服务器是什么? 简单点来说:POP3 用于接收电子邮件 ,SMTP 用于发送电子邮件. (1)POP3具体指什么? POP3(Post Office Protoc ...
- 使用php发送电子邮件(phpmailer)
在项目开发过程中,经常会用到通过程序发送电子邮件,例如:注册用户通过邮件激活,通过邮件找回密码,发送报表等.这里介绍几种通过PHP发送电子邮件的 方式(1)通过mail()函数发送邮件(2)使用fso ...
随机推荐
- Ch02 从零开始实例学习3
提纲:---------------------------- 演练2-3:添加控制器 知识点2-3:控制器的职责 知识点2-4:控制器的类别与方法 ------------------------- ...
- javascript笔记整理(对象基础)
一.名词解释 1.基于对象(一切皆对象,以对象的概念来编程) 2.面向对象编程(Object Oriented Programming,OOP) A.对象(JavaScript 中的所有事物都是对象) ...
- 基于visual Studio2013解决C语言竞赛题之1024求和
题目 解决代码及点评 /* 已知有N个无规律的正整数,请编程序求出其中的素数并打印出能被5整除的数之积. */ #include <stdio.h> # ...
- 用户界面线程AfxBeginThread的使用
用户界面线程在运行时会有一个窗口界面和与其相对应的窗口函数,所以它可以通过响应消息来和用户进行交互. AfxBeginThread 函数原型如下: CWinThread *AfxBeginThread ...
- 《UNIX环境高级编程》笔记--read函数,write函数,lseek函数
1.read函数 调用read函数从文件去读数据,函数定义如下: #include <unistd.h> ssize_t read(int filedes, void* buff, siz ...
- linux下C/C++IDE比较——Code::Blocks
工欲善其事,必先利其器.用了这么久的linux,现在比较主流的几个C/C++的IDE基本已都用过了,现在来对他们做一下简单的比较. 1.VIM首先要说的是VIM.我认为,VIM只是一个编辑器,不能算是 ...
- css盒模型和块级、行内元素深入理解
盒模型是CSS的核心知识点之一,它指定元素如何显示以及如何相互交互.页面上的每个元素都被看成一个矩形框,这个框由元素的内容.内边距.边框和外边距组成,需要了解的朋友可以深入参考下 一.CSS盒模型 盒 ...
- 修改进程占用内存SetProcessWorkingSetSize函数(多篇相关文章值得学习)
物理内存和虚拟内存 物理内存,在应用中,自然是顾名思义,物理上,真实的插在板子上的内存是多大就是多大了.看机器配置的时候,看的就是这个物理内存. 如果执行的程序很大或很多,就会导致物理内存消耗殆尽.为 ...
- 终于懂了:WM_PAINT 与 WM_ERASEBKGND(三种情况:用户操作,UpdateWindow,InvalidateRect产生的效果并不相同),并且用Delphi代码验证 good
一直对这两个消息的关系不是太了解,借重新深刻学习windows编程的机会研究一番. 1)当窗口从无效变为有效时,比方将部分覆盖的窗口恢复时会重绘窗口时:程序首先会通过发送其他消息调用DefWindow ...
- javascript 高级程序设计 学习笔记
<!--<script> // 异步请求封装 IE6即以上浏览器 // ajax(url,fnSucc,selectID,fnFaild) //url 请求地址 //fnSucc 异 ...























