Distribuições Linux no topo do Distrowatch por pelo menos 14 anos!

Por Kallklen Ribeiro – 31 jul, 2017

Neste artigo listamos as distribuições Linux que atingiram o top 10 da lista mantida pelo Distrowatch.

Distrowatch iniciou o seu sistema de classificação em 2002. Embora seja apenas um guia para o sucesso de uma distribuição, ele fornece uma visão histórica interessante de como a esfera Linux mudou nos últimos 14 anos.

Cada distribuição Linux tem um contador de páginas que conta os hits que recebe todos os dias e estes são contados e usados como hits por dia para os rankings do Distrowatch. Para evitar o abuso, apenas uma contagem de página é registrada em cada endereço IP por dia. Agora, os méritos dos números e a precisão deles podem estar em debate, mas espero que a lista a seguir seja uma visão interessante da história do Linux.

Esta lista analisa os rankings desde 2002 e destaca as distribuições que atingiram os dez melhores em qualquer ano. Existem alguns fatos interessantes para acompanhar esta lista. Por exemplo, há apenas 1 distribuição que esteve no top 10 durante todos os 14 anos, embora possa contar Red Hat e Fedora como uma distribuição, então você poderia dizer 2.

Outro fato interessante é que apenas 3 distribuições Linux já ocuparam o primeiro lugar no final de um determinado ano. Hoje, 28 distribuições apareceram no top 10 nos últimos 14 anos, provando que, embora possa ser fácil alcançar o sucesso, é ainda mais fácil cair no esquecimento.

Esta lista está em ordem alfabética porque seria difícil fazê-la em rankings, pois eles sofreram muitas alterações nesses 14 anos.
 
1. Arch Linux

Arch Linux é uma distribuição rolling-release que sempre esteve rondando o top 10 em todos os 14 anos do ranking Distrowatch.

Uma distribuição rolling-release para o usuário avançado, o Arch cresceu em presença e possui um dos maiores repositórios de software. Como destaque, podemos incluir o AUR e a documentação incrível.

Amado por uma grande comunidade, esta distribuição fornece tudo que o usuário Linux experiente poderia precisar.

Levou até 2010 para que o Arch atingir o top 10 e sua posição mais alta foi em 2011, quando atingiu a 6ª posição. Isso pode ser atribuído à complexidade da distribuição.

2. centOS

O CentOS é uma versão da comunidade do Red Hat Linux, que fornece toda a estabilidade e poder de seu pai.

Já existe a algum tempo, mas só atingiu o top 10 em 2011.

É uma boa distribuição, sólida, sem frescura e perfeita para uso doméstico e comercial.

3. Damn Small Linux

Damn Small Linux (DSL) figura desde 2003/2004 e seu principal ponto de venda é que ele tem uma pegada incrivelmente pequena.

O tamanho de download do DSL é de apenas 50 megabytes e, durante alguns anos, esteve nas 10 principais distribuições, mas saiu da lista em 2009 e vem caindo desde então. A posição mais alta foi um 6º lugar em 2006.

O problema principal com uma imagem tão pequena é que exige muita configuração para conseguir fazer qualquer coisa. Uma idéia inovadora, mas não muito substancial no mundo real.

4. Debian

Sua posição mais alta é de 2º lugar e essa é a classificação atual.

Debian é um pai fundador do Linux e fornece a base para muitas das outras distribuições disponíveis hoje, incluindo Ubuntu e Linux Mint.

Usado por profissionais e grandes empresas, isso a torna uma distribuição fundamental para as pessoas que pensam em entrar no Linux como uma escolha de carreira.

É relativamente fácil de instalar e é altamente personalizável e é fácil de usar.

5. Dream Linux

O Dream Linux saiu de cena em 2012. É difícil encontrar informações sobre ela. A captura de tela foi tirada do LinuxScreenshots.org.

Dream Linux atingiu o top 10 em 2008 e foi a versão 3.5 que foi responsável por sua ascensão. Com base no Debian Lenny, o Dream Linux veio com o ambiente de trabalho XFCE com uma opção para instalar o desktop GNOME.

O melhor tributo que pode ser dado a esta distribuição brasileira é do Unixmen que descreveu “Dream Linux tão rápido e bonito”.

6. Elementary OS

Elementary é um recém-chegado ao bloco. Primeiro alcançou os rankings do Distrowatch em 2014 e sua posição mais alta até o momento foi o 7º lugar.

A chave para Elementary é a área de trabalho visualmente agradável e altamente estética. O conceito é simples, mantenha-o simples.

7. Fedora

Fedora é uma ramificação da Red Hat. É a distribuição dos entusiastas do Linux porque é completamente vanguardista, trazendo todos os novos conceitos à mesa primeiro.

Tal como acontece com o Debian, é uma boa ideia usar o Fedora ou o CentOS, pois fornecem a plataforma perfeita para qualquer pessoa que deseje obter uma carreira no Linux.

O Fedora foi uma das primeiras distribuições à introduzir o Wayland e SystemD.

É relativamente fácil de instalar e a área de trabalho GNOME é fácil de usar. No entanto, nem sempre é o mais estável.

O Fedora entrou no Top 10 do Distrowatch em 2004 e não ficou abaixo do 5º desde o pico na posição 2 em 2010.

8. Gentoo

Em 2002, o Gentoo foi a terceira distribuição Linux mais popular. Claro, isso foi um tempo antes dos instaladores gráficos.

O Gentoo não é para os fracos e é usado por uma comunidade básica de pessoas que vivem para compilar o código. Ele saiu dos 10 melhores em 2007 e atualmente esta na posição 34.

9. Knoppix

Knoppix é uma distribuição Linux projetada para ser executada a partir de um DVD ou unidade USB. Atingiu o top 10 em 2003, atingindo o 3º lugar antes de deixar a lista em 2006.

Ainda está em andamento e está atualmente na versão 7.6 e reside na posição 55.

10. Lindows

A única coisa que tem sido consistente nos últimos 14 anos é a obsessão de fazer distribuições Linux que se parecem com o Windows.

Um dos primeiros foi chamado Lindows, mas o nome teve que ser alterado porque estava muito perto da marca registrada de outra empresa.

A aparição do Lindows no top 10 foi apenas em 2002 na posição 9, embora tenha se tornado Linspire.

11. Lycoris

Lycoris era uma distribuição Linux de desktop baseada em OpenLinux Workstation e projetada para se parecer muito com o Windows. Mesmo o plano de fundo foi projetado para emular o Windows XP.

Lycoris estava na posição 8 no ranking em 2002 e manteve a posição top 10 em 2003 antes de desaparecer na obscuridade.

12. Mageia

Mageia começou como um fork do Mandriva (uma das distribuições mais populares no início da década). Mageia apareceu pela primeira vez no top 10 em 2012, onde alcançou a segunda distribuição mais popular do ano.

Ele permaneceu no top 10 desde então, embora nos últimos 6 meses tenha caído para o número 11, provando de uma vez por todas que é uma coisa entrar no top 10, mas uma coisa completamente diferente é ficar lá.

13. Mandrake / Mandriva

Mandrake Linux foi a distribuição número 1 entre 2002 e 2004 e há uma boa razão para isso. Mandrake foi a primeira a ser compatível com dispositivos de hardware, como impressoras e modems. (Para os mais novos, os modems eram coisas que costumávamos conectar à Internet para a experiência total de 56k).

Mandrake mudou seu nome para Mandriva e foi uma distribuição de top 10 até 2011, quando, infelizmente, chegou ao fim.

14. Manjaro

Manjaro é atualmente minha distribuição preferida de Linux. A beleza de Manjaro é que ele pega o Arch Linux e torna simples para o cara normal comum do dia a dia.

Ele atingiu as 10 principais distribuições em 2013 e está definido neste ano para terminar em sua posição mais alta.

15. Mepis

Mepis esteve entre as 10 melhores entre 2004 e 2007 e atingiu o pico na posição 4 em 2006. Ainda está em andamento hoje e é baseado no Debian Stable.

Mepis afirma ter o instalador mais fácil e vem como uma versão Live DVD para experimentá-lo antes de mergulhar completamente.

16. Mint

A distribuição atualmente no número 1 do ranking Distrowatch. O sucesso do Linux Mint é baixo pela sua facilidade de uso e a interface de desktop tradicional.

Com base no Ubuntu, o Linux Mint traz uma boa inovação e é muito estável. O Linux Mint atingiu o top 10 em 2007 e atingiu o primeiro lugar pela primeira vez em 2011 (provavelmente devido ao desastre inicial da Ubuntu Unity) e ficou lá desde então.

17. OpenSUSE

No início dos anos 2000, havia uma distribuição chamada SUSE, que garantiu um top 10 até 2005. Em 2006, o OpenSUSE nasceu e rapidamente assumiu o mantra.

O OpenSUSE é uma distribuição estável que é apropriada para todos usarem, com bons repositórios e suporte. Existem duas versões disponíveis, Tumbleweed e Leap. Tumbleweed é uma versão rolling-release, enquanto a Leap segue o método de lançamento tradicional.

18. PCLinuxOS

O PCLinuxOS atingiu o top 10 em 2004 e permaneceu no top 10 até 2013. Ainda é uma distribuição realmente boa, que segue o mantra de ser fácil de instalar e fácil de usar. A compatibilidade de hardware também é muito boa.

O PCLinuxOS possui uma ótima rede de suporte e sua própria revista mensal. Atualmente, está fora das 10 principais distribuições na 12ª posição.

19. Puppy Linux

O Puppy Linux é uma das distribuições Linux mais inovadoras já criadas. Projetado para executar um CD ou unidade USB, o Puppy fornece uma solução de desktop Linux completa com centenas de ótimas ferramentas para apenas algumas centenas de megabytes.

Puppy atingiu o top 10 em 2009 e ficou lá até 2013. Atualmente, está em 15º lugar.

20. RedHat Linux

A Red Hat é uma distribuição comercial usada por grandes empresas em todo o mundo. No início dos anos 2000, estava nas 10 principais distribuições ocupando o 2º lugar em 2002 e 2003 antes de sair do top 10.

A Red Hat continua a ser popular no mundo dos negócios, mas os usuários mais ocasionais são mais propensos a usar o Fedora ou o CentOS que são versões da comunidade do Red Hat.

21. Sabayon

Sabayon é uma distribuição baseada no Gentoo e, em grande parte, faz para o Gentoo o que o Manjaro faz para o Arch. Sabayon atingiu o Top 10 do Distrowatch em 2007, onde alcançou o 5º lugar. Ele saiu dos 10 melhores em 2011 e atualmente reside em 34º.

22. Slackware

O Slackware é uma das distribuições mais antigas e continua a ser popular entre os seus principais usuários. Foi iniciado em 1993 e, de acordo com o seu site, tem os dois objetivos de facilidade de uso e estabilidade.

O Slackware esteve no top 10 do Distrowatch entre 2002 e 2006, atingindo a posição 7 em 2002. Atualmente, fica na posição 33.

23. Sorcerer

Sorcerer esteve no ranking de Distrowatch em 2002, atingindo o pico na posição 5. Poucas informações podem ser encontradas sobre ela, exceto pelo fato de que usou palavras mágicas como uma maneira de instalar o software.

24. Suse

Tal como aconteceu com o Red Hat no início dos anos 2000, a SUSE foi uma das principais 10 distribuições, ocupando a 3ª posição em 2005.

SUSE é uma distribuição comercial, e é por isso que o openSUSE nasceu como uma distribuição comunitária. Começou em 1992 e, de acordo com seu site, tornou-se a principal distribuição em 1997.

