postfix邮箱系统安装(笔记-2017-0701)

环境:centos6.5 x64

源码包:postfix-3.2.2.tar.gz

webmin.1.840.tar.gz

其他是RPM安装

安装前准备:

0. 时间同步

yum install ntp

ntpdate ntp.api.bz

hwclock -w

1. 创建用户:

groupadd -g 2525 postfix -s /sbin/nologin (postfix组)

useradd -g 2525 -u 2525 postfix -M -s /sbin/nologin (postfix用户)

group -g 2526 postdrop

2. yum安装依赖库及相关软件:

yum install mysql mysql-devel mysql-server mysql-lib

yum install db*-devel

yum groupinstall Development Tools  Development Libraries

yum install cyrus-sasl cyrus-sasl-devel cyrus-sasl-lib cyrus-sasl-gssapi cyrus-sasl-md5 cyrus-sasl-plain

3. 解压:

tar  xf    postfix-3.2.2.tar.gz

4. 进入解压后的目录,执行二进制编译安装:

代码如下:

make makefiles ‘CCARGS=-DHAS_MYSQL -I/usr/include/mysql -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl  -DUSE_TLS ‘ ‘AUXLIBS=-L/usr/lib64/mysql -lmysqlclient -lz -lm -L/usr/lib64/sasl2 -lsasl2  -lssl -lcrypto‘

make && make install

5. 编译成功后,会提示需要手动设置安装路径,根据自己需求更改,我这里全部保持默认 按回车键进行确认:

install_root: [/] (表示安装在/根路径下)

tempdir: [/data/postfix-3.2.2] (表示临时数据存放路径,用户需具有写权限)

config_directory: [/etc/postfix] (表示配置文件存放路径)

command_directory: [/usr/sbin] (表示postfix的命令存放路径)

daemon_directory: [/usr/libexec/postfix] (表示postfix的守护程序路径)

data_directory: [/var/lib/postfix] (表示postfix的库数据文件存放路径)

html_directory: [no] (表示不安装postfix的html网页文件)

mail_owner: [postfix] (表示指定postfix用户为文件所有者)

mailq_path: [/usr/bin/mailq]  (表示mailq查看队列列表命令存放路径)

manpage_directory: [/usr/local/man] (表示postfix手册说明书存放路径)

newaliases_path: [/usr/bin/newaliases] (表示newaliases命令存放路径,别名数据库)

queue_directory: [/var/spool/postfix] (表postfix队列安装路径)

readme_directory: [no] (表示README文件安装路径)

sendmail_path: [/usr/sbin/sendmail] (表示sendmail命令的安装路径)

setgid_group: [postdrop] (指定邮件提交组和队列管理组命令)

shlib_directory: [no] (表示不指定共享库路径)

meta_directory: [/etc/postfix]

结尾为:

Warning: you still need to edit myorigin/mydestination/mynetworks

parameter settings in /etc/postfix/main.cf.

See also http://www.postfix.org/STANDARD_CONFIGURATION_README.html

for information about dialup sites or about sites inside a firewalled

network.

BTW: Check your /etc/aliases file and be sure to set up aliases

that send mail for root and postmaster to a real person, then run

/usr/bin/newaliases.

表示完成postfix安装!

6. 添加开机启动命令:

创建文件:vim /etc/init.d/postfix

赋予权限:chown postfix.postfix /etc/init.d/postfix

添加内容:

#!/bin/bash

#

# postfix      Postfix Mail Transfer Agent

#

# chkconfig: 2345 80 30

# description: Postfix is a Mail Transport Agent, which is the program \

#              that moves mail from one machine to another.

# processname: master

# pidfile: /var/spool/postfix/pid/master.pid

# config: /etc/postfix/main.cf

# config: /etc/postfix/master.cf

# Source function library.

. /etc/rc.d/init.d/functions

# Source networking configuration.

. /etc/sysconfig/network

# Check that networking is up.

[ $NETWORKING = "no" ] && exit 3

[ -x /usr/sbin/postfix ] || exit 4

[ -d /etc/postfix ] || exit 5

[ -d /var/spool/postfix ] || exit 6

RETVAL=0

prog="postfix"

start() {

# Start daemons.

echo -n $"Starting postfix: "

/usr/bin/newaliases >/dev/null 2>&1

/usr/sbin/postfix start 2>/dev/null 1>&2 && success || failure $"$prog start"

RETVAL=$?

[ $RETVAL -eq 0 ] && touch /var/lock/subsys/postfix

echo

return $RETVAL

}

