Benchmark entre servidores de e-mails

Teste de desempenho entre os servidores de e-mail Postfix, Exim e Selor.

[ Hits: 11.441 ]

Por: Lucas Priori em 22/05/2015


Arquivos de configuração usados



Postfix (main.cf):

# -------- Global Configuration --------
queue_directory = /var/spool/postfix/
command_directory = /usr/sbin
mail_owner = postfix
default_privs=nobody
default_transport=smtp
alias_maps=hash:/etc/postfix/aliases
alias_database=hash:/etc/postfix/aliases
readme_directory = no
sample_directory = /etc/postfix
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
manpage_directory = /usr/local/man
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
smtpd_banner=$myhostname ESMTP MEU DOMINIO
disable_vrfy_command=yes
home_mailbox=Maildir/
mynetworks=127.0.0.0/8 10.0.0.0/8
message_size_limit = 52428800
default_process_limit = 500
initial_destination_concurrency = 5
default_destination_concurrency_limit = 30
smtpd_error_sleep_time = 0
smtpd_client_connection_count_limit = 500
# --- Global Domain ---
myhostname=localhost
mydomain=localhost
myorigin= $mydomain
#mydestination= $mydomain, $transport_maps
mydestination= $mydomain
# --- MYSQL ---
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_mailbox_domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_uid_maps = static:105
virtual_gid_maps = static:100
#transport_maps = mysql:/etc/postfix/mysql_transport_maps.cf
# -- Quota
#mailbox_size_limit = 51200000
#virtual_mailbox_base = /var/spool/mail
#virtual_mailbox_limit_inbox = yes
#virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
#virtual_mailbox_limit_override = yes
#virtual_mailbox_lock = fcntl
#virtual_maildir_extended = yes
#virtual_create_maildirsize = yes
#virtual_mailbox_limit = 100000000
#virtual_maildir_limit_message = Desculpe, o diretório de correio do usuário estourou sua quota, por favor tente novamente depois.
#virtual_overquota_bounce = no
# --- SASL ---
#smtpd_sasl_auth_enable = yes
#smtpd_sasl_security_options = noanonymous
#broken_sasl_auth_clients = yes
#smtpd_recipient_restrictions =
# permit_sasl_authenticated,
# permit_mynetworks,
# check_relay_domains
# --- MDA ---
#unknown_local_recipient_reject_code = 550
#mailbox_command = /usr/local/libexec/dovecot/deliver
#dovecot_destination_recipient_limit = 1
#virtual_transport = dovecot

Postfix (master.cf):

smtp inet n - n - 300 smtpd
pickup unix n - n 60 1 pickup
cleanup unix n - n - 0 cleanup
qmgr unix n - n 300 1 qmgr
#qmgr unix n - n 300 1 oqmgr
tlsmgr unix - - n 1000? 1 tlsmgr
rewrite unix - - n - - trivial-rewrite
bounce unix - - n - 0 bounce
defer unix - - n - 0 bounce
trace unix - - n - 0 bounce
verify unix - - n - 1 verify
flush unix n - n 1000? 0 flush
proxymap unix - - n - - proxymap
proxywrite unix - - n - 1 proxymap
smtp unix - - n - - smtp
relay unix - - n - - smtp
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq unix n - n - - showq
error unix - - n - - error
retry unix - - n - - error
discard unix - - n - - discard
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - n - - lmtp
anvil unix - - n - 1 anvil
scache unix - - n - 1 scache
dovecot unix - n n - - pipe
flags=DRhu user=mtauser:users argv=/usr/local/libexec/dovecot/deliver -f ${sender} -d ${recipient}

Exim (configure):