Em 1999, anunciou parcerias com IBM, SAP e Oracle. SUSE foi adquirida em 2003 pela Novell e o openSUSE nasceu.

25. Ubuntu

O Ubuntu destacou-se em 2004 e rapidamente subiu para o número 1 em 2005, onde ficou ali por 6 anos. O Ubuntu levou o Linux a um nível totalmente novo. Em 2004, Mandrake foi o primeiro lugar com 1457 hits por dia. Quando o Ubuntu ocupou o número 1 em 2005, teve 2546.

Ainda hoje é uma das distribuições mais populares, o Ubuntu mistura inovação, um desktop moderno, um bom suporte e compatibilidade de hardware. O Ubuntu está atualmente no terceiro lugar atrás do Mint e do Debian.

26. Xandros

Xandros PC

Xandros PC

Xandros lançado no eee-pc da ASUS, o primeiro netbook de 7″

Xandros lançado no eee-pc da ASUS, o primeiro netbook de 7″

Xandros foi baseado no Corel Linux e estava nas 10 principais distribuições em 2002 e 2003, ocupando o 10º lugar.

27. Yoper

A Yoper foi uma distribuição independente que atingiu o top 10 em 2003. Foi construído para computadores i686 ou melhor. De acordo com a Wikipedia, seu recurso definidor era um conjunto de otimizações personalizadas destinadas a tornar a distribuição mais rápida. Infelizmente, rapidamente desapareceu na obscuridade.

28. Zorin

Zorin é uma distribuição Linux que fornece ao usuário um desktop personalizado. O usuário pode escolher emular muitos outros sistemas operacionais, como Windows 7, OSX e Linux, com uma área de trabalho do GNOME 2.

Zorin veio em 2 sabores, incluindo a versão principal e uma versão LITE para computadores mais antigos. Alcançou o número 10 em 2014, e seu atual ranking de 6 meses é o 8º lugar.

[Voltar]

Servidor de e-mails no Debian com Dovecot + Postfix + MySQL

01/12/2013 por Paulo H. Cazarotto

Este artigo irá explicar como configurar um servidor de e-mails desde o princípio em um ambiente Linux baseado na distribuição Debian. O texto é longo e há muitos passos, mas tentei resumir e explicar o que é mais importante para o funcionamento do serviço. Este passo a passo é baseado em vários artigos que li e por sinal é a solução de e-mails que uso hoje em alguns servidores, as principais referências estão no final do artigo.

O serviço de e-mail é composto por várias aplicações, cada uma com uma função específica, e a configuração do grupo de aplicativos é o maior desafio. Aqui irei abordar desde a configuração do hostname e DNS até a configuração do webmail e espero que ajude a qualquer um que queira montar seu próprio servidor de e-mails e largar de mão serviços gratuitos (que sempre lhe cobram/leem algo, mesmo sem você saber).

Que serviços estão envolvidos?

O funcionamento de um servidor de e-mail depende de vários serviços, e muitos são necessários para garantir uma boa qualidade do serviço, filtrando e identificando por exemplo SPAMs. Abaixo uma lista de aplicações e qual a responsabilidade de cada uma delas.

Postfix: O postfix é responsável por despachar os e-mails através do protocolo SMTP. Sua aplicação de e-mail e os servidores externos irão conectar neste serviço para enviar novos e-mails para sua caixa de e-mail ou encaminhar a outro servidor de e-mails;

Dovecot: O Dovecot é responsável por gerenciar as caixas de e-mail no seu servidor. Quando você conecta sua caixa de e-mail por IMAP ou POP3 é este serviço que estará utilizando. O Postfix também usa o Dovecot para armazenar novos e-mails recebidos;

MySQL: O MySQL é a base de dados utilizada pelo Postfix e Dovecot para armazenar as informações de caixas de domínios, caixas de e-mail e senhas destas caixas de e-mail;

Amavisd-new: Normalmente servidores de e-mail possuem um aplicativo de checagem de vírus e SPAM. O Amavisd-new é a interface entre o MTA (Mail Transfer Agent) e estes filtros. O Postfix encaminha um e-mail recebido ao Amavisd-new e este interage com um ou mais serviços para identificar e marcar possíveis problemas no e-mail.

ClamAV: Este serviço é um famoso anti-virus open source utilizado por muitos servidores para filtrar rapidamente uma grande quantidade de arquivos;

Postgrey: O Postgrey tem como função controlar e-mails suspeitos, os deixando em quarentena até que outros e-mails de mesma origem cheguem ou o tempo de identificação de novos vírus seja atingido. Isto evita que SPAMs ou vírus novos se propaguem rapidamente pela Internet enquanto outros serviços não tem suas assinaturas de vírus atualizadas;

SpamAssassin: O Postfix também usa o serviço do SpamAssassin para detectar com base em pontuação possíveis SPAMs. Este serviço é um dos mais utilizados e possui diversas formas de detecção, desde SPF até análise estatística de palavras suspeitas;

PostfixAdm: Esta aplicação web é usada apenas para gerenciar as caixas de e-mail na base MySQL. É através dela que você fará o cadastro dos domínios e das caixas de e-mail, podendo também criar aliases e limitar as contas;

Roundcube: O Roundcube é a aplicação web utilizada como webmail. Para que os usuários do servidor de e-mail não sejam obrigados a utilizar uma aplicação cliente como Thunderbird ou Outlook;

Apache: O Apache é um servidor web utilizado para servir outros dois serviços, o RoundCube e o PostfixAdm. Junto ao Apache também instalaremos os módulos do PHP, linguagem na qual ambos serviços web foram desenvolvidos;

OpenSSL: Esta aplicação é responsável por gerar os certificados e CSRs utilizados para garantir a criptografia tanto na conexão HTTP como nas conexões SSL/TLS do IMAP, POP e SMTP;

Iptables: Esta aplicação será utilizada para configurar o firewall do servidor.

Note que além destas aplicações todas você precisará configurar o DNS do domínio o qual irá criar as caixas de e-mail. Para tal você pode utilizar qualquer serviço que lhe permita configurar as entradas do tipo A, MX e TXT.

Configurando o ambiente

Como já citei no início do artigo, este tutorial é voltado a distribuição Debian (6 ou 7). Algumas variações devem acontecer em outras distribuições porém não há grandes diferenças, e o Google é seu amigo caso fique preso em algum dos passos. Esta configuração já utilizei para um VPS (Virtual Private Server)) de 512Mb de RAM e um vCore na DigitalOcean e acredito que suporta muito bem cerca de 50 contas de médio uso com IMAP, seu limite é apenas o espaço em disco. Em um servidor um pouco melhor como de 2Gb e 8 vCores do Linode você pode muito bem instalar este mail server e configurar várias páginas web de uso moderado sem medo de ter atrasos consideráveis no recebimento de e-mails.

Para começar, você precisa decidir qual será o nome do seu servidor de e-mails. Isto é importante pois você baseará toda sua instalação neste mesmo nome e configurará no DNS dos seus domínios este mesmo nome.

Normalmente domínios como exemplo.com possuem um servidor separado para gerenciar os e-mails, como mail.exemplo.com. Isto é natural visto que o serviço de e-mail é considerado crítico na maioria das empresas, sendo assim é ideal um servidor dedicado a esta função, tanto por segurança quanto por questões de desempenho. No nosso exemplo iremos considerar o nome mail.exemplo.com. Lembre-se que ter um servidor dedicado ou adicionar “mail” ao nome do domínio não é regra, só uma boa prática.

Comece acessando o servidor em modo root, e defina o hostname do servidor com o nome que escolheu para o seu mail server.

  1. echo “mail.exemplo.com” > /etc/hostname
  2. hostname F /etc/hostname

Note que em alguns serviços de hospedagem seu servidor irá trocar o hostname automaticamente devido ao DHCP instalado por padrão. Para evitar que o hostname mude edite o arquivo /etc/default/dhcpcd e comente a linha onde há algo parecido com SET_HOSTNAME='yes'.

Não esqueça de editar seu arquivo de hosts (/etc/hosts) e de configurar os nomes da própria máquina para o endereço loopback.

  1. 127.0.0.1 localhost mail mail.paulo.cc

Este artigo irá armazenar tanto as caixas de e-mail como as aplicações de webmail e configuração de contas em um diretório comum no /var do servidor chamado mailserver. Aproveite e atualize os pacotes instalados no servidor com o apt-getpois precisará instalar várias aplicações nos próximos passos.

  1. mkdir /var/mailserver
  2. aptget update
  3. aptget upgrade

Observe que neste tutorial estarei referenciando sempre o domínio exemplo.com e mail.exemplo.com. Substitua estes domínios pelos domínios que você escolheu para seu servidor!

Certificados digitais para a conexão SSL/TLS

Entenda que serviços de e-mails foram desenvolvidos em um tempo onde a preocupação com segurança não era o maior foco. Portanto os protocolos de comunicação comuns como SMTP, IMAP e POP3 não possuem nenhuma criptografia no nível de protocolo em sua implementação inicial, tanto que as senhas são passadas de forma aberta e qualquer usuário mal intencionado pode ler estas senhas. Com o tempo o SSL e o TLS foram desenvolvidos nestes protocolos para garantir um mínimo de proteção.

Neste artigo precisaremos utilizar um conjunto de certificado e chave privada para garantir esta segurança. O ideal seria que você adquirisse um certificado digital em uma autoridade certificadora, da mesma forma que faz com um certificado digital HTTP para o Apache por exemplo, porém isto irá lhe gerar um custo que pode variar entre 10 a 1000 reais dependendo muitas vezes da fama da autoridade certificadora.

Se você já tem um certificado digital SSL para seu servidor web você pode utilizar o mesmo para as configurações de e-mail. O único inconveniente é que você precisa usar o mesmo nome de domínio do seu servidor web para o servidor de e-mail. É claro que você pode também utilizar um certificado wildcard para utilizar em todos os casos, mas aí o valor do certificado é maior ainda.

Para nosso tutorial vamos criar um certificado digital assinado por uma entidade certificadora criada por nós mesmos. Na prática só há dois problemas relacionados a isso. O primeiro é que todos os clientes que conectarem no seu servidor verão uma mensagem de certificado emitido por uma certificadora desconhecida (a famosa tela vermelha ou o aviso para confirmar a exceção de segurança, que há um risco). E o segundo é que certificados deste tipo não servem muito bem para conexões iniciadas em SSL/TLS.

Há três formas, falando em questões de segurança, de um cliente conectar ao serviço de SMTP/IMAP/POP3: [LIST] Insegura: Quando o cliente conecta e não pede por criptografia da conexão, deixando tudo se passar em conexão de texto puro, onde qualquer um pode ler a informação enviada;

Segura por STARTTLS: Que se parece muito com a insegura no início da conexão, porém logo que conecta pede por um “upgrade” na conexão. Nesta situação o cliente conecta como no primeiro caso e antes de enviar qualquer dado sensível o cliente solicita o início da comunicação criptografada (pelo comando STARTTLS);

Segura por SSL/TLS: Onde o cliente já conecta o servidor requisitando uma conexão 100% criptografada. Neste caso o servidor já inicia o processo de conexão enviando os dados de certificado com a chave pública para criptografia por parte do cliente; [/LIST]

