码迷,mamicode.com
首页 > 其他好文 > 详细

Postfix

时间:2018-10-31 20:04:10      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:required   develop   .sh   企业邮   efault   lib64   ret   sas   start   

邮件服务器

即时通信:QQ、微信、钉钉

邮件:法律效应、方便、安全、保持时间长

1)早期:非即时通信

2)21世纪:电子邮件,即时通讯

1.邮件组成:发件人(用户名@邮件域)+收件人、主题、正文、附件

5526405@qq.com、

2.邮件发送流程

不同邮件域:发件人(mishi@xueluo.xyz) --> xueluo.xyz邮件服务器 --> qq.com邮件服务器 --> 收件人(5526405@qq.com)

同邮件域:发件人(mishi@xueluo.xyz) --> xueluo.xyz邮件服务器 --> 收件人(hehe@xueluo.xyz)

3.邮件服务器

1)发送:SMTP协议(TCP 25),用于将客户端的邮件发送到指定邮件服务器中;smtp.域名

2)接受:POP3(TCP 110)用户删除邮件后,邮件服务器依然保留该邮件、IMAP4(TCP 143)用户删除邮件后,邮件服务器也删除该邮件,用于将邮件服务器邮件下载到收件人本地;pop.域名、imap.域名

4.软件

1)MTA:邮件传输代理:用于实现邮件的发送,一般指邮件服务器,Microsoft Exchange、Postfix、Dovecot、SendMail;SMTP

2)MUA:邮件用户代理:用于实现邮件的接受,一般指客户端,Outlook、Foxmail、thunderbird、xchar;POP3、IMAP4

5.邮件提供商

1)共有:QQ邮箱、163网易邮箱、hotmail微软、gmail谷歌、xueluo.xyz阿里云

2)私有:自建邮件服务器

个人邮箱:个人使用

企业邮箱:企业使用,可新建员工个人邮箱

xueluo.xyz企业邮箱:给与管理员账号,可新建普通员工邮件用户名及密码

二、Postfix部署

源代码步骤

1)解压

2)配置

3)编译

4)安装

5)编辑配置文件

6)启动服务

7)测试

基础环境--补充

英文:yum -y groupinstall Base "Development tools Server" "Platform Development"

中文:yum -y groupinstall 基本 开发工具 服务器平台开发

1.创建运行用户和组

1)yum -y install cyrus-sasl-devel cyrus-sasl-plain cyrus-sasl-lib cyrus-sasl-2.1 //安装SASL加密软件包

2)/etc/init.d/postfix stop && chkconfig --level 35 postfix off //将系统自带服务停止并开机禁用

#useradd -M -s /sbin/nologin postfix

#groupadd postfix

#groupadd postdrop

3)gpasswd -a postfix postfix //将postfix用户加入到Postfix组

4)gpasswd -a postfix postdrop //将postfix用户加入到postdrop组

2.解压并安装postfix

1)tar -zxvf postfix-3.2.2.tar.gz -C /usr/src/

2)cd /usr/src/postfix-3.2.2/

3)make makefiles ‘CCARGS=-DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I /usr/include/sasl‘ ‘AUXLIBS=-L/usr/lib64/sasl2 -lsasl2‘

//生成Mailfile配置文件,并启动sasl认证、指定依赖库文件位置

//CCARGS:启用SASL认证,并指定SASL头文件存储位置

//AUXLIBS:指定额外的函数库文件位置

4)make && make install

3.编辑配置文件

1)postconf -n >/tmp/hehe.conf //将有效的配置文件导出

2)mv /tmp/hehe.conf /etc/postfix/main.cf

3)vim /etc/postfix/main.cf

9 inet_interfaces = 192.168.1.10 //指定监听IP
10 myhostname = mail.xueluo.org //新增,指定当前主机名
11 mydomain = xueluo.org //新增,指定邮件域
12 myorigin = $mydomain //新增,外发邮件时发送中邮件域
13 home_mailbox = Maildir/ //新增,邮件的存储位置(存储到用户的家目录)

19 mydestination = $myhostname,$mydomain //允许投递的目标邮件域

4)postconf compatibility_level=2 && postfix start //启动postfix服务

5)echo "postfix start" >>/etc/rc.local && chmod +x /etc/rc.local

4.SMTP邮件测试

1)groupadd mailusers //新建用户组

2)useradd -s /sbin/nologin -g mailusers hehe

