SlideShare uma empresa Scribd logo
1 de 18
Integração Postfix com Active Directory
Thiago Cavalcante
tlcavalcante@gmail.com
http://tlcavalcante.blogspot.com
Integração Postfix com Active Directory
Cenário encontrado:
- Servidor obsoleto;
- Configuração inadequada;
(Armazenamento, MTA, listas e webmail no mesmo servidor);
- Problemas com spam e vírus;
- Quota insuficiente (100Mb);
- Lentidão no processamento das mensagens;
- Sistema operacional desatualizado (Slack 9.1)
- Webmail desatualizado;
- Falhas de segurança;
- Backup não confiável;
- Múltiplas contas para gerenciar (AD, E-Mail, Sistemas...)
Integração Postfix com Active Directory
Novo cenário:
- Servidores novos;
- Separação dos serviços em maquinas dedicadas;
- Aumento da quota (de 100Mb para 1Gb);
- Filtros de spam e vírus mais eficiente;
- Velocidade no processamento das mensagens;
- Sistema operacional atualizado (Debian Lenny)
- Redução significativa nas falhas de segurança;
- Backup confiável, contingência e recuperação de desastres;
- Plataforma única de autenticação;
- Conta única para o usuário;
- Melhor gerenciamento de recursos;
- Novo Webmail (emexis);
- Novos serviços (agenda, tarefas, etc.);
- Possibilidade de expansão da plataforma.
Integração Postfix com Active Directory
Novo cenário:
Integração Postfix com Active Directory
Mãos a obra!!!
Integração Postfix com Active Directory
Mail Server
Integração Postfix com Active Directory
Softwares necessários:
- Debian Lenny;
- Postfix;
- Courier;
- Spamassassin;
- ClamAV;
- Ldap Browser;
- Windows Server;
Instale o sistema operacional
somente com a opção “sistema básico”.
Integração Postfix com Active Directory
Instalação de pacotes:
apt-get install courier-authdaemon courier-authlib
courier-authlib-dev courier-authlib-ldap courier-base
courier-imap courier-maildrop postfix postfix-ldap
postfix-policyd-spf-perl libsasl2-2 libsasl2-modules
libsasl2-modules-ldap sasl2-bin clamav-base clamav-daemon
clamav-freshclam spamassassin htop openssh-server
build-essential rcconf dnsutils locate nmap open-iscsi rsync
Integração Postfix com Active Directory
vim /etc/postfix/main.cf
mailbox_command_maps = ldap:accounts
virtual_maps = ldap:grupos ldap:forward
virtual_mailbox_maps = ldap:accounts
accounts_server_host = 192.168.1.190
accounts_bind_dn = cn=bind,cn=Users,dc=solisc
accounts_bind_pw = Solisc2010
accounts_search_base = ou=Usuarios,dc=solisc
accounts_query_filter = (&(objectClass=organizationalPerson)(mail=%s))
accounts_result_attribute = mail
accounts_bind = yes
grupos_server_host = 192.168.1.190
grupos_bind_dn = cn=bind,cn=Users,dc=solisc
grupos_bind_pw = Solisc2010
grupos_version = 3
grupos_search_base = ou=Usuarios,dc=solisc
grupos_query_filter = (&(objectClass=group)(description=%s))
grupos_special_result_attribute = member
grupos_result_attribute = mail
grupos_recursion_limit = 5000
forward_server_host = 192.168.1.190
forward_bind_dn = cn=bind,cn=Users,dc=solisc
forward_bind_pw = Solisc2010
forward_version = 3
forward_timeout = 10
forward_chase_referral = 0
forward_search_base = ou=Usuarios,dc=solisc
forward_query_filter = (&(mail=%s)(objectClass=organizationalPerson))
forward_result_attribute = streetAddress
Integração Postfix com Active Directory
/etc/courier/authdaemonrc
authmodulelist="authldap"
authmodulelistorig="authldap"
daemons=50
authdaemonvar=/var/run/courier/authdaemon
DEBUG_LOGIN=0
DEFAULTOPTIONS=""
LOGGEROPTS=""
Integração Postfix com Active Directory
vim /etc/courier/authldaprc
LDAP_URI ldap://192.168.1.190
LDAP_SERVER 192.168.1.190
LDAP_PORT 389
LDAP_PROTOCOL_VERSION 3
LDAP_AUTHBIND 1
LDAP_BASEDN dc=solisc
LDAP_BINDDN cn=bind,cn=users,dc=solisc
LDAP_BINDPW Solisc2010
LDAP_TIMEOUT 5
LDAP_FILTER (objectClass=organizationalPerson)
LDAP_DOMAIN solisc
LDAP_FULLNAME cn
LDAP_CLEARPW clearPassword
LDAP_CRYPTPW userPassword
LDAP_MAIL mail
LDAP_GLOB_UID 1000
LDAP_GLOB_GID 1000
LDAP_MAILDIR wWWHomePage
LDAP_HOMEDIR l
LDAP_DEREF never
LDAP_MAILDIRQUOTA st
Integração Postfix com Active Directory
No Windows
Integração Postfix com Active Directory
Mail Gateway
Integração Postfix com Active Directory
Instalação de pacotes:
apt-get install postfix postfix-ldap postfix-policyd-spf-perl
clamav-base clamav-daemon clamav-freshclam
spamassassin htop openssh-server build-essential
rcconf dnsutils locate nmap rsync
Integração Postfix com Active Directory
vim /etc/postfix/main.cf
relay_domains = solisc.org.br
transport_maps = hash:/etc/postfix/transport
relay_recipient_maps = hash:/etc/postfix/ad_recipents
vim /etc/postfix/master.cf
smtp inet n - n - - smtpd -o content_filter=clamav:clamav
clamav unix - n n - 10
pipe flags=Rq user=clamav argv=/usr/lib/postfix/clamav-filter.sh -f ${sender} -- ${recipient}
policy unix - n n - - spawn
user=nobody argv=/usr/bin/perl /usr/lib/postfix/policyd-spf-perl
vim /etc/postfix/transport
solisc.org.br smtp:[192.168.1.180]
vim /etc/spamassassin/local.cf
rewrite_header Subject *****SPAM*****
trusted_networks 192.168.1.0/24
required_score 5.0
use_bayes 1
bayes_auto_learn 1
bayes_ignore_header X-Bogosity
bayes_ignore_header X-Spam-Flag
bayes_ignore_header X-Spam-Status
vim /etc/postfix/ad_recipients
#!/bin/bash
/usr/sbin/getadsmtp.pl
postmap /etc/postfix/ad_recipients
Integração Postfix com Active Directory
Instalando o SPF
perl -MCPAN -e shell
install Mail::SPF
q
Editar o arquivo de DNS e incluir a linha do SPF abaixo do MX
solisc.org.br.IN TXT "v=spf1 ipv4:192.168.1.39/32 mx -all"
Testando: host -t txt solisc.org.br
solisc.org.br descriptive text "v=spf1 ipv4:192.168.1.39/32 mx -all"
Integração Postfix com Active Directory
Perguntas
Integração Postfix com Active Directory
Agradecimentos
Anderson Iório
Amilton Xavier
Edinaldo Santos
Genesis Lima
Paulo Júnior
Thiago Cavalcante
tlcavalcante@gmail.com
http://tlcavalcante.blogspot.com

