Instalando MTA Sceo no FreeBSD 7.1

Esse MTA me chamou bastante a atenção por vários fatores: flexível, bem modular, facilidade na criação de regras, escrito em C, suporte a autenticação nativa, suporte a domínios virtuais - MySQL, interface web em PHP. Com esse mundo de opções então pensei: "Porque não no FreeBSD, meu sistema favorito?".

[ Hits: 28.175 ]

Por: Renato Martins em 20/02/2009


Configurando SCEO



Agora devemos editar o arquivo sceo_mysql.conf e fazer as alterações no login e senha e alguns campos referentes ao banco de dados, ficando mais ou menos assim:

host= localhost
db= mail
user= sceo
pass= minhasenha
user_table= users
user_login_field= mail
user_pass_field= pass
user_pass_type= crypt
user_home_field= home
user_maildir_field= maildir
user_quota_field= quota
quota_type= maildirsize
domain_table= domain
domain_field= name
alias_table= aliases
alias_field= alias
alias_rcpt_field= rcpt
where_clause= ok=1

Testando a conexão do módulo sceo_mysql com o banco:

# ./sceo_mysql sceo_mysql.conf
+OK SCEO_Mysql v 1.1 Conectado

local dominio.com.br
+OK

local teste.com.br
-Nao local

user [email protected]
+OK

Configurando SCEO:

# ee /usr/local/sceo/sceo.conf

Altere o nome do servidor pelo seu FQDN:

Server_name "mail.dominio.com.br"

Altere para consulta de usuários e senhas no MySQL:

Module "/usr/local/sceo/mod/sceo_mysql/usr/local/sceo/mod/sceo_mysql.conf"

Postmaster - Especifica o usuário local que vai receber os avisos:

Postmaster "[email protected]"

Altere a linha Dlocal:

Dlocal "/usr/local/bin/maildrop -d %l < "

Salve e saia.

Liberando o envio (relay)

Abrindo relay para sua rede ou classe de IP enviar emails para fora:

# ee /usr/local/sceo/regras_conexao

Ip? "127.0.0.1" Relay!
Ip? "192.168.0.0/24" Relay!
Ip? "10.0.0.0/24" Relay!

Adicione sua rede, salve e saia.

Agora vamos para o ports instalar o Courier.

Instalação do Courier

Para instalar o Courier no FreeBSD é muito fácil:

# cd /usr/ports/security/courier-authlib
# make install clean
# cd /usr/ports/mail/courier-imap/
# make install clean


Lembre de marcar o suporte mysql.

Foram instaladas as seguintes versões: courier-authlib 0.62.1 imap 4.4.1.

Configurando a autenticação do Courier

# cd /usr/local/etc/authlib
# ee authdaemonrc


Deixe só com suporte ao mysql:

#authmodulelist="authuserdb authvchkpw authpam authldap authmysql authpgsql"

Mude para:

authmodulelist="authmysql"

#authmodulelistorig="authuserdb authvchkpw authpam authldap authmysql authpgsql"

Mude para:

authmodulelistorig="authmysql"

Configurando a autenticação do IMAP/POP3 com o banco de dados MySQL

Ainda no mesmo diretório /usr/local/etc/authlib:

# cp authmysqlrc authmysqlrc.old
# echo "" > authmysqlrc
# ee authmysqlrc


Coloque o seguinte conteúdo:

MYSQL_SERVER localhost
MYSQL_USERNAME sceo
MYSQL_PASSWORD minhasenha
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE mail
MYSQL_USER_TABLE users
MYSQL_CRYPT_PWFIELD pass
MYSQL_UID_FIELD uid
MYSQL_GID_FIELD gid
MYSQL_LOGIN_FIELD mail
MYSQL_HOME_FIELD home
MYSQL_NAME_FIELD name
MYSQL_MAILDIR_FIELD maildir
MYSQL_QUOTA_FIELD quota
MYSQL_WHERE_CLAUSE ok=1

Carregando tudo no boot...