stop() {

# Stop daemons.

echo -n $"Shutting down postfix: "

/usr/sbin/postfix stop 2>/dev/null 1>&2 && success || failure $"$prog stop"

RETVAL=$?

[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/postfix

echo

return $RETVAL

}

reload() {

echo -n $"Reloading postfix: "

/usr/sbin/postfix reload 2>/dev/null 1>&2 && success || failure $"$prog reload"

RETVAL=$?

echo

return $RETVAL

}

abort() {

/usr/sbin/postfix abort 2>/dev/null 1>&2 && success || failure $"$prog abort"

return $?

}

flush() {

/usr/sbin/postfix flush 2>/dev/null 1>&2 && success || failure $"$prog flush"

return $?

}

check() {

/usr/sbin/postfix check 2>/dev/null 1>&2 && success || failure $"$prog check"

return $?

}

restart() {

stop

start

}

# See how we were called.

case "$1" in

start)

start

;;

stop)

stop

;;

restart)

stop

start

;;

reload)

reload

;;

abort)

abort

;;

flush)

flush

;;

check)

check

;;

status)

status master

;;

condrestart)

[ -f /var/lock/subsys/postfix ] && restart || :

;;

*)

echo $"Usage: $0 {start|stop|restart|reload|abort|flush|check|status|condrestart}"

exit 1

esac

exit $?

# END

################################################################

7. 启动报错

service postfix start

postfix start

提示:

[[email protected] postfix]# postfix start

postfix/postfix-script: warning: not owned by postfix: /var/lib/postfix/.

postfix/postfix-script: warning: not owned by postfix: /var/lib/postfix/./master.lock

postfix/postfix-script: starting the Postfix mail system

postfix/postfix-script: fatal: mail system startup failed

报错原因:启动文件不是postfix所拥有,权限不够

解决办法:

chown postfix.postfix  -R /var/lib/postfix

chmod 770 /var/lib/postfix/master.lock

修改后在重新启动

[[email protected] lib]# postfix start

postfix/postfix-script: starting the Postfix mail system

[[email protected] lib]# netstat -tunlp | grep 25

tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN      9755/master

8. 设置开机自动启动:

[[email protected] /]# chkconfig --add mysqld

[[email protected] /]# chkconfig --add postfix

[[email protected] /]# chkconfig  mysqld on

[[email protected] /]# chkconfig  postfix on

9.测试下psotfix能否正常发信

[[email protected] /]# telnet localhost 25

Trying ::1...

telnet: connect to address ::1: Connection refused

Trying 127.0.0.1...

Connected to localhost.

Escape character is ‘^]‘.

220 mail.test.com ESMTP Postfix (3.2.2)

ehol h^Hlocalhost

502 5.5.2 Error: command not recognized

ehlo localhost

250-mail.test.com

250-PIPELINING

250-SIZE 10240000

250-VRFY

250-ETRN

250-ENHANCEDSTATUSCODES

250-8BITMIME

250 DSN

mail from:[email protected]

250 2.1.0 Ok

rcpt to:[email protected]

250 2.1.5 Ok

data

354 End data with <CR><LF>.<CR><LF>

wangkejian 20170704

.

250 2.0.0 Ok: queued as 0DACD13402C2

quit

221 2.0.0 Bye

#######################################################################

10. 安装 dovecot RPM包:

yum install dovecot

1. 配置文件路径:

[[email protected] dovecot]# ls

conf.d  dovecot.conf

[[email protected] dovecot]# cd conf.d/

[[email protected] conf.d]# ls

10-auth.conf      10-ssl.conf   90-acl.conf                  auth-ldap.conf.ext        auth-system.conf.ext

10-director.conf  15-lda.conf   90-plugin.conf               auth-master.conf.ext      auth-vpopmail.conf.ext

10-logging.conf   20-imap.conf  90-quota.conf                auth-passwdfile.conf.ext

10-mail.conf      20-lmtp.conf  auth-checkpassword.conf.ext  auth-sql.conf.ext

10-master.conf    20-pop3.conf  auth-deny.conf.ext           auth-static.conf.ext

2. 文件主配置更改如下:

1. 在etc/dovecot/dovecot.conf中设置:

