邮件服务器相关(extmail/postfix/smtp/pop3/IMAP etc)
分页: 1/2 第一页 1 2 下页 最后页 [ 显示模式: 摘要 | 列表 ]
要配置一个postfix发邮件,需要以 xx@test.aslibra.com 发送邮件
同时提供smtp服务给局域网其它服务器提供发送邮件服务

安装好postfix后,可以参考如下配置文件(去掉注释内容):

/etc/postfix/main.cf

myhostname = test.aslibra.com
mydomain = test.aslibra.com
mynetworks = 192.168.1.0/24, 127.0.0.0/8
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
mail_owner = postfix
myorigin = $myhostname
inet_interfaces = all
unknown_local_recipient_reject_code = 550
relay_domains = $mydestination
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
debug_peer_level = 2
debugger_command =
   PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
   xxgdb $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/postfix-2.3.3/samples
readme_directory = /usr/share/doc/postfix-2.3.3/README_FILES


PHP发送邮件可以使用phpmailer

include('libraries/class.phpmailer.php');

$mail = new PHPMailer();  
$mail->CharSet="UTF-8";
$mail->IsSMTP();                            // 经smtp发送  
$mail->Host     = $this->smtp_ip;           // SMTP 服务器  
$mail->SMTPAuth = false;          // 局域网不需要SMTP 认证  
$mail->From     = $from;  // 发信人  
$mail->FromName = $fromuser;        // 发信人别名  
$mail->Sender = $from;

$mail->AddAddress($to);  // 收信人  
if(isset($ccmail)){  
  $mail->AddCC($ccmail);  // cc收信人
}  
if(isset($bccmail)){  
  $mail->AddCC($bccmail);    // bcc收信人
}  

$mail->WordWrap = 50;  
$mail->IsHTML(true);                            // 以html方式发送  
$mail->Subject  = $title;                 // 邮件标题  
$mail->Body     = $content;                    // 邮件内空  

$mail->Send();


扩展阅读:

1 带smtp认证的postfix配置
http://hi.baidu.com/jedibd/blog/item/7b73ab25a7b7e06d35a80f45.html
2 CentOS下(PostFix)SMTP服务器的构建
http://www.fuancn.cn/html/ServerSettings/Linux/CentOS/20084288.html
3 phpmailer,smtp发送邮件实例
http://blog.51yip.com/php/910.html/comment-page-1
4 postfix邮件服务的基本配置
http://eastwalk.blogbus.com/logs/57585048.html
5 Postfix服务的基本配置
http://book.51cto.com/art/200904/118655.htm
6 telnet smtp发邮件
http://hi.baidu.com/guixiao_zhou/blog/item/49f8a73259a9f2210a55a9ec.html
7 簡易 Mail Server 架設 -- Postfix 設定
http://linux.vbird.org/linux_server/0390postfix.php
Tags: , ,
最近对postfix的使用又产生了点兴趣,特实验并整理一下相关的使用:

一 安装

yum install postfix

参考:postfix基本配置和设定DNS

二 配置默认发送域名

配置文件可以设定:
mydomain = mail.yourdomain.com
myhostname = yourdomain.com

如果不行,可以试试这样(笨人方法):
hostname yourdomain.com
service postfix restart

这样发出的邮件就是 xx@yourdomain.com

三 配置收邮件

inet_interfaces = all

四 希望收到的邮件提供给PHP处理

cat /etc/aliases | grep aslibra
aslibra:        "| php -q /tmp/m.php"

修改 aliases文件要执行 newaliases 才能生效

这样发给 aslibra@yourdomain.com 的邮件会交给 /tmp/m.php 处理
程序参考: PHP处理postfix的邮件内容

五 希望增加收邮件的域名

别的域名的邮件发到此服务器是会有出错提示的,不处理的,修改一下即可
mydestination = $myhostname, localhost.$mydomain, localhost, www.aslibra.com

这样 xx@www.aslibra.com 的邮件就可以处理了

六 希望做邮件转发

比如 xxxx@www.aslibra.com 全部都交给php处理,这个用处很大,可以用程序处理用户邮件交互
1 编辑 /etc/postfix/canonical 增加一行
@www.aslibra.com aslibra@yourdomain.com
2 postconf -e canonical_maps=hash:/etc/postfix/canonical
3 postmap /etc/postfix/canonical

这样邮件就都交给前面设定的用户了,继而交给php处理了

# 参考资料:
1 Postfix 邮件转发
Tags: , ,
发送文本邮件

