限制与 Postfix 服务器的并发连接

Jay*_*Jay 5 postfix centos concurrency smtpd

我在限制从同一客户端到 Postfix 服务器的并发连接数时遇到问题。限制来自相同或不同客户端的最大并发进程数很容易完成。

main.cf以下是我为此使用的两个参数:

default_process_limit = 50
smtpd_client_connection_count_limit = 25
Run Code Online (Sandbox Code Playgroud)

测试时,我从同一客户端运行 100 个并发连接(线程),但它限制为 50 个 smtpd 进程,而不是 25 个。以下是我计算smtpd服务器上进程的方式:

ps -C smtpd | wc -l
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么会发生这种情况?

cst*_*mas 3

如果您想更改 smtpd 运行的最大数量,您应该在/etc/postfix/master.cf. 您更改-50第 7 列,然后使用postfix restart(或发行版特定替代品)重新启动 postfix。

# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       -       -       -       smtpd
Run Code Online (Sandbox Code Playgroud)

将此更改为

smtp      inet  n       -       -       -       50      smtpd
Run Code Online (Sandbox Code Playgroud)

smtpd_client_connection_count_limit限制 smtp 客户端可以建立的连接数。

它没有说明默认情况下将运行多少个 smtpd 服务器。(smtpd_client_connection_count_limit 默认情况下是默认进程限制的一半。)