O último método com certeza é o mais seguro, porém exige que o certificado digital tenha uma autoridade válida. Você pode tentar gerar certificados e instalar em todas as máquinas, porém ainda precisará distribuir os certificados para todos que usarem o servidor. Nesta situação o ideal é adquirir um certificado digital de uma autoridade certificadora. Neste artigo iremos garantir que ocorra pelo menos o nível de segurança do STARTTLS que em todo caso é suficiente para garantir que ninguém roube sua senha de e-mail. Para tal utilize os seguintes comandos para gerar um certificado que permite assinar outros certificados e também criar um certificado assinado por esta certificadora.

  1. # Você precisará informar o nome do seu servidor de e-mail (exatamente igual) quando a seguinte
  2. # pergunta for feita:
  3. # Common Name (e.g. server FQDN or YOUR name) []
  4. # No nosso caso preencheriamos com mail.exemplo.com
  5. openssl req x509 nodes days 365 newkey rsa:2048 \
  6. keyout /etc/ssl/private/mail.exemplo.com.key \
  7. out /etc/ssl/certs/mail.exemplo.com.crt
  8.  
  9. # Ajustamos as permissões
  10. chmod 600 /etc/ssl/private/mail.exemplo.com.key
  11. chmod 600 /etc/ssl/certs/mail.exemplo.com.crt

Configurando o Apache+MySQL+PHP

Para instalar os pacotes necessários execute o comando seguinte. Em algum momento será solicitado que preencha uma senha para o usuário root do banco de dados, não perca esta senha!

  1. aptget install apache2 php5 php5cli mysqlserver php5curl php5gd php5imap php5mcrypt php5mysql php5intl

Ajustes finos no PHP

Após instalar todos os pacotes recomendo ajustar alguns parâmetros no PHP. Edite o arquivo /etc/php5/apache2/php.iniajustando os seguintes valores.

  1. # Ajuste e mamória máxima que pode ser utilizada pelas aplicações web
  2. memory_limit = 128M
  3. # Ajuste o tamanho máximo do arquivo aceito pelo PHP. Importante para que o webmail aceite
  4. # anexos maiores que 2MB
  5. upload_max_filesize = 16M
  6. post_max_size = 16M
  7. # Ajuste básicos de segurança, para não identificar que você roda PHP no servidor
  8. expose_php = Off
  9. # Ajuste para não perder a sessão o tempo todo (tempo em segundos)
  10. session.gc_maxlifetime = 21600
  11. # Ajuste de fuso horário
  12. # Lista de timezones http://php.net/manual/en/timezones.php
  13. date.timezone = America/Sao_Paulo

Configuração do Virtualhost no Apache

Será preciso ativar alguns módulos do Apache para que o webmail funcione e o servidor aceite conexões HTTPS. Para tal ative tanto o módulo rewrite, que permite que URLs sejam sobrescritas como o módulo ssl.

  1. a2enmod rewrite ssl

No Apache também recomendo ajustar alguns parâmetros de segurança, evitando que identifiquem qual é a versão e tecnologia usada. Para tal edite o arquivo /etc/apache2/conf.d/security e ajuste os dois parâmetros abaixo.

  1. ServerTokens Prod
  2. ServerSignature Off

Após precisamos criar um Virtualhost para o webmail e também para o aplicativo usado para gerar as contas de e-mail. Crie um novo arquivo de texto chamado de mailserver dentro pasta de virtualhosts (/etc/apache2/sites-available/mailserver) e insira o seguinte conteúdo.

  1. <VirtualHost *:80>
  2. ServerAdmin seuemail@exemplo.com
  3. ServerName mail.exemplo.com
  4. DocumentRoot /var/mailserver/webmail
  5. <Directory /var/mailserver/webmail>
  6. Options Indexes FollowSymLinks MultiViews
  7. AllowOverride All
  8. Order allow,deny
  9. Allow from all
  10. </Directory>
  11. ErrorLog ${APACHE_LOG_DIR}/error-mailserver.log
  12. LogLevel warn
  13. CustomLog ${APACHE_LOG_DIR}/access-mailserver.log combined
  14. </VirtualHost>
  15.  
  16. <IfModule mod_ssl.c>
  17. <VirtualHost *:443>
  18. # Se possuir um IP específico comente a linha acima e descomente abaixo
  19. # Ajustando o IP
  20. #<VirtualHost 1.2.3.4:443>
  21. ServerAdmin seuemail@exemplo.com
  22. ServerName mail.exemplo.com
  23. DocumentRoot /var/mailserver/webmail
  24. <Directory /var/mailserver/webmail>
  25. Options Indexes FollowSymLinks MultiViews
  26. AllowOverride All
  27. Order allow,deny
  28. allow from all
  29. </Directory>
  30. ErrorLog ${APACHE_LOG_DIR}/error-mailserver.log
  31. CustomLog ${APACHE_LOG_DIR}/ssl-mailserver.log combined
  32. SSLEngine on
  33. # Caminhos para os dados de certificado
  34. SSLCertificateFile /etc/ssl/certs/mail.exemplo.com.crt
  35. SSLCertificateKeyFile /etc/ssl/private/mail.exemplo.com.key
  36. # Em alguns casos é preciso ajustar os certificados de cadeia ou de autoridade,
  37. # verifique com sua certificadora os detalhes
  38. #SSLCACertificateFile /etc/ssl/certs/cacert.pem
  39. #SSLCertificateChainFile /path/to/my/ca-bundle.crt
  40. # Ajustes para o Internet Explorer
  41. BrowserMatch “MSIE [2-6]” nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
  42. BrowserMatch “MSIE [17-9]” ssl-unclean-shutdown
  43. </VirtualHost>
  44. </IfModule>

Em alguns casos é necessário configurar também o ServerName e instruir o apache de forma que ele use virtualhosts para os domínios. Para isso edite o arquivo /etc/apache2/ports.conf e ajuste conforme o conteúdo a seguir:

  1. ServerName mail
  2. NameVirtualHost *:80
  3. Listen 80
  4. <IfModule mod_ssl.c>
  5. # Se possuir mais de um IP na máquina e quiser usar um específico para o SSL
  6. # Não esqueça de ajustar o IP no arquivo do virtualhost e descomentar a linha abaixo
  7. # e comentar a liga abaixo dela
  8. # NameVirtualHost 1.2.3.4:443
  9. NameVirtualHost *:443
  10. # Nota: Clientes com Windows XP não suportam SNI e portanto você não pode usar um
  11. # mesmo IP para mais de um virtualhost!
  12. Listen 443
  13. </IfModule>

Não esqueça de criar a pasta do webmail e ativar o virtualhost criado.

  1. mkdir /var/mailserver/webmail
  2. a2ensite mailserver
  3. /etc/init.d/apache2 restart

Ajustes no MySQL e bases de dados

Após configurar os domínios e o PHP você precisa ajustar algumas configurações do MySQL, recomendo editar o arquivo /etc/mysql/my.cnf e comentar a linha do bind-address e também evitar que o MySQL consulte o nome de todos os clientes que consultam o banco de dados, adicionando o skip-name-resolv.

  1. #bind-address = 127.0.0.1
  2. skipnameresolv

Não esqueça de reiniciar o banco de dados para que ele carregue as configurações. Aproveite para conectar o banco de dados e criar a base de dados que armazenará as preferências do webmail e as próprias contas de e-mail.

  1. /etc/init.d/mysql restart
  2. mysql uroot p # Utilize a senha que inseriu na instalação do banco de dados

Após digitar a senha um terminal do MySQL irá abrir. Execute o SQL abaixo para criar tanto as bases como os usuários. Lembre-se do usuário, senha, e nome dos bancos. Você precisará destas informações nas configurações dos demais aplicativos.

  1. CREATE DATABASE mail;
  2. GRANT ALL ON mail.* TO ‘mail’@‘127.0.0.1’ IDENTIFIED BY ‘mailpass’;
  3. CREATE DATABASE roundcube;
  4. GRANT ALL ON roundcube.* TO ‘roundcube’@‘127.0.0.1’ IDENTIFIED BY ‘roundpass’;
  5. FLUSH PRIVILEGES;

Configurando o Dovecot

O Dovecot cria uma determinada estrutura de pastas e arquivos para armazenar os e-mails no disco rígido. Porém é preciso criar as pastas básicas e criar um usuário específico do Linux. Note o UID 150 informado no comando useradd, é importante usar um UID não existente, caso não queira informar anote o UID criado pois você precisará dele para as configurações de segurança dos próximos passos.

  1. mkdir /var/mailserver/vmail
  2. useradd r u 150 g mail d /var/mailserver/vmail s /sbin/nologin c “Mailserver dir” vmail
  3. chmod 770 /var/mailserver/vmail
  4. chown vmail:mail /var/mailserver/vmail

Agora que criamos as pastas, você precisa usar o apt-get mais uma vez para baixar todos os pacotes relacionados ao Dovecot, aproveite para instalar os pacotes do Postfix, ClamAV, Amavis e SpamAssassin.

  1. aptget install postfix postfixmysql dovecotmysql dovecotimapd postgrey amavis clamav clamavdaemon spamassassin libnetdnsperl \
  2. pyzor razor arj bzip2 cabextract cpio file gzip nomarch pax unzip zip

Durante a instalação do pacote do Postfix você será questionado quanto ao tipo de mail server que estará configurando, selecione Internet Site. Também será questionado sobre o nome do mail server, digite no campo o seu hostname.

Após instalar os pacotes recomendo ajustar as permissões da pasta do Dovecot para que o usuário vmail (que criamos anteriormente) possa ler estas informações também.

  1. chown R vmail:dovecot /etc/dovecot
  2. chmod R orwx /etc/dovecot

Agora o processo mais trabalhoso começa, você precisará criar/editar os arquivos de configuração do módulo SQL do Dovecot, para que ele leia os domínios e caixas de e-mail do banco de dados que criamos anteriormente. O primeiro passo é criar o arquivo /etc/dovecot/conf.d/auth-sql.conf.ext e preenche-lo com o seguinte conteúdo. Este arquivo irá definir os arquivos que contêm as Querys de banco para usuários e senhas.

  1. passdb {
  2. driver = sql
  3. args = /etc/dovecot/dovecotsql.conf.ext
  4. }
  5. userdb {
  6. driver = sql
  7. args = /etc/dovecot/dovecotsql.conf.ext
  8. }

O arquivo que referênciamos agora precisa ser criado. Crie /etc/dovecot/dovecot-sql.conf.ext e preencha com as informações abaixo. Note que neste arquivo precisamos passar o usuário e senha do banco de dados mail, que criamos anteriormente. Caso você tenha trocado a pasta das caixas de e-mail você também precisará ajustar as Querys de acordo.

  1. driver = mysql
  2. connect = host=localhost dbname=mail user=mail password=mailpass
  3. default_pass_scheme = MD5CRYPT
  4. password_query = \
  5. SELECT username as user, password, ‘/var/mailserver/vmail/%d/%n’ as userdb_home, \
  6. ‘maildir:/var/mailserver/vmail/%d/%n’ as userdb_mail, 150 as userdb_uid, 8 as userdb_gid \
  7. FROM mailbox WHERE username = ‘%u’ AND active = ‘1’
  8. user_query = \
  9. SELECT ‘/var/mailserver/vmail/%d/%n’ as home, ‘maildir:/var/mailserver/vmail/%d/%n’ as mail, \
  10. 150 AS uid, 8 AS gid, concat(‘dirsize:storage=’, quota) AS quota \
  11. FROM mailbox WHERE username = ‘%u’ AND active = ‘1’