3)useradd -s /sbin/nologin -g mailusers haha

4)echo "123" | passwd --stdin hehe

5)echo "123" | passwd --stdin haha

6)yum -y install telnet //安装远程连接工具

7)telnet mail.xueluo.org 25 //连接到邮件服务器的25端口

HELO mail.xueluo.org //宣告客户端地址

MAIL FROM:hehe@xueluo.org //告知发件人地址

RCPT TO:haha@xueluo.org //告知收件人地址

DATA //告知要发送的邮件数据

Subject: He is he //指定邮件标题

heh is hehe ~~~~!!! //撰写邮件正文

.quit //邮件编写完毕并退出

quit //退出连接

8)ls /home/haha/Maildir/new/ //查看是否有新邮件

Dovecot配置收件服务

1.创建运行用户

1)useradd -M -s /sbin/nologin dovecot

2)useradd -M -s /sbin/nologin dovenull

2.源代码编译安装

1)tar -zxvf /root/dovecot-2.2.31.tar.gz -C /usr/src/

2)cd /usr/src/dovecot-2.2.31/

3)./configure --sysconfdir=/etc/ //配置dovecot的配置文件存储目录

4)make && make install

3.拷贝模版文件

1)cp doc/dovecot-initd.sh /etc/init.d/dovecot //拷贝启动脚本文件

2)chmod +x /etc/init.d/dovecot

3)chkconfig --add dovecot //将dovecot注册为系统服务

4)cp -r /usr/local/share/doc/dovecot/example-config/* /etc/dovecot/ //拷贝模版配置文件

4.新建PAM认证模块

vim /etc/pam.d/dovecot

#%PAM-1.0

auth required pam_nologin.so
auth include system-auth
account include system-auth
session include system-auth

5.编辑配置文件

vim /etc/dovecot/dovecot.conf

!include conf.d/10-auth.conf //只使用系统用户认证

ssl = no //禁用SSL

disable_plaintext_auth = no //启用SASL认证

mail_location = maildir:~/Maildir //指定邮箱的位置

#!include conf.d/*.conf //注释该行,位于98行

6.启动服务并验证

/etc/init.d/dovecot restart //重启dovecot服务

chkconfig --level 35 dovecot on

telnet mail.xueluo.org 110 //连接到邮件服务器的110端口(POP3)

USER haha //指定登录用户

PASS 123 //指定用户

LIST //查看邮件列表

RETR 1 //查看你第一封邮件

QUIT

DNS部署

一块网卡为vmnet1

1.修改网络配置

1)vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.1.10
NETMASK=255.255.255.0
DNS1=192.168.1.10

2)/etc/init.d/network restart

3)vim /etc/sysconfig/network

HOSTNAME=ns.xueluo.org

2.安装bind软件包

1)yum -y install bind bind-utils

3.编辑主配置文件

1)vim /etc/named.conf

options {
listen-on port 53 { 192.168.1.10; }; //设置监听IP地址;需修改
directory "/var/named"; //区域配置文件存放目录
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";\
allow-query {localhost;}; //删除该行
recursion yes;

dnssec-enable no;                           //bind安全检测机制;需修改
dnssec-validation no;                       //bind安全检测机制;需修改
dnssec-lookaside auto;

/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";

managed-keys-directory "/var/named/dynamic";

};

logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};

zone "xueluo.org" IN { //指定正向解析域为xueluo.org
type master; //指定DNS类型,为主DNS服务器
file "xueluo.org.zone"; //正向解析文件
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

2)cp /var/named/named.empty /var/named/xueluo.org.zone //拷贝DNS模版文件并重命名

3)vim /var/named/xueluo.org.zone

$TTL 86400(TTL值,生命周期)
@ IN SOA xueluo.org.(需要解析的域名) admin.xueluo.org.(管理员邮箱) (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.xueluo.org. //NS记录(起始授权记录);输入DNS服务器的主机名
ns IN A 192.168.1.10 //DNS服务器对应的IP地址
IN MX 10 mail.xueluo.org. //MX记录
mail IN A 192.168.1.10 //mail.xueluo.org对应的IP

4)chown named:named /var/named/xueluo.org.zone

5)/etc/init.d/named start && chkconfig --level 35 named on

Postfix

标签:required   develop   .sh   企业邮   efault   lib64   ret   sas   start   

原文地址:http://blog.51cto.com/13770300/2311320

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!