domainlist relay_to_domains =
hostlist relay_from_hosts = localhost : 10.0.0.0/8
exim_user = mtauser
exim_group = users
smtp_accept_max = 500
acl_smtp_rcpt = acl_check_rcpt
acl_smtp_data = acl_check_data
daemon_smtp_ports = 25
hide mysql_servers = 127.0.0.1/mail/mtauser/minhasenha
domainlist local_domains = ${lookup mysql{SELECT name AS domain FROM domain WHERE name='${quote_mysql:$domain}'}}
never_users = root
host_lookup = *
rfc1413_hosts = *
rfc1413_query_timeout = 5s
ignore_bounce_errors_after = 2d
timeout_frozen_after = 7d
begin acl
acl_check_rcpt:
accept
acl_check_data:
accept
begin routers
dnslookup:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more
system_aliases:
driver = redirect
allow_fail
allow_defer
data = ${lookup mysql{SELECT rcpt FROM aliases WHERE alias='${quote_mysql:$local_part@$domain}'}}
file_transport = address_file
pipe_transport = address_pipe
userforward:
driver = redirect
check_local_user
file = $home/.forward
no_verify
no_expn
check_ancestor
file_transport = address_file
pipe_transport = address_pipe
reply_transport = address_reply
localuser:
driver = accept
condition = ${lookup mysql{SELECT mail FROM users WHERE mail='${quote_mysql:$local_part@$domain}'}}
# transport = dovecot_delivery
transport = local_delivery
cannot_route_message = Unknown user
begin transports
remote_smtp:
driver = smtp
local_delivery:
driver = appendfile
file = /dev/null
delivery_date_add
envelope_to_add
return_path_add
dovecot_delivery:
driver = pipe
command = /usr/local/libexec/dovecot/deliver -d $local_part@$domain -f $sender_address
message_prefix =
message_suffix =
log_output
delivery_date_add
envelope_to_add
return_path_add
user = mtauser
group = users
temp_errors = 64 : 69 : 70: 71 : 72 : 73 : 74 : 75 : 78
address_pipe:
driver = pipe
return_output
address_file:
driver = appendfile
delivery_date_add
envelope_to_add
return_path_add
address_reply:
driver = autoreply
begin retry
begin rewrite
begin authenticators

Selor (selor.conf):

Port 25
Server_name "localhost"
User "mtauser"
Group "users"
Event.connection "/usr/local/selor/rules_connection"
Event.from "/usr/local/selor/rules_from"
Event.rcpt "/usr/local/selor/rules_rcpt"
Event.data "/usr/local/selor/rules_data"
Module "/usr/local/selor/mod/selor_mysql.so /usr/local/selor/mod/selor_mysql.conf"
Pid_file "/var/run/selor.pid"
Timezone ""
Cp_errors_path "/var/spool/selor/errors"
Temp_path "/var/spool/selor/tmp"
Queue_path "/var/spool/selor"
Report_file "/usr/local/selor/error_report.txt"
Dlocal "/usr/local/libexec/dovecot/deliver -d %l "
Dlocal_max_procs 5
Dlocal_type 0
Postmaster "postmaster@localhost"
Subject_error_msg "[Erro na entrega do email][Mail delivery error]"
Report_from "<MAILER-DAEMON@localhost>"
Auth_relay 1
Timeout 30
Connect_timeout 30
Resolve_all 1
Max_msgs_per_cnx 100
Max_rcpts 100
Max_mail_size 52428800
Max_header_size 51200
Max_attempts 48
Max_error_report 3
Mx_alias_ip 1
Cp_errors 1
Hshow_user 1
Proto_level_check 0
From_level_check 1
Rcpt_level_check 0
Auth_tolerance 3
Incorrect_pass_delay 3
No_mailbox_delay 3
Immed_delivery 0
Queue_time 15
Lavg_queue 20
Lavg_negative 40
Force_alias_seek 0
Seek_df_alias 0
Central_log "/var/log/selor/selor.log"
Sumary_log "/var/log/selor/selor_summary.log"
Warning_log "/var/log/selor/selor_wrn.log"
Site dos projetos:

Mais informações:
Página anterior    

Páginas do artigo
   1. Introdução
   2. O que foi usado
   3. Testes
   4. Arquivos de configuração usados
Outros artigos deste autor

MTA Selor: Servidor de E-mails - Novo Projeto GPL

Dividindo carga de saída de servidor SMTP (MTA Selor)

Servidor de emails com Dovecot e MTA Sceo (projeto brasileiro)

Servidor de e-mail no Linux com MTA Sceo

Leitura recomendada

Relay autenticado para Postfix no Debian

MTA Selor: Servidor de E-mails - Novo Projeto GPL

Configurando o SendMail

Gerando estatísticas do seu servidor de email utilizando o isoqlog