Com as Querys configuradas precisamos alterar algumas configurações no arquivo /etc/dovecot/conf.d/10-auth.conf. Neste arquivo você pode configurar várias definições de autenticação do Dovecot. Por enquanto só altere as informações citadas abaixo. Não substitua o arquivo inteiro.

  1. disable_plaintext_auth = yes
  2. auth_mechanisms = plain login
  3.  
  4. # Comente a autenticação do auth-system e habilite a autenticação por sql
  5. # !include auth-system.conf.ext
  6. !include authsql.conf.ext

Agora você precisa ajustar as configurações de segurança do Dovecot, para que ele use apenas os arquivos que estão nas caixas de e-mail dele. Edite o arquivo /etc/dovecot/conf.d/10-mail.conf e ajuste os parâmetros abaixo.

  1. mail_location = maildir:/var/mailserver/vmail/%d/%n
  2. mail_uid = vmail
  3. mail_gid = mail
  4. # lembre-se do uid usado na criação do usuário vmail
  5. first_valid_uid = 150
  6. last_valid_uid = 150

O Dovecot irá servir também conexões criptografadas, para que isso aconteça corretamente você precisa configurar o arquivo /etc/dovecot/conf.d/10-ssl.conf, ajustando os caminhos para os certificados que criamos no início do artigo. Caso você tenha um certificado intermediário provido pela sua autoridade certificadora não se esqueça de configurar o ssl_ca. Este arquivo pode ser tanto um arquivo .pem como um .crt.

  1. ssl = yes
  2. ssl_cert = </etc/ssl/certs/mail.exemplo.com.crt
  3. ssl_key = </etc/ssl/private/mail.exemplo.com.key
  4. # Certificado com senha, descomente e preencha a linha abaixo
  5. #ssl_key_password =
  6. # Certificado intermediário, descomente e preencha a linha abaixo
  7. #ssl_ca = </etc/ssl/certs/cacert.pem
  8. ssl_verify_client_cert = no

Ajuste o arquivo /etc/dovecot/conf.d/10-master.conf para que o Postfix possa consultar as caixas de e-mail. Verifique o trecho onde há o service auth e substitua apenas o conteúdo deste bloco.

  1. service auth {
  2. unix_listener authuserdb {
  3. mode = 0600
  4. user = vmail
  5. group = mail
  6. }
  7. unix_listener /var/spool/postfix/private/auth {
  8. mode = 0660
  9. user = postfix
  10. group = postfix
  11. }
  12. }

A última configuração necessária do Dovecot é o e-mail do postmaster. Caso você não ajuste este parâmetro é bem provável que tenha vários erros a cada recebimento de e-mail /etc/dovecot/conf.d/15-lda.conf.

  1. postmaster_address = postmaster@exemplo.com

Quanto ao Dovecot, era isso pelo momento. O próximo passo é configurar o Postfix.

Configurando o Postfix

O Postfix também precisa que todas as SQLs responsáveis pelo mapeamento de caixas e e-mails sejam configuradas. Para isso edite os seguintes arquivos. Note que todos eles precisam do usuário, senha e nome da base mail que criamos anteriormente. Você pode substituir o conteúdo destes arquivos completamente caso eles já existam.

Arquivo /etc/postfix/mysql_virtual_alias_domainaliases_maps.cf

  1. user = mail
  2. password = mailpass
  3. hosts = 127.0.0.1
  4. dbname = mail
  5. query = SELECT goto FROM alias,alias_domain
  6. WHERE alias_domain.alias_domain = ‘%d’
  7. AND alias.address=concat(‘%u’, ‘@’, alias_domain.target_domain)
  8. AND alias.active = 1

Arquivo /etc/postfix/mysql_virtual_alias_maps.cf

  1. user = mail
  2. password = mailpass
  3. hosts = 127.0.0.1
  4. dbname = mail
  5. table = alias
  6. select_field = goto
  7. where_field = address
  8. additional_conditions = and active = ‘1’

Arquivo /etc/postfix/mysql_virtual_domains_maps.cf

  1. user = mail
  2. password = mailpass
  3. hosts = 127.0.0.1
  4. dbname = mail
  5. table = domain
  6. select_field = domain
  7. where_field = domain
  8. additional_conditions = and backupmx = ‘0’ and active = ‘1’

Arquivo /etc/postfix/mysql_virtual_mailbox_domainaliases_maps.cf

  1. user = mail
  2. password = mailpass
  3. hosts = 127.0.0.1
  4. dbname = mail
  5. query = SELECT maildir FROM mailbox, alias_domain
  6. WHERE alias_domain.alias_domain = ‘%d’
  7. AND mailbox.username=concat(‘%u’, ‘@’, alias_domain.target_domain )
  8. AND mailbox.active = 1

Arquivo /etc/postfix/mysql_virtual_mailbox_maps.cf

  1. user = mail
  2. password = mailpass
  3. hosts = 127.0.0.1
  4. dbname = mail
  5. table = mailbox
  6. select_field = CONCAT(domain, ‘/’, local_part)
  7. where_field = username
  8. additional_conditions = and active = ‘1’

O Postfix também pode realizar uma limpeza de cabeçalhos no seu e-mail. Sempre que você envia um e-mail as aplicações costumam adicionar vários cabeçalhos identificando a aplicação que você usa de e-mails e o IP da sua máquina. Na configuração do Postfix iremos configurar para que alguns destes cabeçalhos sejam removidos, para tal crie o arquivo /etc/postfix/header_checks e adicione o seguinte conteúdo.

  1. /^Received:/ IGNORE
  2. /^UserAgent:/ IGNORE
  3. /^XMailer:/ IGNORE
  4. /^XOriginatingIP:/ IGNORE

Agora vamos para as configurações do Postfix de fato. Há muitos parâmetros ajustáveis, porém recomendo editar os seguintes no /etc/postfix/main.cf. Irei explicar brevemente os mais importantes através de comentários.

  1. # O banner é a mensagem apresentada quando algum usuário conecta na porta do Postfix
  2. smtpd_banner = $myhostname ESMTP $mail_name
  3. # Desative o biff, visto que nenhum usuário usará o e-mail diretamente pelo bash
  4. biff = no
  5.  
  6. # Desative a adição automática de e-mail, pois vamos servir mais de um domínio
  7. append_dot_mydomain = no
  8.  
  9. # Integração com o Dovecot
  10. smtpd_sasl_type = dovecot
  11. smtpd_sasl_path = private/auth
  12. smtpd_sasl_auth_enable = yes
  13. broken_sasl_auth_clients = yes
  14. smtpd_sasl_security_options = noanonymous
  15. smtpd_sasl_local_domain =
  16. smtpd_sasl_authenticated_header = yes
  17.  
  18. # Configurações de SSL/TLS
  19. # Configure aqui exatamente os certificados que você criou anteriormente e que foram configurados no dovecot
  20. smtpd_tls_cert_file=/etc/ssl/certs/mail.exemplo.com.crt
  21. smtpd_tls_key_file=/etc/ssl/private/mail.exemplo.com.key
  22. #smtpd_tls_CAfile=/etc/ssl/certs/cacert.pem
  23. smtpd_use_tls=yes
  24. smtpd_tls_security_level = may
  25. smtp_tls_security_level = may
  26.  
  27. # Algumas configurações adicionais do SSL/TLS, é importante pelo menos deixar o loglevel = 1 durante a instalação
  28. smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
  29. smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
  30. smtp_tls_note_starttls_offer = yes
  31. smtpd_tls_loglevel = 1
  32. smtpd_tls_received_header = yes
  33. smtpd_tls_session_cache_timeout = 3600s
  34. tls_random_source = dev:/dev/urandom
  35.  
  36. # Configuramos quais são os filtros usados para restringir o recebimento de e-mail
  37. # Note que há inclusive o endereço do Postgrey (na porta 10023)
  38. smtpd_relay_restrictions = reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_unauth_destination, check_policy_service inet:127.0.0.1:10023, permit
  39.  
  40. smtpd_recipient_restrictions = reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_unauth_destination, check_policy_service inet:127.0.0.1:10023, permit
  41.  
  42. # Configuramos quais são os filtros usados para restringir quem pode conectar ao servidor
  43. smtpd_helo_restrictions = permit_mynetworks, warn_if_reject reject_non_fqdn_hostname, reject_invalid_hostname, permit
  44.  
  45. # Configuramos quais são os filtros usados para restringir quem envia e-mail
  46. smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks, warn_if_reject reject_non_fqdn_sender, reject_unknown_sender_domain, reject_unauth_pipelining, permit
  47.  
  48. # Restrições baseadas no contexto de quem já está conectado ao servidor
  49. smtpd_client_restrictions = reject_rbl_client sbl.spamhaus.org, reject_rbl_client blackholes.easynet.nl, reject_rbl_client dnsbl.njabl.org
  50.  
  51. # Restrições de filtragem de acordo com o conteúdo do e-mail
  52. smtpd_data_restrictions = reject_unauth_pipelining
  53.  
  54. # Algumas configurações de timeout
  55. unknown_local_recipient_reject_code = 450
  56. maximal_queue_lifetime = 7d
  57. minimal_backoff_time = 1000s
  58. maximal_backoff_time = 8000s
  59. smtp_helo_timeout = 60s
  60. smtpd_recipient_limit = 16
  61. smtpd_soft_error_limit = 3
  62. smtpd_hard_error_limit = 12
  63.  
  64. # Algumas configurações de segurança
  65. smtpd_helo_required = yes
  66. smtpd_delay_reject = yes
  67. disable_vrfy_command = yes
  68.  
  69. # Configuração de hostname e nome de origem
  70. myhostname = mail.exemplo.com
  71. myorigin = /etc/hostname
  72.  
  73. # Configuração de destino (se você tiver erros, preencha “.” ou deixe vazio)
  74. mydestination = localhost
  75. mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
  76. mailbox_size_limit = 0
  77. recipient_delimiter = +
  78. inet_interfaces = all
  79. mynetworks_style = host
  80.  
  81. # Configurações de pastas e dos arquivos que permitem a leitura de domínios e caixas de e-mail
  82. virtual_mailbox_base = /var/mailserver/vmail
  83. virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf, mysql:/etc/postfix/mysql_virtual_mailbox_domainaliases_maps.cf
  84. virtual_uid_maps = static:150
  85. virtual_gid_maps = static:8
  86. virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf, mysql:/etc/postfix/mysql_virtual_alias_domainaliases_maps.cf
  87. virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
  88.  
  89. # Indicamos quem irá armazenar os e-mails
  90. virtual_transport = dovecot
  91.  
  92. # Indicamos qual é o filtro de e-mail usado para antivírus e detecção de SPAM
  93. content_filter = amavis:[127.0.0.1]:10024
  94.  
  95. # Indicamos o arquivo de cabeçalhos que iremos remover
  96. header_checks = regexp:/etc/postfix/header_checks
  97.  
  98. # Indicamos que o Postfix não deve adicionar o cabeçalho com o nome da caixa de e-mail que enviou o e-mail
  99. enable_original_recipient = no

