标签: postfix

Procmail:拒绝“/etc/procmailrcs/default.rc”的特殊权限

我正在尝试设置 postfix、dovecot 和 procmail 以与虚拟用户一起工作。最后,我希望拥有虚拟用户以及添加规则以对传入规则进行排序的可能性。最后,我需要 procmail(对吧?)。

当我向我的服务器发送电子邮件时,我没有在我的 Maildir 中收到它,并在 mail.log 中看到:

Jun 17 21:01:03 cs postfix/smtpd[24811]: connect from dub0-omc2-s13.dub0.hotmail.com[157.55.1.152]
Jun 17 21:01:03 cs postfix/smtpd[24811]: D8C9F44D88: client=dub0-omc2-s13.dub0.hotmail.com[157.55.1.152]
Jun 17 21:01:03 cs postfix/cleanup[24816]: D8C9F44D88: message-id=<DUB115-W85D8D79486AEC1D4346693C0830@phx.gbl>
Jun 17 21:01:04 cs postfix/qmgr[24806]: D8C9F44D88: from=<my-test-email>, size=1617, nrcpt=1 (queue active)
Jun 17 21:01:04 cs procmail[24818]: Denying special privileges for "/etc/procmailrcs/default.rc"
Jun 17 21:01:04 cs postfix/smtpd[24811]: disconnect from dub0-omc2-s13.dub0.hotmail.com[157.55.1.152]
Jun 17 21:01:04 cs postfix/pipe[24817]: D8C9F44D88: to=<my-virtual-email>, relay=virtualprocmail, delay=0.18, delays=0.15/0/0/0.02, dsn=2.0.0, status=sent (delivered via virtualprocmail service)
Jun 17 …
Run Code Online (Sandbox Code Playgroud)

ubuntu permissions email postfix procmail

5
推荐指数
1
解决办法
1644
查看次数

Postfix、Amavis-new、ClamAV:权限被拒绝。错误

/var/log/maillog 中的错误行

Sep 22 12:08:20 sun amavis[4493]: (04493-09) (!)run_av (ClamAV-clamd) FAILED - unexpected , output="/var/spool/amavisd/tmp/amavis-20130922T052321-04493-crApLkq5/parts: lstat() failed: Permission denied. ERROR\n"
Sep 22 12:08:20 sun amavis[4493]: (04493-09) (!)ClamAV-clamd av-scanner FAILED: CODE(0x29185c0) unexpected , output="/var/spool/amavisd/tmp/amavis-20130922T052321-04493-crApLkq5/parts: lstat() failed: Permission denied. ERROR\n" at (eval 113) line 897.
Sep 22 12:08:20 sun amavis[4493]: (04493-09) (!)WARN: all primary virus scanners failed, considering backups
Run Code Online (Sandbox Code Playgroud)

服务器用户和组

# cat /etc/passwd | grep "amavis\|clamav"
clam:x:495:493:Clam Anti Virus Checker:/var/lib/clamav:/sbin/nologin
amavis:x:494:492:User for amavisd-new:/var/spool/amavisd:/sbin/nologin
# id amavis
uid=494(amavis) gid=492(amavis) groups=492(amavis),493(clam)
# id …
Run Code Online (Sandbox Code Playgroud)

security centos postfix

5
推荐指数
1
解决办法
2万
查看次数

我应该如何处理 postfix 中的 smtp_relay_restrictions?

我刚刚用 postfix 和 dovecot 设置了一个邮件服务器,现在我在用evolution.

例如,当我向 发送电子邮件时to@gmail.com,出现错误:

NOQUEUE: reject: RCPT from unknown[MY_IP_ADDRESS]: 450 4.3.2 <to@gmail.com>: 
Recipient address rejected: Try again later; from=<contact@XX> 
to=<dest@gmail.com> proto=ESMTP helo=<[IP_ADDRESS]>
Run Code Online (Sandbox Code Playgroud)

我用谷歌搜索了一下,问题似乎是:

smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
Run Code Online (Sandbox Code Playgroud)

我可以将我当前的 IP 地址添加到mynetworks,并且它起作用了。但是如果我从另一个位置使用它呢?所以我需要它在任何地方工作。

然后我尝试设置smtpd_relay_restrictions为空值,并smtpd抱怨

 postfix/smtpd[16217]: fatal: in parameter smtpd_relay_restrictions or 
 smtpd_recipient_restrictions, specify at least one working instance of: 
 reject_unauth_destination, defer_unauth_destination, reject, defer, defer_if_permit or check_relay_domains
Run Code Online (Sandbox Code Playgroud)

我现在真的不知道该怎么办,如果我添加0.0.0.0/0或类似的东西mynetworks会不会有问题?(也许会成为垃圾邮件服务器?)

PS 我在 Ubuntu 14.04 上运行 postfix 2.11

后置 -n …

postfix

5
推荐指数
0
解决办法
1万
查看次数