Para que os serviços levantem no boot do sistema, adicionaremos as seguintes linhas no /etc/rc.conf:

#Sceo MTA
sceo_enable="YES"

# Courier imap/pop
courier_authdaemond_enable="YES"
courier_imap_imapd_enable="YES"
courier_imap_pop3d_enable="YES"

Instalando Maildrop e sudo

O maildrop vai ser nosso MUA e o sudo será utilizado para que o sistema web (Sceo-UI) possa criar os Maildirs de nossos usuários.

# cd /usr/ports/mail/maildrop/
# make WITH_AUTHLIB=yes install clean


Marque suporte mysql...

Ativando suid-bit no maildrop:

# chmod 4555 /usr/local/bin/maildrop
# chown root:sceo /usr/local/bin/maildrop
# cd /usr/ports/security/sudo
# make install clean


Adicione essa linha no /usr/local/etc/sudoers:

www ALL=(ALL) NOPASSWD: /usr/local/www/apache22/data/sceo-ui/criaDir.sh

Em minha instalação o usuário do apache é www (troque se for diferente).

Página anterior     Próxima página

Páginas do artigo
   1. Instalando MTA Sceo no FreeBSD 7.1
   2. Ativando compatibilidade Linux no FreeBSD
   3. Preparando a instalação do MTA SCEO
   4. Preparando o banco de dados no MySQL
   5. Descompactando os arquivos
   6. Configurando SCEO
   7. Subindo os serviços e testando
Outros artigos deste autor

Cacti - O melhor monitor de link (FreeBSD 6.1)

Leitura recomendada

Servidor Postfix Total

Tutorial: Como instalar o Openfire (Wildfire) no Kubuntu 7.10 (Gutsy Gibbon) com o "copiar e colar"

Relay autenticado para Postfix no Debian

Openfire no SLES 10 autenticando no Active Directory

Instalando Postfix e Dovecot no SLES 11 e autenticando em um diretório da Novell (Edir)

  
Comentários
[1] Comentário enviado por renatomartins em 20/02/2009 - 15:10h

Como no tutorial eu não falei sobre a interface web do sceo
não tem muito segredo só basta ter apache e php5 rodando e descompactar o arquivo sceo-ui-08-freebsd.bz2
no home do apache, no meu caso eu extrai o arquivo em /usr/local/www/apache22/data/sceo-ui/

para testar abra o navegador em http://seu_servidor/sceo-ui

usuário: admin
senha: teste

Com o admin você poderá listar incluir e excluir dominios.

Para administrar um domínio entre com o usuário [email protected]_novo_dominio.com.br
com acesso do usuário postmaster você poderá fazer a administração das constas de email referentes ao seu dominio.

Para trocar a senha do admin abra o arquivo configPage.inc.php e troque a senha na seguinte variável:
$_adminPass="nova_senha";

Cuidado se você for usar outro diretorio não se esqueça de alterar o caminho do criaDir.sh no arquivo /usr/local/etc/sudoers
vi /usr/local/etc/sudoers
www ALL=(ALL) NOPASSWD: /seu_novo_caminho_home_apache/sceo-ui/criaDir.sh

Espero que todos gostem desse MTA 10

[2] Comentário enviado por lpriori em 22/06/2009 - 15:51h

Gostaria de informar que o código fonte do MTA Sceo será disponibilizado em breve sob licença GPL.
O código fonte esta sendo preparado para um fácil entendimento, como adição de comentários, estrutura interna de distribuição das funções em arquivos fonte separados, etc...

Espero poder contar com a comunidade livre

[3] Comentário enviado por renatomartins em 23/06/2009 - 09:47h

Lucas toda a comunidade livre aguarda pelo sceo de código livre quero ver o Sceo no ports do freebsd e das principais distros linux.

é isso ai software brazuca para todo mundo !


Grande abraço


Quem quiser testar o sceo nativamente no freebsd já é possivel além das várias novidades e funcionalidades da versão 0.29b, sem duvidas um MTA mais que completo!


Contribuir com comentário