echo "content" | mail -s "subject" {email}

发送纯附件

uuencode aslibra.com.sql aslibra.com.sql | mail -s subject  {email}

注:需要用到sharutils
ubuntu下这样安装即可:
apt-get install sharutils

发送文本+附件

echo "content:www.aslibra.com" >/tmp/mail ;uuencode aslibra.com.sql aslibra.com.sql >>/tmp/mail; cat /tmp/mail | mail -s subject  {email}

更多内容可以参阅:
http://linux.chinaunix.net/bbs/viewthread.php?tid=905943
Tags: , ,
本文整理中。。

前言

发送一封邮件能够正常的到达用户的收件箱,期间会受哪些因素影响呢?

1 PHP编程,按正常方式发出
2 邮件发送程序(本文是postfix)处理并发出
3 邮件接收服务器确认是否垃圾邮件
4 用户邮件终端解析邮件内容

怎么样的邮件不正常?

1 PHP没有做好编码处理,直接导致乱码问题
2 postfix域配置不正常,导致邮件服务器验证失败,断定为垃圾邮件
3 客户端解析内容的兼容性差

如何进行环境配置

先安装postfix,系统自带的sendmail也可以发送,但明显比postfix用起来麻烦
简单的发邮件,两者都可以
centOS里执行 yum install postfix 即可。

假设我们要配置的发送人的邮箱是 root@notify.aslibra.com
那需要设定两个内容:

1 设定机器名为notify.aslibra.com,@后面那段
hostname notify.aslibra.com

永久设定可以在 /etc/sysconfig/network 修改,否则以上设置重启后会被修改
这个hostname很重要,邮件服务器主要审查的就是此名称是否为合法的发送者
默认是localhost,不改名称很容易就变成垃圾邮件

2 notify.aslibra.com 的TXT记录,包含发邮件的服务器的公网IP,假设是1.2.3.4
添加一条TXT的记录为“v=spf1 ipv4:1.2.3.4 a mx ~all”
此操作是声明哪些ip可以用此域发邮件
更多请参考《postfix基本配置和设定DNS

启动服务测试

启动postfix或者sendmail,然后命令行方式发送一封英文邮件试试
如果能够收到,那说明发送邮件已经正常
下面可以用php来完成更加复杂的邮件,比如html和中文支持

发送实例分析

关于 base64_encode 函数:
引用
本函数将字符串以 MIME BASE64 编码。此编码方式可以让中文字或者图片也能在网络上顺利传输。在 BASE64 编码后的字符串只包含英文字母大小写、阿拉伯数字、加号与反斜线,共 64 个基本字符,不包含其它特殊的字符,因而才取名 BASE64。编码后的字符串比原来的字符串长度再加 1/3 左右。更多的 BASE64 编码信息可以参考 RFC2045 文件之 6.8 节。


参考阅读内容:

1 HTML EMAIL WITH JPEG ATTACHMENTS TUTORIAL
2 用PHP MAIL()函数发送HTML邮件
3 解決寄件者名稱與信件標題亂碼問題
4 PHP发送UTF-8编码中文邮件标题乱码的解决
Tags: , , ,
要试用google的企业邮箱,只需要你有一个域名即可,当然,人家对cn域名不支持。

对于邮件系统,一般有如下的问题需要处理:

1 高稳定性的服务器维护
2 垃圾邮件的维护
3 用户的管理

在google的企业邮箱,提供的服务挺好:

引用
Gmail企业邮箱是Google通过Gmail平台,向中小企业、家庭团体、学校组织等提供的免费邮箱服务,它的特点,我总结有三:

  一是,使用自己的域名作为邮箱后缀,比如我用自己的域名qasn.com设立了我的专有邮箱kong#qasn.com;一般企业邮箱就是要达到这样的效果,用企业网站相同后缀的邮箱。

  二是,免费,标准版和教育版都是免费的,而且最多可以创建50个相同后缀的邮箱;专业版是需要付费的,50美元每年每个账户。一般中小企业用标准版就够了。

  三是,享受免费7G的超大容量。

  这样的优势你还花钱购买服务低劣的企业邮箱吗?


使用步骤:

1 申请启用

注册 Google 企业应用标准版
填写你的域名即可,比如aslibra.com

2 填写好你的信息

引用
注册 Google 企业应用标准版 (第 2 步,共 3 步)
Google 企业应用标准版仅限于 50 个用户帐户。您想拥有更多用户帐户或其他高级功能吗?请免费试用 Google 企业应用专业版。


