Sympa e Postfix+MySQL

Migrei recentemente um servidor linux Ubuntu de 20.04 para 22.04 (2 versões LTS). Tenho sempre muita apreensão de fazer este tipo de migrações, devido ao processo de teste das mesmas não ser o que era e conduzir invariavelmente a problemas, e às vezes a resultados catastróficos. Foi o caso desta vez. O módulo pure-ftp-mysql deixou de funcionar e tive de o substituir pelo wsftpd, o qual é rápido e eficiente mas uma seca para configurar. Felizmente este tutorial ajudou-me imenso e o problema ficou resolvido. Ainda pensei no proftpd-mysql mas na migração anterior este tinha deixado de funcionar e eu não queria perder muito tempo. Mas o pior estava ainda para vir. O módulo de listas de correio electrónico Mailman 2.1.29 que eu estava a operar para uma organização educacional sem fins lucrativos deixou de trabalhar, com o erro:

output: File "/usr/lib/mailman/bin/postfix-to-mailman.py", line 162
except SystemExit, argument: ^^^^^^^^^^^^^^^^^^^^ SyntaxError:
multiple exception types must be parenthesized

Após uma pesquisa descobri que o mailman 2.1.29 tinha sido "abandonado" e não era mais suportado. Típico da fuga para a frente destes artistas de circo. Tentei instalar o mailman3 e usar este guia para migrar. Foi pior a emenda que o soneto, tive de desistir e desinstalar. Nem o apache configurava. Considerei outras alternativas mas a única que me pareceu viável foi o Sympa. Estava disponível nos repositórios do sistema (6.2.66) e instalei-o com o comando:
# sudo apt install sympa

sympa

A instalação foi imediatamente bem sucedida e apenas tive de fornecer uma senha para a base de dados mysql criada pelo sympa a qual designaremos doravente por 123456

Então estava na hora de editar o ficheiro /etc/sympa/sympa/sympa.conf.
Mudei o domain para mydomain.org, pus o meu endereço de email myemail@mydomain.org como listmaster e substitui db_passwd por 123456. Finalmente mudei wwwsympa_url para https://mydomain.org/wws e re-iniciei o sympa com:
# sudo service sympa restart
e o apache com:
# sudo service apache2 restart

Arranquei a interface de navegador do sympa e criei uma lista confidencial chamada test. Como eu já era o listmaster esta foi automaticamente activada. Achei a interface bastante fácil de utilizar e com capacidades bastante extensas comparando com o mailman2.
O próximo passo era por a lista a trabalhar integrando o sympa com o postfix+sql. Aqui começaram os problemas. usei este guia, percibi logo que estava desactualizadíssimo, e passei à frente a este não direccionado à utilização com o potstfix+mysql e desisti, decidindo usar a minha experiência anterior com o mailman2 e postfix+mysql. Isso fez-me entrar em 2 dias de feitiçaria e adivinhação. Depois de os dados na base de dados estarem corectos e o sympa já estar a tentar emitir os correios para a lista ainda me apercia o erro:

The following address is not a known mailing list:
sympa.domain.org@domain.org

Vamos rever o que fiz para corrigir este comportamento:

1. Editar a base de dados do postfix

1.1. Na tabela transport inserir:
domain sympa.mydomain.org
transport sympa:

1.2. Na tabela forwardings inserir:

source test@mydomain.org
destination test@sympa@mydomain.org

source test-request@mydomain.org
destination test-request@sympa@mydomain.org

source test-editor@mydomain.org
destination test-editor@sympa@mydomain.org

e com isso terminaram as modificações à base de dados do postfix

2. Ficheiros de configuração do Postfix 3.6.4

2.1. Editar /etc/postfix/main.cf:

sympa_destination_recipient_limit = 1
sympabounce_destination_recipient_limit = 1

2.1. Editar /etc/postfix/master.cf (e aqui estava o busílis da questão):

sympa unix - n n - - pipe
flags=hqRu null_sender= user=sympa argv=/usr/lib/sympa/bin/queue ${nexthop} ${user}
sympabounce unix - n n - - pipe
flags=hqRu null_sender= user=sympa argv=/usr/lib/sympa/bin/bouncequeue ${nexthop} ${user}

E é tudo, verificar com sudo postfix check e recarregar com sudo postfix reload.

Para exportar os membros das listas do mailman 2:
# sudo list_members test>test.txt

E tudo acabou em bem e viveram muito felizes a partir de aí (até à próxima migração...)

All information is provided as is, without any warranties.
If you liked this page, you may express it below...it won't cost you a dime...