Servidor de Email · 4 min read · Jan 09, 2026

O Servidor Perfeito - Mandriva 2008 Spring Free (Mandriva 2008.1) - Página 5

10 MySQL (5.0)

Para instalar o MySQL 5.0, simplesmente executamos:

urpmi MySQL MySQL-client libmysql15-devel

Por padrão, a rede não está habilitada no pacote MySQL do Mandriva 2008.1, mas a rede é necessária pelo ISPConfig. Podemos mudar isso comentando a linha skip-networking em /etc/my.cnf. Além disso, mudamos default-character-set de utf8 para latin1:

vi /etc/my.cnf

| [...] # Não escute em uma porta TCP/IP de forma alguma. Isso pode ser uma melhoria de segurança, # se todos os processos que precisam se conectar ao mysqld rodarem na mesma máquina. # Toda interação com mysqld deve ser feita via sockets Unix ou pipes nomeados. # Note que usar esta opção sem habilitar pipes nomeados no Windows # (via a opção "enable-named-pipe") tornará o mysqld inútil! # #skip-networking [...] default-character-set = latin1 [...] |

Depois, criamos os links de inicialização do sistema para o MySQL…

chkconfig mysqld on

… e o iniciamos:

/etc/init.d/mysqld start

Agora verifique se a rede está habilitada. Execute

netstat -tap | grep mysql

A saída deve ser parecida com isso:

[root@server1 var]# netstat -tap | grep mysql  
tcp        0      0 *:mysql-im                     *:*                         LISTEN      3863/mysqlmanager  
tcp        0      0 *:mysql                         *:*                         LISTEN      3871/mysqld  
[root@server1 var]#

Em seguida, execute

mysqladmin -u root password yourrootsqlpassword  
mysqladmin -h server1.example.com -u root password yourrootsqlpassword

para definir uma senha para o usuário root (caso contrário, qualquer um pode acessar seu banco de dados MySQL!).

11 Postfix Com SMTP-AUTH E TLS; Dovecot

Instale os pacotes necessários (Postfix, cyrus-sasl, Dovecot, etc.) assim:

urpmi cyrus-sasl libsasl2 libsasl2-devel libsasl2-plug-plain libsasl2-plug-anonymous libsasl2-plug-crammd5 libsasl2-plug-digestmd5 libsasl2-plug-gssapi libsasl2-plug-login postfix dovecot

Em seguida, execute:

postconf -e 'mydestination = /etc/postfix/local-host-names, localhost.$mydomain'  
postconf -e 'smtpd_sasl_local_domain ='  
postconf -e 'smtpd_sasl_auth_enable = yes'  
postconf -e 'smtpd_sasl_security_options = noanonymous'  
postconf -e 'broken_sasl_auth_clients = yes'  
postconf -e 'smtpd_sasl_authenticated_header = yes'  
postconf -e 'smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination'  
postconf -e 'inet_interfaces = all'  
postconf -e 'mynetworks = 127.0.0.0/8'  
touch /etc/postfix/local-host-names

Então definimos o nome do host na nossa instalação do Postfix (certifique-se de substituir server1 e example.com pelas suas próprias configurações):

postconf -e 'mydomain = example.com'  
postconf -e 'myhostname = server1.$mydomain'

Edite /etc/sasl2/smtpd.conf. Deve ficar assim:

vi /etc/sasl2/smtpd.conf

| # Arquivo de configuração da biblioteca SASL para postfix # todos os parâmetros estão documentados em: # /usr/share/doc/cyrus-sasl/options.html # Os parâmetros mech_list listam os mecanismos sasl a serem usados, # o padrão é todos os mechs encontrados. mech_list: plain login # Para autenticar usando o daemon saslauthd separado, (por exemplo, para # usuários do sistema ou ldap). Veja também /etc/sysconfig/saslauthd. pwcheck_method: saslauthd saslauthd_path: /var/lib/sasl2/mux # Para autenticar contra usuários armazenados no sasldb. #pwcheck_method: auxprop #auxprop_plugin: sasldb #sasldb_path: /var/lib/sasl2/sasl.db |

Crie o certificado SSL necessário para TLS:

mkdir /etc/postfix/ssl  
cd /etc/postfix/ssl/  
openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024
chmod 600 smtpd.key  
openssl req -new -key smtpd.key -out smtpd.csr
openssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out smtpd.crt
openssl rsa -in smtpd.key -out smtpd.key.unencrypted
mv -f smtpd.key.unencrypted smtpd.key  
openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650