CentOS 7 中 dovecot 和 postfix 的 ACL/MAC 权限

我使用本教程设置PostfixDovecot一个在CentOS 7Web服务器。但是,当我尝试使用 发送测试电子邮件时sudo echo "TEST" | mail -s "testmail" newuser@localhost && sudo tail -f /var/log/maillog,我收到一条错误消息,指出 Dovecot 无权创建用于存储电子邮件的目录。我如何设置权限DovecotPostfix使其能够正常工作CentOS 7

我是新手linux。我知道adduserchmodchownoctal permissions,等命令,但我不知道它们是如何适用于这个特定的要求,我不想被不理解尝试创建无效的东西。

这是错误消息中最相关的部分:

Error: user import: Initialization failed: Namespace '':  
mkdir(/home/import/Maildir) failed:  
Permission denied (euid=1001(import) egid=1001(import)  
missing +w perm: /home/import, UNIX perms appear ok (ACL/MAC wrong?))
Run Code Online (Sandbox Code Playgroud)

这是完整的错误消息:

Dec 30 19:03:42 mydomain postfix/pickup[8093]: A22E78221C13: uid=1000 from=<anotherusername>
Dec …
Run Code Online (Sandbox Code Playgroud)

email centos postfix dovecot

5
推荐指数
1
解决办法
4032
查看次数

后缀虚拟别名域与正则表达式虚拟别名映射匹配

使用 Postfix (2.11.3) 我想将所有邮件重定向到外部地址。

/etc/postfix/main.cf

virtual_alias_maps = regexp:/etc/postfix/rewrite
Run Code Online (Sandbox Code Playgroud)

/etc/postfix/rewrite

/^.+$/ hijacked@example.com
Run Code Online (Sandbox Code Playgroud)

向 发送邮件destination@example.net,出现以下错误:

[...] to=<hijacked@example.com>, orig_to=<destination@example.net> [...] status=bounced (User unknown in virtual alias table)
Run Code Online (Sandbox Code Playgroud)

文档说:

有效的收件人地址与 virtual_alias_maps 参数一起列出。Postfix SMTP 服务器通过“虚拟别名表中的用户未知”拒绝无效收件人。

事实证明,该错误与验证虚拟别名域有关:virtual_alias_domains默认情况下是$virtual_alias_maps,将其设置为其他任何内容(设置为不匹配的域或什至将其留空)可以解决问题。

在答案中找到的另一个解决方案是以另一种形式给出正则表达式:

/^.+@.+$/ hijacked@example.com
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,当使用正则表达式表进行虚拟别名时,别名域的验证如何工作?为什么设置virtual_alias_domains为其他任何内容都可以解决问题?上述两种地址映射方式的等效模式有何不同?

的输出postconf -n是:

config_directory = /etc/postfix
inet_interfaces = loopback-only
inet_protocols = ipv4
mydestination =
myhostname = example.org
myorigin = $myhostname
virtual_alias_domains =
virtual_alias_maps = regexp:/etc/postfix/rewrite
Run Code Online (Sandbox Code Playgroud)

postfix

5
推荐指数
1
解决办法
9073
查看次数

对于不接收邮件且没有 FQDN 的 smtp 服务器,正确的 helo 是什么?

helo我的 SMTP 服务器合法且正确的是什么?

  • 仅发送电子邮件。
  • 在 NAT 后面,没有打开入站端口。
  • SMTP 服务器没有 FQDN。
  • 为 2 个不同的域发送邮件

我们是一家拥有多个分支机构的小型企业。我们有 2 个不同的网站,其中包含电子邮件地址,例如:

  • 产品1.com:sales@product1.com
  • 其他产品.biz : sales@otherproduct.biz

我们的 SMTP 服务器将为这两个域发送电子邮件。

RFC2821 第 4.1.1.1 节

...并且没有可用的反向映射记录),客户端应该发送一个地址文字(参见第 4.1.3 节),可选地后跟有助于识别客户端系统的信息。

4.1.3 地址文字**

...为了绕过这个障碍,允许使用地址的特殊文字形式作为域名的替代。对于 IPv4 地址,此形式使用四个小十进制整数,以点分隔并用方括号括起来,例如 [123.255.37.2] ...

因此我认为我的helo名字应该是:

[1.2.3.4] company name INC city, state
Run Code Online (Sandbox Code Playgroud)

后缀配置

smtp_helo_name = [1.2.3.4] company name INC city, state
Run Code Online (Sandbox Code Playgroud)

使用这个我仍然收到以下错误:

... status=bounced (host mx1c38.carrierzone.com[66.175.58.41] refused to talk to me: 501 5.0.0 Invalid domain name

... status=bounced (host mta5.am0.yahoodns.net[98.138.112.38] refused to talk to me: …
Run Code Online (Sandbox Code Playgroud)

smtp postfix

5
推荐指数
1
解决办法
5367
查看次数

创建用户时将用户邮件目录更改为自定义位置

我使用 Ubuntu 14.04.3 LTS 。如何更改邮箱 / 的home/user/Maildir/位置/Location/Mail/
我不必为该用户创建主目录。我对文件
做了一些更改/etc/default/useradd/etc/login.defs但是当我创建新用户时没有反映(邮件目录在 /home/user/ 目录中创建)。

所以我需要创建一个用户,其邮件目录 /Location/Mail/默认指向该用户。

我也用postfix。如果我可以更改 postfix 中的默认用户邮件目录,那对我来说也可以。

linux ubuntu useradd postfix

5
推荐指数
1
解决办法
1万
查看次数

使用带有 postfix 2.6.6 和 centOS 6.4 的 mailx 发送 HTML

我正在尝试从我们的 CentOS 服务器向用户发送 HTML 电子邮件。从长远来看,我将构建一个 COBOL 程序,该程序运行命令将报告发送给用户。

这里有一些细节。

  • CentOS 6.4
  • MAU : Mailx
  • MTA:后缀 2.6.6
  • Postfix 正在通过交换服务器运行中继。

至于我试过运行什么命令。我今天看到的最多的是以下。

$ mailx -a 'Content-Type: text/html' -s "Command Line Test" andyv@example.com < ./bodytext.html
Run Code Online (Sandbox Code Playgroud)

运行显示的命令后,我收到一条错误消息,提示“内容类型:文本/html:没有这样的文件或目录”。我很确定在某个更新之后,他们不再允许 -a 作为内容类型指定的标志。

我还尝试将“Content-Type: text/html”作为第一行添加到实际的 bodytext.html 文件中。我对我可以做些什么来发送 HTML 电子邮件有点不知所措。我发现的一些消息来源说 mailx 和 postfix 无法正确发送 HTML 电子邮件。希望事实并非如此,但如果确实如此,我想知道您对其他 MAU 和 MTA 技术有何看法?

email centos postfix mailx

5
推荐指数
1
解决办法
1万
查看次数

邮件服务器发送/接收问题

我已经使用 Postfix、Dovecot 作为我的 SASL 和 Rainloop 作为我的 WebClient 设置了一个邮件服务器。我正在使用 MySQL(在询问我的最后一个问题之后)作为我的用户帐户和密码,并且它工作正常,但是我面临两个问题。【第二个解决了】

  1. 我无法接收电子邮件!(我只需要员工通过电子邮件联系,他们目前无法收到任何电子邮件,当我从一名员工向另一名员工发送电子邮件时,我找不到显示失败迹象的日志文件,我真的不知道是什么可能是无法接收的问题。)

  2. [已解决] 用户可以通过 ThunderBird 登录,因为它会要求确认 SMTP 和 IMAP 的证书。即当我登录时,我应该接受证书,而第一次发送邮件时,我应该接受另一个证书,然后它就会起作用。但是 Outlook 无法登录,因为它只要求一次证书和 IMAP。

这是我的配置文件:

/etc/postfix/main.cf

myhostname = mail.domain.tld
mydomain = domain.tld
myorigin = $mydomain
inet_interfaces = all
inet_protocols = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#home_mailbox = Maildir/

#relayhost =

#mynetworks = 127.0.0.0/8, 172.16.67.68, [::1]/128


smtpd_tls_cert_file=/etc/ssl/certs/mailcert.pem
smtpd_tls_key_file=/etc/ssl/private/mail.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_tls_security_level=may
#smtpd_tls_protocols = !SSLv2, !SSLv3
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes …
Run Code Online (Sandbox Code Playgroud)

email centos imap thunderbird postfix

5
推荐指数
0
解决办法
663
查看次数

是否可以在本地向root用户发送电子邮件

我在我的 Debian VPS 中设置了一个邮件系统。除了我无法向 user 发送电子邮件外,一切都很顺利root

有一种解决方法可以指定/etc/aliases类似

root: <some_other_user>

然后所有发送到的电子邮件root@<fqdn>都会进入<some_other_user>@<fqdn>邮箱。

从安全的角度来看,它甚至更好,但我想知道是否有办法向用户发送电子邮件root

所以是的,在技术上可以使用 Postfix 吗?如果是这样,我该怎么做?

更新:

这是postfix.service日志:

Apr 26 22:18:25 <hostname><fqdn> postfix/qmgr[2375]: 3905421760: from=<ddnomad@<fqdn>>, size=631, nrcpt=1 (queue active)
Apr 26 22:18:26 <hostname><fqdn> postfix/local[2429]: 3905421760: to=<mailuser@<fqdn>>, orig_to=<root@<fqdn>>, relay=local, delay=1.3, delays=0.21/0.01/0/1, dsn=2.0.0, status=sent (delivered to command: procmail -a "$EXTENSION")
Run Code Online (Sandbox Code Playgroud)

据我了解,这意味着这封信已成功发送。但它从未被送到root的邮箱。

debian email postfix

5
推荐指数
1
解决办法
1415
查看次数