Escolar Documentos
Profissional Documentos
Cultura Documentos
Muitas pessoas vêm procurando informações sobre como integrar o postfix (e outros serviços) com o
Active Directory, porém as informações normalmente são poucas e estão muito espalhadas. Baseado em
alguns treinamentos que participei, e com a ajuda de um grande amigo (Rogério Moura –
rogerpop@gmail.com), procurei juntar essas informações tentando facilitar a vida dos amigos
administradores de rede. Certamente essa não é a única maneira de integrar o postfix com o AD, mas foi a
forma que melhor atendeu minhas necessidades num primeiro momento.
Abaixo tentarei descrever da forma mais objetiva possível como fazer a integração. O sistema operacional
usado como referência nesse documento é o SUSE Linux 10.0, o processo de instalação (em inglês) está
descrito em
http://www.novell.com/documentation/suse10/index.html?page=/documentation/suse10/startguide/data/c
ha_inst.html. Acredito que não seja muito diferente em outras distribuições. Não entrarei em detalhes
sobre como configurar o Active Directory, há muita informação sobre esse assunto na Internet.
IMPORTANTE: É necessário ter o serviço WINS instalado no servidor que está rodando o AD.
Caso tenha alguma dúvida, crítica ou sugestão, sinta-se à vontade em me mandar um e-mail.
Preparando o ambiente
Dados dos servidores
Servidor Postfix
Domínio = meuad.com.br
Nome do host = mailserver
Endereço IP = 192.168.0.20
Kerberos
Configurando o kerberos
# vi /etc/krb5.conf
[libdefaults]
default_realm = MEUAD.COM.BR
[realms]
MEUAD.COM.BR = {
kdc = ADSERVER.MEUAD.COM.BR
}
[domain_realm]
.kerberos.server = MEUAD.COM.BR
[logging]
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmin.log
default = FILE:/var/log/krb5lib.log
[appdefaults]
pam = {
ticket_lifetime = 1d
renew_lifetime = 1d
forwardable = true
proxiable = false
}
Após a configuração você poderá testar a comunicação entre o kerberos e o AD. Basta executar o
comando abaixo e inserir a senha quando solicitado.
# kinit administrador@MEUAD.COM.BR
Isso irá gerar um ticket para o usuário “administrador”. Se tudo correu bem, você pode listar os tickets
ativos:
# klist
NSSwitch
Altere as linhas abaixo do arquivo /etc/nsswitch.conf
Samba
Configure o samba conforme abaixo.
# vi /etc/samba/smb.conf
[global]
unix charset = ISO-8859-1
workgroup = MEUAD
netbios name = MAILSERVER
server string = MailServer
load printers = no
log file = /var/log/samba/log.%m
max log size = 500
realm = MEUAD.COM.BR
security = ads
auth methods = winbind
password server = adserver.meuad.com.br
winbind separator = +
encrypt passwords = yes
winbind cache time = 15
winbind enum users = yes
winbind enum groups = yes
winbind use default domain = yes
idmap uid = 10000-20000
idmap gid = 10000-20000
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
local master = no
os level = 233
domain master = no
preferred master = no
domain logons = no
wins server = 192.168.0.10
dns proxy = no
ldap ssl = no
# vi /etc/hosts
Sincronize o horário dos servidores, uma das formas de se fazer isso é usando o NTP.
# ntpdate ntp.cais.rnp.br
No Windows você pode adicionar o servidor NTP nas configurações de Data e Hora.
# rcsmb restart
# rcnmb restart
# rcwinbind restart
# rcnscd stop
Para testar se o servidor linux foi adicionado com sucesso ao domínio do AD execute os seguintes
comandos:
# wbinfo -u
# wbinfo -g
Esses comandos irão retornar, respectivamente, a lista de usuários e grupos disponíveis no AD.
Postfix
O postfix não exige nenhuma configuração especial nesse ambiente. O mais importante é configurar
corretamente as diretivas mydomain e myhostname, as demais diretivas devem ser configuradas de
acordo com o ambiente onde será instalado.
POP3
Instale o qpopper para ser o servidor pop, é muito simples de configurar. O qpopper também não precisa
de nenhuma configuração especial para autenticar usuários no AD, apenas configure o pam corretamente.
PAM
Altere o arquivo /etc/pam.d/pop3
#%PAM-1.0
auth required pam_winbind.so
account required pam_winbind.so
# chkconfig -s postfix on
# chkconfig -s smb on
# chkconfig -s nmb on
# chkconfig -s winbind on
# chkconfig -s krb5 on
disable = no
SMTP Autenticado
Instale os pacotes cyrus-sasl, cyrus-sasl-saslauthd e cyrus-sasl-plain (todos na versão 2).
pwcheck_method: saslauthd
#%PAM-1.0
enable_sasl_authentication = yes
broken_sasl_auth_clients = yes
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain =
Reinicie o postfix
# postfix reload
Para testar se funcionou execute os comandos abaixo. As linhas em negrito são os comandos que devem
ser executados, as demais linhas são as respostas do servidor.
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
ehlo localhost
250-localhost
250-PIPELINING
250-SIZE 20480000
250-ETRN
250-AUTH=PLAIN LOGIN
250 8BITMIME
quit
221 Bye
Se tudo deu certo a resposta do servidor deverá incluir as linhas iniciadas por 250-AUTH.
Próximas versões
Nas próximas versões desse documento, pretendo adicionar os seguintes itens:
• Suporte a quotas;
Histórico
• 0.03 – Pequenas correções no texto e tópico sobre smtp autenticado