Mais conteúdo relacionado

Semelhante a Integração Postfix Active Directory

Qconsp 2016 escalando uma plataforma de e-mail transacional- aprendizado da...
Qconsp 2016   escalando uma plataforma de e-mail transacional- aprendizado da...Qconsp 2016   escalando uma plataforma de e-mail transacional- aprendizado da...
Qconsp 2016 escalando uma plataforma de e-mail transacional- aprendizado da...fabio perrella
 
Escalando uma plataforma de e-mail transacional- aprendizado das trincheiras
Escalando uma plataforma de e-mail transacional- aprendizado das trincheirasEscalando uma plataforma de e-mail transacional- aprendizado das trincheiras
Escalando uma plataforma de e-mail transacional- aprendizado das trincheirasCelso Crivelaro
 
Exchange Online with SharePoint - Improve Your App.
Exchange Online with SharePoint - Improve Your App.Exchange Online with SharePoint - Improve Your App.
Exchange Online with SharePoint - Improve Your App.Joao Livio
 
Apostila de sql basico
Apostila de sql basicoApostila de sql basico
Apostila de sql basicoFernando Palma
 
Curso ExtJS 4 - Aula 23: Data Package: JsonP Proxy
Curso ExtJS 4 - Aula 23: Data Package: JsonP ProxyCurso ExtJS 4 - Aula 23: Data Package: JsonP Proxy
Curso ExtJS 4 - Aula 23: Data Package: JsonP ProxyLoiane Groner
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIgor Takenami
 
