Configurar o Postfix

O Slackware passou a usar o Postfix, em vez do Sendmail como ferramenta de MTA. Eu já tinha uma série de configurações complexas dos meus servidores com o Sendmail e deixei de conseguir enviar emails de todos eles. Todos eles faziam Relay através de um servidor já aceite pelos grandes serviços de email da rede, nomeadamente pelo hotmail da Microsoft, com quem tive que assinar um acordo de não Spam.

Agora com o Postfix, tenho que reconfigurar tudo de novo. Para já fica aqui registado o processo que usei para conseguir enviar emails para fora.

No ficheiro /etc/postfix/main.cf adicionei as linhas seguintes, no fim do ficheiro:

mynetworks = 127.0.0.0/8 192.168.0.0/16
smtp_generic_maps = hash:/etc/postfix/generic
smtpd_client_restrictions = permit_mynetworks, reject

No ficheiro /etc/postfix/generic adicionei a linha seguinte, no fim do ficheiro:

@localhost eu@meuservidor.pt
maria@localhost maria@meuservidor.pt

Depois, foi necessário criar o ficheiro /etc/postfix/generic.db pois comecei a receber o erro abaixo, quando lançava o servidor Postfix:

Postfix: error: open database /etc/postfix/generic.db: No such file or directory

Para criar o ficheiro /etc/postfix/generic.db usei a linha de comando seguinte:

postmap /etc/postfix/generic

Por fim, relancei o Postfix:

postfix stop
postfix start

Ainda faltam muitas configurações, nomeadamente, os ACCEPT e REJECT do ficheiro access.db do Sendmail, assim como o reencaminhamento de outros servidores para o servidor principal. Mas isso fica para uma próxima crónica.

PHP 7

A versão current do Slackware passou a usar o PHP7. Depois de fazer a atualização para o PHP7, passei a receber a mensagem seguinte, sempre que arrancava com o Apache:

httpd: Syntax error on line 654 of /etc/httpd/httpd.conf: Syntax error on line 6 of /etc/httpdmod_php.conf: Cannot load lib64/httpd/modules/libphp5.so into server: /usr/lib64/httpd/modules/libphp5.so: cannot open shared object file: No such file or directory

Enviei uma mensagem ao Patrick e ele respondeu o seguinte:

The new file won't copy over your old one.
Try: mv /etc/httpd/mod_php.conf.example /etc/httpd/mod_php.conf
Take care,
Pat

e acrescentou

I will add better handling of this file in the next build.
Thanks,
Pat

dovecot

O Slackware está a usar um novo servidor de IMAP/POP. À conta disto, fiquei sem email durante 3 dias. Não consegui logo configurá-lo e tive que voltar ao anterior. Desistalei o dovecot, fui buscar o pacote do Slackware 14.2, imapd-2.20-x86_64-2.txz, e instalei-o de novo. Mas continuei com alguns problemas. Neste momento não consigo enviar emails, apenas receber.

Decidi, então, tentar configurar o dovecot. Na pasta /etc/dovecot há um ficheiro README que diz que é necessário criar um certificado SSL/TLS e que há um script para criar um certificado autogerado.

O script está na pasta /usr/doc/dovecot-2.* (o * é a versão) e chama-se mkcert.sh.

Mas antes, é necessário configurar o ficheiro dovecot-openssl.cnf que está na mesma pasta. É um ficheiro com os dados para o certificado: nome e morada da empresa, endereço do sítio, etc.

O script mkcert.sh cria o certificado e coloca-o no local seguinte: /etc/ssl/private/dovecot.pem.

É, também, conveniente editar o ficheiro /etc/dovecot/conf.d/10-auth.conf e descomentar a linha:
#disable_plaintext_auth = yes

Por fim, é necessário indicar, no ficheiro /etc/dovecot/dovecot.conf, quais os protocolos a usar:
protocols = imap

Para lançar o dovecot, executar /etc/rc.d/rc.dovecot start.