这步骤填写完了就基本可以了,国家地区里,选择中国香港吧,选择中国说不支持

3 填写管理员账号

启用后,你就可以登录管理了,比如
http://www.google.com/a/aslibra.com/

4 启动 Google 企业应用套件

引用
要启动 Google 企业应用套件,您需要验证您拥有您的域名 - 365dog.com。 验证域名的所有权 使用指南


验证域名所有权我觉得cname比较好,到域名管理的后台操作一下就好

提交后会提示你:我们正在验证域名所有权。完成这一过程可能会需要 48 小时。
Tags: , ,
使用postfix发送邮件,需要你对本身配置做些修正,另外,也需要你设置相应的DNS,否则发送邮件会容易当做垃圾邮件。

我们做几个步骤来看看收信的影响:

1 安装后不设置
2 设置hostname和domain
3 设置MX记录
4 设置SPF

以下说明的信息为了去除隐私信息,做过一些名称修改:

= 1 没有任何配置 =

引用
Delivered-To: your-email@gmail.com
Received: by 10.114.181.20 with SMTP id d20cs1238waf;
        Mon, 4 Jan 2010 17:33:21 -0800 (PST)
Received: by 10.141.90.17 with SMTP id s17mr7576023rvl.196.1262655201126;
        Mon, 04 Jan 2010 17:33:21 -0800 (PST)
Return-Path:
Received: from localhost.localdomain ([219.232.1.2])
        by mx.google.com with ESMTP id 20si58728702pwj.8.2010.01.04.17.33.18;
        Mon, 04 Jan 2010 17:33:19 -0800 (PST)
Received-SPF: neutral (google.com: 219.232.1.2 is neither permitted nor denied by best guess record for domain of root@localhost.localdomain) client-ip=219.232.1.2;
Authentication-Results: mx.google.com; spf=neutral (google.com: 219.232.1.2 is neither permitted nor denied by best guess record for domain of root@localhost.localdomain) smtp.mail=root@localhost.localdomain
Received: by localhost.localdomain (Postfix, from userid 0)
  id 7BF5120DF2C; Mon,  4 Jan 2010 21:33:09 -0500 (EST)
To: your-email@gmail.com
Subject: test in 95
Message-Id: <20100105023309.7BF5120DF2C@localhost.localdomain>
Date: Mon,  4 Jan 2010 21:33:09 -0500 (EST)
From: root@localhost.localdomain (root)

test


我们看到,发信人是root@localhost.localdomain,明显不对的
回复邮件也肯定收不到,我们至少需要用户能够回复,当然,除非你不想。

= 2 设置hostname和domain =

postconf -e "myhostname=aslibra.com"
postconf -e "mydomain=mail.aslibra.com"
postfix reload


postfix里面修改参数可以用以上的方式,检查参数
可以是 postconf myhostname
Tags: , , ,
master.cf 配置文件详解以下为例,按顺序分别说明各栏的意义以及它们的默认值
   1           2      3       4       5      6       7      8
cyrus      unix    -       n       n       -        -    pipe
  flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${ extension }


1、服务名称(server name)
    服务器组件的名称。实际的命名规则,随该服务的传送类型(第二栏)而定。

2、传送方式 (transport type)
    传送服务所用的通信方法。有效的传送方式包括与inet、unix与fifo 。inet方法表示服务可通过“网络套接字”(network socket)来访问,这类服务的对象可以是同系统上的其他进程,或是网络上其他主机的客户端进程。网络套接字服务的名称(第一栏),是et用服务方的“IP地址”(主机名称也可以)与“通信端口 ”(数值或/etc/service 定义的端口的符号名称)的组合来表示,例如: 192.168.1.2:25、localhost:smtp 。如果服务方恰好位于本地主机上,则 “ IP地址 ”与冒号都可以省略。

    unix代表“Unix domain socket”,而fifo代表“命名管道”(named pipe)。两者都是同机器不同进程之间的通信机制,而且同样使用特殊文件为通信中介。unix与fifo服务的名称与Unix标准文件名的命名规则相同,但是不包含目录路径的部分。Postfix使用服务名称来创建通信中介用的特殊文件。Unix domain socket与命名管道两者都是Unix的标准“进程间通信机制”(interprocess communications,通常简称为IPC) 。更详尽的信息,请参阅有关Unix程序设计的书籍。
Tags: ,
分页: 1/2 第一页 1 2 下页 最后页 [ 显示模式: 摘要 | 列表 ]

阅读推荐

服务器相关推荐

开发相关推荐

应用软件推荐