… e configure o Postfix para TLS:

postconf -e 'smtpd_tls_auth_only = no'  
postconf -e 'smtp_use_tls = yes'  
postconf -e 'smtpd_use_tls = yes'  
postconf -e 'smtp_tls_note_starttls_offer = yes'  
postconf -e 'smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key'  
postconf -e 'smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt'  
postconf -e 'smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem'  
postconf -e 'smtpd_tls_loglevel = 1'  
postconf -e 'smtpd_tls_received_header = yes'  
postconf -e 'smtpd_tls_session_cache_timeout = 3600s'  
postconf -e 'tls_random_source = dev:/dev/urandom'

Em seguida, devemos configurar o Dovecot para servir os protocolos imap, imaps, pop3 e pop3s. Abra /etc/dovecot.conf e ajuste os seguintes valores:

vi /etc/dovecot.conf

| [...] # Protocolos que queremos servir: imap imaps pop3 pop3s # Se você só quiser usar dovecot-auth, pode definir isso como "none". protocols = imap imaps pop3 pop3s [...] disable_plaintext_auth = no [...] pop3_uidl_format = %08Xu%08Xv [...] |

Agora devemos informar ao sistema para iniciar o Dovecot somente após o ntpd ter iniciado, pois o Dovecot não é muito tolerante se o tempo do seu sistema retroceder enquanto o Dovecot está em execução (veja http://wiki.dovecot.org/TimeMovedBackwards). Isso pode causar erros como os seguintes em seu syslog:

Abr  9 19:29:18 server1 dovecot: O tempo acabou de retroceder 17 segundos. Isso pode causar muitos problemas, então eu vou me matar agora. http://wiki.dovecot.org/TimeMovedBackwards

Infelizmente, no Mandriva, o Dovecot é iniciado antes do ntpd, então mudamos assim:

cd /etc/rc3.d  
mv S99ntpd S98ntpd  
mv S54dovecot S99dovecot  
cd /etc/rc4.d  
mv S99ntpd S98ntpd  
mv S54dovecot S99dovecot  
cd /etc/rc5.d  
mv S99ntpd S98ntpd  
mv S54dovecot S99dovecot

Então criamos os links de inicialização do sistema para o Postfix…

chkconfig postfix on

… e (re)iniciamos o Postfix, saslauthd e Dovecot:

/etc/init.d/postfix restart  
/etc/init.d/saslauthd restart  
/etc/init.d/dovecot restart

Para ver se SMTP-AUTH e TLS funcionam corretamente, execute o seguinte comando:

telnet localhost 25

Depois de estabelecer a conexão com seu servidor de email Postfix, digite

ehlo localhost

Se você ver as linhas

250-STARTTLS

e

250-AUTH PLAIN LOGIN

tudo está bem:

[root@server1 ssl]# telnet localhost 25  
Tentando 127.0.0.1...  
Conectado a localhost.localdomain (127.0.0.1).  
O caractere de escape é '^]'.  
220 server1.example.com ESMTP Postfix (2.5.1) (Mandriva Linux)  
ehlo localhost  
250-server1.example.com  
250-PIPELINING  
250-SIZE 10240000  
250-VRFY  
250-ETRN  
250-STARTTLS  
250-AUTH PLAIN LOGIN  
250-AUTH=PLAIN LOGIN  
250-ENHANCEDSTATUSCODES  
250-8BITMIME  
250 DSN  
quit  
221 2.0.0 Bye  
Conexão fechada pelo host remoto.  
[root@server1 ssl]#

Digite

quit

para retornar ao shell do sistema.

11.1 Maildir

O Dovecot usa o formato Maildir (não mbox), então se você instalar o ISPConfig no servidor, certifique-se de habilitar o Maildir em Gerenciamento -> Servidor -> Configurações -> Email. O ISPConfig então fará a configuração necessária.

Se você não quiser instalar o ISPConfig, então deve configurar o Postfix para entregar emails no Maildir de um usuário (você também pode fazer isso se usar o ISPConfig - não faz mal ;-)):

postconf -e 'home_mailbox = Maildir/'  
postconf -e 'mailbox_command ='  
/etc/init.d/postfix restart
Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.