Integração de sistemas legados com Plone
Integração de sistemas legados com PloneIntegração de sistemas legados com Plone
Integração de sistemas legados com PloneFabiano Weimar
 
MVP ShowCast IT - Mensageria - Exchange 2013 Arquitetura do Produto
MVP ShowCast IT - Mensageria - Exchange 2013 Arquitetura do ProdutoMVP ShowCast IT - Mensageria - Exchange 2013 Arquitetura do Produto
MVP ShowCast IT - Mensageria - Exchange 2013 Arquitetura do ProdutoRover Marinho
 
Curso E-mail Profissional com Zimbra
Curso E-mail Profissional com ZimbraCurso E-mail Profissional com Zimbra
Curso E-mail Profissional com ZimbraGrupo Treinar
 
Desenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a DadosDesenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a DadosVitor Silva
 
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1Thyago Maia
 
Zabbix monitorando o zimbra collaboration 8.8 (1)
Zabbix   monitorando o zimbra collaboration 8.8 (1)Zabbix   monitorando o zimbra collaboration 8.8 (1)
Zabbix monitorando o zimbra collaboration 8.8 (1)PAULO R. DEOLINDO JUNIOR
 
Enterprise services com .net
Enterprise services com .netEnterprise services com .net
Enterprise services com .netFernando Palma
 
Apresentação do Kbase Framework
Apresentação do Kbase FrameworkApresentação do Kbase Framework
Apresentação do Kbase FrameworkAndré Luis
 

Semelhante a Integração Postfix Active Directory (20)

Oficial
OficialOficial
Oficial
 
Qconsp 2016 escalando uma plataforma de e-mail transacional- aprendizado da...
Qconsp 2016   escalando uma plataforma de e-mail transacional- aprendizado da...Qconsp 2016   escalando uma plataforma de e-mail transacional- aprendizado da...
Qconsp 2016 escalando uma plataforma de e-mail transacional- aprendizado da...
 
Escalando uma plataforma de e-mail transacional- aprendizado das trincheiras
Escalando uma plataforma de e-mail transacional- aprendizado das trincheirasEscalando uma plataforma de e-mail transacional- aprendizado das trincheiras
Escalando uma plataforma de e-mail transacional- aprendizado das trincheiras
 
Exchange Online with SharePoint - Improve Your App.
Exchange Online with SharePoint - Improve Your App.Exchange Online with SharePoint - Improve Your App.
Exchange Online with SharePoint - Improve Your App.
 
Apostila de sql basico
Apostila de sql basicoApostila de sql basico
Apostila de sql basico
 
Curso ExtJS 4 - Aula 23: Data Package: JsonP Proxy
Curso ExtJS 4 - Aula 23: Data Package: JsonP ProxyCurso ExtJS 4 - Aula 23: Data Package: JsonP Proxy
Curso ExtJS 4 - Aula 23: Data Package: JsonP Proxy
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de Sistemas
 
Integração de sistemas legados com Plone
Integração de sistemas legados com PloneIntegração de sistemas legados com Plone
Integração de sistemas legados com Plone
 
Ajmc
AjmcAjmc
Ajmc
 
Ajmc
AjmcAjmc
Ajmc
 
MVP ShowCast IT - Mensageria - Exchange 2013 Arquitetura do Produto
MVP ShowCast IT - Mensageria - Exchange 2013 Arquitetura do ProdutoMVP ShowCast IT - Mensageria - Exchange 2013 Arquitetura do Produto
MVP ShowCast IT - Mensageria - Exchange 2013 Arquitetura do Produto
 
