Cenário
Apresento aqui um exemplo do cenário que encontrei quando houve a solicitação da criação do servidor de e-mail:
Servidor 1:
Obs.: não entrarei em detalhes da instalação do Windows ou AD. Servidor 2:
Obs.: não entrarei em detalhes da instalação do Debian. Instalação do Samba + KerberosO primeiro passo da preparação do servidor de e-mail é a instalação do Samba + Kerberos. E com estes pacotes teremos acesso aos usuários e grupos do AD. Os pacotes necessários, são:
Então, para a instalação executamos o seguinte comando: # aptitude install krb5-user samba samba-common winbind ntpdate Todos os pacotes serão automaticamente instalados e devemos, neste passo, selecionar a opção recomendada pelo instalador, caso seja solicitado. Após a instalação iniciaremos as configurações, começando pelo arquivo /etc/hosts, onde faremos a indicação dos endereços de algumas máquinas importantes na nossa rede. Execute e comando: # vi /etc/hosts Adicione as linhas abaixo ao final do arquivo: 192.168.1.203 wolverine.xmen.com.br wolverine
192.168.1.200 storm.xmen.com.br storm Seguindo as configurações editaremos o arquivo /etc/resolv.conf. Nele, indicaremos qual será o nosso servidor DNS (o mesmo servidor do AD). Vamos editar o arquivo “resolv.conf” com os dados do domínio e o DNS do AD. Execute e comando: # vi /etc/resolv.conf Substitua todo o conteúdo do arquivo pelas linhas abaixo (lembrando de substituir os nomes para sua realidade): domain xmen.com.br
search xmen.com.br nameserver 192.168.1.203 Configuração do KerberosKerberos é o protocolo que faz com que as informações trafeguem com segurança pela rede. Ele requer uma configuração específica para o servidor que controla o domínio. Vamos editar o arquivo /etc/krb5.conf com os dados da nossa rede. O que está em maiúsculo deve permanecer em maiúsculo. Execute e comando: # vi /etc/krb5.conf Substitua todo o conteúdo do arquivo pelas linhas abaixo (lembrando de substituir os nomes para sua realidade): [libdefaults]
default_realm = XMEN.COM.BR dns_lookup_realm= true dns_lookup_kdc= true ticket_lifetime= 24h forwardable= yes krb4_config = /etc/krb.conf v4_instance_resolve = false [realms] [domain_realm] [login] #Fim do arquivo Agora testaremos as configurações e a comunicação segura com o AD. Execute e comando: # kinit [email protected] Se o seu Windows está em pt_BR, provavelmente você deverá usar: [email protected]. Será solicitada a senha do usuário indicado do AD, não deverá aparecer qualquer erro. |
|
Configuração do Samba + Ingresso no domínio
Nesta etapa vamos fazer a configuração do Samba, onde poderemos, além de usarmos os usuários do AD, compartilhar diretórios diretamente da máquina GNU/Linux.
Para configurar o Samba editaremos o arquivo /etc/samba/smb.conf. Arquivo onde, posteriormente, poderemos configurar outras funções de compartilhamentos. Execute e comando: # vi /etc/samba/smb.conf Substitua todo o conteúdo do arquivo pelas linhas abaixo (lembrando de substituir os nomes para sua realidade): [global]
#Domínio no qual o servidor fará parte workgroup = XMEN #Nome que o servidor será visto quando visualizada a rede server string = Servidor Emails #Nome NetBIOS do servidor (hostname) netbios name = storm #Domínio para login realm = XMEN.COM.BR #Arquivo onde será gerado o log do Samba log file = /var/log/samba/%m.log #Nível do log os level = 20 #Tamanho máximo do arquivo de log max log size = 50 #Nível do debug debug level = 1 #Tipo de segurança de autenticação security = ADS encrypt passwords = yes socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 unix charset = UTF-8 password server = * winbind enum users = yes winbind enum groups = yes winbind use default domain = yes #Faixa de IDs dos grupos do AD #Fim do arquivo Agora configuraremos o sistema para que ele solicite as senhas dos usuários também no servidor AD. Então editamos o arquivo /etc/nsswitch.conf com o parâmetro necessário. Execute e comando: # vi /etc/nsswitch.conf Substitua o conteúdo das linhas abaixo:
Pelo seguinte conteúdo: passwd: compat winbind
group: compat winbind shadow: compat winbind Com todas as configurações feitas, podemos fazer o ingresso do servidor de e-mails como um cliente do nosso domínio Windows. Para ingressar no domínio, execute o comando: # net ads join -U administrator Obs.: Se o seu Windows está em pt_BR, provavelmente você devera usar “administrador”. Será solicitada a senha do administrador e a máquina será adicionada ao domínio. Para concluir as configurações é necessário a reinicialização dos serviços Samba e Winbind. Execute os comandos: # /etc/init.d/samba restart Para verificarmos a comunicação de todos os serviços devemos executar os seguintes comandos: 1. Mostra que o terminal está devidamente configurado no servidor: # net ads testjoin 2. Mostra que a comunicação com o servidor está OK: # wbinfo -t 3. Lista os usuários do AD: # wbinfo -u 4. Lista os grupos do AD: # wbinfo -g 5. Lista todos os usuários do sistema (GNU/Linux + AD): # getent passwd 6. Lista todos os grupos do sistema (GNU/Linux + AD): # getent group |
|
Instalação e configuração do Postfix + Courier
Postfix é um agente de transferência de e-mails (MTA) prático, seguro e fácil de administrar. Será o principal serviço do nosso servidor GNU/Linux.
Para instalar o Postfix execute o comando: # aptitude install postfix postfix-doc Obs.: Na instalação será questionado qual o tipo do servidor. Deve ser selecionada a opção: “Servidor de Internet” A configuração desse serviço é bem simples, basta editarmos o arquivo /etc/postfix/main.cf. Execute o comando: # vi /etc/postfix/main.cf Substitua todo o conteúdo do arquivo pelas linhas abaixo (lembrando de substituir os nomes para sua realidade): #Especifique seu domínio
mydomain = xmen.com.br #hostname do servidor de e-mails myhostname = storm.$mydomain #Domínio remetente do e-mail myorigin = $mydomain #Domínios que esse servidor vai receber como destinatário mydestination = $myhostname, $mydomain #Especifique aqui a sua rede mynetworks = 127.0.0.0/8 192.168.1.0/24 #Diretório destino da mensagem dentro do diretório de cada usuário home_mailbox = Maildir/ #Fim do arquivo Depois de salvo o arquivo, faremos um reload no serviço do Postfix para que ele assuma as novas configurações. Execute o comando: # postfix reload Em seguida usamos uma ferramenta do próprio Postfix para verificar a integridade das configurações. Execute o comando: # postfix check O retorno desse comando deve ser vazio! Nesse ponto já podemos fazer um teste do funcionamento do Postfix. Para isso usaremos o comando mail. Execute o comando: # echo “Teste de funcionamento do POSTFIX” | mail -s “Criação de Conta” root Verifique no diretório /root se foi criado o diretório Maildir. Dentro do novo diretório deve existir a mensagem no diretório new, até que ela seja lida. FinalizaçãoPara acessarmos a caixa de mensagens de cada um dos usuários usaremos o Courier, mais especificamente o pacote IMAP, já que esse tipo de comunicação já mantém os arquivos no servidor criando um repositório em uma única máquina. Para instalar o Courier execute o comando: # aptitude install courier-authdaemon courier-imap |
|
Script de criação do diretório Maildir
Nesse ponto já temos funcionando os serviços de transmissão e entrega de e-mails aos usuários. Mas esses e-mails serão entregues no diretório padrão de cada usuário, que no caso dos usuários do AD, configuramos como /home/$user lá no “smb.conf”.
Acontece que estes diretórios não são criados automaticamente, como na criação de um usuário no próprio GNU/Linux. Então criei um script que vai listar os usuários novos na base do AD e criar os diretórios para estes novos usuários. Para executarmos o script, criaremos o seguinte diretório: /usersdominio. Execute o comando: # mkdir /usersdominio Crie o script. Execute o comando: # vi /usersdominio/criacontas.sh Acrescente o seguinte conteúdo: #!/bin/bash
/etc/init.d/winbind restart #### Lista as contas que ja existem e ordena #### Lista as contas do AD e compara definindo as novas #### Rotina para criacao dos diretorios e MAILDIR for usuario in `cat /usersdominio/novos.txt` #### Deleta a lista dos novos #Fim do arquivo Agora vamos deixá-lo executável. Execute o comando: # chmod +x /usersdominio/criacontas.sh Se quiser é possível agendar para que o script rode a cada período deixando a criação mais automática. Agora basta configurar a conta no seu leitor de e-mail preferido ou instalar um Webmail (que poderá ser tema de um outro artigo). * Lembrando: para a autenticação das contas usamos os usuários e senhas do AD. |