protocols = imap pop3 允许认证的协议类型

listen = *, :: 允许所有监听的端口

login_trusted_networks = 6.6.6.6/8   允许该网段认证

2. 在/etc/dovecot/conf.d/10-mail.conf中设置:

mail_location = mbox:~/mail:INBOX=/var/mail/%u  设置邮箱目录

3. 在/etc/dovecot/conf.d/10-auth.conf中设置:

disable_plaintext_auth = no 使用明文认证

4. 设置新建用户后,自动创建邮箱目录;如下

mkdir -p /etc/skel/mail/.imap/INBOX

#在用户模板文件中添加这些目录文件,以后只要是创建用户系统会自动在用户的家目录下创建这些文件

#######################################################################

11. sasl认证设置

1. 使用系统用户认证

vim /etc/sysconfig/saslauthd

修改 MECH=pam 参数为 MECH=shadow   #更改认证方式

2. 添加smtpd.conf文件,让postfix使用sasl认证

编辑vim /usr/lib64/sasl2/smtpd.conf

添加以下参数:

log_level: 3

pwcheck_method: saslauthd

mech_list: PLAIN LOGIN

赋予文件权限:

chown postfix  /usr/lib64/sasl2/smtpd.conf

12. 安装webmin源码包:

源码包下载地址:http://prdownloads.sourceforge.net/webadmin/webmin-1.850.tar.gz

install:

tar xf webmin-1.850.tar.gz

cd  webmin-1.850

./setup.sh

设置过程中其他保持默认,只修改自己定义的端口号即可

##############################################################

13. 安装openwebmail

文档地址:http://openwebmail.org/openwebmail/download/centos/el6/00.readme.txt

1)下载openwebmail repo文件,并用yum安装openwebmail软件包

#cd /etc/yum.repos.d

#wget -q http://openwebmail.org/openwebmail/download/redhat/rpm/release/openwebmail.repo

#yum install openwebmail

2)web登入地址:

http://6.6.6.6/cgi-bin/openwebmail/openwebmail.pl

3) 公用通讯录设置:

设置一个通讯录管理员  address

useradd address #创建管理员

chown address.address    /var/www/cgi-bin/openwebmail/etc/addressbooks

yum install perl* #安装网页支持模块

4) 禁用网络磁盘:

编辑:vim /var/www/cgi-bin/openwebmail/etc/defaults/openwebmail.conf

找到这个选项改为no:

enable_webdisk            no #不允许用户使用网络磁盘

主要配置文件:

/var/www/cgi-bin/openwebmail/etc/defaults/openwebmail.conf   #功能设置

/var/www/cgi-bin/openwebmail/etc/openwebmail.conf #参数设置

14.说明

安装了webmin后,发现在web访问过程中,他会自动修改postfix的主配置文件内的内容

避免问题(老版本没有这个问题):

1. 设置好策略,以及一些其他配置后,进行备份

2. 新建一个web管理账户,主要给 用户和组管理 和 postfix设置中的邮件别名即可,因为

安装webmail本身就只需要这两个功能就可以了

3.webmail主界面:

4. postfixweb主管理界面

5. 邮箱用户管理登入界面:

时间: 2024-07-30 06:40:48

postfix邮箱系统安装(笔记-2017-0701)的相关文章

Postfix邮件系统安装与配置:Postfix,Cyrus-IMAP,Cyrus-sasl,Dovecot和SPF

最近发现邮件发送服务还是挺重要的.可能对于每天只有一百来封的邮件发送需求的个人博主来说,一个免费的邮箱提供的免费SMTP邮件发送服务就可以满足了,但是对于一些大型的网站.论坛和平台,每天的邮件发送量可以达到上万封以上,免费的邮件发送服务是不能满足需要了. 市场上已经有了不少的付费邮件发送服务,但是终归是第三方的邮件发送服务,在邮件发送方式.邮件内容等方面肯定要受到不少的限制.与其花大量的时间寻找更好的付费邮件服务,还不如自己动手利用VPS或者服务器搭建一个属于自己的邮件发送平台,搭建起来并不复杂

SUS系统 postfix邮箱设置

[SUS11SP1 以下版本] SUS服务器配置postfix邮箱比较简单,在SUS11SP1版本下,可以通过yast管理器,直接配置邮箱: 1 配置DNS信息 执行yast命令,进入"Network Services/DNS and Hostname". 在页面配置相应参数,如下图所示. Domain Name:tanshishe Name Server 1:DNS IP Domain Search:tanshishe 保存配置并退出. 2 执行命令启动系统邮件服务 # rcpost

postfix邮箱服务

postfix邮箱服务 邮件服务器概念 电子邮件服务器是处理邮件交换的软硬件设施的总称,包括电子邮件程序.电子邮件箱等.它是为用户提供基于E-mail服务的电子邮件系统,人们通过访问服务器实现邮件的交换. 邮件系统的角色 MUA(邮件用户代理):一般被称为邮件客户端软件,为客户提供发送.接收和管理电子邮件的界面. MTA(邮件传输代理):一般被称为邮件服务器软件,负责接收和传输客户端的邮件. MDA(邮件分发代理):负责在服务器中将邮件分别发送到用户的邮箱目录中. 邮件应用的协议 SMTP,简单

Redhat6.5中搭建postfix邮箱服务

Internet网络中的电子邮件系统并不是一个孤立的体系.除了需要DNS服务器提供邮件域的解析,通过WEB服务器提供邮箱操作界面以外,邮件提取.传递等功能也是由不同的组建来提供. 邮件系统的角色: MTA: 邮件传输代理,负责邮件发送: MUA:邮件用户代理,为用户提供发送.接收.管理电子邮件的界面: MDA:邮件分发代理,负责在服务器中将邮件分发到用户的邮件目录. 邮件通信协议: SMTP:简单邮件传输协议,主要用于发送和传输其他邮件,对应TCP端口号25: POP:邮局协议,主要用于从邮件服

postfix邮箱系统

Postfix邮箱系统 Internet 网络中的电子邮件系统并不是一个孤立的体系.除了需要DNS服务器提供邮件域的解析,通过Web服务器提供邮箱操作界面以外, 邮箱收取.传递等功能也是由不同的组件来提供的** 邮件系统的角色 MTA(邮件传输代理):一般被称为邮件服务器软件.MTA软件负责接收客户端软件发送的邮件,并将邮件传输给其他的MTA程序,是电子邮件的核心部分. MUA(邮件用户代理):一般被称为邮件客户端软件.MUA软件的功能是为用户提供发送.接收和管理电子邮件的界面. MDA(邮件分

Postfix邮箱服务搭建

实验要求: 在linux上搭建postfix邮箱服务 实验步骤: 一.搭建DNS服务支持 1.编辑主配置文件  /etc/named.conf 2.编辑区域配置文件 /etc/named.rfc1912.zones 3.编辑数据配置文件  /var/named 二.搭建postfix服务 # vi /etc/postfix/main.cf inet_interfaces = all                          //监听服务的IP地址//myhostname = mail.b

DNS+postfix+dovecot搭建postfix邮箱服务

Postfix 由wietse负责开发 目的是为了sendmail提供一个更好的替代产品. postfix在投递效率.稳定性.服务性能以及安全性方面相当出色.linux中邮箱服务,需要DNS+postfix+dovecot服务来共同搭建. 今天我们就来学习一下,如何在linux中搭建postfix邮箱服务. 实验环境 redhat6一台 本实验地址为192.168.10.10 一.配置DNS服务 1.安装DNS服务,进入主配置文件配置 2 .vim /etc/named.rfc1912.zone

Postfix邮箱(十四):备份还原、邮箱转移、主从热备

1.备份与恢复 (1)备份 创建备份目录 [[email protected] ~]# mkdir /home/bak MYSQL备份 [[email protected] ~]# mysqldump -uroot -p123456 extmail>  /home/bak/extmail.sql 邮件备份 [[email protected] ~]# tar -zcvf /home/bak/yourmail.tar.gz /home/domains/yourmail.com [[email pr

Postfix邮箱(十二):修改Web页面及多域名访问

说明:Extmail支持多域名访问,通过修改WEB页面,实现各个域使用独立的页面文件,访问不同的域名看到相应的页面风格. 流程:先修改默认域yourmail.com的页面,再复制给新增域,最后稍稍修改新增域即可. 一.修改Web页面 说明:修改页面请参考附件中的模板文件,这里只列出一些重点项 1.修改页面中的显示文字 [[email protected] ~]# cd /var/wwww/excuite/extmail [[email protected] extmail]# vi lang/z