Pesquisa de site

Como integrar o iRedMail Roundcube ao Samba4 AD DC - Parte 12


Roundcube, um dos agentes de usuário de webmail mais utilizados no Linux, oferece uma interface web moderna para que os usuários finais interajam com todos os serviços de correio para ler, redigir e enviar e-mails. Roundcube suporta uma variedade de protocolos de correio, incluindo os seguros, como IMAPS, POP3S ou submissão.

Neste tópico discutiremos como configurar o Roundcube no iRedMail com IMAPS e enviar portas seguras para recuperar e enviar e-mails para contas Samba4 AD, como acessar a interface da web do iRedMail Roundcube a partir de um navegador e adicionar um alias de endereço da web, como habilitar o Samba4 Integração AD para catálogo de endereços LDAP global e como desabilitar alguns serviços iRedMail desnecessários.

Requisitos

  1. Como instalar o iRedMail no CentOS 7 para integração com Samba4 AD
  2. Configure o iRedMail no CentOS 7 para integração com Samba4 AD

Etapa 1: declarar endereço de e-mail para contas de domínio no Samba4 AD DC

1. Para enviar e receber e-mails para contas de domínio Samba4 AD DC, você precisa editar cada conta de usuário e definir explicitamente o e-mail arquivado com o endereço de e-mail apropriado abrindo Ferramenta ADUC de uma máquina Windows com ferramentas RSAT instaladas e associadas ao Samba4 AD conforme ilustrado na imagem abaixo.

2. Da mesma forma, para usar listas de e-mail, você precisa criar grupos no ADUC, adicionar o endereço de e-mail correspondente para cada grupo e atribuir as contas de usuário adequadas como membros do grupo.

Com esta configuração criada como uma lista de e-mail, todas as caixas de correio dos membros de um grupo Samba4 AD receberão mensagens destinadas a um endereço de e-mail do grupo AD. Use as capturas de tela abaixo como guia para declarar o e-mail arquivado para uma conta de grupo Samba4 e adicionar usuários de domínio como membros do grupo.

Certifique-se de que todos os membros da conta adicionados a um grupo tenham seus endereços de e-mail declarados.

