Já pensou na possibilidade em integrar o Postfix ao MS Exchange Server? E melhorar um pouco mais e configurar o SpamAssassin? Se sim, este artigo tem como objetivo auxiliá-lo neste processo.
Durante o artigo mencionei alguns shell scripts que desenvolvi para otimizar o processo de configuração do ambiente. Aqui disponibilizo o que foi feito:
Script para criação de múltiplos .procmailrc no diretório home de cada usuário
Nome do script: create_procmailrc.sh
Tarefa do script: Criar o arquivo .procmailrc no /home de cada usuário com as definições necessárias
done
echo -e "\nInclusao finalizada com sucesso"
echo " "
Script para criação do .fetchmailrc é um pouco mais complexo pois temos que desenvolver no próprio script um lógica que determine o nome do usuário e seu password.
Nome do script: create_fetchmailrc.sh
Tarefa do script: Criar o arquivo .fetchmailrc no /home de cada usuário com as definições necessárias.
VAR2=$(ls /home -1)
for i in $VAR2; do
SINTAXE1=$(cut -c 1 /home/$i/username.chk)
SINTAXE2=$(cut -c 2 /home/$i/username.chk)
SINTAXE3=$(cut -c 3 /home/$i/username.chk)
rm -rf /home/$i/username.chk
done
echo -e "-> Definicao do usuario/password............$VERDE[OK]$DEFAULT"
VAR3=$(ls /home -1)
for i in $VAR3; do
chmod +x /home/$i/.fetchmailrc
chmod 710 /home/$i/.fetchmailrc
chown $i:$i /home/$i/.fetchmailrc
chown $i:$i /home/$i/log/fetchmail.log
done
echo -e "-> Alteracao da seguranca dos arquivos .fetchmailrc e fetchmail.log............ $VERDE[OK]$DEFAULT"
VAR4=$(ls /home -1)
for i in $VAR4; do
echo fetchmail -fastuidl -v -d 60 -f /home/$i/.fetchmailrc >> /home/$i/.bashrc
echo 'exit' >> /home/$i/.bashrc
done
echo -e "-> Definicao de parametros no arquivo .bashrc............$VERDE[OK]$DEFAULT"
echo -e "->$AZULCLARO O arquivo .fetchmailrc foi criado com sucesso.$DEFAULT"
echo " "
E por fim, um script que cria o usuário e faz a criação do .fetchmailrc e .procmailrc automaticamente.
Tarefas do script: Criar o usuário, o .fetchmailrc, o .procmailrc e adicionar o usuário nos arquivos sender_relay e sasl_passwd do Postfix.
echo -e "-> Definicao de parametros no arquivo .bashrc..................................$OK"
echo -e "$LB-> O arquivo .fetchmailrc foi criado com sucesso.$DF"
echo " "
echo -e "$1@seudominio.com.br\t\t\t""[smtp.seudominio.com.br]" >> /etc/postfix/sender_relay
sort /etc/postfix/sender_relay > /etc/postfix/sender_relay.lock
mv /etc/postfix/sender_relay.lock /etc/postfix/sender_relay
postmap /etc/postfix/sender_relay
echo -e "-> Adicionado usuario ao arquivo sender_relay..................................$OK"
echo -e "$LB-> Os arquivos do Postfix foram configurados com sucesso.$DF"
echo " "
#Inicializacao do processo do Fetchmail
su $1
echo -e "-> Iniciado o processo do fetchmail para o usuario $1.............$OK"
echo -e "$LB-> O usuario $DF$YE$1$DF$LB foi criado com sucesso.$DF"
echo " "
[5] Comentário enviado por andreandriotti em 08/09/2011 - 17:52h
Boa tarde Tiago, hoje (08/09/2011) o meu chefe me passou essa missão que vc teve no passado, se for possível, poderia me tirar uma dúvida?
Todos os usuários que tenho no Exchange, preciso cadastrá-los no Linux tb?
[6] Comentário enviado por tiago.centurion em 11/09/2011 - 21:11h
Boa noite André.
Obrigado pelo comentário.
Quanto a sua dúvida, sim, você precisa cadastrar os usuários no linux.
Cada usuário do exchange terá um usuário respectivo no Linux.
Por exemplo: Você tem o usuário como o e-mail fulano@empresax.com.br, esse usuário chama-se fulano no exchange, então você terá o user fulano no linux e um redirect para o usuário através do postfix. No postfix você vai colocar o e-mail do usuário e o nome dele no exchange (arquivos sender_relay e sasl_passwd), com isso, todas as mensagens que chegarem neste e-mail serão redirecionadas para o usuário interno do exchange, ou seja quem acaba sendo responsável pelo redirect é o postfix.