postfixadmin安装与设置

1:postfixadmin

lnmp vhost add

添加一个mail.****.xxx的网站!不会的去lnmp.org看去!

添加一个数据库

用户名:postfix

密码:postfixadmin 密码你他吗自己改一下,照搬会让你输得很惨

上传postfixadmin压缩包到目录下,我们就安装到 mail.xxxx.com/postfixadmin/下,  更具自己需要设置

tar zxvf postfixadmin-3.2.tar.gz
改个名字
mv postfixadmin-3.2 postfixadmin

只需要增加这个文件并配置即可!config.inc.php 不用动!!!!除非你有需要

postfixadmin必须使用mysqli  ,我查过mysqli是一直链接的意思,

vi config.local.php

$CONF[‘configured’] = true;

$CONF[‘default_language’] = ‘cn’;

$CONF[‘database_type’] = ‘mysqli’;

$CONF[‘database_host’] = ‘localhost’;

$CONF[‘database_user’] = ‘postfix’;

$CONF[‘database_password’] = ‘postfixadmin’;

$CONF[‘database_name’] = ‘postfix’;

$CONF[‘admin_email’] = ‘root@localhost’;

还需要

mkdir templates_c    # 创建缓存目录
chown -R www:www templates_c    # 更改属主组
chown -R www:www postfixadmin
然后打开mail.域名/postfixadmin/public/setup.php
全都显示ok,就可以安装了

config.inc.php 有时候,需要在配置文件中修改这句话!
// When creating mailboxes or aliases, check that the domain-part of the
// address is legal by performing a name server look-up.
// 创建邮箱或别名时,检查域名
// 通过执行名称服务器查找,地址是有效的? 一般改成NO
$CONF['emailcheck_resolve_domain']='YES';


输入设置密码,这里有一个技巧,先输入两位数字,让他报错!然后再输入设置密码。
xxb123456
填写密码之后就要开始修改MD5加密数字!
编辑:config.local.php
$CONF[‘setup_password’] = ‘000000000000000000000000000000:f263b3d6454931a2c4194bbf68285efca52955a6’;

然后执行:nginx 重启生效
service nginx restart
lnmp php-fpm restart

lnmp restart

什么时候显示白色了!不再显示红色,就算OK了!!然后继续
安装密码
xxoob123456
postmaster@域名.com
登录密码
xxbs123456789
xxbs123456789
坚持就是胜利!

=========================================================

新增管理员成功! (postmaster@ramuel.com)You are done with your basic setup.

You can now login to PostfixAdmin using the account you just created.

=========================================================

现在postfixadmin基本上就已经安装完毕了,现在你可以添加你的域名,还有添加你的邮箱账号了,太简单所以无需说明了

2 postfix那边还需要弄一下

postfixadmin中 也介绍了如何配置postfix, 他的介绍在这里DOCUMENTS/POSTFIX_CONF.txt 如果没有看懂我接下来的步骤,可以尝试去看看这个文件

添加用于读取和写入邮件用的用户:

groupadd -g 2000 vmail
useradd -r -u 2000 -g 2000 -d /var/mail/vmail -c "Virtual mail user" vmail
# 有时候需要配置一下权限才可以 
chown vmail.vmail /var/mail/vmail/

vi /etc/postfix/main.cf 添加一下参数


# 设置postfix uid gid
virtual_gid_maps = static:2000
virtual_uid_maps = static:2000

# 虚拟用户配置
virtual_mailbox_domains = proxy:mysql:/etc/postfix/sql/mysql_virtual_domains_maps.cf
# 虚拟域 别名设置
virtual_alias_maps =
proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_maps.cf,
proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_maps.cf,
proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf
virtual_mailbox_maps =
proxy:mysql:/etc/postfix/sql/mysql_virtual_mailbox_maps.cf,
proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cf

# 设置基本路径。 上面查询到的邮箱地址是相对的。所以需要设置基本路径来确认邮箱位置。
virtual_mailbox_base = /var/mail/vmail

postfixadmin虚拟用户是不需要这些参数的,直接注解!!!不用了!!

#myhostname = mail.wptmdb.com

#mydomain = wptmdb.com

改一下    #mydestination = $myhostname, localhost.$mydomain, localhost,

因为是虚拟用户,默认调用主机名,而我们删除了原本的设置,所以要设置一下主机名

hostnamectl set-hostname –static mail.ramuel.com

然后我们通过postfixadmin提供的脚本生成以上虚拟域所需要的文件
切换到postfix的安装目录/postfixadmin/DOCUMENTS,执行如下命令,这个命令可以自动生成我们所需要的那个链接mysql数据库文件
su nobody -s /bin/bash -c 'bash POSTFIX_CONF.txt'
然后这里会返回文件路径,我们进入脚本创建的目录,复制到指定目录

mkdir /etc/postfix/sql
cp /tmp/postfixadmin-D4SOxG/* /etc/postfix/sql/

然后只需要稍微修改一下就行!
比如吧localhost这个参数修改成127.0.0.1

配置dovecot

postfixadmin 也提供了的 dovecot的配置方法:DOCUMENTS/DOVECOT.txt 如果我的配置没有看懂可以选择查看

先配置第一个文件dovecot.conf

protocols = pop3 imap    # 开启pop3 和 imap 服务
listen = * 

然后配置第二个文件conf.d/10-auth.conf

disable_plaintext_auth = no    # 设置关闭强制加密认证
auth_mechanisms = plain login    # 设置认证方法
#!include auth-system.conf.ext    # 注释使用auth-system的认证方式
!include auth-sql.conf.ext    # 使用auth-sql的认证方式

配置第三个文件conf.d/10-mail.conf

mail_location = maildir:/var/mail/vmail/%d/%n    # 设置邮箱格式
first_valid_uid = 2000    # 设置读取和写入的uid  下面使gid
first_valid_gid = 2000
配置第五个文件dovecot-sql.conf.ext
# 设置驱动为mysql
driver = mysql
# 设置加密方法为MD5
default_pass_scheme = MD5-CRYPT
# 设置连接参数
connect = host=127.0.0.1 dbname=postfix user=postfix password=postfixadmin
# 设置查询密码的sql语句
password_query = SELECT username AS user,password FROM mailbox WHERE username = '%u' AND active='1'
# 设置查询用户和邮箱的sql语句
user_query = SELECT CONCAT('/var/mail/vmail/', maildir) AS home, 2000 AS uid, 2000 AS gid, CONCAT('*:bytes=', quota) AS quota_rule FROM mailbox WHERE username = '%u' AND active='1' 

然后就没有然后了,搞定OK了
重启postfix,dovecot
登录地址,http://mail.*******.com/postfixadmin/public/login.php
 
先去添加域名,然后是添加邮箱账号

发表回复

页面加载时间0.30 s