ZhangHuangbin 写道:
rain6966 写道:

2.但我又發現幾個問題 , 想再請 張大 幫忙.
(A)從 /郵件列表/ 刪除某一用戶會有 “錯誤: 303 See Other” 訊息.(詳附圖)

应是 iRedAdmin-Pro 的 bug,稍后给你回答。

经过测试,发现我这里不存在这样的问题(没有出现 303 See Other 信息)。

ZhangHuangbin 写道:
rain6966 写道:

(B)從 /用戶/ 刪除zz@aa.com其原隸屬pe@aa.com郵件列表裡 .
今再建立同一名稱帳號zz@aa.com , 其會自動加入pe@aa.com的群組裡 .

这是由于 LDAP 的邮件列表的实现方式决定的。

如果用户 zz@ 属于邮件列表 pe@,则用户 zz@ 的 LDAP 属性里会增加一个:memberOfGroup=pe@xxx。理想情况下,在 iRedAdmin-Pro 里删除列表 pe@ 时,应该同时删除 zz@ 的 memberOfGroup=pe@xx 属性。所以这可能是 iRedAdmin-Pro 的另一个 bug。

经过测试,这个问题在我这里也不存在。

在 amavisd.conf 里有这样的设置:

$policy_bank{'MYUSERS'} = {
    ...
    # don't perform spam/virus/header check.                                       
    #bypass_spam_checks_maps => [1],                                               
    #bypass_virus_checks_maps => [1],                                              
    #bypass_header_checks_maps => [1],                                             
                                                                                   
    # allow sending any file names and types                                       
    bypass_banned_checks_maps => [1],
    ...
}

将对应的 bypass_ 设置去掉注释并重启 Amavisd 服务即可。

yaoming 写道:

1.如果我向某个用户发送一封邮件,但是后来发现发错了。这时我作为系统管理员应该怎么删除该邮件呢?

在用户的邮箱目录里查找对应的邮件标题。例如用 grep 命令过滤。

yaoming 写道:

2.我发现root的自带账户下www下有很多的系统日志的邮件,这些邮件一个一个的删除太慢了。我怎样才能一次全部删除?

同上。

yaoming 写道:

3.如果我要清空系统中所有账户的邮件时,是不是只需删除/var/vmail下的所有文件夹就行了?

删除 /var/vmail/vmail1/ 目录下的所有子目录。

rain6966 写道:

A).結果不行
Sending mails via SMTP over TLS/SSL 打勾 ,詳如附圖

iRedMail 使用的是 STARTTLS,不是 SSL,所以在“外寄伺服器”里勾选 SSL 会导致错误。我个人不使用 Outlook,不确定 Outlook 该如何设置让它使用 STARTTLS。

rain6966 写道:

May 17 17:19:04 mail1 qpidd[1501]: 2012-05-17 17:19:04 notice SSL plugin not enabled, you must set --ssl-cert-db to enable it. #這是否有關係?

这里的 qpidd 是什么?iRedMail 没有用到这个 daemon/software。:(

rain6966 写道:

==>maillog

May 17 19:36:17 mail1 postfix/smtpd[2322]: NOQUEUE: reject: RCPT from web.aa.com[203.69.xx.xx]: 553 5.7.1 <dd@aa.com>: Sender address rejected: not owned by user dd@aa.com; from=<dd@aa.com> to=<dd@aa.com> proto=ESMTP helo=<tlsb>

如日志所言,在 Outlook 里用于 smtp auth 的用户名和你在 mail header 里指定的 From: 地址不一致。
iRedMail 默认要求这两者必须一致,所以会报这个错误。可以通过去掉 Postfix 的 smtpd_sender_restrictions 设置里的 reject_sender_login_mismatch 来修正这个问题。但要注意,这样有可能导致同一个域内的用户冒充其它用户发送邮件(由于大多数用户只看 From: 里的地址,而不是实际 smtp auth 的用户名,所以容易认为实际寄信的人就是 From: 里的地址)。

rain6966 写道:

==> Dovecot.log

May 17 19:37:54 pop3-login: Info: Login: user=<dd@aa.com>, method=PLAIN, rip=203.69.xx.xx, lip=10.10.xx.xx, mpid=2346, TLS
...
May 17 19:39:13 imap-login: Info: Login: user=<dd@aa.com>, method=PLAIN, rip=127.0.0.1, lip=127.0.0.1, mpid=2350, secured

第一行日志里显示是 TLS,表示用户是通过 IMAPS (IMAP over STARTTLS)进行验证的,这个OK。
第二行日志显示 PLAIN,也是OK的。因为 Dovecot 默认是认为从本地 127.0.0.1 (lip=127.0.0.1,lip -> Local IP)发起的链接是安全的(secured)。即使不是使用 STARTTLS 也会显示为 secured。


rain6966 写道:

B).
Sending mails via SMTP
Sending mails via SMTP over TLS/SSL
兩者皆打勾 , 可收發 ,但是否為無意義 ?

按照您要求的必须都用 STARTTLS,所以这里 "Sending mails via SMTP" 应该不勾选,只勾选 "Sending mails via SMTP over TLS/SSL"。

6966 写道:

系統log如下:

==> maillog
==> dovecot.log

这两段看不出什么信息。抱歉。

你说的都正确。 smile

6

(3 篇回复,发表在 iRedAdmin-Pro 技术支持)

Fail2ban 的主配置文件是 /etc/fail2ban/jail.local。其它信息建议参考:http://www.fail2ban.org/

Sorry,刚刚重新测试了强制客户端使用 STARTTLS 进行 SMTP AUTH,以下设置是可行的:

1) Postfix: 强制用户使用 STARTTLS。

# File: /etc/postfix/main.cf

smtpd_tls_security_level = encrypt

2) 允许 Amavisd-new re-injection 不使用 STARTTLS:

# File: /etc/postfix/master.cf

127.0.0.1:10025 inet n  -   -   -   -  smtpd
    -o smtpd_tls_security_level=none
    ...

重启 Postfix 服务后即可。

同时,需要修改 Roundcube 的配置文件 config/main.inc.php:

$rcmail_config['smtp_server'] = "tls://127.0.0.1";  // 原先没有 tls://
$rcmail_config['smtp_auth_type'] = "LOGIN";    // 原先为空,由 Roundcube 自行选择

麻烦您测试后在这里反馈一下,都没问题的话我打算将它放在下一版本的 iRedMail 里,这样默认安装的 iRedMail 就更加安全了。

rain6966 写道:

2.但我又發現幾個問題 , 想再請 張大 幫忙.
(A)從 /郵件列表/ 刪除某一用戶會有 “錯誤: 303 See Other” 訊息.(詳附圖)

应是 iRedAdmin-Pro 的 bug,稍后给你回答。

rain6966 写道:

(B)從 /用戶/ 刪除zz@aa.com其原隸屬pe@aa.com郵件列表裡 .
今再建立同一名稱帳號zz@aa.com , 其會自動加入pe@aa.com的群組裡 .

这是由于 LDAP 的邮件列表的实现方式决定的。

如果用户 zz@ 属于邮件列表 pe@,则用户 zz@ 的 LDAP 属性里会增加一个:memberOfGroup=pe@xxx。理想情况下,在 iRedAdmin-Pro 里删除列表 pe@ 时,应该同时删除 zz@ 的 memberOfGroup=pe@xx 属性。所以这可能是 iRedAdmin-Pro 的另一个 bug。

rain6966 写道:

(C)

已更新 wiki 文档,加入了 file owner/permission 方面的修正。多谢反馈。:)

rain6966 写道:

Iptables把不用的port關掉 ,強迫client user使用 starttls

# http/https, smtp-starttls 587 , pop3s 995, imaps 933
-A INPUT -p tcp -m multiport --dport 80,443,587,995,993 -j ACCEPT

你将 25 端口去掉了?25是必需的,因为它更主要作用的是用于 MTA server 之间的通讯,其次才是用户使用这个端口做 smtp authentication。

Postfix 是提供了强制 smtp auth 使用 STARTTLS 的,但之前已经说明,由于有  Amavisd-new 这个组件,它会将扫描 (spam, virus scanning) 过的邮件 re-inject 回 Postfix,这个 re-inject 的处理没法强制使用 STARTTLS,所以端口 25 用于 smtp auth 时只能允许 plain text。

软件包冲突,应该是你的系统已经安装了  openldap 的旧版本。

建议先通过 yum update 升级系统,再安装 iRedMail。

如果只有一台机器会这样,但其它机器不会,也许应该检查一下机器是否中毒了?

执行以下命令以确保 iredapd 会在开机时自动启动:

# chkconfig --level 345 iredapd on

至于修改后出现错误,麻烦贴一下出错的日志信息,便于分析。

ZhangHuangbin 写道:

由于 virtual_alias_maps 里指定的 lookup 文件(/etc/postfix/ldap/sender_login_maps.cf)指明了要有 "enabledService=smtp",所以邮件列表里的成员(邮件用户)必须有 enabledService=smtp 这个 LDAP attribute/value。(您的 pop3 仍可以不勾选)

这个问题已经修正,代码修改记录:
https://bitbucket.org/zhb/iredmail/chan … 3268588073

修正步骤已经在这里详细描述:
http://www.iredmail.org/wiki/index.php? … ice.3Dsmtp

感谢您的反馈。:)

rain6966 写道:

(A). 以下為postfix virtual_alias_maps的資料

无误。

rain6966 写道:

(B).最後檢查及他設定 , 發現問題的所在,詳下圖:

在 "用戶屬性"下的"進階設定"中: (圖我不懂得傳上去?!)
因我想使用TLS/SSL來收發信件 , 故一般的smtp/pop3未打勾(綠色)
只要把綠色的地方打勾, pe@aa.com的成員pe1@aa.com及pe2@aa.com及bcc密送的admin@aa.com皆可收到信.

It makes sense.

由于 virtual_alias_maps 里指定的 lookup 文件(/etc/postfix/ldap/sender_login_maps.cf)指明了要有 "enabledService=smtp",所以邮件列表里的成员(邮件用户)必须有 enabledService=smtp 这个 LDAP attribute/value。(您的 pop3 仍可以不勾选)

一般都是假设 LDAP mail user 具有默认的所有 enabledService 值,所以一开始难以判断您的问题根源所在。

rain6966 写道:

(C).當我只使用TLS/SSL來收發信件,要如何設定,網站上有文件可參考?

只用 STARTTLS 来收取邮件很简单。在 dovecot.conf 里设置以下参数:

dovecot.conf 写道:

disable_plaintext_auth=yes
ssl=required     # 必须是 required。ssl=yes 表示可以是 plain text,也可以是 STARTTLS

Postfix 里的设置不需要改动,只要使用 submission 587 (STARTTLS,而不是 SSL) 即可。

P.S.  smtps 已经被弃用,建议的方式是 submission 587(即 STARTTLS)。

貌似是局域网里的机器?正常来说是不会使用那么多80端口的。

yaoming 写道:

主要是局域网所用,上面的方法也是我从网上抄来的,不知道有谁做过这方面的实验

RHEL/CentOS 的倒是很简单,将需要的 RPM 下载好,再禁止 iredmail 自动刷新 yum 仓库即可。

yaoming 写道:

如果是局域网用是不是就不需要Adavisd+ClamAV+SpamAssassin这需东西了,就连DKIM 也可以不要了。

是的。

但是,联网装好后再断网会不会简单点?

louie 写道:

我忘记mysql root 密码了,不知道对邮件服务器有什么影响?

没有影响。iRedMail 只在 0.8.0 版本里会将 MySQL 的 root 的用户名/密码记录在 /var/vmail/backup/backup_*.sh 的备份脚本里。

louie 写道:

能不能找回root密码?
用网上破解root密码的方法会不会对邮件域带来影响?

当然可以,没有影响。

你列的方法基本可行,实际试试便知。

yaoming 写道:

如果我到一个不能连互联网的环境下部署iRedmail,不就什么也干不了了

我比较好奇不能联网的环境部署邮件系统主要用来做什么?

18

(3 篇回复,发表在 iRedAdmin-Pro 技术支持)

Fail2ban 默认记录在 /var/log/messages 文件里。也可以直接通过 iptables 命令察看。例如: iptables -L -n。

麻烦您发贴时将必要的信息给齐,有了足够信息就能快速回复。比如,日志文件的位置和文件名在不同的Linux/BSD发行版里是不同的。

确实是 eatingzhang 说的原因。

下载离线包和使用 iRedMail 安装从网络下载RPM包是一样的带宽占用,离线包稍微方便一些,省去了安装过程中的等待。
以前的  iRedOS 就类似你说的离线包,但维护成本比较高,暂时放弃了。

rain6966 写道:

"郵件列表" 群組成員(pe1@aa.com 和pe2@aa.com)無法收到信件,

这个需要麻烦您贴一下命令 "postconf -n" 的输出,可能在 Postfix 的 virtual_alias_maps 参数里值的先后顺序有误。

rain6966 写道:

==>Gmail to pe群組
...
<pe@aa.com>: Recipient address rejected: Permission denied Access policy: domain. (state 13).

这个是正确的,因为你通过 iRedAdmin-Pro 将 pe@ 这个列表设置为只有同一个域内的用户才能发送邮件 (access policy: domain)。

如果要允许不在同一个域的用户也能发送给 pe@,请在 iRedAdmin-Pro 里编辑 pe@ 的属性,将权限改为 Unrestricted(无限制)。如图所示:Who can send email to this list,应该设置为  Unrestricted。

http://www.iredmail.org/images/iredadmin/maillist_profile_general.png

rain6966 写道:

是否為本人對此郵件伺服器有錯誤的觀念?而做不正當的設定?或是其他安裝設定問題?請不吝指正。

请先详细描述自己希望实现的功能,这样便于大家帮忙分析。

rain6966 写道:

經發送郵件測試,有如下問題:
1.同網域内的User寄給郵件列表(如pe@aa.com),
"郵件列表" 群組成員(pe1@aa.com 和pe2@aa.com)無法收到信件,
  但bcc 及catch-all的帳戶則有收到信件.