Curso E-mail Profissional com Zimbra
Curso E-mail Profissional com ZimbraCurso E-mail Profissional com Zimbra
Curso E-mail Profissional com Zimbra
 
Desenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a DadosDesenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a Dados
 
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
 
Zabbix monitorando o zimbra collaboration 8.8 (1)
Zabbix   monitorando o zimbra collaboration 8.8 (1)Zabbix   monitorando o zimbra collaboration 8.8 (1)
Zabbix monitorando o zimbra collaboration 8.8 (1)
 
Prog web 05-php-mysql
Prog web 05-php-mysqlProg web 05-php-mysql
Prog web 05-php-mysql
 
Workshop Magento
Workshop MagentoWorkshop Magento
Workshop Magento
 
Php12
Php12Php12
Php12
 
Enterprise services com .net
Enterprise services com .netEnterprise services com .net
Enterprise services com .net
 
Apresentação do Kbase Framework
Apresentação do Kbase FrameworkApresentação do Kbase Framework
Apresentação do Kbase Framework
 

Integração Postfix Active Directory

  • 1. Integração Postfix com Active Directory Thiago Cavalcante tlcavalcante@gmail.com http://tlcavalcante.blogspot.com
  • 2. Integração Postfix com Active Directory Cenário encontrado: - Servidor obsoleto; - Configuração inadequada; (Armazenamento, MTA, listas e webmail no mesmo servidor); - Problemas com spam e vírus; - Quota insuficiente (100Mb); - Lentidão no processamento das mensagens; - Sistema operacional desatualizado (Slack 9.1) - Webmail desatualizado; - Falhas de segurança; - Backup não confiável; - Múltiplas contas para gerenciar (AD, E-Mail, Sistemas...)
  • 3. Integração Postfix com Active Directory Novo cenário: - Servidores novos; - Separação dos serviços em maquinas dedicadas; - Aumento da quota (de 100Mb para 1Gb); - Filtros de spam e vírus mais eficiente; - Velocidade no processamento das mensagens; - Sistema operacional atualizado (Debian Lenny) - Redução significativa nas falhas de segurança; - Backup confiável, contingência e recuperação de desastres; - Plataforma única de autenticação; - Conta única para o usuário; - Melhor gerenciamento de recursos; - Novo Webmail (emexis); - Novos serviços (agenda, tarefas, etc.); - Possibilidade de expansão da plataforma.
  • 4. Integração Postfix com Active Directory Novo cenário:
  • 5. Integração Postfix com Active Directory Mãos a obra!!!
  • 6. Integração Postfix com Active Directory Mail Server
  • 7. Integração Postfix com Active Directory Softwares necessários: - Debian Lenny; - Postfix; - Courier; - Spamassassin; - ClamAV; - Ldap Browser; - Windows Server; Instale o sistema operacional somente com a opção “sistema básico”.
  • 8. Integração Postfix com Active Directory Instalação de pacotes: apt-get install courier-authdaemon courier-authlib courier-authlib-dev courier-authlib-ldap courier-base courier-imap courier-maildrop postfix postfix-ldap postfix-policyd-spf-perl libsasl2-2 libsasl2-modules libsasl2-modules-ldap sasl2-bin clamav-base clamav-daemon clamav-freshclam spamassassin htop openssh-server build-essential rcconf dnsutils locate nmap open-iscsi rsync
  • 9. Integração Postfix com Active Directory vim /etc/postfix/main.cf mailbox_command_maps = ldap:accounts virtual_maps = ldap:grupos ldap:forward virtual_mailbox_maps = ldap:accounts accounts_server_host = 192.168.1.190 accounts_bind_dn = cn=bind,cn=Users,dc=solisc accounts_bind_pw = Solisc2010 accounts_search_base = ou=Usuarios,dc=solisc accounts_query_filter = (&(objectClass=organizationalPerson)(mail=%s)) accounts_result_attribute = mail accounts_bind = yes grupos_server_host = 192.168.1.190 grupos_bind_dn = cn=bind,cn=Users,dc=solisc grupos_bind_pw = Solisc2010 grupos_version = 3 grupos_search_base = ou=Usuarios,dc=solisc grupos_query_filter = (&(objectClass=group)(description=%s)) grupos_special_result_attribute = member grupos_result_attribute = mail grupos_recursion_limit = 5000 forward_server_host = 192.168.1.190 forward_bind_dn = cn=bind,cn=Users,dc=solisc forward_bind_pw = Solisc2010 forward_version = 3 forward_timeout = 10 forward_chase_referral = 0 forward_search_base = ou=Usuarios,dc=solisc forward_query_filter = (&(mail=%s)(objectClass=organizationalPerson)) forward_result_attribute = streetAddress
  • 10. Integração Postfix com Active Directory /etc/courier/authdaemonrc authmodulelist="authldap" authmodulelistorig="authldap" daemons=50 authdaemonvar=/var/run/courier/authdaemon DEBUG_LOGIN=0 DEFAULTOPTIONS="" LOGGEROPTS=""
  • 11. Integração Postfix com Active Directory vim /etc/courier/authldaprc LDAP_URI ldap://192.168.1.190 LDAP_SERVER 192.168.1.190 LDAP_PORT 389 LDAP_PROTOCOL_VERSION 3 LDAP_AUTHBIND 1 LDAP_BASEDN dc=solisc LDAP_BINDDN cn=bind,cn=users,dc=solisc LDAP_BINDPW Solisc2010 LDAP_TIMEOUT 5 LDAP_FILTER (objectClass=organizationalPerson) LDAP_DOMAIN solisc LDAP_FULLNAME cn LDAP_CLEARPW clearPassword LDAP_CRYPTPW userPassword LDAP_MAIL mail LDAP_GLOB_UID 1000 LDAP_GLOB_GID 1000 LDAP_MAILDIR wWWHomePage LDAP_HOMEDIR l LDAP_DEREF never LDAP_MAILDIRQUOTA st
  • 12. Integração Postfix com Active Directory No Windows
  • 13. Integração Postfix com Active Directory Mail Gateway
  • 14. Integração Postfix com Active Directory Instalação de pacotes: apt-get install postfix postfix-ldap postfix-policyd-spf-perl clamav-base clamav-daemon clamav-freshclam spamassassin htop openssh-server build-essential rcconf dnsutils locate nmap rsync
  • 15. Integração Postfix com Active Directory vim /etc/postfix/main.cf relay_domains = solisc.org.br transport_maps = hash:/etc/postfix/transport relay_recipient_maps = hash:/etc/postfix/ad_recipents vim /etc/postfix/master.cf smtp inet n - n - - smtpd -o content_filter=clamav:clamav clamav unix - n n - 10 pipe flags=Rq user=clamav argv=/usr/lib/postfix/clamav-filter.sh -f ${sender} -- ${recipient} policy unix - n n - - spawn user=nobody argv=/usr/bin/perl /usr/lib/postfix/policyd-spf-perl vim /etc/postfix/transport solisc.org.br smtp:[192.168.1.180] vim /etc/spamassassin/local.cf rewrite_header Subject *****SPAM***** trusted_networks 192.168.1.0/24 required_score 5.0 use_bayes 1 bayes_auto_learn 1 bayes_ignore_header X-Bogosity bayes_ignore_header X-Spam-Flag bayes_ignore_header X-Spam-Status vim /etc/postfix/ad_recipients #!/bin/bash /usr/sbin/getadsmtp.pl postmap /etc/postfix/ad_recipients
  • 16. Integração Postfix com Active Directory Instalando o SPF perl -MCPAN -e shell install Mail::SPF q Editar o arquivo de DNS e incluir a linha do SPF abaixo do MX solisc.org.br.IN TXT "v=spf1 ipv4:192.168.1.39/32 mx -all" Testando: host -t txt solisc.org.br solisc.org.br descriptive text "v=spf1 ipv4:192.168.1.39/32 mx -all"
  • 17. Integração Postfix com Active Directory Perguntas
  • 18. Integração Postfix com Active Directory Agradecimentos Anderson Iório Amilton Xavier Edinaldo Santos Genesis Lima Paulo Júnior Thiago Cavalcante tlcavalcante@gmail.com http://tlcavalcante.blogspot.com