Você precisará editar também o arquivo /etc/postfix/master.cf. Este arquivo configura todos os processos que devem ser usados pelo Postfix para gerenciar o recebimento e envio de e-mails. Recomendo que faça um backup do arquivo original para consultar posteriormente e substitua todo o arquivo com o seguinte conteúdo.

  1. # Postfix master process configuration file. For details on the format
  2. # of the file, see the master(5) manual page (command: “man 5 master”).
  3. #
  4. # Do not forget to execute “postfix reload” after editing this file.
  5. #
  6. # =================================================
  7. # service type private unpriv chroot wakeup maxproc command + args
  8. # (yes) (yes) (yes) (never) (100)
  9. # =================================================
  10.  
  11. # SMTP na porta 25
  12. smtp inet n smtpd
  13.  
  14. # SMTP com STARTTLS na porta 587
  15. submission inet n smtpd
  16. o syslog_name=postfix/submission
  17. o smtpd_tls_security_level=encrypt
  18. o smtpd_sasl_auth_enable=yes
  19. o smtpd_enforce_tls=yes
  20. o smtpd_client_restrictions=permit_sasl_authenticated,reject_unauth_destination,reject
  21. o smtpd_sasl_tls_security_options=noanonymous
  22.  
  23. # SMTP com SSL/TLS na porta 465
  24. smtps inet n smtpd
  25. o syslog_name=postfix/smtps
  26. o smtpd_tls_wrappermode=yes
  27. o smtpd_sasl_auth_enable=yes
  28. o smtpd_tls_auth_only=yes
  29. o smtpd_client_restrictions=permit_sasl_authenticated,reject_unauth_destination,reject
  30. o smtpd_sasl_security_options=noanonymous,noplaintext
  31. o smtpd_sasl_tls_security_options=noanonymous
  32.  
  33. # Outros processos relacionados a limpeza da fila de e-mails e filtragens
  34. pickup fifo n 60 1 pickup
  35. o content_filter=
  36. o receive_override_options=no_header_body_checks
  37. cleanup unix n 0 cleanup
  38. qmgr fifo n n 300 1 qmgr
  39. tlsmgr unix 1000? 1 tlsmgr
  40. rewrite unix trivialrewrite
  41. bounce unix 0 bounce
  42. defer unix 0 bounce
  43. trace unix 0 bounce
  44. verify unix 1 verify
  45. flush unix n 1000? 0 flush
  46. proxymap unix n proxymap
  47. proxywrite unix n 1 proxymap
  48. smtp unix smtp
  49. relay unix smtp
  50. showq unix n showq
  51. error unix error
  52. retry unix error
  53. discard unix discard
  54. local unix n n local
  55. virtual unix n n virtual
  56. lmtp unix lmtp
  57. anvil unix 1 anvil
  58. scache unix 1 scache
  59.  
  60. # Configuração da interface com o maildrop/sendmail
  61. maildrop unix n n pipe
  62. flags=DRhu user=vmail argv=/usr/bin/maildrop d ${recipient}
  63.  
  64. # Configuração da interface com o UUCP (se desejável)
  65. uucp unix n n pipe
  66. flags=Fqhu user=uucp argv=uux r n z a$sender $nexthop!rmail ($recipient)
  67.  
  68. # Outros métodos de envio de e-mail
  69. ifmail unix n n pipe
  70. flags=F user=ftn argv=/usr/lib/ifmail/ifmail r $nexthop ($recipient)
  71. bsmtp unix n n pipe
  72. flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp t$nexthop f$sender $recipient
  73. scalemailbackend unix n n 2 pipe
  74. flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemailstore ${nexthop} ${user} ${extension}
  75. mailman unix n n pipe
  76. flags=FR user=list argv=/usr/lib/mailman/bin/postfixtomailman.py
  77. ${nexthop} ${user}
  78.  
  79. # Integração com o Amavis e o SpamAssassin
  80. amavis unix 3 smtp
  81. o smtp_data_done_timeout=1200
  82. o smtp_send_xforward_command=yes
  83. o disable_dns_lookups=yes
  84. o max_use=20
  85. 127.0.0.1:10025 inet n smtpd
  86. o content_filter=
  87. o local_recipient_maps=
  88. o relay_recipient_maps=
  89. o smtpd_restriction_classes=
  90. o smtpd_delay_reject=no
  91. o smtpd_client_restrictions=permit_mynetworks,reject
  92. o smtpd_helo_restrictions=
  93. o smtpd_sender_restrictions=
  94. o smtpd_recipient_restrictions=permit_mynetworks,reject
  95. o smtpd_data_restrictions=reject_unauth_pipelining
  96. o smtpd_end_of_data_restrictions=
  97. o mynetworks=127.0.0.0/8
  98. o smtpd_error_sleep_time=0
  99. o smtpd_soft_error_limit=1001
  100. o smtpd_hard_error_limit=1000
  101. o smtpd_client_connection_count_limit=0
  102. o smtpd_client_connection_rate_limit=0
  103. o receive_override_options=no_header_body_checks,no_unknown_recipient_checks
  104.  
  105. # Integração com o Dovecot
  106. dovecot unix n n pipe
  107. flags=DRhu user=vmail:mail argv=/usr/lib/dovecot/dovecotlda d $(recipient)

As opções usadas neste arquivo sobrescrevem as configurações do arquivo principal. Portanto caso mude algo no arquivo de configuração e o parâmetro não parece ter efeito, verifique aqui se o parâmetro não foi sobrescrito.

Configurando o Amavis, ClamAV e o SpamAssassin

A configuração destes três aplicativos é bem mais simples comparadas as configurações do Dovecot e Postfix. Para iniciar adicione os usuários do clamav e amavis aos grupos de cada um deles.

  1. adduser clamav amavis
  2. adduser amavis clamav

Edite o arquivo /etc/amavis/conf.d/15-content_filter_mode para indicar ao Amavis quais são as filtragens que ele deve realizar.

  1. @bypass_virus_checks_maps = (
  2. \%bypass_virus_checks, \@bypass_virus_checks_acl, \$bypass_virus_checks_re);
  3.  
  4. @bypass_spam_checks_maps = (
  5. \%bypass_spam_checks, \@bypass_spam_checks_acl, \$bypass_spam_checks_re);

O Amavis também vai precisar consultar os domínios existentes no servidor. Edite o arquivo /etc/amavis/conf.d/50-userpara ajustar o acesso ao banco de dados, indicar qual é o número máximo de processos paralelos e a pontuação de SPAM necessária (feita pelo SpamAssassin) para que o filtro adicione os cabeçalhos de pontuação. Neste caso colocamos um valor negativo para que o cabeçalho esteja sempre disponível.

  1. # Número de processos
  2. $max_servers = 3;
  3.  
  4. # Nível que irá apresentar
  5. $sa_tag_level_deflt = 9999;
  6. # Nível no qual irá considerar SPAM
  7. $sa_tag2_level_deflt = 5;
  8. # Sem isso nem todos os e-mails serão analisados
  9. @local_domains_maps = [‘.’];
  10.  
  11. @lookup_sql_dsn = (
  12. [‘DBI:mysql:database=mail;host=127.0.0.1;port=3306’,
  13. ‘mail’,
  14. ‘mailpass’]);
  15. $sql_select_policy = ‘SELECT domain from domain WHERE CONCAT(“@”,domain) IN (%k)’;
  16.  
  17. # $log_level = 2; # Nível de log, em produção deixe comentado

O SpamAssassin já está configurado para integrar com os outros aplicativos, basta editar o arquivo /etc/default/spamassassin para que o processo seja ativado e a rotina que atualiza as tabelas de probabilidade de SPAM sejam atualizadas automaticamente.

  1. ENABLED=1
  2. CRON=1

Reiniciando os serviços

Após toda a instalação reinicie todos os serviços que configuramos.

  1. service postfix restart
  2. service spamassassin restart
  3. service clamavdaemon restart
  4. service amavis restart
  5. service dovecot restart

Caso observe algum erro, verifique os arquivos /var/log/mail.log e /var/log/mail.err.

Instalando o PostfixAdm

Agora que todas as aplicações já foram configuradas podemos instalar o gerenciador de caixas de e-mail. Esta ferramenta open source é muito prática e basicamente gerencia as tabelas que foram criadas na base mail.

  1. cd /var/mailserver/webmail
  2. wget ‘http://bit.ly/1b7p2Cu’ O postfix.tar.gz
  3. tar xvzf postfix.tar.gz
  4. mv postfixadmin2.3.6/ postfixadm
  5. rm postfix.tar.gz

Você precisará configurar alguns parâmetros no arquivo /var/mailserver/webmail/postfixadm/config.inc.php para que a aplicação conecte a base de dados corretamente.

  1. $CONF[‘configured’] = true;
  2. $CONF[‘setup_password’] = ; // Deixe vazio por enquanto
  3. $CONF[‘postfix_admin_url’] = ‘http://mail.exemplo.com/postfixadm’;
  4. $CONF[‘admin_email’] = ‘root@mail.exemplo.com’;
  5. $CONF[‘database_type’] = ‘mysqli’;
  6. $CONF[‘database_host’] = ‘localhost’;
  7. $CONF[‘database_user’] = ‘mail’;
  8. $CONF[‘database_password’] = ‘mailpass’;
  9. $CONF[‘database_name’] = ‘mail’;

Entre em http://mail.exemplo.com/postfixadm/setup.php e digite algo no campo setup password (esta senha será útil apenas na instalação do PostfixAdm) e clique em criar administrador. Copie o Hash que será informado na tela e cole no parâmetro $CONF['setup_password'] conforme instruções.

Volte a página de setup (dê um F5 se já estiver nela) e crie o usuário administrador. Através deste usuário é que você poderá configurar os domínios e caixas de e-mail em http://mail.exemplo.com/postfixadm/login.php.

Acesse a URL de login e configure o domínio em Dominios > Adicionar. Depois clique em Virtual > Criar conta de e-mail para configurar sua primeira conta de e-mail.

Por segurança apague o arquivo setup.php, evitando assim que qualquer outro usuário tente configurar a conta de administrador.

  1. rm /var/mailserver/webmail/postfixadm/setup.php

Instalando o Roundcube