2.從xx@bb.com 網域寄給pe@aa.com 則被退件。

是否有相关的 log?主要是 Postfix (/var/log/maillog) 和 Dovecot (/var/log/dovecot.log)。

22

(0 篇回复,发表在 新闻和公告)

大家好,

iRedMail-0.8.0 稳定版正式发布。

自 iRedMail-0.7.4 以来的主要改动:
  • 增加对3个新发行版的支持:

    • OpenBSD 5.1。后面有关于 OpenBSD 系统的一些额外说明。

    • Gentoo Linux。支持最近的一个官方发布版本(或者 daily build),以及最新的 portage。

    • Linux Mint 12

  • 以下旧版本已经不再支持:

    • Debian 5 (Lenny)

    • Ubuntu 8.x, 9.x, 10.10, 11.04. 注意:下一版本将不再支持 Ubuntu 10.04, 11.10,请选择 12.04 LTS。

    • openSUSE: 11.x

    • FreeBSD: 7.x

  • PostgreSQL backend 现在可以运行在 RHEL/CentOS/Scientific Linux 6.x, Ubuntu 11.10, 12.04 (LTS), FreeBSD, OpenBSD. iReddAdmin-Pro for PostgreSQL 也已发布,可以在这里购买:http://www.iredmail.com/admin_buy.html 它实现了最新的 iRedAdmin-Pro-MySQL, v1.4.0 里除了 Policyd 整合之外的所有功能。

  • 安装完成后会自动添加备份脚本到 cron 任务里,用于备份 OpenLDAP 和 MySQL。默认的备份目录是 /var/vmail/backup/

  • 出于安全考虑,强制所有客户端使用基于 STARTTLS 的 IMAPS 和 POPS 收取邮件。要恢复允许明文传输密码,请在 dovecot.conf 里设置 disable_plaintext_auth=no 和 ssl=yes

  • 默认启用 Policyd greylist opt-in 的功能。可以选择性地设置对某些域、某些用户不启用 greylisting 功能。可以在 iRedAdmin-Pro 里直接管理这个功能。

  • 对于使用 Dovecot-2 的系统默认添加共享邮件夹的设置,但默认是禁用的。

同时也修正了一些 bug:

  • 在 FreeBSD 平台的安装将不会在安装 Postfix 时中断。这个 BUG 是由于 iRedMail 设置了一个全局变量 DEBUG='NO',但 Postfix 的 Makefile 也会调用这个变量,导致出错。该问题存在一年之久。

  • 修正了轮询 Dovecot 日志的错误 postrotate 命令。感谢 raffayellow@gmail 的反馈。

  • 修正了 Dovecot 的两个配置文件的错误文件所有者。used_quota.conf, share-folder.conf。感谢 Martin Kuchar 的反馈。

  • Roundcube 里的登陆用户名默认将是大小写不敏感 (login_lc).

一些软件包也更新到了最新的稳定版:

  • Roundcube -> 0.7.2

  • MySQL -> 5.5 (FreeBSD)

  • Dovecot -> 2.0 (FreeBSD)

  • iRedAdmin -> 0.1.7. 支持 PostgreSQL.

  • iRedAPD -> 1.3.7. 支持 PostgreSQL,并且为 LDAP backend 提供了一个新的插件:ldap_expired_password。用于强制用户在 90 天内重置密码。

关于 OpenBSD 系统的额外说明
  • 安装文档在这里:http://www.iredmail.com/install_iredmai … enbsd.html

  • OpenBSD 使用自带的 spamd(8) 实现 greylisting, whitelisting, blacklisting,而不是 Policyd. 遗憾的是,iRedAdmin-Pro 目前不支持管理 spamd(8) 的数据,所以请使用命令行的 spamdb 命令来管理。

最后,OpenBSD 是我最喜欢的操作系统,并且在 2007 年底刚开始 iRedMail 项目是就是为 OpenBSD 设计的。很高兴我们又回到了 OpenBSD 平台。最重要的是,我终于为自己喜欢的操作系统做了点事。就像你为自己心爱的女孩做了点事一样。:)

Dovecot-2 的配置参数和 1.x 版本有较大改变。请参考 iRedMail 的 dovecot-2 配置模版:
https://bitbucket.org/zhb/iredmail/src/ … ecot2.conf

这个是已知问题,在即将发布的 iRedMail-0.8.0 稳定版里已经修正了这个问题。
问题根源在于 iRedMail 设置了一个全局的 DEBUG 变量,而恰好 Postfix 的 Makefile 里也调用 DEBUG 参数。因此导致问题。

此问题存在了1年多时间,终于被修正。

应该是 Amavisd 保持的 mysql 连接超时了。查一下日志里是否有重新连接 mysql 的信息。