postfix mysql冲突_postfix常用错误解决方案

FAQ

1. 启动 postfix 报错

#/usr/sbin/postfix start

postfix:

fatal: /etc/postfix/main.cf, line 34: missing '=' after attribute name:

"permit_mynetworks,"

原因 smtpd_recipient_restrictions =后面的选项要连续,不能换行

改成

smtpd_recipient_restrictions

=permit_mynetworks,permit_sasl_authenticated,reject_invalid_hostname,reject_non_fqdn_hostname,reject_unknown_sender_domain,reject_non_fqdn_sender,reject_non_fqdn_recipient,reject_unknown_recipient_domain,reject_unauth_pipelining,reject_unauth_destination,permit

2. 不能正常启动 postfix ,无报错

查看 tail -f /var/log/maillog

Jun 16

17:57:45 ud20009 postfix/postfix-script[2770]: starting the Postfix mail

system

Jun 16 17:57:45 ud20009 postfix/master[2771]: fatal:

/etc/postfix/master.cf: line 103: bad transport type: user=vmail:vmail

修改

maildrop  unix  -       n       n       -       -       pipe

flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}

3.fatal: open database /etc/aliases.db: No such file or

directory

文件存在,但是格式不对,导致的原因可能是aliases.db文件是由Berkeley DB版本1创建的,

但是你

现在使用的是版本2或者3,或者这个文件是用btree格式建立的,但是postfix能识别的格式是hash,

解决的方法是以root的身份执

行newaliases,这样就能建立一个postfix能识别的aliases.db文件。

# touch /etc/aliases

# newaliases

4. warning: dict_nis_init: NIS domain name not set - NIS lookups

disabled

warning: unsupported SASL server implementation: cyrus

fatal:

SASL per-process initialization failed

warning: process

/usr/libexec/postfix/smtpd pid 16840 exit status 1

warning:

/usr/libexec/postfix/smtpd: bad command startup -- throttling

原因2.3版本以后需要加入对CYRUS的认证

解决方法 加入-DUSE_CYRUS_SASL选项,重新编译。

make -f Makefile.init makefiles 'CCARGS=-DHAS_MYSQL

-I/usr/local/mysql/include -DUSE_CYRUS_SASL -I/usr/local/include/sasl'

'AUXLIBS=-L/usr/local/mysql/lib -lmysqlclient -lz -lm -L/usr/local/lib

-lsasl2'

make && make install

5. postfix启动报错

Jun 17 12:09:25 ud20009 postfix/smtpd[11023]:

warning: smtpd_sasl_auth_enable is true, but SASL support is not

compiled in

Jun 17 12:09:25 ud20009 postfix/smtpd[11023]: connect

from unknown[125.34.78.179]

Jun 17 12:09:25 ud20009

postfix/trivial-rewrite[11026]: warning: do not list domain win123.cn in

BOTH virtual_mailbox_domains and relay_domains

原因还是在编译postfix时没有 加入-DUSE_SASL_AUTH。

正确的是

make -f Makefile.init makefiles 'CCARGS=-DHAS_MYSQL

-I/usr/local/mysql/include \

-DUSE_CYRUS_SASL -DUSE_SASL_AUTH

-I/usr/local/include/sasl' \

'AUXLIBS=-L/usr/local/mysql/lib

-lmysqlclient -lz -lm -L/usr/local/lib -lsasl2'

make && make install

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以帮你解答关于Ubuntu下Postfix +Dovecot邮件服务器搭建的问题。以下是大致的步骤: 1. 安装Postfix和Dovecot 在Ubuntu终端输入以下命令安装Postfix和Dovecot: ``` sudo apt-get update sudo apt-get install postfix dovecot-core dovecot-imapd dovecot-pop3d ``` 2. 配置Postfix 在终端中输入以下命令打开Postfix的主配置文件: ``` sudo nano /etc/postfix/main.cf ``` 在文件中搜索以下两行内容并进行修改: ``` myhostname = your_domain_name mydestination = your_domain_name, localhost.localdomain, localhost ``` 将“your_domain_name”替换为您的域名。 接下来,找到以下行并更改以允许邮件的发送和接收: ``` inet_interfaces = all ``` 最后,添加以下内容使Postfix能够与Dovecot一起工作: ``` home_mailbox = Maildir/ mailbox_command = ``` 保存并关闭文件。 3. 配置Dovecot 打开Dovecot的主配置文件: ``` sudo nano /etc/dovecot/dovecot.conf ``` 找到以下行并进行修改: ``` protocols = imap pop3 ``` 将其更改为: ``` protocols = imap pop3 lmtp ``` 然后,找到以下行并进行修改: ``` mail_location = mbox:~/mail:INBOX=/var/mail/%u ``` 将其更改为: ``` mail_location = maildir:~/Maildir ``` 保存并关闭文件。 4. 配置MySQL 如果您想要使用MySQL存储邮件,可以按照以下步骤进行配置: - 安装MySQL: ``` sudo apt-get install mysql-server ``` - 创建数据库和用户: ``` sudo mysql -u root -p ``` ``` CREATE DATABASE mailserver; CREATE USER 'mailuser'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON mailserver.* TO 'mailuser'@'localhost'; FLUSH PRIVILEGES; ``` - 创建表格: ``` sudo mysql -u mailuser -p mailserver < /etc/postfix/mysql_virtual_mailbox_domains.sql sudo mysql -u mailuser -p mailserver < /etc/postfix/mysql_virtual_mailbox_maps.sql sudo mysql -u mailuser -p mailserver < /etc/postfix/mysql_virtual_alias_maps.sql ``` 5. 重启服务 在终端中输入以下命令以重启Postfix和Dovecot: ``` sudo systemctl restart postfix sudo systemctl restart dovecot ``` 完成以上步骤后,您的Ubuntu邮件服务器将已经搭建完成。您可以测试是否正常工作,例如发送和接收一封电子邮件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值