maillinux配置
① linux的vps怎么配置Mail
如果不安装MTA,则无法向外网进行邮件收发。一般MTA有sendmail,postfix。
系统自带的mail只能简单进行系统内部用户的邮件收发。如果没有MTA,则无法和qq,163这些邮箱进行通信。现在流行的组合是postfix(MTA,smtp)+dovecot(pop3)+cyrus(ait user)
顺便问一下,你的vps在哪里买的。。我近期也准备买个。主要用作mail和vpn。。呵呵。
② linux mail 怎么修改
一般来说只要把sendmail的service起起来就可以发内网邮件了
方法1 安装sendmail即可使用, mail -s "test" [email protected] <content.txt
bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的资源占用。
③ linux里面怎样配置邮件服务器
Sendmail服务器配置
首先,在DNS正向解析上添加一个邮件交换器的名称
这里顺便把dns的测试也附上:
启动sendmail
正向主区域配置文件:
修改sendmail的配置文件
vi /etc/mail/sendmail.cf
改成
修改sendmail的配置文件
vi /etc/mail/sendmail.mc
去掉dnl
再添加两行
做输入重定向m4 /etc/mail/sendmail.mc>/etc/mail/sendmail.cf
编辑 /etc/mail/access
执行makemap hash /etc/mail/access.db </etc/mail/access
编辑vi /etc/mail/local-host-names把邮件服务器使用的域名给添加上去
重启sendmail服务
最后给[email protected]发送测试邮件
End。。。
④ linux mail服务器怎么用
一、概述:
在配置邮件服务器之前,先解释几个概念。
通常使用Email都很容易,但是Internet的邮件系统是通过几个复杂的部分连接而成的,对于最终用户而言,我们熟悉的Outlook,Foxmail等都是用来收信和发信的,称之为MUA:Mail User Agent,邮件用户代理。
MUA并非直接将邮件发送至收件人手中,而是通过MTA:Mail Transfer Agent,邮件传输代理代为传递,Sendmail和Postfix就是扮演MTA的角色。
一封邮件从MUA发出后,可能通过一个或多个MTA传递,最终到达MDA:Mail Delivery Agent,邮件投递代理,邮件到达MDA后,就存放在某个文件或特殊的数据库里,我们将这个长期保存邮件的地方称之为邮箱。
一旦邮件到达邮箱,就原地不动了,等用户再通过MUA将其取走,就是用Outlook,Foxmail等软件收信的过程。
所以一封邮件的流程是:
发件人:MUA --发送--> MTA -> 若干个MTA... -> MTA -> MDA <--收取-- MUA:收件人
MUA到MTA,以及MTA到MTA之间使用的协议就是SMTP协议,而收邮件时,MUA到MDA之间使用的协议最常用的是POP3或IMAP。
需要注意的是,专业邮件服务商都有大量的机器来为用户服务,所以通常MTA和MDA并不是同一台服务器,因此,在Outlook等软件里,我们需要分别填写SMTP发送服务器的地址和POP3接收服务器的地址。
Linux系统下邮件服务器的搭建(Postfix+Dovecot)
对于网站来说,发送各种例如注册通知的邮件是很基本的一个需求,之前我一直用的是腾讯的企业邮箱,感觉挺方便的,直接可以绑定QQ邮箱接收邮件,网站配置一下SMTP也就可以发出邮件。
但是在前几天由于有重要信息需要立即通知用户,所以选择了群发邮件的方式。在当我以为一切都是辣么完美的时候,陆续有用户过来问我什么情况,我都会跟他们说请查收邮件,但是有好几个人说并没有任何
邮件,于是我试着再发一次,结果返回了错误提示。在网上找了下原因,后来看到这个:各大免费邮箱邮件群发账户SMTP服务器配置及SMTP发送量限制情况,才知道是因为发信数量限制了。
所以只好另寻出路了,然后我在知乎上面找到了很多个提供邮件发送的服务商,大概有这些:SendGrid、MailChimp、Amazon SES、SendCloud、Mailgun等等,在看了不少人的建议之后,我选择了Mailgun。
Mailgun注册和配置都挺简单,很快我就成功的发出了第一封邮件,怀着这封欣喜,我又发送了几封邮件,可是悲剧发生在第三封邮件,Mailgun后台有详细的发送记录,这个非常不错,在后台我看到我的邮件被拒收了,原因大概是该服务器IP的发信频率超过腾讯邮箱限制。所以这里就涉及到IP的问题,目前第三方的邮件发送服务普遍都是共享IP(后面还试过SendCloud、),而共享IP并不能确定是否已经达到接收方的数量限制,一旦达到了就无法再发送。这就是说还需要使用独立IP才能保证邮件有较高的到达率,接着就看了各家的独立IP价格,一般都是二十几甚至四十几美刀一个月,这对于我们这种小站长邮件需求不高的来说确实有点贵,买台VPS都不用这个价吧。
经过上面这些折腾,也算明白了如果要想顺畅的发出邮件的话,除了花钱,就只有自己搭建一个邮件服务器了。
好了,下面开始进入正题,教你搭建一个简单的邮件服务器。
用于搭建的服务器信息
阿里云 Centos 6.5 32位
Postfix-2.8.12.tar.gz Postfix MTA(邮件传输代理)
Dovecot-2.1.8.tar.gz IMAP 和 POP3 邮件服务器
Postfixadmin-2.3.5.tar.gz 采用php编写的开源WEB邮箱及域名账号管理工具
Roundcubemail-0.8.1.tar.gz 采用php编写的开源IMAP邮件WEB客户端
安装过程
1.安装Postfix
yum -y install postfix
安装完成还需要替换系统自带的sendmail:
rpm -e sendmail
或者
yum remove sendmail
修改MTA(默认邮件传输代理)
alternatives --config mta
然后直接回车即可。
检查一下是不是已经设置成功了。
alternatives --display mta
第一行可以看到mta的状态。 例如:mat - status is manual.
2.安装Dovecot
yum -y install dovecot
3.配置Postfix
编辑/etc/postfix/main.cf,可以下载下来修改,也可以使用vi进行编辑:
vi /etc/postfix/main.cf
修改如下:
# 75行: 取消注释,设置hostname
myhostname = mail.lomu.me
# 83行: 取消注释,设置域名
mydomain = lomu.me
# 99行: 取消注释
myorigin = $mydomain
# 116行: 修改
inet_interfaces = all
# 119行: 推荐ipv4,如果支持ipv6,则可以为all
inet_protocols = ipv4
# 164行: 添加
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# 264行: 取消注释,指定内网和本地的IP地址范围
mynetworks = 127.0.0.0/8, 10.0.0.0/24
# 419行: 取消注释,邮件保存目录
home_mailbox = Maildir/
# 571行: 添加
smtpd_banner = $myhostname ESMTP
# 添加到最后
# 规定邮件最大尺寸为10M
message_size_limit = 10485760
# 规定收件箱最大容量为1G
mailbox_size_limit = 1073741824
# SMTP认证
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject
修改好了之后使用/etc/rc.d/init.d/postfix start开启postfix,使用chkconfig postfix on将postfix开机启动。
4.配置Dovecot
修改如下:
[root@mail ~]# vi /etc/dovecot/dovecot.conf
# 26行: 如果不使用IPv6,请修改为*
listen = *
[root@mail ~]# vi /etc/dovecot/conf.d/10-auth.conf
# 9行: 取消注释并修改
disable_plaintext_auth = no
# 97行: 添加
auth_mechanisms = plain login
[root@mail ~]# vi /etc/dovecot/conf.d/10-mail.conf
# 30行: 取消注释并添加
mail_location = maildir:~/Maildir
[root@mail ~]# vi /etc/dovecot/conf.d/10-master.conf
# 88-90行: 取消注释并添加
# Postfix smtp验证
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}
[root@mail ~]# /etc/rc.d/init.d/dovecot start
Starting Dovecot Imap: [ OK ]
[root@mail ~]# chkconfig dovecot on
到这里,我们的邮件服务器就已经搭建成功了。
5.域名解析
最后别忘了还需要进行域名解析工作。
添加一个子域名mail,A记录解析到服务器IP。
再添加一个MX记录,主机记录为空,记录值为上面解析的二级域名mail.lomu.me,优先级10。
注意:解析生效可能需要一段时间。
6.防火墙设置
/sbin/iptables -A INPUT -p tcp --dport 25 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 110 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 143 -j ACCEPT
突破封锁25口的转发
/sbin/iptables -t nat -A PREROUTING -p tcp -m tcp --dport 10025 -j REDIRECT --to-ports 25
7.邮箱使用
一切都弄好以后,就可以使用Foxmail等第三方软件来收发邮件了。在这里需要说一下,系统用户就是邮件的用户,例如root,就是一个邮箱用户,邮箱是[email protected],密码就是root的密码,所以需要创建用户,只要使用useradd创建用户,再使用passwd设置密码。
好了,假如我们创建一个admin的用户:
# 创建用户
useradd admin
#设置密码,会要求输入两次密码
passwd admin
接下来登录Foxmail,如图:
点击创建,进入:
这里需要注意,邮件账号是admin,并不是邮箱,另外我们没有配置SSL,所以也不要勾选。 接下来点击创建,如果一切正常的话,你已经成功了。
⑤ linux 命令模式下怎么配置邮件服务器
Linux什么系统的?如果是AS5.5的话...那我现在在下面打的就是=
=...
十分还真不好拿啊~建议LZ加点分-
-看在写的那么辛苦的份上..
物理机IP:192.168.10.100
域名:www.aiy.com
首先先设置DNS
mkdir
/mnt/cdrom
mount
-t
iso9660
/dev/cdrom
/mnt/cdrom
(挂载ISO...因为我用的是虚拟机=
=没有光盘..)
cd
/mnt/cdrom/Server/
rpm
-ivh
caching-chroot-9.3.3-7.el5.i386.rpm
rpm
-ivh
bind-*
vim
/etc/name.rfc1912.zones
=
=里面配置文件太长了...直接说哪一行吧-
-反正都差不多~只要是AS5.5的话
15行:localdomin修改为aiy.com
17行:localdomain.zone改为aiy.com.zone
27行:0.0.127改为本地前三位倒过来...10.168.192
29行:name.local改为192.168.10.zone
输入Shift+;
然后输入wq!强制保存并退出
vim
/etc/named.caching.nameserver.conf
15行127.0.0.1改为any
23行localhost改为any
32行、33行localhost改为any
cd
/var/named/chroot/var/named
cp
-p
localdomain.zone
aiy.com.zone
cp
-p
named.local
192.168.10.zone
vim
aiy.com.zone
在最后加mail
(TAB键对齐就好了)
IN
A
192.168.10.100
aiy.com
IN
MX
5
mail.aiy.com
同样
输入Shift+;
然后输入wq!强制保存并退出
vim
192.168.10.zone
同样在最后加100
IN
PTR
mail.aiy.com(注意空格同样是tab)
输入Shift+;
然后输入wq!强制保存并退出
(=
=下面的话这两句忽略掉了...太麻烦了)
ln
-s
aiy.com.zone
/var/named/
ln
-s
192.168.3.zone
/var/named/
vim
/etc/resolv.conf
nameserver
192.168.10.100
service
named
restart
试试
nslookup
mail.aiy.com
=
=DNS打完...然后MAIL等下继续..先提交保存=
=
-
-现在继续..
-
-继续...挂载省略了...直接安装
cd
/mnt/cdrom/Server
rpm
-ivh
m4-*
rpm
-ivh
sendmail-*
(一开始安装系统时候我没安装...所以现在挂载~如果一开始有选sendmail的话54掉就可以了..=
=再次~)
前面其实就设置好了mail服务的DNS...
cd
/etc/mail
vim
local-host-names
在最下面输入aiy.com
vim
sendmail.mc
116行127.0.0.1改为0.0.0.0
m4
sendmail.mc
>
sendmail.cf
cd
/etc/init.d
./saslauthd
restart
./sendmail
restart
./dovecot
restart
useradd
aiy
建立aiy用户
passwd
aiy
123456
123456
用户aiy密码设置为123456
mail
[email protected]
123
(标题)
123
(内容)
ctrl+d
然后信息就发完了..
T.T终于轮到测试了~...
su
aiy
切换到aiy用户
mail
查看aiy用户的mail
=
=这样就完了...现在发现aiy里面有份root邮件吧...T.T
还能输入
8917
字-
-不知不觉打了很多字了=
=
我QQ
1842534312不懂可以问我..
-0-可以转载~但是请保留全部...
⑥ linux邮件服务器搭建
EMOS很简单噢,就是CENTOS这个LINUX操作系统自带的安装组件,只要配置少量的配置 ,都是用RPM包安装,非常快捷。
⑦ linux 下如何收发电子邮件!详细配置过程!
[font=宋体][/font][color=Red][/color]
1前言
本教程旨在给未用过Linux系统的人提供一个快速入门的途径,使其能迅速上手,用好收发电子邮件,进行文件传输与远程登录等网络功能,并提供了深入学习Linux的资料源。
Linux系统的历史与应用
LINUX 是一个叫LINUS的芬兰人写的操作系统,他的初衷是把只能在大型工作站上运行的UNIX移植到个人PC上来。本着共享的精神,他在网络上公布了LINUX 0.01版,很快,借助于世界各地的电脑高手们的业余“创作”,LINUX迅速的成长壮大起来,以至于在网络中的很多PC机中安家落户,版本也做到了2.0。
LINUX的操作风格很类似UNIX,对网络的支持也很完备。一个LINUX系统的用户无论是收发电子邮件还是文件传输,都可以轻松的解决问题。
3 认识SHELL
在INTERNET网中的一般用户要接触到LINUX,大概只能通过远程登录的方法—
即TELNET程序,作为一个(伪)终端使用LINUX。所以还是先介绍一下如何登录。
举个例子,要登录本校的PEANUT机器:
开启TELNET 程序(以WIN95/NT中的TELNET为例),在“连接”—“远程系统”中填入
PEANUT.CDIT.EDU.CN
作为连接的对象,
屏幕显示:
Welcome to Cheng University of Technology
欢迎访问成都理工大学校园网络
peanut login:[在这里填你的用户名]
password: [你的口令]
peanut:~$ [这就是登录进去后的提示符]
peanut:~$ exit [还是先退出吧]
4 认识文件系统
LINUX的文件系统与DOS基本是一样的(其实应该反过来说),都具有目录和文件的概念,也都有一个根目录,稍稍不同的是目录用“/”代表,而不是DOS中的“\”。
一个例子:
peanut:~$ pwd [回车]
peanut:~$ /home/home2/rudey [表示你现在位于根目录下的home目录下home2目录下的rudey目录(有些拗口 J )。]
你一定想到了,既然文件系统都差不多,操作一定也差不到哪去。对,下一节就以与DOS命令对照的形式介绍LINUX的基本操作。
5 命令列表
含义
LINUX
DOS
改变当前目录
cd [path]
cd [path]
文件或目录的复制
cp filename1 filename2
filename1 filename2
文件目录列表
ls
dir
建立新目录
mkdir
md
分屏显示[文本]文件的内容
more [filename…]
more <[filename]
更改用户的口令
passwd
无
显示当前目录
pwd
cd
删除文件[可有通配符]
rm filename
del filename
删除空目录
rmdir pathname
rd pathname
清屏
clear
cls
6常用的网络程序
收发电子邮件用的MAIL,PINE软件
MAIL和PINE都是运行在LINUX中的收发邮件的程序,PINE由于是菜单式的操作,相比之下较MAIL简单一些。在这里给大家一个提醒:MAIL中用“h”可获得操作的帮助;在PINE 中能用的命令都显示在屏幕底部的一行中,要仔细看一看就会用了。
要用的话,在SHELL中,即提示符下,输入MAIL或PINE就行了。如下:
peanut:-$ mail [回车]
或
peanut:-$ pine [回车]
文件传输
文件传输是在网络中免费获得软件的一个方法,LINUX当然也有相应的程序供使用。
peanut:-$ ftp [回车]
ftp> o ftp.cdit.e.cn [在这里输入各种指令,现在表示与ftp.cdit.e.cn 站点建立连接]
在欢迎信息之后,可用的指令有ls [列远端机上的目录或文件],cd [进入某一级目录],bin[设置为二进制模式,传二进制文件时使用],get [下传文件],quit [结束本程序]等。
提醒:建立连接之后,会有USER[用户名]的输入要求,在一般匿名FTP站点上,可以用anonymous[匿名]或ftp作为用户名,你自己的电子邮件地址作为PASSWORD[口令]。
远程登录
用远程登录可以做的事情很多,到别的学校的BBS上看看,没有TELNET是不行的(当然现在也有WWW方式的BBS)。
peanut:-$ telnet bbs.cdit.e.cn [访问本校的BBS 公告板 ]
要是玩MUD的话,可以这么做:
peanut:-$ telnet mud.cdit.e.cn 4000 [访问本校的MUD站点,使用4000端口]
登录以后的事情,留着给你自己看吧。
7 资料源
BBS上的LINUX信息
1 bbs.cdit.e.cn下的精华区里有许多好文章
2 bbs.tsinghua.e.cn有专门讨论LINUX的板
新闻组中的LINUX信息
comp.os.linux.help
文档
1 LINUX:我要创造一个新世界 《软件》(1997/11)
2 LINUX 使用指南 (清华大学出版社1997 年8月第1版)
3 LINUX 管理者的参考
8结束语
本来还想做一个FAQ,希望大家把在使用LINUX过程中遇到的问题寄给我,一方面会作答;一方面也能把FAQ写出来。
⑧ linux下如何发送mail,难道一定要开smtp服务吗
是的
Linux下的SMTP服务的配置,比较复杂一些,且各发行版本有些差异,以下是一个示例,供参考(建议使用第三个方法)
linux下smtp配置方法有几种,具体如下:
方法一,使用mail函数发送邮件;使用时时需要在本地系统上正确设置SMTP,否则将不能发送邮件。由于对系统的依赖性比较大,很多时候很不稳定,在一些提供虚拟主机服务的代理商中使用mail函数发送邮件往往很不好用,所以不推荐使用这种方法。
方法二,使用管道的形式发送邮件,主要是使用php中的popen函数。使用管道的方法发送邮件属于比较底层的操作,它取决于用户调用程序的稳定性。所以相比mail函数,这是一种可选的发送邮件的方式,但是这些本地的邮件系统都太复杂了,用户可能不会配置。
方法三(推荐),使用phpmailer。phpmailer类是一个开源的发送邮件类,可以从http://phpmailer.sourceforge.net官网下载,它含两个文件class.smtp.php和class.phpmailer.php。代码如下
include_once("class.phpmailer.php");
/**
* 定义邮件模块配制信息
*/
define("SMTP_HOST","smtp.mail.yahoo.com"); // SMTP 主机
define("SMTP_MAIL"," [email protected]"); // SMTP 用户email
define("SMTP_PASS"," XXXX"); // SMTP 用的密码
define("SERVICE_MAIL"," [email protected]"); // SMTP 用户email
define("SERVICE_NAME","PHPBOOK邮件测试"); // SMTP 用的名字
/**
* 使用phpmailer发邮件模块
*
* @param string $email
* @param string $user
* @param string $subject
* @param string $body
* @return bool
*/
function sendMail($email,$user,$subject,$body)
{
$mail = new PHPMailer();
//$this;
$mail->IsSMTP(); // 设置使用SMTP
$mail->Host = SMTP_HOST; // 设置SMTP服务器地址
$mail->SMTPAuth = true; // 打开SMTP权限验证
$mail->Username = SMTP_MAIL; // SMTP 用户名
$mail->Password = SMTP_PASS; // SMTP 服务器密码
$mail->From = SERVICE_MAIL; // 设置发送者地址
$mail->FromName = SERVICE_NAME; // 设置发送者名字
$mail->AddAddress($email, $user); // 添加接收者地址
$mail->AddReplyTo(SERVICE_MAIL, SERVICE_NAME); // 设置回复地址
$mail->WordWrap = 50; // 设置显示格式
$mail->IsHTML(true); // 设置邮件支持html
$mail->Subject = $subject;
$mail->Body = $body;
$mail->AltBody = ""; // 文本类型的邮件
if(!$mail->Send())
{
return $mail->ErrorInfo;
}
return true;
}
//开始发送测试邮件ng: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Name or service not known in /var/www/xiehui/admin/mail/class.smtp.php on line 89
$tomail = " [email protected]";
$user = " XXXXlinux";
$_mailSubject = "邮件测试示例!"; // 发给用户的邮件标题小组
$_mailBody = "新浪网"; // 邮件内容小组
sendMail($tomail,$user,$_mailSubject,$_mailBody);
?>
实验证明yahoo的smtp很好用,号称sina的其实并不好用,我卡在着好长时间。
方法四,给予socket编写的程序,源代码如下
使用socket发送邮件的封装类:
class sendmail{
var $lastmessage; //记录最后返回的响应信息
var $lastact; //最后的动作,字符串形式
var $welcome; //用在HELO后面,欢迎用户
var $debug; //是否显示调试信息
var $smtp; //smtp服务器
var $port; //smtp端口号
var $fp; //socket句柄
//发送邮件函数
function send_mail($smtp, $welcome="", $debug=false) {
if(empty($smtp)) die("SMTP不能为空!");
$this->smtp=$smtp;
if(empty($welcome)) {
$this->welcome=gethostbyaddr("localhost");
}else
$this->welcome=$welcome;
$this->debug=$debug;
$this->lastmessage="";
$this->lastact="";
$this->port="25";
}
//显示调试信息
function show_debug($message, $inout) {
if ($this->debug) {
if($inout=="in"){ //响应信息
$m='<< ';
}else
$m='>> ';
if(!ereg("\n$", $message))
$message .= "
";
$message=nl2br($message);
echo "${m}${message}";
}
}
//执行传递的命令
function do_command($command, $code) {
$this->lastact=$command;
$this->show_debug($this->lastact, "out");
fputs ( $this->fp, $this->lastact );
$this->lastmessage = fgets ( $this->fp, 512 );
$this->show_debug($this->lastmessage, "in");
if(!ereg("^$code", $this->lastmessage))
return false;
else
return true;
}
//邮件发送处理
function send( $to,$from,$subject,$message) {
//连接服务器
$this->lastact="connect";
$this->show_debug("连接到SMTP 服务器: ".$this->smtp, "out");
$this->fp = fsockopen ( $this->smtp, $this->port );
if ( $this->fp ) {
$this->set_socket_blocking( $this->fp, true );
$this->lastmessage=fgets($this->fp,512);
$this->show_debug($this->lastmessage, "in");
if (! ereg ( "^220", $this->lastmessage ) ) {
return false;
}else{
$this->lastact="HELO " . $this->welcome . "\n";
if(!$this->do_command($this->lastact, "250")){
fclose($this->fp);
return false;
}
$this->lastact="MAIL FROM: $from" . "\n";
if(!$this->do_command($this->lastact, "250")){
fclose($this->fp);
return false;
}
$this->lastact="RCPT TO: $to" . "\n";
if(!$this->do_command($this->lastact, "250")){
fclose($this->fp);
return false;
}
//开始发送邮件正文
$this->lastact="DATA\n";
if(!$this->do_command($this->lastact, "354")){
fclose($this->fp);
return false;
}
//开始处理邮件主题头
$head="Subject: $subject\n";
if(!empty($subject) && !ereg($head, $message)){
$message = $head.$message;
}
//开始处理邮件From头
$head="From: $from\n";
if(!empty($from) && !ereg($head, $message)) {
$message = $head.$message;
}
//开始处理邮件To头
$head="To: $to\n";
if(!empty($to) && !ereg($head, $message)) {
$message = $head.$message;
}
//处理结束串
if(!ereg("\n\.\n", $message))
$message .= "\n.\n";
$this->show_debug($message, "out");
fputs($this->fp, $message);
$this->lastact="QUIT\n";
if(!$this->do_command($this->lastact, "250")){
fclose($this->fp);
return false;
}
}
return true;
}else{
$this->show_debug("连接失败!!", "in");
return false;
}
}
}
?>
使用socket发送邮件示例:
include ("./sendmail.class.php");
$mail = new sendmail();
$email = "您好,这是一个测试邮件!";
$sendmail = new send_mail("smtp.mail.126.com","PHPBOOK",true); //显示调示信息
if($mail->send("[email protected]", "[email protected]", "测试SOCKET邮件", $email)) {
echo "发送成功!
";
}else{
echo "发送失败!
";
}
?>
⑨ Linux 下无法使用mail命令发送邮件
根据你描述的情况,使用mail发邮件是通过本机的postfix来发送的。如果本机的的postfix配置中启用了relay,则会将发信请求转发到relay机器进行投递。如果此时通过mail发不出邮件,则问题有可能出现在relay的服务器上。
你说的通过php是可以发邮件的,这个和使用mail是两回事。如果php程序使用的是自己的发信程序,那与本机的postfix可能就没有什么关系。这其中具体的配置还要看程序是怎么设计的。
⑩ linux下的sendmail如何配置
sendmail的功能强大,配置起来也十分繁琐。本例仅介绍如何架设小型的局域网电子邮局。
1、设置sendmail 作为守卫进程(daemon)启动
可以使用以下命令来确认 sendmail 是否已经启动:ps –A|grep sendmail
如果启动了 sendmail,那么这个命令将显示出它的相关信息。如果没有启动,则需要在/etc/rc.d/rc.net 文件中加上如几行代码:
if [-f /usr/lib/sendmail ];
then(cd /usr/spool/mqueue;rm –f if *)
/usr/lib/sendmail-bd-qlh;echo –n ‘sendmail’>/dev/console
fi
2、设置sendmail.cf
sendmail.cf是sendmail的配置文件。在安装了 Linux 系统之后,它将自动生成一个适合本系统使用的 sendmail.cf 文件,位于/etc/sendmail.cf
3、开启SMTP、POP 端口
在默认情况下,SMTP 端口是打开的,而 POP端口是关闭的,我们必须将它打开:
1)用 root(超级权限)登录到服务器上;
2)编辑文件/etc/inetd.conf;
3)找到描述 POP 端口的语句:#pop3 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.pop3d
4)将 POP3的描述语句那一行的注释号“#”去掉。
5)如果没有找到,就手工补上这一行;(另外,我们还可以验证一下是否存在 SMTP端口的描述语句) ;
6)存盘后退出。
7)运行 inetd 命令,使得设置生效。
8)用以下命令验证,看 POP3 端口是否打开(生效):netstat –a |grep pop
如果打开的话,可以看到以下信息:tcp 0 0 *:pop3 *:* LISTEN
4、为新用户开E-Mail 帐号
在 Linux 中开设 E-Mail 帐号十分简单,只要在 Linux 系统中新增一个用户即可。该用户帐号和密码就是E-Mail 的帐号和密码。如:为新用户 guest 开一个E-Mail帐号,用以下命令即可:
adser guest passwd guest
这样,该新用户的 E-Mail 地址就是:[email protected] ;密码为:guest
5、为E-Mail 帐号设置别名
如果某个用户想使用多个 E-Mail 地址,可通过设置别名的方法来实现。比:用户“杜
方冬”想同时拥有 E-Mail 地址:[email protected] ;[email protected] ;[email protected]
就可通过以下步骤来实现这样的别名设置:
1)以 root 登录服务器;
2)新增一个账号 dfd;
3)编辑文件/etc/aliases,加上两行:
fd:dfd
fd2000:dfd
4)存盘退出;
5)执行命令: newaliases
这样,用户杜方冬就拥有三个邮件地址,杜方冬只需使用一个E-Mail 帐号:[email protected]就可以接收所有寄给以上三个E-Mail 邮件地址的电子邮件。
6、邮箱空间的限定
如果你想控制用户邮箱空间的大小,可以对它进行限定。实现方法是利用磁盘限额功能来实现的。电子邮件的暂存空间是在/var/spool/mail 目录下,只要通过磁盘限额设定每一个用户在这个目录下能使用的最大空间就可以了。