Servidor de email com SMTP, POP, IMAP, quota e MySQL

  
Comentários
[1] Comentário enviado por renatomartins_3 em 22/05/2015 - 19:18h

Já faz muitos anos que eu aguardava por esse dia na verdade só a comprovação
Eu troquei vários Postfix e até o qmail pelo Mtaselor e não me arrependi momento em algum
Parabéns Lucas essa é a comprovação do seu empenho !!!!

quem ainda não tem ou queira testar outro mta fica ai a dica : www.mtaselor.com.br



[2] Comentário enviado por removido em 26/05/2015 - 02:52h

Olá. Tenho uma dúvida: Tem previsão de quando o Selor chega no Debian unstable e no Debian stable?

--
Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden

[3] Comentário enviado por lpriori em 26/05/2015 - 12:14h


[1] Comentário enviado por renatomartins_3 em 22/05/2015 - 19:18h

Já faz muitos anos que eu aguardava por esse dia na verdade só a comprovação
Eu troquei vários Postfix e até o qmail pelo Mtaselor e não me arrependi momento em algum
Parabéns Lucas essa é a comprovação do seu empenho !!!!

quem ainda não tem ou queira testar outro mta fica ai a dica : www.mtaselor.com.br




Valeu Renato. Lembrando que você também já contribuiu bastante com muitas sugestões.
Grande abraço

[4] Comentário enviado por lpriori em 26/05/2015 - 12:18h


[2] Comentário enviado por listeiro_037 em 26/05/2015 - 02:52h

Olá. Tenho uma dúvida: Tem previsão de quando o Selor chega no Debian unstable e no Debian stable?



Fala 'Listeiro'.

Por enquanto eu não gerei pacotes próprios de distribuição mas isso não impede em nada de você instalar o Selor no seu Debian. Você pode puxar o pacote 64 bits pronto e apenas descompactar na raiz do seu servidor ou compilar que é extremamente simples:

Pacote pronto para descompactar: http://www.mtaselor.com.br/downloads/selor/selor_1.4_linux_64bits.tar.bz2
Source: http://www.mtaselor.com.br/downloads/selor/selor_src_1.4.tar.bz2

Basta seguir depois os passos para instalação:
http://www.mtaselor.com.br/?conteudo=7


[5] Comentário enviado por removido em 27/05/2015 - 23:16h


[4] Comentário enviado por lpriori em 26/05/2015 - 12:18h


[2] Comentário enviado por listeiro_037 em 26/05/2015 - 02:52h

Olá. Tenho uma dúvida: Tem previsão de quando o Selor chega no Debian unstable e no Debian stable?



Fala 'Listeiro'.

Por enquanto eu não gerei pacotes próprios de distribuição mas isso não impede em nada de você instalar o Selor no seu Debian. Você pode puxar o pacote 64 bits pronto e apenas descompactar na raiz do seu servidor ou compilar que é extremamente simples:

Pacote pronto para descompactar: http://www.mtaselor.com.br/downloads/selor/selor_1.4_linux_64bits.tar.bz2
Source: http://www.mtaselor.com.br/downloads/selor/selor_src_1.4.tar.bz2

Basta seguir depois os passos para instalação:
http://www.mtaselor.com.br/?conteudo=7



Valeu!

[6] Comentário enviado por facb69 em 10/06/2015 - 09:00h

Administro um Data Center e quando precisei trocar nosso servidor de emails com Sendmail pesquisei e testei muito até me deparar com a solução de Lucas Priori, o Selor.
É um software extremamente simples e brilhante. O aproach de desenvolvimento foi bastante abrangente propiciando maleabilidade e escalabilidade extremamente satisfatórias. Sua configuração é muito simples e qualquer intervenção pode ser feita no decorrer do processo com nenhuma, repito, nenhuma, preocupação de desempenho ou disponibilidade do serviço.
Entre a solução Open Source mais usada, uma solução paga e o MTA Selor não tive dúvidas. Instalei e uso o Selor há meses com grande satisfação tanto minha como desenvolvedor e administrador como de nossos clientes.
Ressalto também o profissionalismo de Lucas Priori, sempre atento ao fórum do site respondendo dúvidas e sugerindo procedimentos.
Uso e recomendo o MTA Selor.
Parabéns Lucas Priori.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts