Índice geral da série: Redes de computadores para PMEs: introdução
Este artigo é a continuação e o último da minissérie:
- Autenticação Squid + PAM no CentOS 7.
- Gerenciamento local de usuários e grupos
- Servidor DNS Autoritário NSD + Shorewall
- Prosody IM e usuários locais
Olá amigos e amigos!
Os entusiastas Eles querem ter seu próprio servidor de e-mail. Eles não querem usar servidores onde “Privacidade” esteja entre pontos de interrogação. O responsável pela implementação do serviço no seu pequeno servidor não é especialista no assunto e tentará inicialmente instalar o núcleo de um futuro e completo servidor de e-mail. Acontece que as "equações" para fazer um Full Mailserver são um pouco difíceis de entender e aplicar.
Anotações de margem
- É necessário ter clareza sobre quais funções cada programa envolvido em um Mailserver executa. Como um guia inicial, fornecemos uma série de links úteis com o propósito declarado de que são visitados.
- Implementar manualmente e do zero um Complete Mail Service é um processo cansativo, a menos que você seja um dos “Escolhidos” que realizam este tipo de tarefa diariamente. Um servidor de e-mail é formado -de forma geral- por vários programas que controlam separadamente SMTP, POP / IMAP, Armazenamento Local de Mensagens, tarefas relacionadas ao tratamento do SPAM, Antivírus, etc. TODOS esses programas devem se comunicar uns com os outros corretamente.
- Não há um tamanho único para todos ou "melhores práticas" sobre como gerenciar usuários; onde e como armazenar mensagens ou como fazer com que todos os componentes funcionem como um todo.
- A montagem e o ajuste fino de um Mailserver tende a ser desagradável em questões como permissões e proprietários de arquivos, escolha de qual usuário será o responsável por um determinado processo e em pequenos erros cometidos em algum arquivo de configuração esotérico.
- A menos que você saiba muito bem o que está fazendo, o resultado final será um servidor de email inseguro ou um pouco não funcional. Que no final da implementação Não funcione, possivelmente será o menor dos males.
- Podemos encontrar na Internet um bom número de receitas de como fazer um Mail Server. Um dos mais completos -na minha opinião muito pessoal- é o oferecido pelo autor ivar abrahamsen em sua décima terceira edição de janeiro de 2017 «Como configurar um servidor de e-mail em um sistema GNU / Linux".
- Também recomendamos a leitura do artigo «Um servidor de email no Ubuntu 14.04: Postfix, Dovecot, MySQL«, ou «Um servidor de email no Ubuntu 16.04: Postfix, Dovecot, MySQL".
- Verdadeiro. A melhor documentação a esse respeito pode ser encontrada em inglês.
- Embora nunca façamos um Mailserver fielmente guiado pelo Como… citado no parágrafo anterior, o simples fato de segui-lo passo a passo já nos dará uma ideia muito boa do que estaremos enfrentando.
- Se você deseja ter um Mailserver completo em apenas alguns passos, você pode baixar a imagem iRedOS-0.6.0-CentOS-5.5-i386.isoou procure um mais moderno, seja iRedOS ou iRedMail. É a forma que eu pessoalmente recomendo.
Vamos instalar e configurar:
- Postfix como um servidor Malho Transporte Acavalheiro (SMTP).
- Pombinha como servidor POP - IMAP.
- Certificados para conexões por meio de TLS.
- correio de esquilo como uma interface da web para usuários.
- Registro DNS relativo a «Estrutura de Política do Remetente»Ou SPF.
- Geração de Módulo Grupo Diffie Hellman para aumentar a segurança dos certificados SSL.
Resta ser feito:
Restariam pelo menos os seguintes serviços para serem implementados:
- pós-cinza: Políticas de servidor Postfix para listas de cinza e rejeição de lixo eletrônico.
- amavisd-novo: script que cria uma interface entre o MTA e os antivírus e filtros de conteúdo.
- Clamav Antivírus: pacote de antivírus
- SpamAssassin: extrair lixo eletrônico
- Navalha (pyzor): Captura de SPAM por meio de uma rede distribuída e colaborativa. A rede Vipul Razor mantém um catálogo atualizado da propagação de spam ou lixo eletrônico.
- Registro DNS "DomainKeys Identified Mail" ou DKIM.
Os pacotes postgrey, amavisd-new, clamav, spamassassin, navalha y Pyzor Eles são encontrados nos repositórios do programa. Também encontraremos o programa openkim.
- A declaração correta dos registros DNS "SPF" e "DKIM" é imprescindível se não queremos que nosso servidor de e-mail apenas colocado em operação, seja declarado indesejável ou produtor de SPAM ou Lixo Eletrônico, por outros serviços de e-mail como Gmail, Yah, Hotmailetc.
Verificações iniciais
Lembre-se de que este artigo é uma continuação de outros que começam em Autenticação Squid + PAM no CentOS 7.
Interface Ens32 LAN conectada à rede interna
[root @ linuxbox ~] # nano / etc / sysconfig / network-scripts / ifcfg-ens32
DEVICE=ens32
ONBOOT=yes
BOOTPROTO=static
HWADDR=00:0c:29:da:a3:e7
NM_CONTROLLED=no
IPADDR=192.168.10.5
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
DOMAIN=desdelinux.fan DNS1 = 127.0.0.1
ZONE = public
[root @ linuxbox ~] # ifdown ens32 && ifup ens32
Interface Ens34 WAN conectada à Internet
[root @ linuxbox ~] # nano / etc / sysconfig / network-scripts / ifcfg-ens34
DEVICE=ens34 ONBOOT=yes BOOTPROTO=static HWADDR=00:0c:29:da:a3:e7 NM_CONTROLLED=no IPADDR=172.16.10.10 NETMASK=255.255.255.0 # O roteador ADSL está conectado a # esta interface com # o seguinte endereço IP GATEWAY=172.16.10.1 DOMÍNIO=desdelinux.fan DNS1 = 127.0.0.1
ZONA = externa
Resolução DNS da LAN
[root@linuxbox ~]# cat /etc/resolv.conf pesquisa desdelinux.fan servidor de nomes 127.0.0.1 servidor de nomes 172.16.10.30 [root@linuxbox ~]# host mail correio.desdelinux.fan é um apelido para Linuxbox.desdelinux.fã. linuxbox.desdelinux.fan tem endereço 192.168.10.5 linuxbox.desdelinuxO correio .fan é tratado por 1 correios.desdelinux.fã. [root@linuxbox ~]#hostmail.desdelinux.ventilador correio.desdelinux.fan é um apelido para Linuxbox.desdelinux.fã. linuxbox.desdelinux.fan tem endereço 192.168.10.5 linuxbox.desdelinuxO correio .fan é tratado por 1 correios.desdelinux.fã.
Resolução DNS da Internet
buzz@sysadmin:~$hostmail.desdelinux.ventilador 172.16.10.30 Usando servidor de domínio: Nome: 172.16.10.30 Endereço: 172.16.10.30#53 Aliases: mail.desdelinux.fan é um apelido para desdelinux.fã. desdelinux.fan tem endereço 172.16.10.10 desdelinuxO correio .fan é tratado por 10 correios.desdelinux.fã.
Problemas para resolver o nome do host localmente «desdelinux.fã"
Se você tiver problemas para resolver o nome do host «desdelinux.ventilador" desde a LAN, tente comentar a linha do arquivo /etc/dnsmasq.conf onde é declarado locais=/desdelinux.fã/. Em seguida, reinicie o Dnsmasq.
[root @ linuxbox ~] # nano /etc/dnsmasq.conf # Comente a linha abaixo: #local=/desdelinux.fã/ [root @ linuxbox ~] # service dnsmasq restart Redirecionando para / bin / systemctl restart dnsmasq.service [root @ linuxbox ~] # serviço dnsmasq status [root@linuxbox ~]#host desdelinux.ventilador desdelinux.fan tem endereço 172.16.10.10 desdelinuxO correio .fan é tratado por 10 correios.desdelinux.fã.
Postfix e Dovecot
A extensa documentação do Postfix e Dovecot pode ser encontrada em:
[root @ linuxbox ~] # ls /usr/share/doc/postfix-2.10.1/ bounce.cf.default LICENÇA README-Postfix-SASL-RedHat.txt COMPATIBILITY main.cf.default TLS_ACKNOWLEDGEMENTS exemplos README_FILES TLS_LICENSE [root @ linuxbox ~] # ls /usr/share/doc/dovecot-2.2.10/ AUTORES COPYING.MIT dovecot-openssl.cnf NEWS wiki COPYING ChangeLog example-config README COPYING.LGPL documentation.txt mkcert.sh solr-schema.xml
No CentOS 7, o Postfix MTA é instalado por padrão quando escolhemos a opção Servidor de infraestrutura. Devemos verificar se o contexto SELinux permite a gravação no Potfix na fila de mensagens local:
[root @ linuxbox ~] # getsebool -a | grep postfix
postfix_local_write_mail_spool -> on
Modificações no FirewallD
Usando a interface gráfica para configurar o FirewallD, devemos garantir que os seguintes serviços e portas estejam habilitados para cada Zona:
# ------------------------------------------------- ----- # Correções no FirewallD # ------------------------------------------------- ----- #firewall # Zona pública: serviços http, https, imap, pop3, smtp # Zona pública: portas 80, 443, 143, 110, 25 # Zona externa: http, https, imap, pop3s, serviços smtp # Zona externa: portas 80, 443, 143, 995, 25
Instalamos o Dovecot e os programas necessários
[root @ linuxbox ~] # yum install dovecot mod_ssl procmail telnet
Configuração mínima Dovecot
[root @ linuxbox ~] # nano /etc/dovecot/dovecot.conf protocolos =imap pop3 lmtp ouço =*, :: login_greeting = Dovecot está pronto!
Desabilitamos explicitamente a autenticação de texto simples do Dovecot:
[root @ linuxbox ~] # nano /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = sim
Declaramos o Grupo com os privilégios necessários para interagir com o Dovecot, e a localização das mensagens:
[root @ linuxbox ~] # nano /etc/dovecot/conf.d/10-mail.conf mail_location = mbox: ~ / mail: INBOX = / var / mail /% u mail_privileged_group = correio mail_access_groups = correio
Certificados para o Dovecot
O Dovecot gera automaticamente seus certificados de teste com base nos dados do arquivo /etc/pki/dovecot/dovecot-openssl.cnf. Para que novos certificados sejam gerados de acordo com nossos requisitos, devemos realizar as seguintes etapas:
[root @ linuxbox ~] # cd / etc / pki / dovecot / [root @ linuxbox dovecot] # nano dovecot-openssl.cnf [req] default_bits = 1024 encrypt_key = sim distinto_name = req_dn x509_extensions = cert_type prompt = não [ req_dn ] # país (código de 2 letras) C=CU # Nome do estado ou província (nome completo) ST=Cuba # Nome da localidade (por exemplo, cidade ) L=Havana # Organização (por exemplo, empresa) O=FromLinux.Fan # Nome da unidade organizacional (por exemplo, seção) OU=Entusiastas # Nome comum (*.example.com também é possível) CN=*.desdelinux.fan # E-mail de contato emailAddress=buzz@desdelinux.fan [cert_type] nsCertType = servidor
Eliminamos certificados de teste
[root @ linuxbox dovecot] # rm certs / dovecot.pem rm: deletar o arquivo regular "certs / dovecot.pem"? (s / n) s [root @ linuxbox dovecot] # rm private / dovecot.pem rm: deletar o arquivo regular "private / dovecot.pem"? (s / n) s
Copiamos e executamos o script mkcert.sh do diretório de documentação
[root @ linuxbox dovecot] # cp /usr/share/doc/dovecot-2.2.10/mkcert.sh. [root @ linuxbox dovecot] # bash mkcert.sh Gerando uma chave privada RSA de 1024 bits ......++++++ ................++++++ escrevendo uma nova chave privada em '/etc/ pki/dovecot/private/dovecot.pem' ----- subject= /C=CU/ST=Cuba/L=Havana/O=FromLinux.Fan/OU=Enthusiasts/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan SHA1 Fingerprint=5F:4A:0C:44:EC:EC:EF:95:73:3E:1E:37:D5:05:F8:23:7E:E1:A4:5A [root @ linuxbox dovecot] # ls -l certs / total 4 -rw -------. 1 root 1029 May 22 16:08 dovecot.pem [root @ linuxbox dovecot] # ls -l private / total 4 -rw -------. 1 root 916 May 22 16:08 dovecot.pem [root @ linuxbox dovecot] # service dovecot restart [root @ linuxbox dovecot] # service dovecot status
Certificados para Postfix
[root@linuxbox ~]# cd /etc/pki/tls/ [root@linuxbox tls]# openssl req -sha256 -x509 -nodes -newkey rsa:4096 -days 1825 \ -out certs/desdelinux.fan.crt -keyout privado/desdelinux.fan.key Gerando uma chave privada RSA de 4096 bits .........++ ..++ escrevendo uma nova chave privada em 'private/domain.tld.key' ----- Você está prestes a ser solicitado a inserir informações que será incorporado à sua solicitação de certificado. O que você está prestes a inserir é o que é chamado de Nome Distinto ou DN. Existem alguns campos, mas você pode deixar alguns em branco. Para alguns campos haverá um valor padrão. Se você inserir '.', o campo será deixado em branco. ----- Nome do país (código de 2 letras) [XX]: Nome do estado ou província da CU (nome completo) []: Nome da localidade de Cuba (por exemplo, cidade) [Cidade padrão]: Havana Nome da organização (por exemplo, empresa) [ Default Company Ltd]:FromLinux.Fan Nome da unidade organizacional (por exemplo, seção) []:Nome comum dos entusiastas (por exemplo, seu nome ou o nome do host do seu servidor) []:desdelinuxEndereço de e-mail .fan []:buzz@desdelinux.ventilador
Configuração mínima do Postfix
Adicionamos ao final do arquivo / etc / aliases seguinte:
root: buzz
Para que as alterações tenham efeito, executamos o seguinte comando:
[root @ linuxbox ~] # newaliases
A configuração do Postifx pode ser feita editando diretamente o arquivo /etc/postfix/main.cf ou por comando pós-conf -e tomando cuidado para que todos os parâmetros que desejamos modificar ou adicionar sejam refletidos em uma única linha do console:
- Cada um deve declarar as opções que entende e precisa!.
[root@linuxbox ~]# postconf -e 'meuhostname = desdelinux.fã' [root@linuxbox ~]# postconf -e 'meudominio = desdelinux.fã' [root @ linuxbox ~] # postconf -e 'myorigin = $ mydomain' [root @ linuxbox ~] # postconf -e 'inet_interfaces = all' [root @ linuxbox ~] # postconf -e 'mydestination = $ myhostname, localhost. $ mydomain, localhost, $ mydomain, mail. $ mydomain, www. $ mydomain, ftp. $ mydomain' [root @ linuxbox ~] # postconf -e 'mynetworks = 192.168.10.0/24, 172.16.10.0/24, 127.0.0.0/8' [root @ linuxbox ~] # postconf -e 'mailbox_command = / usr / bin / procmail -a "$ EXTENSION"' [root @ linuxbox ~] # postconf -e 'smtpd_banner = $ myhostname ESMTP $ mail_name ($ mail_version)'
Adicionamos ao final do arquivo /etc/postfix/main.cf as opções fornecidas abaixo. Para saber o significado de cada um deles, recomendamos a leitura da documentação que acompanha.
biff = não append_dot_mydomain = não delay_warning_time = 4h readme_directory = não smtpd_tls_cert_file=/etc/pki/certs/desdelinux.fan.crt smtpd_tls_key_file=/etc/pki/private/desdelinux.fan.key smtpd_use_tls = yes smtpd_tls_session_cache_database = btree: $ {data_directory} / smtpd_scache smtp_tls_session_cache_database = btree: $ {data_directory} / smtp_scache smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination # Tamanho máximo da caixa de correio de 1024 megabytes = 1 ge g caixa_tamanho_limite = 1073741824 destinatário_delimitador = + maximal_queue_lifetime = 7d header_checks = regexp: / etc / postfix / header_checks body_checks = regexp: / etc / postfix / body_checks # Contas que enviam uma cópia do correio recebido para outra conta destinatário_bcc_maps = hash: / etc / postfix / accounts_ forwarding_copy
As linhas a seguir são importantes para determinar quem pode enviar e-mail e retransmitir para outros servidores, de forma que não configuremos acidentalmente um "retransmissão aberta" que permite que usuários não autenticados enviem e-mail. Devemos consultar as páginas de ajuda do Postfix para entender o que cada opção significa.
- Cada um deve declarar as opções que entende e precisa!.
smtpd_helo_restrictions = permit_mynetworks,
warn_if_reject rejeitar_non_fqdn_hostname,
rejeitar_inválido_hostname,
autorização
smtpd_sender_restrictions = permit_sasl_authenticated,
permitir_minhasredes,
warn_if_reject rejeitar_non_fqdn_sender,
rejeitar_desconto_sender_dominio,
rejeitar_unauth_pipelining,
autorização
smtpd_client_restrictions = rejeitar_rbl_client sbl.spamhaus.org,
rejeitar_rbl_client blackholes.easynet.nl
# NOTA: A opção "check_policy_service inet: 127.0.0.1: 10023"
# ativa o programa Postgrey e não devemos incluí-lo
# caso contrário, vamos usar Postgrey
smtpd_recipient_restrictions = rejeitar_unauth_pipelining,
permitir_minhasredes,
permit_sasl_autenticado,
rejeitar_non_fqdn_recipient,
rejeitar_unknown_recipient_domain,
rejeitar_unauth_destino,
check_policy_service inet: 127.0.0.1: 10023,
autorização
smtpd_data_restrictions = rejeitar_unauth_pipelining
smtpd_relay_restrictions = rejeitar_unauth_pipelining,
permitir_minhasredes,
permit_sasl_autenticado,
rejeitar_non_fqdn_recipient,
rejeitar_unknown_recipient_domain,
rejeitar_unauth_destino,
check_policy_service inet: 127.0.0.1: 10023,
autorização
smtpd_helo_required = sim
smtpd_delay_reject = sim
disable_vrfy_command = sim
Nós criamos os arquivos / etc / postfix / body_checks y / etc / postfix / accounts_forwarding_copy, e modificamos o arquivo / etc / postfix / header_checks.
- Cada um deve declarar as opções que entende e precisa!.
[root @ linuxbox ~] # nano / etc / postfix / body_checks
# Se este arquivo for modificado, não é necessário # executar o postmap # Para testar as regras, execute como root: # postmap -q 'super new v1agra' regexp: / etc / postfix / body_checks
# Deve retornar: # REJEITAR o corpo da mensagem anti-spam da regra nº 2
/ viagra / REJECT Regra # 1 Anti-spam do corpo da mensagem
/ super new v [i1] agra / REJECT Regra nº 2 do corpo da mensagem anti-spam
[root @ linuxbox ~] # nano / etc / postfix / accounts_ forwarding_copy
# Depois de modificar, você deve executar: # postmap / etc / postfix / accounts_ forwarding_copy
# e o arquivo é criado ou medido: # /etc/postfix/accounts_forwarding_copy.db
# ------------------------------------------ # UMA conta para encaminhar um BCC copiar # BCC = cópia carbono preto # Exemplo: # webadmin@desdelinux.fã buzz@desdelinux.ventilador
[root @ linuxbox ~] # postmap / etc / postfix / accounts_ forwarding_copy
[root @ linuxbox ~] # nano / etc / postfix / header_checks
# Adicione no final do arquivo # NÃO REQUER Postmap, pois são expressões regulares
/ ^ Assunto: =? Big5? / REJECT Codificação chinesa não aceita por este servidor
/ ^ Assunto: =? EUC-KR? / REJECT Codificação coreana não permitida por este servidor
/ ^ Assunto: ADV: / REJECT Anúncios não aceitos por este servidor
/^From:.*\@.*\.cn/ REJEITAR Desculpe, correio chinês não é permitido aqui
/^From:.*\@.*\.kr/ REJECT Desculpe, correio coreano não é permitido aqui
/^From:.*\@.*\.tr/ REJECT Desculpe, correio turco não é permitido aqui
/^From:.*\@.*\.ro/ REJECT Desculpe, correio romeno não é permitido aqui
/^(Received|Message-Id|X-(Mailer|Sender)):.*\b(AutoMail|E-Broadcaster|Emailer Platinum | Thunder Server | eMarksman | Extractor | e-Merge | from stealth [^.] | Global Messenger | GroupMaster | Mailcast | MailKing | Match10 | MassE-Mail | massmail \ .pl | News Breaker | Powermailer | Quick Shot | Pronto Aim Fire | WindoZ | WorldMerge | Yourdora | Lite) \ b / REJECT Nenhum envio em massa permitido.
/ ^ De: "spammer / REJECT
/ ^ De: "spam / REJEITAR
/^Assunto:.*viagra/ DESCARTAR
# Extensões perigosas
/ name = [^> Iluminación * \. (bat | cmd | exe | com | pif | reg | scr | vb | vbe | vbs) / REJEITAR REJEITAR Não aceitamos anexos com essas extensões
Nós verificamos a sintaxe, reiniciamos o Apache e Postifx, e ativamos e iniciamos o Dovecot
[root @ linuxbox ~] # verificação de postfix [root @ linuxbox ~] # [root @ linuxbox ~] # systemctl restart httpd [root @ linuxbox ~] # systemctl status httpd [root @ linuxbox ~] # systemctl restart postfix [root @ linuxbox ~] # systemctl status postfix [root @ linuxbox ~] # systemctl status dovecot ● dovecot.service - servidor de e-mail Dovecot IMAP / POP3 Carregado: carregado (/usr/lib/systemd/system/dovecot.service; desativado; predefinição do fornecedor: desativado) Ativo: inativo (morto) [root @ linuxbox ~] # systemctl enable dovecot [root @ linuxbox ~] # systemctl start dovecot [root @ linuxbox ~] # systemctl restart dovecot [root @ linuxbox ~] # systemctl status dovecot
Verificações no nível do console
- É muito importante antes de continuar com a instalação e configuração de outros programas, fazer as verificações mínimas necessárias dos serviços SMTP e POP.
Local do próprio servidor
Enviamos um email para o usuário local Legolas.
[root @ linuxbox ~] # echo "Olá. Esta é uma mensagem de teste" | mail -s "Teste" legolas
Nós verificamos a caixa de correio de Legolas.
[root @ linuxbox ~] # openssl s_client -crlf -connect 127.0.0.1:110 -starttls pop3
Depois da mensagem Dovecot está pronto! nós procedemos:
--- + OK Dovecot está pronto! USUÁRIO legolas +OK PASSAR legolas +OK Conectado. STAT +OK 1 559 LIST +OK 1 mensagens: 1 559 . RETR 1 +OK 559 octetos Caminho de retorno:desdelinux.fan> X-Original-Para: legolas Entregue-Para: legolas@desdelinux.fan Recebido: por desdelinux.fan (Postfix, do ID do usuário 0) id 7EA22C11FC57; Seg, 22 de maio de 2017 10:47:10 -0400 (EDT) Data: Seg, 22 de maio de 2017 10:47:10 -0400 Para: legolas@desdelinux.fan Assunto: Agente de usuário de teste: Heirloom mailx 12.5 7/5/10 Versão MIME: 1.0 Tipo de conteúdo: texto/sem formatação; charset=us-ascii Codificação de transferência de conteúdo: ID de mensagem de 7 bits: <20170522144710.7EA22C11FC57@desdelinux.fan> De: root@desdelinux.fan (raiz) Olá. Esta é uma mensagem de teste . SAIR FEITO [root @ linuxbox ~] #
Remotos de um computador na LAN
Vamos enviar outra mensagem para Legolas de outro computador na LAN. Observe que a segurança TLS NÃO é estritamente necessária na Rede SME.
buzz @ sysadmin: ~ $ sendemail -f buzz@deslinux.fan \ -t legolas@desdelinux.fã\ -u "Olá" \ -m "Saudações Legolas de seu amigo Buzz" \ -s e-mail.desdelinux.fan -o tls = não 22 de maio 10:53:08 sysadmin sendemail [5866]: Email enviado com sucesso!
Se tentarmos nos conectar através de telnet De um host na LAN - ou da Internet, é claro - para o Dovecot, o seguinte acontecerá porque desabilitamos a autenticação de texto simples:
buzz@sysadmin:~$ correio telnet.desdelinux.fan 110 Tentando 192.168.10.5...
Conectado ao linuxbox.desdelinux.fã. O caractere de escape é '^]'. +OK Dovecot está pronto! usuário Legolas
-ERR [AUTH] Autenticação de texto simples não permitida em conexões não seguras (SSL / TLS).
quit + OK Efetuando logoff Conexão fechada por host estrangeiro.
buzz @ sysadmin: ~ $
Devemos fazer isso através openssl. A saída completa do comando seria:
buzz@sysadmin:~$ openssl s_client -crlf -connect mail.desdelinux.fan:110 -starttls pop3 CONECTADO (00000003) profundidade=0 C = CU, ST = Cuba, L = Havana, O = FromLinux.Fan, OU = Entusiastas, CN = *.desdelinux.fan, emailAddress = buzz@desdelinux.ventilador verificar erro: num = 18: certificado autoassinado verificar retorno: 1 profundidade=0 C = CU, ST = Cuba, L = Havana, O = FromLinux.Fan, OU = Entusiastas, CN = *.desdelinux.fan, emailAddress = buzz@desdelinux.fan verificar retorno:1 --- Cadeia de certificados 0 s:/C=CU/ST=Cuba/L=Havana/O=FromLinux.Fan/OU=Enthusiasts/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan i:/C=CU/ST=Cuba/L=Havana/O=FromLinux.Fan/OU=Entusiastas/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan --- Server certificate -----BEGIN CERTIFICATE----- MIICyzCCAjSgAwIBAgIJAKUHI/2ZD+MeMA0GCSqGSIb3DQEBBQUAMIGbMQswCQYD VQQGEwJDVTENMAsGA1UECBMEQ3ViYTEPMA0GA1UEBxMGSGFiYW5hMRcwFQYDVQQK Ew5EZXNkZUxpbnV4LkZhbjEUMBIGA1UECxMLRW50dXNpYXN0YXMxGTAXBgNVBAMU ECouZGVzZGVsaW51eC5mYW4xIjAgBgkqhkiG9w0BCQEWE2J1enpAZGVzZGVsaW51 eC5mYW4wHhcNMTcwNTIyMjAwODEwWhcNMTgwNTIyMjAwODEwWjCBmzELMAkGA1UE BhMCQ1UxDTALBgNVBAgTBEN1YmExDzANBgNVBAcTBkhhYmFuYTEXMBUGA1UEChMO RGVzZGVMaW51eC5GYW4xFDASBgNVBAsTC0VudHVzaWFzdGFzMRkwFwYDVQQDFBAq LmRlc2RlbGludXguZmFuMSIwIAYJKoZIhvcNAQkBFhNidXp6QGRlc2RlbGludXgu ZmFuMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7wckAiNNfYSz5hdePzKuZ m2MMuhGDvwrDSPDEcVutznbZSgJ9bvTo445TR+Bnk+OZ80lujS2hP+nBmqxzJbpc XR7E9eWIXxr4fP4HpRrCA8NxlthEsapVMSHW+lnPBqF2b/Bt2eYyR7gJhtlP6gRG V57MmgL8BdYAJLvxqxDIxQIDAQABoxUwEzARBglghkgBhvhCAQEEBAMCBkAwDQYJ KoZIhvcNAQEFBQADgYEAAuYU1nIXTbXtddW+QkLskum7ESryHZonKOCelfn2vnRl 8oAgHg7Hbtg/e6sR/W9m3DObP5DEp3lolKKIKor7ugxtfA4PBtmgizddfDKKMDql LT+MV5/DP1pjQbxTsaLlZfveNxfLRHkQY13asePy4fYJFOIZ4OojDEGQ6/VQBI8= -----END CERTIFICATE----- subject=/C=CU/ST=Cuba/L=Habana/O=DesdeLinux.Fan/OU=Entusiastas/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan emissor=/C=CU/ST=Cuba/L=Havana/O=FromLinux.Fan/OU=Entusiastas/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan --- Nenhum nome de CA de certificado de cliente enviado Chave temporária do servidor: ECDH, secp384r1, 384 bits --- O handshake SSL leu 1342 bytes e gravou 411 bytes --- Novo, TLSv1/SSLv3, a cifra é ECDHE-RSA-AES256 -GCM-SHA384 A chave pública do servidor é de 1024 bits A renegociação segura é suportada Compressão: NONE Expansão: NONE Sessão SSL: Protocolo: TLSv1.2 Cifra: ECDHE-RSA-AES256-GCM-SHA384 ID da sessão: C745B4A0236204E16234CB15DC9CDBC3D084125FF5989F5DB 6 C5295BF4E2D73A ID de sessão- ctx: Chave mestra: 1904D204C564B76361CEA50373F8879AF793AF7D7506C04473777F6F3503A9FD919CD1F837BC67BFF29E309F352526F5 Chave-Arg: Nenhum Krb5 Principal: Nenhum Identidade PSK: Nenhuma Dica de identidade PSK: Nenhuma T Dica vitalícia do ticket de sessão LS: 300 (segundos) Ticket de sessão TLS: 0000 - 4e 3a f8 29 7a 4f 63 72- ee f7 a6 4f fc ec 7e 1c N:.)zOcr...O..~. 0010 - 2c d4 ser a8 ser 92 2e ae-98 7e 87 6d 45 c5 17 a8 ,.....~.mE... 0020 - db 3a 86 80 df 8b dc 8d-f8 1f 68 6e db a7 e3 86 .:.......hn.... 0030 - 08 35 e5 eb 98 b8 a4 98-68 b1 ea f7 72 f7 c1 79 .5......h...r ..y 0040 - 89 4a 28 e3 85 a4 8b da-e9 7a 29 c7 77 bf 22 0d .J(......z).w.". 0050 - bd 5c f6 61 8c a1 14 bd-cb 31 27 66 7a dc 51 28 .\.a.....1'fz.Q( 0060 - b7 de 35 bd 2b 0f d4 ec-d3 e0 14 c8 65 03 b1 35 ..5.+.... ...e ..5 0070 - 38 34 f8 de 48 da ae 31-90 bd f6 b0 e6 9c cf 19 84..H..1........ 0080 - f5 42 56 13 88 b0 8c db-aa ee 5a d7 1b 2c dd 71 .BV.......Z..,.q 0090 - 7a f1 03 70 90 94 c9 0a-62 e5 0f 9c bf dc 3c a0 z..p.. ..b. ....<. Hora de início: 1495484262 Tempo limite: 300 (seg) Verifique o código de retorno: 18 (certificado autoassinado) --- + OK Dovecot está pronto! USUÁRIO legolas + OK PASSAR legolas + OK Conectado. LISTA + OK 1 mensagens: 1 1021. RETIRAR 1 +OK 1021 octetos Caminho de retorno: X-Original-Para: legolas@desdelinux.fan entregue para: legolas@desdelinux.fan Recebido: do sysadmin.desdelinux.fan (gateway [172.16.10.1]) por desdelinux.fan (Postfix) com ID ESMTP 51886C11E8C0 paradesdelinux.fã>; Seg, 22 de maio de 2017 15:09:11 -0400 (EDT) ID da mensagem: <919362.931369932-sendEmail@sysadmin> De: "buzz@deslinux.fan" Para: "legolas@desdelinux.fã"desdelinux.fan> Assunto: Olá Data: Seg, 22 de maio de 2017 19:09:11 +0000 X-Mailer: sendEmail-1.56 Versão MIME: 1.0 Tipo de conteúdo: multipart/relacionado; border="----MIME delimiter for sendEmail-365707.724894495" Esta é uma mensagem de várias partes no formato MIME. Para exibir esta mensagem corretamente, você precisa de um programa de e-mail compatível com MIME versão 1.0. ------Delimitador MIME para sendEmail-365707.724894495 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Saudações Legolas do seu amigo Buzz ------Delimitador MIME para sendEmail-365707.724894495-- . SAIR + OK Saindo. fechadas buzz @ sysadmin: ~ $
correio de esquilo
correio de esquilo é um cliente web escrito inteiramente em PHP. Inclui suporte nativo a PHP para os protocolos IMAP e SMTP e fornece compatibilidade máxima com os diferentes navegadores em uso. Ele funciona corretamente em qualquer servidor IMAP. Possui todas as funcionalidades de que você precisa em um cliente de e-mail, incluindo suporte a MIME, catálogo de endereços e gerenciamento de pastas.
[root @ linuxbox ~] # yum install squirrelmail
[root @ linuxbox ~] # service httpd restart
[root @ linuxbox ~] # nano /etc/squirrelmail/config.php
$domínio = 'desdelinux.fã';
$imapServerAddress = 'mail.desdelinux.fã';
$ imapPort = 143;
$smtpServerAddress = 'desdelinux.fã';
[root @ linuxbox ~] # serviço httpd reload
DNS Send Policy Framenwork ou registro SPF
No artigo Servidor DNS Autoritário NSD + Shorewall Vimos que a Zona «desdelinux.fan» foi configurado da seguinte forma:
root@ns:~# nano /etc/nsd/desdelinux.fan.zona $ ORIGEM desdelinux.fã. $TTL 3H @ IN SOA nos.desdelinux.fã. raiz.desdelinux.fã. (1; serial 1D; atualização 1H; nova tentativa 1W; expiração 3H); mínimo ou ; Tempo de vida do cache negativo; @V NS ns.desdelinux.fã. @ IN MX 10 e-mail.desdelinux.fã. @ IN TXT "v=spf1 a:mail.desdelinux.fã -todos" ; ; Registro para resolver dúvidas de escavação desdelinux.fan@IN A 172.16.10.10 ; ns IN A 172.16.10.30 mail IN CNAME desdelinux.fã. conversar EM CNAME desdelinux.fã. www EM CNAME desdelinux.fã. ; ; Registros SRV relacionados ao XMPP _xmpp-server._tcp IN SRV 0 0 5269 desdelinux.fã. _xmpp-client._tcp IN SRV 0 0 5222 desdelinux.fã. _jabber._tcp IN SRV 0 0 5269 desdelinux.fã.
Nele o registro é declarado:
@ IN TXT "v=spf1 a:mail.desdelinux.fã -todos"
Para ter o mesmo parâmetro configurado para a Rede SME ou LAN, devemos modificar o arquivo de configuração Dnsmasq da seguinte maneira:
# registros TXT. Também podemos declarar um registro SPF txt-record=desdelinux.fan,"v=spf1 a:mail.desdelinux.fã -todos"
Em seguida, reiniciamos o serviço:
[root @ linuxbox ~] # service dnsmasq restart [root@linuxbox ~]# status dnsmasq do serviço [root@linuxbox ~]# host -t correio TXT.desdelinux.carta de fã.desdelinux.fan é um apelido para desdelinux.fã. desdelinux.fan texto descritivo "v=spf1 a:mail.desdelinux.fã -todos"
Certificados autoassinados e Apache ou httpd
Mesmo que o seu navegador diga que «O proprietário do correio.desdelinux.ventilador Você configurou seu site incorretamente. Para evitar que suas informações sejam roubadas, o Firefox não se conectou a este site ”, o certificado gerado anteriormente É VALIDO, e permitirá que as credenciais entre o cliente e o servidor viajem criptografadas, depois de aceitarmos o certificado.
Se desejar, e como forma de unificar os certificados, você pode declarar para o Apache os mesmos certificados que você declarou para o Postfix, o que está correto.
[root @ linuxbox ~] # nano /etc/httpd/conf.d/ssl.conf
SSLCertificateFile /etc/pki/tls/certs/desdelinux.fan.crt
SSLCertificateKeyFile /etc/pki/tls/private/desdelinux.fan.key
[root @ linuxbox ~] # serviço de reiniciar httpd
[root @ linuxbox ~] # status do serviço httpd
Grupo Diffie-Hellman
O assunto Segurança se torna mais difícil a cada dia na Internet. Um dos ataques mais comuns às conexões SSL, É a Engarrafamento e para se defender contra isso é necessário adicionar parâmetros não padronizados à configuração SSL. Para isso existe RFC-3526 «Mais Exponencial Modular (MODP) Diffie-Hellman grupos para Internet Key Exchange (IKE)".
[root @ linuxbox ~] # cd / etc / pki / tls /
[root @ linuxbox tls] # openssl dhparam -out private / dhparams.pem 2048
[root @ linuxbox tls] # chmod 600 private / dhparams.pem
De acordo com a versão do Apache que instalamos, usaremos o Grupo Diffie-Helman do arquivo /etc/pki/tls/dhparams.pem. Se for uma versão 2.4.8 ou posterior, teremos que adicionar ao arquivo /etc/httpd/conf.d/ssl.conf a seguinte linha:
SSLOpenSSLConfCmd DHParameters "/etc/pki/tls/private/dhparams.pem"
A versão do Apache que estamos usando é:
[root @ linuxbox tls] # yum info httpd
Plugins carregados: mais rápido, espelho langpacks Carregando velocidades de espelho do arquivo host em cache Pacotes instalados Nome: httpd Arquitetura: x86_64
Versão: 2.4.6
Versão: 45.el7.centos Tamanho: 9.4 M Repositório: instalado Do repositório: Base-Repo Resumo: Servidor HTTP Apache URL: http://httpd.apache.org/ Licença: ASL 2.0 Descrição: O Servidor HTTP Apache é um poderoso, eficiente e extensível: servidor web.
Como temos uma versão anterior a 2.4.8, adicionamos ao final do certificado CRT gerado anteriormente, o conteúdo do Grupo Diffie-Helman:
[root @ linuxbox tls] # cat private / dhparams.pem >> certificados/desdelinux.fan.crt
Se você deseja verificar se os parâmetros DH foram adicionados corretamente ao certificado CRT, execute os seguintes comandos:
[root @ linuxbox tls] # cat private / dhparams.pem ----- BEGIN DH PARAMETERS ----- MIIBCAKCAQEAnwfWSlirEuMwJft0hgAdB0km9d3qGGiErRXPfeZU+Tqp/ZFOCdzP /O6NeXuHI4vnsTDWEAjXmpRzq/z1ZEWQa6j+l1PgTgk2XqaMViD/gN+sFPnx2EmV keVcMDqG03gnmCgO9R4aLYT8uts5T6kBRhvxUcrk9Q7hIpGCzGtdgwaVf1cbvgOe 8kfpc5COh9IxAYahmNt+5pBta0SDlmoDz4Rk/4AFXk2mjpDYoizaYMPeIInGUzOv /LE6Y7VVRY/BJG9EZ5pVYJPCruPCUHkhvm+r9Tt56slk+HE2d52uFRSDd2FxK3n3 cN1vJ5ogsvmHayWUjVUA18LLfGSxEFsc4wIBAg== ----- END DH PARAMETERS ----- [root@linuxbox tls]# certificados de gato/desdelinux.fan.crt -----BEGIN CERTIFICATE----- MIIGBzCCA++gAwIBAgIJANd9FLCkDBfzMA0GCSqGSIb3DQEBCwUAMIGZMQswCQYD VQQGEwJDVTENMAsGA1UECAwEQ3ViYTEPMA0GA1UEBwwGSGFiYW5hMRcwFQYDVQQK DA5EZXNkZUxpbnV4LkZhbjEUMBIGA1UECwwLRW50dXNpYXN0YXMxFzAVBgNVBAMM DmRlc2RlbGludXguZmFuMSIwIAYJKoZIhvcNAQkBFhNidXp6QGRlc2RlbGludXgu ZmFuMB4XDTE3MDUyMjE0MDQ1MloXDTIyMDUyMTE0MDQ1MlowgZkxCzAJBgNVBAYT AkNVMQ0wCwYDVQQIDARDdWJhMQ8wDQYDVQQHDAZIYWJhbmExFzAVBgNVBAoMDkRl c2RlTGludXguRmFuMRQwEgYDVQQLDAtFbnR1c2lhc3RhczEXMBUGA1UEAwwOZGVz ZGVsaW51eC5mYW4xIjAgBgkqhkiG9w0BCQEWE2J1enpAZGVzZGVsaW51eC5mYW4w ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCn5MkKRdeFYiN+xgGdsRn8 sYik9X75YnJcbeZrD90igfPadZ75ehtfYIxxOS+2U+omnFgr/tCKYUVJ50seq/lB idcLP4mt7wMrMZUDpy1rlWPOZGKkG8AdStCYI8iolvJ4rQtLcsU6jhRzEXsZxfOb O3sqc71yMIj5qko55mlsEVB3lJq3FTDQAY2PhXopJ8BThW1T9iyl1HlYpxj7OItr /BqiFhxbP17Fpd3QLyNiEl+exVJURYZkvuZQqVPkFAlyNDh5I2fYfrI9yBVPBrZF uOdRmT6jv6jFxsBy9gggcy+/u1nhlKssLBEhyaKfaQoItFGCAmevkyzdl1LTYDPY ULi79NljQ1dSwWgraZ3i3ACZIVO/kHcOPljsNxE8omI6qNFWqFd1qdPH5S4c4IR1 5URRuwyVNffEHKaCJi9vF9Wn8LVKnN/+5zZGRJA8hI18HH9kF0A1sCNj1KKiB/xe /02wTzR/Gbj8pkyO8fjVBvd/XWI8EMQyMc1gvtIAvZ00SAB8c1NEOCs5pt0Us6pm 1lOkgD6nl90Dx9p805mTKD+ZcvRaShOvTyO3HcrxCxOodFfZQCuHYuQb0dcwoK2B yOwL77NmxNH1QVJL832lRARn8gpKoRAUrzdTSTRKmkVrOGcfvrCKhEBsJ67Gq1+T YDLhUiGVbPXXR9rhAyyX2QIDAQABo1AwTjAdBgNVHQ4EFgQURGCMiLVLPkjIyGZK UrZgMkO0X8QwHwYDVR0jBBgwFoAURGCMiLVLPkjIyGZKUrZgMkO0X8QwDAYDVR0T BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAdy1tH1DwfCW47BNJE1DW8Xlyp+sZ uYTMOKfNdnAdeSag1WshR6US6aCtU6FkzU/rtV/cXDKetAUIzR50aCYGTlfMCnDf KKMZEPjIlX/arRwBkvIiRTU1o3HTniGp9d3jsRWD/AvB3rSus4wfuXeCoy7Tqc9U FaXqnvxhF8/ptFeeCeZgWu16zyiGBqMj4ZaQ7RxEwcoHSd+OByg8E9IE2cYrWP2V 6P7hdCXmw8voMxCtS2s++VRd1fGqgGxXjXT8psxmY2MrseuTM2GyWzs+18A3VVFz UXLD2lzeYs638DCMXj5/BMZtVL2a4OhMSYY4frEbggB3ZgXhDDktUb7YhnBTViM3 2sgJJOSTltOgAnyOPE0CDcyktXVCtu3PNUc+/AB3UemI9XCw4ypmTOMaIZ2Gl6Uo pmTk41fpFuf8pqW3ntyu43lC5pKRBqhit6MoFGNOCvFYFBWcltpqnjsWfY2gG/b5 8D5HsedueqkAsVblKPBFpv1BB9X0HhBUYsrz8jNGZGbkgR4XQoIoLbQZHEB35APU 4yT1Lzc3jk34yZF5ntmFt3wETSWwJZ+0cYPw7n4E6vbs1C7iKAMQRVy+lI5f8XYS YKfrieiPPdmQ22Zm2Tbkqi4zjJBWmstrw6ezzAQNaaAkiOiJIwvXU81KYsN37THh Nf0/JsEjPklCugE= -----END CERTIFICATE----- -----BEGIN DH PARAMETERS----- MIIBCAKCAQEAnwfWSlirEuMwJft0hgAdB0km9d3qGGiErRXPfeZU+Tqp/ZFOCdzP /O6NeXuHI4vnsTDWEAjXmpRzq/z1ZEWQa6j+l1PgTgk2XqaMViD/gN+sFPnx2EmV keVcMDqG03gnmCgO9R4aLYT8uts5T6kBRhvxUcrk9Q7hIpGCzGtdgwaVf1cbvgOe 8kfpc5COh9IxAYahmNt+5pBta0SDlmoDz4Rk/4AFXk2mjpDYoizaYMPeIInGUzOv /LE6Y7VVRY/BJG9EZ5pVYJPCruPCUHkhvm+r9Tt56slk+HE2d52uFRSDd2FxK3n3 cN1vJ5ogsvmHayWUjVUA18LLfGSxEFsc4wIBAg== ----- END DH PARAMETERS -----
Após essas mudanças, devemos reiniciar os serviços Postfix e httpd:
[root @ linuxbox tls] # reinicialização do postfix do serviço [root @ linuxbox tls] # status do postfix do serviço [root @ linuxbox tls] # service httpd restart [root @ linuxbox tls] # status do serviço httpd
A inclusão do Grupo Diffie-Helman em nossos certificados TLS pode tornar a conexão por HTTPS um pouco mais lenta, mas a adição de segurança vale a pena.
Verificando Squirrelmail
después se os certificados foram gerados corretamente e se verificamos seu funcionamento correto como fizemos usando os comandos do console, aponte seu navegador preferido para o URL http://mail.desdelinux.fan/webmail e ele se conectará ao cliente web após aceitar o certificado correspondente. Observe que, embora você especifique o protocolo HTTP, ele será redirecionado para HTTPS, e isso se deve à configuração padrão que o CentOS oferece para o Squirrelmail. Veja o arquivo /etc/httpd/conf.d/squirrelmail.conf.
Sobre as caixas de correio dos usuários
Dovecot cria as caixas de correio IMAP na pasta Início de cada usuário:
[root @ linuxbox ~] # ls -la /home/legolas/mail/.imap/ total 12 drwxrwx ---. 5 legolas mail 4096, 22 de maio, 12:39. drwx ------. 3 legolas legolas 75 22 de maio 11:34 .. -rw -------. 1 legolas legolas 72 22 de maio 11:34 dovecot.mailbox.log -rw -------. 1 legolas legolas 8 May 22 12:39 dovecot-uidvalidity -r - r - r--. 1 legolas legolas 0 22 de maio 10:12 dovecot-uidvalidity.5922f1d1 drwxrwx ---. 2 legolas mail 56 May 22 10:23 INBOX drwx ------. 2 legolas legolas 56 22 de maio 12:39 Enviado drwx ------. 2 legolas legolas 30 de maio de 22 11h34 Lixo
Eles também são armazenados em / var / mail /
[root @ linuxbox ~] # less / var / mail / legolas De MAILER_DAEMON Seg, 22 de maio 10:28:00 2017 Data: Seg, 22 de maio de 2017 10:28:00 -0400 De: Dados internos do sistema de correio Assunto: NÃO EXCLUA ESTA MENSAGEM - PASTA DE DADOS INTERNOS ID da mensagem: <1495463280@linuxbox> . Ele é criado automaticamente pelo software do sistema de correio. Se excluídos, os dados importantes da pasta serão perdidos e serão recriados com os dados redefinidos para os valores iniciais. De raiz@desdelinux.fan Segunda-feira, 22 de maio 10:47:10 Caminho de retorno de 2017:desdelinux.fan> X-Original-Para: legolas Entregue-Para: legolas@desdelinux.fan Recebido: por desdelinux.fan (Postfix, do ID do usuário 0) id 7EA22C11FC57; Seg, 22 de maio de 2017 10:47:10 -0400 (EDT) Data: Seg, 22 de maio de 2017 10:47:10 -0400 Para: legolas@desdelinux.fan Assunto: Agente de usuário de teste: Heirloom mailx 12.5 7/5/10 Versão MIME: 1.0 Tipo de conteúdo: texto/sem formatação; charset=us-ascii Codificação de transferência de conteúdo: ID de mensagem de 7 bits: <20170522144710.7EA22C11FC57@desdelinux.fan> De: root@desdelinux.fan (root) X-UID: 7 Status: RO Olá. Esta é uma mensagem de teste de buzz@deslinux.fan Segunda-feira, 22 de maio, 10:53:08 Caminho de retorno de 2017: X-Original-Para: legolas@desdelinux.fan entregue para: legolas@desdelinux.fan Recebido: do sysadmin.desdelinux.fan (gateway [172.16.10.1]) por desdelinux.fan (Postfix) com ID ESMTP C184DC11FC57 paradesdelinux.fã>; Seg, 22 de maio de 2017 10:53:08 -0400 (EDT) ID da mensagem: <739874.219379516-sendEmail@sysadmin> De: "buzz@deslinux.fan" Para: "legolas@desdelinux.fã"desdelinux.fan> Assunto: Olá Data: Seg, 22 de maio de 2017 14:53:08 +0000 X-Mailer: sendEmail-1.56 Versão MIME: 1.0 Tipo de conteúdo: multipart/relacionado; limite = "---- Delimitador MIME para sendEmail-794889.899510057 / var / mail / legolas
Resumo da minissérie do PAM
Vimos o núcleo de um servidor de email e colocamos um pouco de ênfase na segurança. Esperamos que o artigo sirva de ponto de entrada para um tópico tão complicado e suscetível a erros quanto a implementação de um servidor de correio manualmente.
Usamos autenticação de usuário local porque se lermos o arquivo corretamente /etc/dovecot/conf.d/10-auth.conf, veremos que no final está incluído -por padrão- o arquivo de autenticação dos usuários do sistema ! inclua auth-system.conf.ext. Precisamente esse arquivo nos diz em seu cabeçalho que:
[root @ linuxbox ~] # less /etc/dovecot/conf.d/auth-system.conf.ext
# Autenticação para usuários do sistema. Incluído em 10-auth.conf. # # # # Autenticação PAM. Preferido hoje em dia pela maioria dos sistemas.
# O PAM é normalmente usado com userdb passwd ou userdb static. # LEMBRE-SE: Você precisará do arquivo /etc/pam.d/dovecot criado para que a autenticação PAM # realmente funcione. passdb {driver = pam # [session = yes] [setcred = yes] [failure_show_msg = yes] [max_requests = ] # [cache_key = ] [ ] #args = dovecot}
E o outro arquivo existe /etc/pam.d/dovecot:
[root @ linuxbox ~] # cat /etc/pam.d/dovecot #% PAM-1.0 auth necessário pam_nologin.so auth inclui conta de autenticação de senha inclui sessão de autenticação de senha inclui autenticação de senha
O que estamos tentando transmitir sobre a autenticação PAM?
- CentOS, Debian, Ubuntu e muitas outras distribuições Linux instalam Postifx e Dovecot com autenticação local habilitada por padrão.
- Muitos artigos na Internet usam MySQL - e mais recentemente MariaDB - para armazenar usuários e outros dados relativos a um Mailserver. MAS estes são servidores para MILHARES DE USUÁRIOS, e não para uma rede SME clássica com - talvez - centenas de usuários.
- A autenticação por meio do PAM é necessária e suficiente para fornecer serviços de rede, desde que sejam executados em um único servidor, como vimos nesta minissérie.
- Os usuários armazenados em um banco de dados LDAP podem ser mapeados como se fossem usuários locais e a autenticação PAM pode ser usada para fornecer serviços de rede de diferentes servidores Linux que atuam como clientes LDAP para o servidor de autenticação central. Dessa forma, trabalharíamos com as credenciais dos usuários armazenadas no banco de dados do servidor LDAP central, e NÃO seria essencial manter um banco de dados com usuários locais.
Até a próxima aventura!
Acredite em mim que na prática este é um processo que dá fortes dores de cabeça a mais de um administrador de sistema, estou convencido de que no futuro será um guia de referência para quem deseja gerenciar seus próprios e-mails, um caso prático que se torna em um abc ao integrar postfix, dovecot, squirrelmail ..
Muito obrigado pela sua contribuição meritória,
Por que não usar o Mailpile, quando se trata de segurança, com PGP? Além disso, o Roundcube tem uma interface muito mais intuitiva e também pode integrar PGP.
3 dias atrás li o post, sei como agradecer. Não pretendo instalar um servidor de e-mail, mas é sempre útil ver a criação de certificados, úteis para outras aplicações e esses tutoriais dificilmente expiram (especialmente quando você usa centOS).
Manuel Cillero: Obrigado por criar um link de e para o seu blog este artigo que é o núcleo mínimo de um servidor de e-mail baseado em Postfix e Dovecot.
Lagarto: Como sempre, sua avaliação foi muito bem recebida. Obrigado.
Darko: Em quase todos os meus artigos digo mais ou menos que "Todos implementam os serviços com os programas que mais gostam." Obrigado por comentar.
Martin: Obrigado também por ler o artigo e espero que ajude em seu trabalho.
Artigo tremendo amigo Federico. Muito obrigado por um tuto tão bom.
Excelente, embora eu usasse "usuários virtuais" para evitar a criação de um usuário do sistema toda vez que adiciono um e-mail, obrigado, aprendi muitas coisas novas e esse é o tipo de postagem que estava esperando
Boa tarde,
Eles ousariam fazer o mesmo com o servidor de diretórios fedora + postifx + dovecot + thunderbird ou outlook.
Eu tenho uma parte, mas estou preso, ficaria feliz em compartilhar o documento com a comunidade @desdelinux
Não imaginava que chegasse a mais de 3000 visitas !!!
Saudações, lagarto!
Excelente colega tutorial.
Você poderia fazer isso para o Debian 10 com usuários de um Active Directory montado no Samba4 ???
Imagino que seria quase o mesmo, mas mudando o tipo de autenticação.
A seção que você dedica à criação de certificados autoassinados é muito interessante.