Neste exemplo, todos os e-mails enviados para o endereço de e-mail [email  declarado para o grupo "Administradores de domínio" serão recebidos por cada caixa de correio membro deste grupo.

3. Um método alternativo que você pode usar para declarar o endereço de e-mail para uma conta Samba4 AD é criar um usuário ou grupo com a linha de comando do samba-tool diretamente de um dos consoles do AD DC. e especifique o endereço de e-mail com o sinalizador --mail-address.

Use uma das seguintes sintaxes de comando para criar um usuário com endereço de e-mail especificado:

samba-tool user add  [email   --surname=your_surname  --given-name=your_given_name  your_ad_user

Crie um grupo com endereço de e-mail especificado:

samba-tool group add  [email   your_ad_group

Para adicionar membros a um grupo:

samba-tool group addmembers your_group user1,user2,userX

Para listar todos os campos de comando da ferramenta samba disponíveis para um usuário ou grupo, use a seguinte sintaxe:

samba-tool user add -h
samba-tool group add -h

Etapa 3: Webmail Roundcube seguro

4. Antes de modificar o arquivo de configuração do Roundcube, primeiro use o comando netstat canalizado através do filtro egrep para listar os soquetes que o Dovecot e o Postfix escutam e garantir que as portas estejam devidamente protegidas (993 para IMAPS e 587 para envio) estão ativos e habilitados.

netstat -tulpn| egrep 'dovecot|master'

5. Para impor a recepção e transferência de e-mail entre os serviços Roundcube e iRedMail em portas IMAP e SMTP seguras, abra o arquivo de configuração do Roundcube localizado em /var/www/roundcubemail/config/config.inc.php e certifique-se de alterar as seguintes linhas, para localhost neste caso, conforme mostrado no trecho abaixo:

// For IMAPS
$config['default_host'] = 'ssl://127.0.0.1';
$config['default_port'] = 993;
$config['imap_auth_type'] = 'LOGIN';

// For SMTP
$config['smtp_server'] = 'tls://127.0.0.1';
$config['smtp_port'] = 587;
$config['smtp_user'] = '%u';
$config['smtp_pass'] = '%p';
$config['smtp_auth_type'] = 'LOGIN';

Esta configuração é altamente recomendada caso o Roudcube esteja instalado em um host remoto diferente daquele que fornece serviços de correio (daemons IMAP, POP3 ou SMTP).

6. Em seguida, não feche o arquivo de configuração, pesquise e faça as seguintes pequenas alterações para que o Roundcube seja visitado apenas via protocolo HTTPS, para ocultar o número da versão e anexar automaticamente o nome de domínio para contas que fazem login na interface da web.

$config['force_https'] = true;
$config['useragent'] = 'Your Webmail'; // Hide version number
$config['username_domain'] = 'domain.tld'

7. Além disso, desative os seguintes plug-ins: managesieve e password adicionando um comentário (//) na frente da linha que começa com $config['plugins'].

Os usuários alterarão sua senha de uma máquina Windows ou Linux associada ao Samba4 AD DC assim que fizerem login e autenticação no domínio. Um administrador de sistema gerenciará globalmente todas as regras de peneira para contas de domínio.

// $config['plugins'] = array('managesieve', 'password');

8. Por fim, salve e feche o arquivo de configuração e visite o Roundcube Webmail abrindo um navegador e navegue até o endereço IP do iRedMail ou localização FQDN/mail via protocolo HTTPS.

Na primeira vez que você visitar o Roundcube, um alerta deverá aparecer no navegador devido ao certificado autoassinado que o servidor web usa. Aceite o certificado e faça login com credenciais de conta Samba AD.

https://iredmail-FQDN/mail

Etapa 3: ativar contatos do Samba AD no Roundcube

9. Para configurar o catálogo de endereços LDAP global do Samba AD para que apareça os contatos do Roundcube, abra o arquivo de configuração do Roundcube novamente para edição e faça as seguintes alterações:

Navegue até o final do arquivo e identifique a seção que começa com ‘# Global LDAP Address Book with AD’, exclua todo o seu conteúdo até o final do arquivo e substitua-o pelo seguinte bloco de código:


Global LDAP Address Book with AD.
#
$config['ldap_public']["global_ldap_abook"] = array(
    'name'          => 'tecmint.lan',
    'hosts'         => array("tecmint.lan"),
    'port'          => 389,
    'use_tls'       => false,
    'ldap_version'  => '3',
    'network_timeout' => 10,
    'user_specific' => false,

    'base_dn'       => "dc=tecmint,dc=lan",
    'bind_dn'       => "[email ",
    'bind_pass'     => "your_password",
    'writable'      => false,

    'search_fields' => array('mail', 'cn', 'sAMAccountName', 'displayname', 'sn', 'givenName'),
	
    'fieldmap' => array(
        'name'        => 'cn',
        'surname'     => 'sn',
        'firstname'   => 'givenName',
        'title'       => 'title',
        'email'       => 'mail:*',
        'phone:work'  => 'telephoneNumber',
        'phone:mobile' => 'mobile',

        'department'  => 'departmentNumber',
        'notes'       => 'description',

    ),
    'sort'          => 'cn',
    'scope'         => 'sub',
    'filter' => '(&(mail=*)(|(&(objectClass=user)(!(objectClass=computer)))(objectClass=group)))',
    'fuzzy_search'  => true,
    'vlv'           => false,
    'sizelimit'     => '0',
    'timelimit'     => '0',
    'referrals'     => false,
);

Neste bloco de código substitua nome, hosts, base_dn, bind_dn e bind_pass valores em conformidade.

10. Depois de fazer todas as alterações necessárias, salve e feche o arquivo, faça login na interface do webmail do Roundcube e vá para o menu Catálogo de endereços.

Clique no nome escolhido em seu Catálogo de Endereços Global e uma lista de contatos de todas as contas de domínio (usuários e grupos) com seus endereços de e-mail especificados deverá ficar visível.

Etapa 4: adicionar um alias para a interface de webmail do Roundcube

11. Para visitar o Roundcube em um endereço da web com o seguinte formato https://webmail.domain.tld em vez do endereço antigo fornecido por padrão pelo iRedMail, você precisa fazer as seguintes alterações.

Em uma máquina Windows unida com ferramentas RSAT instaladas, abra o Gerenciador DNS e adicione um novo registro CNAME para iRedMail FQDN, denominado webmail, conforme ilustrado na imagem a seguir.

12. Em seguida, na máquina iRedMail, abra o arquivo de configuração SSL do servidor web Apache localizado em /etc/httpd/conf.d/ssl.conf e altere a diretiva DocumentRoot para apontar para /var/www/roundcubemail/ caminho do sistema.

arquivo /etc/httpd/conf.d/ssl.conf trecho:

DocumentRoot “/var/www/roundcubemail/”

Reinicie o daemon Apache para aplicar as alterações.

systemctl restart httpd

13. Agora, aponte o navegador para o seguinte endereço e a interface do Roundcube deverá aparecer. Aceite o erro do certificado autoassinado para continuar na página de login. Substitua domain.tld deste exemplo pelo seu próprio nome de domínio.

https://webmail.domain.tld

Etapa 5: desative os serviços não utilizados do iRedMail

14. Como os daemons iRedMail são configurados para consultar o servidor LDAP Samba4 AD DC em busca de informações de conta e outros recursos, você pode parar e desabilitar com segurança alguns serviços locais na máquina iRedMail, como servidor de banco de dados LDAP e serviço iredpad, emitindo os seguintes comandos.

systemctl stop slapd iredpad
systemctl disable slapd iredpad

15. Além disso, desative algumas tarefas agendadas executadas pelo iRedMail, como backup de banco de dados LDAP e registros de rastreamento do iRedPad, adicionando um comentário (#) na frente de cada linha do arquivo crontab. conforme ilustrado na imagem abaixo.

crontab -e

Etapa 6: use o alias de correio no Postfix

16. Para redirecionar todos os e-mails gerados localmente (destinados ao postmaster e posteriormente redirecionados para a conta root) para uma conta específica do Samba4 AD, abra o arquivo de configuração de aliases do Postfix localizado em /etc/postfix/aliases< e modifique a linha raiz da seguinte forma:

root: 	[email 

17. Aplique o arquivo de configuração de aliases para que o Postfix possa lê-lo em seu próprio formato executando o comando newaliases e teste se o e-mail é enviado para a conta de e-mail do domínio apropriado emitindo o seguinte comando.

echo “Test mail” | mail -s “This is root’s email” root

18. Depois que o e-mail for enviado, faça login no webmail do Roundcube com a conta de domínio que você configurou para redirecionamento de e-mail e verifique se o e-mail enviado anteriormente deve ser recebido na caixa de entrada da sua conta.

Isso tudo! Agora você tem um servidor de e-mail totalmente funcional e integrado ao Samba4 Active Directory. As contas de domínio podem enviar e receber mensagens para seu domínio interno ou para outros domínios externos.

As configurações usadas neste tutorial podem ser aplicadas com sucesso para integrar um servidor iRedMail a um Windows Server 2012 R2 ou 2016 Active Directory.