Configuração detalhada de um servidor de e-mails que utiliza autenticação por usuários virtuais não cadastrados no sistema Linux, mas sim no banco de dados PostgreSQL, com o webmail RoundCube para acesso dos usuários via internet.
[ Hits: 101.133 ]
Por: Isaias J. A. Soares (http://lattes.cnpq.br/9504289735203731) em 29/09/2010
Este artigo foi escrito durante o processo de configuração, portanto inclui alertas para erros que cometi (muitos comuns a iniciantes) e que me fizeram perder um tempão tentando descobrir o que era. Não sou um expert no assunto, ainda assim, estou postando aqui para que outros possam fazer disso uma tarefa mais branda, pois encontrei muitos 'buracos' e 'detalhes sem explicação' nos artigos que li. Este tutorial visa uma cobertura completa do básico no assunto.
1. Pré-requisitos
Para executar esse tutorial, deve-se ter um Debian (ou derivado) de 32bits, e os pacotes do apache, php, e postgresql 8.3 instalados e configurados. A questão de ser Debian 32 foi que encontrei um erro no courier-imap que não consegui contornar na versão 64 bits, e como já tinha feito o processo numa máquina-cobaia com Debian 5.0/32bits, optei por usar também essa distribuição para o servidor.
Obs.: Para instalação de pacotes eu uso aptitude (melhor verificação de dependências), mas o apt-get pode ser usado no lugar dele.
Importante: a configuração, se não for feita na instalação, deve ser feita com o comando:
# dpkg-reconfigure postfix
Como opções, deve-se escolher:
General type of configuration?
-> Internet site (para um servidor 'real' de e-mails)
Conta de usuário admin:
-> fulano
mail name? (Nome do servidor de e-mails)
-> meudominio.com.br ou nome_do_meu_servidor
Destinatários para os quais aceitar emails: (Essencial se o servidor abrigar domínios virtuais)
-> dominio1.com.br, domínio2.org, domínio3.net
Force synchronous update on mail queue?
-> Não
Qualquer dúvida, consultar os passos indicados no artigo do Morimoto para instalação e configuração iniciais do Postfix.
Finalizada a instalação, vamos fazer alguns testes.
É bom fazermos uma checagem geral com o comando:
# postfix check
Se houverem problemas aparecerão aqui, do contrário, não aparecerá nada.
Envio e recebimento por telnet (instale o telnet se não tiver com 'aptitude install telnet'):
2.a) Envio para serviço de email local:
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 urano.meudominio.com.br ESMTP Postfix (Debian/GNU) mail from: usuario@meudominio.com.br
250 2.1.0 Ok rcpt to: usuario@meudominio.com.br
250 2.1.5 Ok data
354 End data with <CR><LF>.<CR><LF> teste de envio de email de urano.
.
250 2.0.0 Ok: queued as B5966E0EE quit
221 2.0.0 Bye
Connection closed by foreign host.
Obs.: Pode-se instalar e usar o mutt para ler (aptitude install mutt / mutt).
2.b) Envio para serviço de email externo:
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 urano.meudominio.com.br ESMTP Postfix (Debian/GNU) mail from: usuario@meudominio.com.br
250 2.1.0 Ok rcpt to: email_de_teste@yahoo.com
250 2.1.5 Ok data
354 End data with <CR><LF>.<CR><LF> teste de envio de email de urano.
.
250 2.0.0 Ok: queued as B5966E0EE quit
221 2.0.0 Bye
Connection closed by foreign host.
O Postfix deve funcionar normalmente nas configurações padrão. Se estiver ok, vamos em frente. Se não, o problema tem que ser corrigido antes de prosseguir. Dica: dê uma olhada nos logs de sistema ('cat /var/log/syslog') e de email ('cat /var/log/mail.err ou mail.*') para ter algumas pistas dos problemas.
[2] Comentário enviado por isoares em 07/10/2010 - 15:13h
Oi, doomk!
Obrigado. Esse artigo surgiu da minha dificuldade em instalar essa combinação de softwares. Na primeira tentativa, fiquei umas tres semanas, sem conseguir. Dava de cara com uma série de problemas, oriundos da minha falta de experiência no assunto e de conhecimento sobre esses esquemas de autenticação que citei. Resolvi então, durante a última tentativa, documentar tudo, pra virar artigo. Assim, outros e eu mesmo poderíamos consultar posteriormente.
A escolha do Postgres foi devida ao fato de que o utilizo como meu servidor padrão - desde sempre - de banco de dados. O Mysql pode ser mais rápido para determinadas tarefas, mas o Postgres é de longe mais completo. Claro, o foco de cada um deles é diferente.
Quando eu estudava na UFPR, um rapaz fez um estudo para o uso do Postgres para se montar um Datawarehouse (um banco de dados que armazena bancos de dados, como é feito no sistema bancário). A comparação do Postgres com os demais softwares, mesmo proprietários, me impressionou. Por isso, desde então, o adotei como servidor padrão.
Realmente, eu achei muita coisa envolvendo essa combinação com o Mysql no lugar do postgres, tive que dar uma boa garimpada para achar algo útil, mas, valeu a pena. Fico feliz que tenha gostado.
É possível que, futuramente, eu poste algumas melhorias, quando as tiver implementado.
[4] Comentário enviado por doomk em 09/11/2010 - 15:27h
Muito Legal.
Acabei de concluir a configuração de um servidor de e-mail baseando em seu tutorial, funcionou que uma beleza.
E mais, juntei também com o tutorial do nosso grande amigo douglashx, que nos mostrou como fazer um cluster, baseando nas soluções Heartbeat + DRBD8 + OCFS2 + MONIT + LVS.
[5] Comentário enviado por geraldoquites em 06/12/2010 - 11:23h
Bom dia "isoares" vou fazer a minha instalação geral usando o seu artigo. Estou usando o OpenSuse 11.3. Depois te dou retorno sobre as sequencias. Grande abraço, Geraldo.
[7] Comentário enviado por isoares em 06/12/2010 - 22:36h
Oi, Geraldo (geraldoquites)!
Bem, como você pode ver, esse tutorial foi elaborado para debian e derivados, mas creio que funcionará bem para outras distros também. Você vai ter, claro, que adaptar alguns passos, mas o esquema de configuração deve ser muito similar (se não idêntico), então, deve dar certo. Creio que o tutorial está detalhado o bastante para te permitir essa liberdade, com a plena compreensão dos passos que são necessários (configurações, autenticações, enfim). Fico aguardando pelo resultado! Boa sorte!
[8] Comentário enviado por striteiro em 31/12/2010 - 09:39h
Bom dia, segui a risca o tutorial, instalei e configurei tudo como manda o artigo, porem quando tento logar via webmail, me retorna o seguinte erro: A ligacao com o servidor IMAP falhou!
Alguem tem uma luz ?
[9] Comentário enviado por isoares em 05/01/2011 - 00:25h
Olá, striteiro!
Bem, você deve ficar atento a todas as recomendações do artigo. Esse tipo de erro que você menciona é percebido quando se faz os testes de autenticação, via telnet. O artigo menciona ainda a verificação dos erros nos logs (/var/log/syslog). Várias coisas podem dar errado, poste as mensagens, logs e o que mais puder.
[10] Comentário enviado por andredemetriods em 04/03/2011 - 09:31h
Bom dia Amigo,
Cheguei até o passo:
Agora vamos criar o usuário postfix no postgre, com a mesma senha que colocamos no script:
# su - postgres
Quando dou este comando, o shell me retorna:
ID desconhecido : postgres
Tens idéia do que pode ter acontencido?
[11] Comentário enviado por isoares em 17/04/2011 - 20:16h
Olá, andredemetriods!
O usuário postgres é geralmente criado quando se instala o posgtres (pois ele é o usuário administrador do banco de dados). Se você instalou o Postgres e não possui esse usuário, das duas uma, ou seu usuário administrador está com outro nome, ou precisa reconfigurar o postgres novamente. Isso poderia ser feito com o gerenciador de pacotes, com o comando 'dpkg-reconfigure postgresql'.
Qualquer coisa, estou à disposição!
Um forte abraço!
[13] Comentário enviado por isoares em 19/07/2011 - 09:49h
Oi, Alexandre! (alexandrehrs)
Bem, imagino que você esteja falando de usuários reais, cadastrados na máquina onde roda o servidor de email. Para conseguir isso, terá de trabalhar no sistema de autenticação, pois é esse sistema que libera o acesso ao sistema de e-mail.
Veja, se vc tiver usuários virtuais, é fácil, é só removê-los do banco de dados. Nesse caso, creio que, talvez, se você tiver muita experiência em autenticação, consiga isso. Eu não saberia como realizar essa tarefa, enfim, apenas uma idéia acerca disso. Você teria de criar um script de autenticação que permitisse todos, menos os usuários indesejados, um por um.Mas ao mesmo tempo, isso bloquearia também o acesso remoto do usuário à máquina. O fato de que o usuário seja um usuário real na máquina complica bastante as coisas. Na minha opinião, é mais fácil manter o servidor de e-mail em uma máquina separada, na qual esses usuários não tenham acesso, enfim. Desse modo, vc pode configurar do modo que descrevi e ter controle total de quem vai utilizar o sistema.
[14] Comentário enviado por aldopassos em 27/10/2011 - 10:04h
Bom dia amigo, estou com um problema e queria ver se alguem pode me dar uma luz, estamos com um servidor instalado com debian e postifix rodando normalmente enviando e recebendo de todos os principais servidores de e-mail (TERRA, YAHOO, HOTMAIL) porém há um específico que não consegue nos enviar mensagens, este servidor eu sei que utiliza o EXCHANGE e sempre que nos enviam mensagens o e-mail volta deizendo que não foi possível realizar a entrega e no meu servidor ela nem aparece, nem sequer no mail.log...
Se puder me dar uma luz do que posso fazer para resoolver o problema... Muito obrigado por enquanto...
[15] Comentário enviado por rodrigo.a.sc em 18/11/2011 - 15:34h
Tenho uma grande duvida sobre o PostFix.
Como eu verifico o tamanho da conta de alguem ?
Crio uma conta via linha de comando?
faço o backup e o restore de uma caixa postal ??
Restarto apenas um serviço, tipo pop, smtp pois pelo zmcontrol so consigo restartar tudo de uma so vez até onde eu sei.
[16] Comentário enviado por isoares em 29/11/2011 - 19:54h
Oi, aldopassos!
Então, difícil de dizer. Não entendo quando você diz que 'o servidor usa exchange', pois o uso do exchange, pelo que sei, utiliza um provedor de email para acesso. Pode ser um problema de configuração na máquina que está te enviando o email, pois, como você mesmo disse, nem aparece nos logs, ou seja, do meu ponto de vista, seu servidor parece estar ok, o indivíduo que está te enviando a mensagem é que tem que checar suas configurações, imagino.
[17] Comentário enviado por isoares em 29/11/2011 - 21:12h
Oi, rodrigo.a.sc!
O 'tamanho da conta' é o tamanho do diretório que contém as mensagens do usuário.
Tenho um script para criar contas. Com ele dá para criar uma conta via linha de comando.
Eu criei uma mailbox 'template', que é um modelo do que eu queria (adicionei pasta de enviados
e tudo o que queria no roundcube), e a copio para a nova pasta do usuário. Tem um comando para
criar mailbox, que eu não cito aqui, mas que pode ser encontrado via google. Segue o script:
criar_usuario_virtual.sh:
---------------------------------------------------------------------------------------------------------------------
#!/bin/bash
# Script para criacao de usuarios virtuais para acesso ao webmail
#echo "[$1][$2]"
senha=""
if [[ ($1 != "") && ($2 != "") ]]; then
senha=$2
fi
if [[ "$1" == "" ]]; then
echo ""
echo "Sintaxe: ./criar_usuario_virtual.sh <login> <senha>"
echo ""
exit 1
fi
if [[ $senha == "" ]]; then
chave=`authpasswd`
else
chave=`echo "$senha"|authpasswd`
fi
if [[ ! -d "/diretorio_mail_usuarios_virtuais/vusers/$login" ]]; then #Verifica se o diretório foi criado
echo "ERRO: Nao foi possivel criar o diretorio. Abortando.">> /diretorio_mail_usuarios_virtuais/virtual.log
exit 1
fi
if [[ $result != "INSERT 0 1" ]]; then
echo "Falha na insercao do usuario no Postgres. Abortando.">>/diretorio_mail_usuarios_virtuais/virtual.log
exit 1
else
echo "Usuario [$login] inserido com sucesso."
echo "Usuario adicionado com sucesso: $login $senha $chave">>/root/virtuais.txt # grava um log
echo ""
fi
---------------------------------------------------------------------------------------------------------------------
E também tem um script para remover a conta (não apaga as mensagens, só remove do banco de dados. Claro,
pode ser modificado para fazer o que você desejar também:
apagar_usuario_virtual.sh:
---------------------------------------------------------------------------------------------------------------------
#!/bin/bash
# Script para apagar usuarios virtuais do acesso ao webmail
senha=""
if [[ ($1 != "") && ($2 != "") ]]; then
senha=$2
fi
if [[ "$1" == "" ]]; then
echo ""
echo "Sintaxe: ./apagar_usuario_virtual.sh <login>"
echo ""
exit 1
fi
if [[ $result != "DELETE 0 1" ]]; then
echo "Falha na insercao do usuario no Postgres. Abortando.">>/diretorio_mail_usuarios_virtuais/virtual.log
exit 1
else
echo "Usuario [$login] removido com sucesso."
echo "Usuario removido com sucesso: $login $senha $chave">>/root/virtuais.txt # grava um log
echo ""
fi
---------------------------------------------------------------------------------------------------------------------
Dá para fazer o backup e restore normalmente, como em qualquer diretório, se necessário.
Quanto aos serviços, é sempre bom reestartar tudo, para assegurar que as modificações estão valendo.
Ah, detalhes: os scripts são executados como root.
E é necessário configurar a conta de algum usuário para dar a ele acesso ao postgres, de inserção e remoção no banco de usuários virtuais.
[18] Comentário enviado por isoares em 26/12/2011 - 19:59h
Só esclarecendo: no contexto do artigo, um 'usuário virtual' é um usuário que está cadastrado no sistema de email, mas não tem uma 'conta real' na máquina, isto é, não tem uma área 'home', nem senha, nem poderia logar via ssh, por exemplo. Esse método aumenta bastante a segurança do servidor, uma vez que há menos brechas de segurança a serem exploradas. Os dados do usuário virtual são armazenados num banco de dados, e o sistema de autenticação realiza a consulta no banco, no caso, o Postgre, e então valida o acesso.
[19] Comentário enviado por JZG em 09/02/2012 - 10:30h
Bom dia,
estou tendo de instalar o servidor de email baseado em seu tutorial. Porém quando tento logar com 'useradmin' pelo comando #su useradmin é retornada a seguinte mensagem:
"unknown id: useradmin"
O usuário existe, quando fui cria-lo novamente me é enviada que "não é possivel executar a ação por que o usuário já existe".
[20] Comentário enviado por isoares em 10/02/2012 - 20:06h
Oi, JZG!
Não entendi bem a sua pergunta, poderia ser mais específico? Bem, o tutorial trata de usuários virtuais, então, esses usuários são criados no banco de dados (outro dia postei um script que faz isso). Esse sistema é justamente para evitar que usuários do email sejam usuários reais na máquina, criando posśiveis brechas de segurança.
Qualquer dúvida, posta novamente, que estamos aí..
[21] Comentário enviado por melorymonie em 21/03/2012 - 17:11h
Estou criando (tentando, pelo menos) um servidor de e-mail seguindo o seu tutorial, mas quando cheguei na parte de testar a conexão do imap me ocorreu o seguinte problema:
telnet 0 143
Trying 0.0.0.0...
Connected to 0.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2010 Double Precision, Inc. See COPYING for distribution information.
0 login user@teste.br teste
* BYE [ALERT] Fatal error: No such file or directory: No such file or directory
Connection closed by foreign host
olhando no log ele encontra o usuário no banco de dados, tudo certinho, mas no final do log encontrei o seguinte erro:
Mar 21 16:47:26 webmail2 imapd: chdir user/: No such file or directory
Mar 21 16:47:26 webmail2 imapd: user@teste.br: No such file or directory
Ai eu te pergunto, quando tenho que criar os maildirmake:
# maildirmake /home/postfix/Maildir/user
# maildirmake /home/postfix/Maildir/admin
# chown -R postfix:postfix /home/postfix
O meu usuário postfix tem que ter uma área de home?
Ou devo criar os diretórios em /var/users?
***************************************************
Segunda questão:
Quando testo o segundo telnet, me ocorre o seguinte erro:
telnet teste.br 110
telnet: could not resolve teste.br/110: Name or service not known
Você saberia me dizer porque isso ocorre?
Estou utilizando uma máquina virtual para realizar os testes, não tendo um IP real para isso, pode ter alguma coisa haver?
[22] Comentário enviado por isoares em 11/11/2012 - 21:41h
Olá, melorymonie!!
Me desculpe pelo atraso na resposta, espero não ocorrer novamente... é provável que você já tenha resolvido o problema, mas estou postando aqui em respeito ao seu questionamento e aos demais usuários.
Bem, sim, criei o /home/postfix para o usuário postfix como se fosse um usuário normal, e dei permissões para ele para escrever na minha pasta de usuários virtuais, a qual chamei, no meu sistema, de vusers, e onde postei todos os diretórios de emails deles. Também criei um template de diretório de email (simplesmente copio um diretório personalizado, inicialmente criado pelo maildirmake), de modo que quando vou adicionar um usuário, o script faz todo o serviço.
Uma observação que gostaria de ponderar é que o roundcube já está numa versão posterior à que eu utilizei para fazer esse tutorial, de modo que não estou certo se todos os passos aqui são válidos para a versão atual, embora, a princípio, devam funcionar.
Quanto à falha do telnet, eu não saberia te dizer, se obteve a solução poste aqui para compartilhar conosco.
Um forte abraço e sou em quem agradece a oportunidade de ser útil.
ele da o retorno: maildirmake: /home/postfix/Maildir/user: No such file or directory
Detalhe, eu criei o usuario "user" e "admin", porém eles nao tem a pasta /home - criei com o comando "useradd user" depois "passwd user" somente.
[24] Comentário enviado por ttelsen em 23/11/2012 - 19:58h
Fiz o seguinte. criei as pastas
home/postfix/Maildir/ e depois dei um maildirmake user
home/postfix/Maildir/ e depois dei um maildirmake admin
ai o maildirmake criou as pastas cur, new, tmp para cada usuario.
depois criei a pasta /var/vusers e dei um chown postfix /var/vusers/
[25] Comentário enviado por isoares em 23/11/2012 - 22:12h
Oi, ttelsen!
Você teve também problemas de conexão com o telnet? Está instalando em máquina virtual ou real?
Então, no meu sistema, eu criei o usuário postfix como usuário real da máquina, e, sim, dei permissões de escrita na /var/vusers. Depois, com maildirmake, criei um 'diretório template' (/diretorio_mail_usuarios_virtuais/template), para ser copiado/reproduzido toda vez que eu quisesse criar um novo usuário (para isso, criei também os scripts criar_usuario_virtual.sh e apagar_usuario_virtual.sh, que postei acima). Nesses scripts, a string 'diretorio_mail_usuarios_virtuais' deveria ser substituída pelo seu diretório personalizado de mails de usuários, no caso, '/var/vusers'.
Salvo engano, eu também tive esse problema, mas esqueci de comentar no tutorial. E, se me lembro bem, o resolvi quando criei um usuário real para o postfix (faz tempo que fiz o procedimento, então pode ser que algum detalhe tenha escapado, embora o artigo tenha sido escrito no ato, logo após a instalação, dadas as dificuldades que encontrei).
Outra coisa importante, no meu sistema, executo os scripts criar_usuario_virtual.sh e apagar_usuario_virtual.sh como root, devido às permissões dos diretórios, que são variadas, e o script está projetado para ajustá-las automaticamente. Talvez seja necessário, dependendo da configuração do seu sistema, revisar esses scripts e ajustá-los ao seu sistema. E vale a pena utilizá-los, pois poupam muito do trabalho chato de adicionar/remover usuários virtuais.
Uma vez instalado e adicionados os usuários, é o postfix quem acessa, lê e escreve nos diretórios, portanto o acesso e permissões devem ser dele.
Qualquer dúvida, posta aí! E se resolver o problema, também, inclusive, com detalhes da solução.
[27] Comentário enviado por isoares em 02/09/2013 - 12:52h
Oi, cainf!
Então, não vejo problema em funcionar com adsl... mas, para facilitar a manutenção, sugiro a contratação de um serviço de servidor virtual. Eu uso o linode.com, é barato, prático e eficaz. Na configuração do meu domínio, ajustei sim o DNS reverso. Já tive servidor em casa, mas o custo não vale. Sem contar que tem que ter no-break, quando vc viaja tem de ficar atento para a máquina não cair, não vale a pena.
[28] Comentário enviado por igorocampos em 10/01/2015 - 18:29h
olá Isaias, muito bom o tutorial, mas estou com um probleminha...
Aparentemente nao consigo autenticar no imap... da sempre senha invalida... olhei nos arquivos de log e aparentemente é problema de digitar a senha errada (mas nao estou digitando errado) suspeito que seja alguma coisa relacionada a criptografia na comparacao da senha digitada com o que esta no postgre...
Uma coisa engraçada é que quando uso o authpasswd ele sempre gera uma senha criptografada DIFERENTE, mesmo eu tendo digitado a mesma senha sempre...
O que pode estar acontecendo?
Teria algum jeito de tirar a criptografia da senha somente para testar se é esse o problema?
[29] Comentário enviado por isoares em 11/01/2015 - 10:09h
Oi, igorocampos.
Quando eu estava testando, também tive a mesma impressão. Primeiramente, instale o imap 'básico', e tente autenticar como UM USUÁRIO REAL. Isso porque, a autenticação como usuário virtual depende de que os scripts de configuração já estejam nas pastas, o servidor já deve ter sido reinicializado, e que não haja error nas variáveis que o leitor tem de atribuir (senha, hostname, etc.). Por isso recomendo o teste 'básico'. Se ele não funcionar, vc terá de pesquisar e fazer o imap funcionar, verificando sempre o arquivo de log, que dá excelentes pistas sobre o problema.
Não sei te há diferenças entre as distribuições linux (qual vc usa?), mas vc deve ficar atento a isso tb.
Com o imap funcionando de modo básico, daí vc parte para a configuração usando os scripts de autenticação que coloquei no texto. Perceba que esses scripts usam uma pesquisa no banco de dados para liberar o acesso dos usuários virtuais ao sistema de email, que nunca conseguirão autenticarem-se via ssh, por exemplo. Por isso esse esquema confere mais segurança ao seu sistema.
Se tentar e não conseguir, posta aí a configuração do seu sistema operacional e parte dos logs para a gente ver.
[30] Comentário enviado por igorocampos em 15/01/2015 - 14:26h
utilizo o ubuntu mesmo. Como assim instalar o imap basico? no caso, como eu reverteria tudo que ja fiz? to meio perdido...
Na tela do telnet aparece "NO login failed"
e no arquivo de log aparece assim:
Jan 15 11:24:11 mega imapd: LOGIN FAILED, user=marcos@mega.com, ip=[::ffff:127.0.0.1]
tem certeza que essa criptografia deveria mudar sempre que executo o authpasswd?
To meio desesperado pq tenho q fazer esses emails funcionando até o fim do mes... Coloquei no google apps por enquanto, mas é só 30 dias trial...
teria como me ensinar tipo um passo a passo para eu saber o que estou fazendo de errado?
[31] Comentário enviado por akasuna em 21/01/2016 - 16:15h
Boa tarde,
Como uma grande maioria, dei uma travada na autenticação IMAP.
Estava tudo indo como os conformes, porém ao chegar nesta parte, me ocorre um erro no qual estou sem ideia do que possa ser.
Postarei em breve os logs onde reporta o erro para caso alguem ja tenha resolvido algo parecido possa me ajudar.
[32] Comentário enviado por jean6758144 em 14/10/2016 - 19:11h
Prezados (as),
Necessito de ajuda referente a servidores de e-mail, instalei os seguintes recursos em meu servidor Debian 8 X64 pela digital Ocena, e DNS apontando para o Cloudflare PHP5 com FastCGI e Xcache, MySQL, phpMyAdmin, Clamav, Amavis e SpamAssassin, PureFTPd e Quota, BIND9, OpenSSH, JailKit (chroot), RKHunter, Servidor de Emails com Postfix e Dovecot, Roundcube, Bastille Firewall com IPTables e Fail2ban.
Portanto não consigo nem enviar e receber email. Segue abaixo as informações do log de e-mail que possuo, segue os links para acessar. Preciso de ajuda.