Para instalar o Roundcube o processo é simples. Baixe a versão atual e descompacte na pasta do webmail. Os comandos abaixo podem variar caso a versão do Roundcube seja outra (que não a 0.9.5).

  1. cd /var/mailserver/webmail
  2. wget ‘http://bit.ly/1c4eAtb’ O roundcube.tar.gz
  3. tar xvzf roundcube.tar.gz
  4. mv roundcubemail0.9.5/* .
  5. mv roundcubemail-0.9.5/.htaccess .
  6. rm -rf roundcubemail-0.9.5/ roundcube.tar.gz
  7. chown www-data:www-data temp/ logs/
  8. mysql -u roundcube -p -D roundcube < SQL/mysql.initial.sql

Acesse http://mail.exemplo.com/installer/ e verifique se há algum detalhe faltando na configuração do servidor. Não se preocupe com bases, você precisará apenas do MySQL.

No próximo passo configure o SMTP/IMAP e banco de dados.

Após as configurações clique em Create config. Será apresentada uma tela com dois arquivos de configuração. Crie e preencha ambos arquivos com os respectivos conteúdos apresentados na tela.

No caso edite o arquivo /var/mailserver/webmail/config/main.inc.php e /var/mailserver/webmail/config/db.inc.php. E depois de salvar ambos arquivos você já pode apagar a pasta do instalador do Roundcube, ela não é mais necessária.

  1. rm rf /var/mailserver/webmail/installer/

Garantindo o uso do HTTPS

Para garantir que nenhum usuário acesse o webmail sem estar em ambiente seguro (já que configuramos o SSL para HTTPS no passo de configuração do Apache) edite o arquivo /var/mailserver/webmail/.htaccess e adicione o seguinte conteúdo ao início do arquivo.

  1. RewriteEngine On
  2. RewriteCond %{SERVER_PORT} 80
  3. RewriteRule ^(.*) https://mail.exemplo.com/$1 [L]

Este redirecionamento forçará sempre o usuário a usar a porta 443 do Apache quando entrar no webmail. O que é o ideal, assim evitamos que um usuário desavisado tenha sua senha roubada por algum usuário mal intencionado.

Configurações de Firewall

Recomendo também a configuração de um Firewall, você pode ver o esquema de um Firewall básico aqui. E adicionar regras para liberar as portas importantes do serviço de e-mail. Nesta configuração que realizamos teremos as seguintes portas:

[LIST] 25 (SMTP): Porta de envio de e-mail sem criptografia;

80 (HTTP): Porta do servidor web, usada para acessar o Roundcube e o PostfixAdm sem criptografia;

110 (POP3): Porta do serviço POP3, usada normalmente para baixar e remover os e-mails baixados de uma caixa de e-mail, sem criptografia;

143 (IMAP): Porta do serviço IMAP, usada normalmente para consultar as caixas de e-mail, sem realizar o download e remoção dos e-mails baixados, com criptografia opcional por STARTTLS;

443 (HTTPS): Porta do servidor web, criptografada;

465 (SMTPS): Porta de envio de e-mails com camada de criptografia obrigatória por SSL/TLS;

587 (SMTP/SMTPS): Porta de envio de e-mail com camada de criptografia opcional por STARTTLS;

993 (IMAPS): Porta do serviço IMAP, com camada de criptografia obrigatória por SSL/TLS;

995 (POP3S): Porta do serviço POP3, com camada de criptografia obrigatória por SSL/TLS; [/LIST]

As regras do Iptables para liberar estas portas estão a seguir.

  1. iptables A INPUT p tcp m multiport destinationports 80,443 j ACCEPT
  2. iptables A INPUT p tcp m multiport destinationports 25,110,143 j ACCEPT
  3. iptables A INPUT p tcp m multiport destinationports 443,465,587,993,995 j ACCEPT

Observação importante sobre a porta 25: O Antispam.br indica que os provedores de Internet residenciais bloqueiem o acesso a porta 25 dos servidores, em uma medida para diminuir o uso de bots e ferramentas mal intencionadas que geram SPAM (veja mais aqui). Porém você não deve de forma alguma bloquear esta porta no seu Firewall. Caso você o faça poderá ter problemas no recebimento por parte de muitos domínios.

Configurações de DNS

Após toda a configuração do servidor ainda é importante configurar um serviço fora do seu servidor de e-mails. Neste caso o DNS. Este é responsável por indicar que seu servidor de e-mails para o domínio configurado no PostfixAdm (exemplo.com) é o mail.exemplo.com.

A primeira coisa que você deve fazer é configurar a entrada A e AAAA (se disponível IPv6) para o mail.exemplo.com. Recomenda-se usar uma entrada A ao invés de uma entrada CNAME por questões de verificação de antispam. Além desta configuração, você precisará configurar o DNS reverso.

DNS reverso é configurado através de uma entrada PTR, porém estas entradas só a empresa que lhe disponibilizou o IP pode configurar. É neste passo que algumas pessoas enfrentam problemas. Em provedores de serviço como Linode e DigitalOcean você possui uma opção no painel de controle para configurar você mesmo o nome do servidor. Em provedores como a Amazon AWS você precisará enviar um formulário requisitando a alteração do nome. Se você está tentando configurar um servidor em uma conexão ADSL com IP dinâmico você pode esquecer, seu provedor não irá atribuir um nome para seu IP.

Quando um serviço de e-mail recebe um e-mail informando que é de determinado IP com determinado domínio o servidor que recebeu o e-mail pode realizar uma consulta de DNS reverso, para tentar identificar o nome do seu servidor e associa-lo a uma lista de servidores “limpos” ou “sujos”, caracterizando como e-mail legítimo ou SPAM. Por isso é importante configurar o DNS reverso.

Após configurar o domínio exemplo.com no PostfixAdm você deve criar uma entrada MX neste domínio para o endereço mail.exemplo.com. Normalmente junto a esta configuração você terá a opção de definir um número relacionado a prioridade. Esta prioridade faz mais sentido quando você tem mais de um servidor de e-mails para um mesmo domínio (quando usar um servidor de backup) e quanto menor o valor, mais prioridade ele terá. Normalmente se usar apenas um servidor de e-mail configure com a prioridade 10.

Outra configuração muito importante para evitar que seus e-mails sejam caracterizados como SPAM é a configuração de uma entrada TXT chamada SPF. Esta entrada nada mais é que uma entrada TXT com um conteúdo similar ao informado abaixo.

"v=spf1 mx ip4:111.222.333.444 ip6:2600:aaaa::bbbb:cccc:dddd:eeee/64 a:exemplo.com -all"

Não vou explicar aqui a sintaxe do SPF pois é um pouco longa, você pode consultar EL{http://antispam.br/admin/spf/{a documentação completa do SPF no site do Antipam.br}LE. Basicamente o que indicamos acima é que se qualquer servidor de e-mail receber um e-mail do domínio onde este SPF está configurado, ele poderá confiar nos servidores MX configurados, ou no IPv4 indicado, ou no IPv6 indicado, ou ainda no IP do servidor exemplo.com. Caso contrário ele deverá considerar SPAM (-all).

Lembre-se que qualquer alteração de DNS que fizer você pode estar sujeito a esperar de 2 a 48 horas até que as regras de DNS propaguem pelos servidores de DNS. Então tente configurar certo de primeira =].

Testando o envio e recebimento de e-mails

Com tudo configurado, hora de testar o envio e recebimento de e-mails. Acesse https://mail.exemplo.com e faça login com o e-mail completo e a senha que você configurou quando criou a conta no PostfixAdm.

Tente enviar um e-mail para uma conta do Gmail ou de um e-mail que você já possui e verifique se o e-mail chega adequadamente. Depois tente fazer o processo reverso, respondendo o e-mail em questão. Caso veja alguma mensagem de erro ou o e-mail não chegue, tente observar os logs de erro. Com certeza eles lhe darão a pista do que está errado, se não lhe der exatamente o ponto que está falhando.

Você também pode tentar configurar o seu e-mail no Gmail ou no Thunderbird/Outlook. Mas preste atenção nos endereços usados e o tipo de criptografia. Caso não tenha configurado um certificado válido ou tenha algum bloqueio de Firewall você pode perder muito tempo tentando configurar o e-mail com SSL/TLS, use o STARTTLS.

Resolvendo problemas

Dê uma olhada nos logs, eles podem lhe ajudar a identificar qualquer problema. O mail.log lhe expõe exatamente o que acontece com os e-mails recebidos ou enviados, indicando inclusive a mensagem que o servidor destino enviou quando aceitou o e-mail enviado.

  1. tail f /var/log/mail.log /var/log/mail.err

Todos os e-mails enviados que estão pendentes de envio para outro servidor ficam na fila de envio chamada “mailqueue”. Para ver esta fila use o comando mailq no servidor.

Caso faça algum ajuste no postfix você pode forçar o reenvio dos e-mails na fila usando o comando sendmail -v -q.

Referências

Este artigo foi baseado principalmente nos artigos de ExRatione e Flurdy, que possui um dos artigos mais completos que já ví relacionados a servidores de e-mail baseados em Postfix.

Com certeza você encontrará outros tutoriais interessantes por aí caso não queira usar o Postfix ou o Dovecot. Na biblioteca do Linode há vários tutoriais.

[Voltar]

Microsoft diz que o Windows 10 S é imune aos ataques por ransomware

A Micro$oft já falou tanta besteira e já fez tanta promessa furada que não é mais possível acreditar nela. Se os ransonware exploram portas abertas no sistema, como a M$ pode dizer que ele é imune se ela mantém diversas (ninguém sabem quantas) abertas dinamicamente no firewall do Windows por ordem do Departamento de Estado norte-americano que se acha no direito de espionar o mundo inteiro e roubar as ideias dos outros. Leia mais

Vamos transformar o RPI num servidor de e-mail?

No seguimento da nossa colaboração com a INMotion hoje vamos ensinar como transformar o Raspberry PI num servidor de e-mail.

Nas empresas, ou em grande partes delas, não existe um serviço dedicado para tratar o email. E se um simples Raspberry PI fosse a solução para o problema? Hoje vamos ensinar como criar um servidor de e-mail eficaz, recorrendo a um simples raspberry PI e ao Citadel (software gratuito).

Já conhece o Citadel?
Sem entrar em muitos detalhes, o Citadel é um projecto de código aberto,alternativo ao MS Exchange, que foi desenvolvido com o intuito de ser simples, versátil e completo. Apesar da ideia inicial deste projecto consistir na criação de um BBS (bulletin board system), rapidamente o projecto cresceu e ganhou funcionalidades viradas para o serviço de mail. Das funcionalidades que hoje suporta destaca-se:

  • Suporte para os protocolos: SMTP, IMAP e POP3.
  • Suporte para XMPP (Citadel pode funcionar como um servidor Jabber para mensagens instantâneas)
  • Interface Web muito intuitivo
  • Possibilidade de integrar com o spamassassin e ClamAV para filtragem de spam e vírus
  • Suporte para LDAP e Active Directory
  • Funcionalidade básicas de groupware (Calendários, Reuniões, catálogos de endereços, notas, tarefas)

Como instalar o Citadel no RPI?
Para instalarem o Citadel no RPI devem seguir os seguintes passos:

1) Instalar o Citadel
Para instalar o Citadel devem usar os seguintes comandos:

sudo apt-get update
sudo apt-get install citadel-suite

2) Instalação/Configuração
Durante o processo de instalação, o utilizador deverá indicar alguns parâmetros. Primeiro é solicitado que indique em que interface o servidor vai estar a escuta.

No caso que a configuração assuma todas as interfaces, devem indicar 0.0.0.0

Devemos agora indicar qual o modo de autenticação dos utilizadores. Por omissão o citadel usa a sua própria base de dados. No entanto, como referido, o serviço tem também suporte para LDAP e Active Directory.

Vamos agora criar um utilizador com privilégios administrativos para gestão do serviço.

Indicamos agora uma password para o utilizador criado anteriormente.

No passo seguinte, relativo ao webcit – Citadel Servlet Engine, seleccionamos Internal para que seja usado o próprio servidor HTTP do serviço. Caso já tenham um servidor web apache montado no sistema, podem escolher a opção Apache2.

Vamos agora indicar a porta de comunicação (ex. 80) para HTTP.

Para HTTPS, devem escolher a porta 443.

Vamos agora escolher o idioma da interface. Quem pretender português, basta que escolha a opção Brazilian Portuguese.

Uma vez realizadas as configurações anteriores é provável que apareça o seguinte erro.

Nota importante: Por alguma razão Citadel não criou o directório referido durante a instalação, mas podemos ir em frente e execute os seguintes comandos para corrigir isso (Tentamos contactar os responsáveis pelo Citadel mas ainda não obtivemos resposta).

sudo mkdir /etc/citadel/netconfigs
sudo chown citadel:citadel /etc/citadel/netconfigs
sudo service citadel restart

Uma vez que a configuração relativamente às interfaces à escuta foi perdida, temos de proceder a uma configuração manual. Para isso executamos o setup do citadel

Voltamos a indicar o utilizador com privilégios administrativos para gestão do serviço e indicamos também a respectiva password.

E a indicação para que o serviço fique à escuta em todas as interfaces.

Nos próximos passos será solicitado as portas e também modo de autenticação. Devem por isso indicar a mesma informação iniciar (Na verdade o processo manual sobrepõe-se à configuração que deveria ter sido realizada inicialmente).

Uma vez realizadas as configurações, o raspberry deve recarregar o servidor Citadel.

Nota: Se precisarmos de alterar a porta do WebCit (por questões de conflito), basta abrir o ficheiro/etc/default/WebCit e modificar o parâmetro WEBCIT_HTTP_PORT = 80 .

Vamos agora abrir o browser e introduzir o endereço do RPI onde está o Citadel instalado. Aparecerá a interface de autenticação, na qual devem introduzir as credenciais criadas.

E aqui está a interface de Administração.

Depois de ensinarmos a instalar o Citadel, hoje vamos ensinar a configurar o mesmo.

Configurar o domínio
Agora que temos o Citadel em funcionamento, há alguns passos que devemos fazer ao nível da configuração. Para começar, precisamos de configurar o nome de domínio. Para isso, fazemos o login, e clicamos no botão Administration.

Depois nas configurações globais selecionamos a opção Domain names and Internet mail configuration

Agora no campo seguinte configuramos o nome do nosso domínio.

Exemplo: (pplware.no-ip.org sem o prefixo www.)

Instalar e configurar spamassassin, amavisd e clamaV

Adicionar o host do Spamassassim

Adicionaro host do ClamaV

Configuração de contas de utilizadores
Para criar, apagar ou editar contas de utilizadores, voltamos ao menu de Administração e escolhemos (Adicionar, alterar, excluir contas de utilizador no painel de gestão de contas de utilizadores)

No painel seguinte vamos a adicionar um novo nome de utilizador. Este nome de utilizador que configuramos vai servir para endereços de e-mail.

No ecrã seguinte, adicionamos uma password e damos permissão para enviar e-mails. Clicamos no botão guardar alterações.

Agora a nossa nova conta de e-mail tem acesso a calendários partilhados, notas, tarefas, chat, etc.

Atualizar o e-mail do administrador

No final destas configurações, não nos podemos esquecer de abrir as portas onde funcionam os protocolos de e-mail no nosso router e redirecionar os pedidos para o nosso raspberry pi.

SMTP porta 25
IMAPporta 143
POP3porta 110

Por David Jesus para Pplware.com

*Artigo interessante sobre a instalação do Citadel

*Instalação do Citadel com Apache2, NGINX ou LightHTTPD


.

[Voltar]

Motorola pode lançar seu primeiro tablet Android em muito tempo

Segundo Android Police, empresa comprada pela Lenovo estaria desenvolvendo um novo tablet, mesmo com o segmento atingindo 10 trimestres consecutivos de baixas.

Mesmo com o mercado de tablets estar em baixa há um bom tempo, tendo registrado nada menos do que 10 trimestres consecutivos de queda nas vendas, a Motorola estaria disposta a tentar ressuscitá-lo.

Segundo o site especializado Android Police, a Motorola prepara um novo tablet Moto, seu primeiro em muitos anos. E, de acordo com a imagem que a página recebeu de uma fonte, o novo tablet não será apenas mais um aparelho padrão de 10 polegadas com um design de vidro e metal. O aparelho pode inclusive trazer um recurso novo legal que talvez faça muita gente querer comprá-lo.

Uma ferramenta chamada Productivity Mode (Modo de Produtividade, em tradução livre) poderia mudar a maneira como vemos tablets Android. Conforme a reportagem, haverá uma chave que muda a interface do Nougat, te permitindo fixar aplicativos na barra de navegação, mudar rapidamente entre eles sem precisar ficar abrindo o carrossel multitarefa, e fechar apps ao segurar o ícone de um deles apertado e então deslizar o dedo.

O Android Police não oferece nenhuma informação sobre uma possível data de lançamento, mas apenas o fato de que a Motorola possui um protótipo de um aparelho do tipo já é algo interessante.
Apesar de terem sido dados como mortos algumas vezes, os tablets Android estão experimentando uma espécie de renascimento em 2017, com a Samsung lançando o Galaxy Tab S3 (foto acima) e a Google mudando a maneira como o Pixel C funciona.

[Voltar]

auto-apt – instalação automática de dependências

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 15 de novembro de 2016

O programa auto-apt, de autoria de Fumitoshi UKAI, verifica o acesso a programas rodando dentro do ambiente criado por ele mesmo. Se um programa tenta acessar um arquivo de um software não instalado, o auto-apt faz então a instalação do software em questão.

O problema mais irritante que o auto-apt resolve é quando estamos tentando compilar um pacote e temos que interromper diversas vezes para instalar uma dependência não resolvida. Temos que parar tudo, realizar consultas, instalar, etc, isto quando acertamos de primeira, o que nem sempre ocorre.

Para instalar o pacote em sistemas Debian GNU/Linux e derivados, digite:

  sudo apt-get install auto-apt

Uma vez instalado, precisamos preparar o ambiente criando um banco de dados com informações sobre os pacotes e arquivso disponíveis:

  $ sudo auto-apt update-local
  local file list mode
  put: 257640 files,  390384 entries done (6 sec)

Em seguida precisamos recriar o arquivo dbfile a partir dos repositórios listados no arquivo /etc/apt/sources.list.

  # auto-apt update
  # auto-apt updatedb 

Isto feito, podemos então passar a usar o programa:

  # auto-apt run [comando] 

Como exemplo podemos citar a compilação padrão de um aplicativo, que requer a execução do comando configure e em seguida do comando make:

  # auto-apt run ./configure
  # auto-apt run make 

No exemplo acima, ao executar os comandos, caso seja encontrada alguma dependência, o programa auto-apt perguntará se desejamos instalar o que está faltando. Se você quiser automatizar o processo, basta executar o comando auto-apt com a diretiva “-y“, que assumirá que a sua resposta será sempre “sim”.

  # auto-apt -y run ./configure 

Referências

[Voltar]

Microsoft bloqueia atualizações do Windows 7 e 8.1 em PCs com CPU Ryzen e Kaby Lake

A desculpa esfarrapada é a segurança, mas a verdade é que a Micro$oft está desesperada com o fracasso retumbante do seu M$-rWindows 10 que está perdendo usuários dia-a-dia.

Essa é a verdade nua e crua: a Micro$oft quer empurrar a porcaria do RWindows 10 goela abaixo no consumidor, pois com seus planos de obrigar os usuários a instalar apenas aplicativos no sistema-josta que forem comprados da sua “rWindows Store”, o pessoal tenderá a fugir do Windows como o diabo foge da cruz. Leia mais

[Voltar]

Dragonboard 820C é o primeiro mini-PC equipado com o Snapdragon 820

O conceito de computador single-board ao estilo Raspberry Pi continua fazendo escola, e o 820C Dragonboard, é mais uma solução que aposta nesse formato e que chegará ao mercado com uma novidade bem interessante: a presença do SoC Snapdragon 820, um dos melhores processadores mobile do ano passado, e que equipou alguns dos melhores smartphones.

Vale relembrar que no fim do ano passado a Microsoft anunciou uma parceria com a Qualcomm que permite que os chips Snapdragon, que são baseados na arquitetura ARM, poderão rodar o Windows em sua versão para desktop, e inclusive emular programas x86. No site do Arrow Electronics, onde o mini-PC é listado, diz que no momento o suporte é apenas para o Android.

Além do Snapdrgon 820, o 820c Dragonboard conta com 3 GB de memória LPDDR4, 32 GB de armazenamento interno, GPU Adreno 530 suporte ao Bluetooth 4.1, Wi-Fi e Ethernet, portas USB 2.0/3.0. 

Preço e data de disponibilidade:
Por enquanto nenhuma informação em relação ao preço ou data de disponibilidade foi revelada.

[Voltar]

Instalar Selene Media Encoder

Para instalar o Selene Media Encoder no Ubuntu e poder receber automaticamente as futuras atualizações dele, você deve fazer o seguinte:
Passo 1. Abra um terminal (no Unity use as teclas CTRL + ALT + T);
Passo 2. Se ainda não tiver, adicione o repositório do programa com este comando ou use esse tutorial;

sudo apt-add-repository ppa:teejee2008/ppa

Passo 3. Atualize o APT com o comando:

sudo apt-get update

Passo 4. Agora use o comando abaixo para instalar o programa;

sudo apt-get install selene


Instalar aac-libav
apt-get install libavcodec54 libav-tools ffmpeg libkate-tools

Como instalar o encoder NeroAAC, para poder encodar no formato AAC/MP4
Para encodar no formato AAC/MP4, o programa precisa do encoder NeroAAC, que você pode instalar, fazendo o seguinte:
Passo 1. Se não estiver sendo executado, abra um terminal (no Unity use as teclas CTRL + ALT + T);
Passo 2. Vá para a pasta tmp;

cd /tmp

Passo 3. Baixe o arquivo de instalação do encoder com o comando:

wget http://ftp6.nero.com/tools/NeroAACCodec-1.5.1.zip

Passo 4. Descompacte o arquivo baixado usando o comando a seguir:

unzip -j NeroAACCodec-1.5.1.zip linux/neroAacEnc

Passo 5. Execute o instalador, com este comando:

sudo install -m 0755 neroAacEnc /usr/bin

Passo 6. Para finalizar, execute os comandos abaixo:

sudo apt-get install gpac

sudo apt-get install aac-enc

Pronto! Agora, quando quiser iniciar o programa, digite selene no Dash (ou em um terminal, seguido da tecla TAB).

Artigo completo aqui

Desinstalando o Selene Media Encoder no Ubuntu e derivados
Para desinstalar o Selene Media Encoder no Ubuntu e derivados, faça o seguinte:
Passo 1. Abra um terminal;
Passo 2. Desinstale o programa, usando os comandos abaixo;

sudo apt-add-repository ppa:teejee2008/ppa –remove
sudo apt-get remove selene*
sudo apt-get autoremove

[Voltar]

Quando os bits viram mísseis

Países preparam-se para a guerra cibernética, em que ataques são lançados por crackers, como os que defenderam o WikiLeaks.

Em 2010, a guerra mudou. Milhares de pessoas poderiam ter morrido em ataques aéreos e terrestres se um grupo de países liderados pelos Estados Unidos tivesse invadido o Irã. Havia o temor de que o programa nuclear defendido pelo presidente Mahmoud Ahmadinejad servisse de fachada para o desenvolvimento de uma bomba atômica. Em vez de bombardear importantes centros de pesquisa como a usina de Natanz, usou-se um vírus para contaminar equipamentos. O Stuxnet dominou controladores eletrônicos da Siemens e danificou fisicamente parte das centrífugas de enriquecimento de urânio iranianas.

Foi também no ano passado que os protestos digitais ganharam características semelhantes às de uma guerrilha. Em vez de optar pelo pacifismo dos abaixo-assinados virtuais, internautas se mobilizaram para tirar do ar sites de cinco empresas. O grupo Anônimos coordenou uma ação em escala inédita, com a justificativa de defender a liberdade de expressão. Seus integrantes lançaram ataques de negação de serviço contra Amazon, PayPal, Visa, Mastercard e o banco suíço PostFinance. As companhias sofreram represálias por terem negado hospedagem, bloqueado recursos financeiros ou vetado doações para o WikiLeaks, o serviço responsável pelo vazamento de mais de 250.000 documentos diplomáticos norte-americanos. O site do WikiLeaks também acabou sendo derrubado por um ataque de origem desconhecida, mas os ativistas do Anônimos conseguiram colocá-lo no ar novamente e espalhá-lo centenas de vezes pela web.

A escala de ações violentas nos meios digitais marca o início da guerra cibernética ou ciberguerra. Tanto os criadores do Stuxnet coo os integrantes do grupo Anônimos foram bem-sucedidos. Além de terem provocado danos significativos, conseguiram manter sua identidade sob sigilo e seus alvos não tiveram como se defender. O Stuxnet foi mais eficiente do que a mobilização militar tradicional e os ataques do Anônimos tiveram mais resultado do que um protesto online. Ações semelhantes tem ocorrido desde os anos 90, mas, em 2010, a frequência aumentou e o grau de sofisticação, também.

Batalhas pela web
As operações militares não estão sendo deixadas de lado. Os meios digitais e a web é que passaram a integrar o campo de batalha. “Ainda não estamos no meio de uma guerra cibernética global, mas percebemos uma capacidade crescente de criar ações violentas com potencial cada vez mais destrutivo”, afirma James Hendler, professor do Instituto Politécnico Rensseleaer, nos Estados Unidos e a ex-cientista-chefe da Agência de Projetos de Pesquisa Avançada de Defesa do Pentágono (Darpa). “Tenho esperança de que isso será contido. Mas tenho medo de não conseguirmos”.

O tema é controverso. Para alguns especialistas, a guerra cibernética já ocorre em escala global, de forma pouco visível. Tentativas de invasão de sistemas estratégicos são cada vez mais comuns, e suspeita-se que os responsáveis trabalhem para países adversários. “O ciberespaço é disputado todo dia, toda hora, todo minuto, todo o segundo”, disse o inglês Ian Lobban, diretor do Quartel General de Comunicações do Governo (GCHQ), uma agência de inteligência britânica, durante uma palestra em outubro. Muitos dos crackers por trás dessas ações buscam dados confidenciais.

Há também quem defenda -que a ciberguerra não ocorre a todo momento, mas em situações pontuais. O conflito virtual entre Rússia e Estônia, em 2007, é classificado como a primeira guerra cibernética. “Ataques coordenados tiveram como alvo órgãos do governo, atingindo a infraestrutura de rede, serviços públicos e instituições”, diz o estoniano Linnar Viik, do Instituto Europeu de Inovação e Tecnologia. Tudo começou por causa da mudança de lugar de um monumento, o Soldado de Bronze de Tallinn. A estátua homenageia soldados soviéticos mortos na segunda guerra mundial.

Os de acordo com Wiik, os ataques à Estônia dispararam um alerta para governos e organizações militares o redor do planeta. “Todos passaram a reconsiderar a importância da segurança das redes para a doutrina militar moderna”, afirma. A partir daí, outros confrontos ocorreram. Em setembro de 2007, por exemplo, e Israel lançou um ataque aéreo contra a Síria. Estranhamente, os aviões israelenses não foram detectados pelos radares. Suspeita-se que um programa de computador tenha ajudado a ocultar as aeronaves, mas nada ficou comprovado. “A maior diferença entre a guerra física e a cibernética é que, no mundo real, conseguimos dizer quem foi o autor de um ataque”, diz o professor Hendler.

Inimigos invisíveis
Descobrir o responsável por uma ação cibernética de guerra é muito complicado. “Pelo objetivo, você pode tentar deduzir quem seria o atacante”, disse Sandro Süffert, diretor de tecnologia da Techbiz Forense Digital, empresa especializada em cibersegurança. “Mas em uma guerra cibernética, um país pode até se passar por outro.” No mínimo vinte perguntas devem ser respondidas por quem procura definir a identidade de um agressor online. Um acordo internacional poderia criar um metodologia padronizada.

Embora a ameaça seja real, poucos começaram a se preparar para ciberguerra. Nos estados unidos, começou a funcionar, em maio, uma divisão das Forças Armadas dedicada a esses confrontos, o USCYBERCOM. Entre os países que adotaram ações parecidas ou que planejam criar áreas especializadas estão Inglaterra, Alemanha, China, Israel, Rússia, Índia, Coréia do Norte e Irã. Muitos foram alvos dos crackers ou são suspeitos de ter feito ataques.

No Brasil, o Exército criou, em fevereiro de 2009, o Centro de Comunicações e Guerra Eletrônica (CCOMGEX) e, em agosto de 2010, o Centro de Defesa Cibernética do Exército (CDCiber). Dentro de alguns meses, um grupo de três a dez militares receberão treinamento de uma semana em Bilbao na Espanha, nos laboratórios da Panda Security. “Serão apresentados as ameaças que existem, como funcionam, de onde partem e como são construídas. Também mostraremos nossas ferramentas forenses não comercializadas”, afirma Eduardo D’Antona, diretor corporativo e de TI e da Panda Security Brasil.

O Exército evita dar detalhes sobre suas ações contra ciberguerra por motivos de segurança. A experiência com a Panda é apenas uma dentre várias medidas. “Iniciativas semelhantes estão sendo empreendida com uma empresa nacional, cujo nome preferimos não divulgar”, diz o general Antonio dos Santos Guerra Neto, comandante do CCOMGEX. De acordo com o Núcleo do Centro de Defesa Cibernética do Exército, os sistemas de detecção de incidentes de redes indicam aumento na quantidade de ataques cibernéticos e na sofisticação.

Alvos civis
As tentativas de invasão miram também nos computadores do governo federal e de empresas estatais. Nesse caso, a responsabilidade de prevenir ataques recai sobre o Gabinete de Segurança Institucional da Presidência da República (GSI). O órgão procura identificar e eliminar vulnerabilidades nas redes. Isso é feito por meio de cursos de capacitação, análise de incidentes e acordos internacionais. No fim do ano passado, Brasil e Rússia assinaram um acordo de cooperação e proteção mútua.

Hoje, existem 320 redes no governo brasileiro. “Em 2009, sofremos 2100 ataques por hora. Isso representa apenas 1% dos incidentes, mas é o que me preocupa”, diz Raphael Mandarino, diretor do Departamento de Segurança da Informação e Comunicações do Gabinete de Segurança Institucional. As tentativas de invasão buscam obter informações estratégicas ou sobre autoridades. O órgão chega a analisar 200 malwares por mês que não são detectados por antivírus. A equipe chegou a estudar trechos do código do Stuxnet. “É muito bem-feito. Não é coisa de garoto de faculdade”, afirma Mandarino.

O jornal The New York Times afirma que o Stuxnet foi criado por uma operação conjunta entre EUA e Israel, com a ajuda de ingleses, alemães e da Siemens. O vírus teria sido testado em Israel, no complexo de Dimona – um centro militar ultrassecreto. Ainda não se conhece todo o dano que ele é capaz de causar. No Irã, a contaminação teria ocorrido por meio de um pen drive. O Stuxnet abriu caminho para outras armas digitais e, em um cenário pessimista de guerra cibernética global, a Internet corre perigo. “Muitos de nós tem defendido a criação de uma ciência sobre a web, e esse é um dos motivos para isso. Não sabemos o que pode acontecer”, diz o professor James Hendler.

[Voltar]

Zimbra no CentOS

Instalar Zimbra no CentOS 7

Zimbra Collaboration Suite (ZCS) é um software para colaboração em grupo criado pela Zimbra INC, é amplamente utilizado em todo mundo, com ele os usuários podem compartilhar pastas, calendários e outras coisas usando sua interface Web.

Atualmente a última versão do Zimbra Collaboration Suite é a 8.6.0. Ele traz novos recursos, melhorias no servidor de correio (postfix) e fornece uma melhor experiência para o cliente Web. E neste post iremos explicar como instalar Zimbra 8 (Zimbra 8.6.0 no RHEL 7 ou Centos 7) como preferir.

Pré-requisitos para instalar Zimbra 8

  • Servidor com Centos7 (RHEL7) instalado;
  • Acesso SSH #ROOT ao servidor;
  • Um ( FQDN ) para seu servidor Zimbra juntamente com os apontamentos de MX e DNS configurados corretamente.

Configurações iniciais no servidor

  • Configurar o arquivo /etc/hosts e seu hostname
  • Comente a linha referente ao IPV6;
  • Adicionar o FQDN ao seu IP;
  • Desabilitar o firewall linux (Utilizamos firewalls Cisco ASA 5585x em nossa infraestrutura)
  • service firewalld stop
  • service iptables stop
  • service ip6tables stop
  • systemctl disable firewalld
  • systemctl disable iptables
  • systemctl disable ip6tables

Desabilitar o SELINUX
Edite o arquivo /etc/selinux/config, alterando a variável SELINUX para DISABLED conforme abaixo:

Desabilitar o serviço do Postfix

  • service postfix stop
  • systemctl disable postfix
  • systemctl stop postfix.service

Instalação de Pacotes
Executar a atualização do servidor

yum upgrade -y

Executar a instalação de pacote necessários para a instalação do Zimbra

yum -y install gmp libidn wget nano make nc sudo sysstat libtool-ltdl glibc perl ntp libaio unzip perl-core net-tools perl perl-core wget screen w3m bind-utils unzip nmap sed nc sysstat libaio rsync telnet aspell vim

Download e Instalação do Zimbra
Executar o download da última versão do Zimbra Estável – AQUI
wget https://files.zimbra.com/downloads/8.6.0_GA/zcs-8.6.0_GA_1153.RHEL7_64.20141215151110.tgz
Extrair os dados do arquivo compactado
tar xzf zcs-8.6.0_GA_1153.RHEL7_64.20141215151110.tgz
Acessar a pasta com os dados
cd zcs-8.6.0_GA_1153.RHEL7_64.20141215151110

Instalando o Zimbra no servidor Centos

./install.sh –platform-override

Efetuar a configuração do Zimbra Pós Instalação
Alterar o campo senha com as opções [ 7 – 4 ] para uma senha de sua escolha de preferência uma boa senha

Alterar a utilização do Zimbra para funcionar com ambos os protocolos http e https
Altera o campo Web Server Mode com as opções [ 12 – both ]
Aplicar e salvar as configurações efetuadas
Com as opções [ r – a – yes – enter – yes ]
Após aplicar as configurações você irá receber uma tela conforme abaixo:

Após a instalação será solicitado se você deseja ou não informar a Zimbra sobre a instalação da sua versão, nós normalmente aceitamos com a opção YES enviando a Zimbra as informações da instalação.

Após enviar os relatórios a zimbra verifique se a instalação ocorreu bem e todos os seus serviços estão online conforme abaixo:

Agora você já pode acessar a sua instalação pelo link https://IP:7071, irá receber uma mensagem com um certificado auto-assinado, para esta mensagem ser removida você precisa efetuar a aquisição de um certificado válido neste LINK aconselhamos a aquisição do certificado Comodo PositiveSSL para a sua instalação do Zimbra, para o primeiro acesso você pode ignorar e acesso o painel de controle normalmente, as credenciais de acesso são usuário admin e senha escolhida durante a configuração do Zimbra.

Este é um tutorial simples e fácil para instalar Zimbra 8 no Centos 7, gostaríamos de informar que nós da SECNET prestamos suporte no serviço e também efetuamos a disponibilização do serviço em Cloud conforme a sua necessidade sendo ele compartilhado ou dedicado, customizado para o seu negócio.

Se você gostou deste conteúdo, peço que ajude mais pessoas a instalar o Zimbra 8 no CentOS 7, compartilhando este artigo com seus amigos.

Quer saber mais coisas sobre Zimbra? Acesse a categoria E-mail do Blog.

Caso tenha alguma dúvida sobre o assunto, por favor deixe seu comentário que terei o prazer de conversar com você a respeito.

[Voltar]