Estudo de Caso – rede Linux, Editora Manifesto

Nesta semana, tivemos a satisfação de entregar uma rede 100% Linux na Editora Manifesto, que publica a revista Retrato do Brasil.

A Editora utilizava uma rede LTSP adquirida da empresa Samurai em 2001. A tecnologia e a rede eram muito estáveis, mas a plataforma de HW e SW estava defasada, tanto em velocidade de processamento quanto em novas tecnologias Internet (streaming, flash, HTML5, etc.), além de crescente dificuldade de manutenção.

O projeto do upgrade tecnológico teve os seguintes pontos de partida: baixo custo, estabilidade e gerenciamento centralizado.

A Editora adquiriu um lote minibooks Intel ATOM dual-core como desktops, com 2GB de RAM e 320GB de HD Sata2, que forneceria um desempenho compatível com as necessidades dos usuários. O servidor escolhido foi HP ML-110G7. Todos os equipamentos foram fornecidos pela Bluetech.

Os desktops foram instalados com Ubuntu Desktop 11.04 LTS, o qual oferece uma alternativa robusta, moderna e atraente ao Microsoft Windows, além do conjunto de softwares de produtividade (browser, email, editor de texto, planilha eletrônica) competitivo e gratuito.

O servidor é um capítulo à parte. Pela premissa de gerenciamento centralizado, decidiu-se implementar diretório OpenLDAP 2.4 como backend de autenticação de todos os desktops, com transporte seguro via TLS. O gerenciamento de contas de usuários ficou a cargo do LDAP Account Manager (LAM), um aplicativo PHP. Finalmente, o serviço NFSv4 fornece o mapeamento transparente das pastas de trabalho locais aos desktops Ubuntu a um compartilhamento centralizado no servidor, facilitando os procedimentos de backup.

Este projeto foi concebido, definido, implementado e implantando em um mês, e demonstra a convergência entre tecnologia de ponta, custo contido e facilidade de gerenciamento de operação num ambiente Linux.

 

Amazon EBS Snapshot Copy

Em meados de Dezembro/2012, Amazon Web Services anunciou uma facilidade adicional para Elastic Block Store (EBS): a função Snapshot Copy permite que snapshots EBS possam ser copiados facilmente entre diferentes regiões de disponibilidade AWS.

Antes desta facilidade, a cópia de um EBS (ou de um snapshot) de uma região para outra envolvia um processo tortuoso. Era necessário anexá-lo a uma instância EC2 Linux, na região-origem; criar um novo EBS do mesmo tamanho e anexá-lo na região-destino a uma instância EC2 Linux, e depois utilizar o comando dd para copiar bloco-a-bloco do EBS-origem, via ssh, ao EBS-destino (ex. dd if=/dev/sdg | ssh -i root-key root@destino “dd of=/dev/sdf”)

Para usar esta nova facilidade, basta acessar o console de gerenciamento AWS, selecionar um snapshot para cópia, definir a região-destino, e comandar o início da cópia. Esta função de cópia pode ser iniciada via linha de comando, através da EC2 Command Line Interface, facilitando sua execução em modo batch. O snapshot copiado para a região-destino é como qualquer snapshot, e poderá ser usado para criar novos volumes EBS para serem anexados a instâncias EC2.

Esta função facilita o uso de múltiplas regiões de disponibilidade AWS para diversas finalidades, como entregar aplicações web em várias regiões geográficas, migrar aplicações de datacenter, implementar plano de recuperação de desastre, etc.

Como bloquear Facebook? MSN? Twitter?

Facebook e Twitter facilitam o destaque da sua empresa nas mídias sociais, mas seus funcionários produzem menos porque passam muito tempo postando no Facebook ou “twittando”? ou ficam batendo papo com amigos e parentes via MSN ou Skype?

Um servidor proxy Linux permite facilmente bloquear ou liberar acessos a mídias sociais,  a programas de chat, ou a qualquer site ou conteúdo Internet. Os controles podem ser baseados por computador, por grupo de funcionários, por horário, por tipo de palavra-chave, etc. E relatórios detalhados mostram claramente o que cada pessoa faz na Internet durante o dia.

Entre em contato conosco para saber mais detalhes sobre esta ferramenta importante!

Mandatory Access Control – AppArmor

Um servidor bem permissionado significa um servidor mais seguro. Isso desde os primórdios até os dias atuais. Por isto, devido a essa poderosa e conservadora forma de evitar ataques apresentaremos neste artigo como se proteger de modo eficiente.

Mandatory Access Control (MAC) e Discretionary Access Control (DAC)

MAC e DAC são dois modelos de controle de acesso que se diferem nas entidades que especificam as permissões.

No modelo DAC as permissões de um recurso são especificadas pelo utilizador que é dono do recurso. O dono do recurso decide quem pode, ou não pode, realizar as varias operações sobre o recurso (o conjunto de operações de um recurso varia conforme o tipo do recurso, um arquivo, um socket, etc). Um exemplo do modelo DAC é o controle de acesso a arquivos num sistema UNIX, onde as permissões de leitura escrita e execução são especificadas pelos donos dos arquivos. O problema do modelo DAC é que qualquer processo iniciado por um utilizador tem as mesmas permissões que esse utilizador. Isto pode comprometer a segurança, caso uma aplicação tenha algum bug ou seja uma aplicação “mal intencionada”, pois a aplicação tem as mesmas permissões que o utilizador que a iniciou.

No modelo MAC as permissões são especificadas pelo sistema. Essas permissões são baseadas numa política global, no nível de segurança do utilizador e na classificação do recurso. A política de segurança não pode ser alterada ou removida a não ser pela utilização de operações privilegiadas. Este modelo permite implementar uma política de segurança que siga o princípio least privilege, onde cada aplicação apenas deve ter autorização para realizar as operações estritamente necessárias para o seu bom funcionamento, sendo as restantes operações não permitidas. Desta forma é criado um ambiente mais seguro, pois é limitada a quantidade de estragos que uma aplicação “mal comportada” pode fazer. Por exemplo, se limitarmos o acesso de uma aplicação editora de texto apenas ao que está sendo editado, mesmo que a aplicação tenha alguma vulnerabilidade, esta não conseguirá comprometer mais nada além do arquivo que está sendo editado.

O DAC é bem conhecido, e este artigo não contemplará ele. Focaremos no MAC, razoavelmente pouco conhecido, mas muito eficaz.

Atualmente existem vários tipos de MACs: SELinux da Red hat, AppArmor utilizado no Ubuntu, Smack um MAC focando em simplicidade e o Tomoyo que possui uma espécie de inteligência artificial baseada no histórico de ações tomadas previamente. Destacaremos, de forma breve, o poder de fogo do AppArmor.

AppArmor

O AppArmor foi incluído no kernel Linux oficial em sua versão 2.6.36, mas seu desenvolvimento (e uso) começou já em 1998, na distribuição GNU/Linux Immunix. Com a aquisição pela Novell em 2005, o AppArmor (aparentemente o principal motivo da aquisição) foi adotado no SUSE Linux Enterprise. Num caso infeliz e bastante noticiado, no entanto, em 2007 a equipe de desenvolvimento do AppArmor foi dispensada pela empresa.

O AppArmor se baseia nos caminhos dos arquivos para definir seu contexto de segurança. Os arquivos de configuração, assim com os domínios de segurança, estão nos diretórios /etc/apparmor/ e /etc/apparmor.d/.

Assim como os demais sistemas MAC, o AppArmor também dispõe de dois modos de operação: enforcement (ativo) e complain (reclamação, equivalente ao permissivo do SELinux: relata violação das políticas mas não impede nada).

Para desabilitar o AppArmor como um todo, basta parar o serviço deste.

As políticas se localizam em /etc/apparmor.d/. Dentro deste diretório, temos os mais vastos serviços ou utilitários que rodam sobre a autoridade do AppArmor. Por exemplo:

                      /usr/sbin/tcpdump → /etc/apparmor.d/usr.sbin.tcpdump

                      /sbin/dhclient3 → /etc/apparmor.d/sbin.dhclient3

O perfil é associado ao programa no momento em que este é executado. Portanto, como nos informa a man page do AppArmor, não é possível confinar um programa que já esteja em execução.

Os perfis em uso, juntamente com seus respectivos modos de operação no momento, podem ser obtidos com uma consulta ao securityfs (já montado por padrão pelo Ubuntu):

                      root@Umbreon ~ # cat /sys/kernel/security/apparmor/profiles

                      /usr/sbin/tcpdump (enforce)

                      /usr/lib/connman/scripts/dhclient-script (enforce)

Esta saída significa que nosso sistema atualmente tem quatro perfis de segurança, para os dois programas exibidos na saída, e o modo de operação de todos eles é o enforce.

O AppArmor trabalha com o daemon auditd para exibir suas mensagens. Se o audit não estiver instalado, ele utilizará as mensagens de kernel normal do Linux, ou seja, o syslog. É muito interessante instalar o auditd e utilizá-lo para que tenhamos um log limpo do nosso sistema e do que ocorre com ele.

A visualização do MAC AppArmor é simples. Basta executarmos o comando apparmor_status, que surgem nossos perfis e políticas:

               root@lab01 ~ # apparmor_status

               apparmor module is loaded.

               24 profiles are loaded.

               2 profiles are in enforce mode.

                /sbin/dhclient3

                /usr/sbin/tcpdump

              4 profiles are in complain mode.

              /bin/ping

              /usr/lib/dovecot/pop3

             /usr/lib/dovecot/pop3-login

             /usr/sbin/avahi-daemon

            4 processes have profiles defined.

             1 processes are in enforce mode :

            /sbin/dhclient3 (859)

           1 processes are in complain mode.

            /usr/sbin/nmbd (825)

Para alterar perfis do AppArmor basta utiliza o sintaxe:

aa-mode command

            root@lab01 ~ # aa-enforce /bin/ping

            root@lab01 ~ # aa-complain /etc/apparmor.d/*

Já me disseram que o AppArmor não é tão bom por ser muito fácil de desativar — basta parar o serviço. Porém, não creio que essa característica seja, de fato, uma falha de segurança. O próprio bootloader GRUB possui opções como essa.

A comparação do AppArmor com o SELinux é inevitável, uma vez que estes são os dois únicos sistemas MAC a virem ativados por padrão em alguma distribuição GNU/Linux. O SELinux em Red hats e o AppArmor no Ubuntu. De uma forma geral, enquanto o SELinux é capaz de se interpor fortemente entre o administrador e seu objetivo, o AppArmor parece ser menos intrusivo.

Todavia, como segurança e facilitade são sempre opostas, tem-se a impressão de que o AppArmor é menos seguro, já que este, possui menos inconvenientes. O importante, no entanto, é alcançar o objetivo principal dos sistemas MAC: o controle de acesso. Se seu sistema MAC preferido é capaz de bloquear o acesso de serviços do sistema a arquivos sensíveis, seja ele AppArmor ou SELinux, parabéns pela segurança implementada.

Monitoração – Essência de qualquer alta disponibilidade

Nagios é uma ferramenta muito interessante (e eficiente) para monitorar serviços e servidores. Por outro lado, pode ser uma tarefa árdua e trabalhosa para alguns. Precisam ser investidas algumas horas em cima de vários arquivos de configurações para poder colocá-lo em funcionamento. Nós da Intercom vimos o quanto isso pode tirar a eficiência do Nagios para os nossos clientes, pois hoje todos têm horror a qualquer serviço ou aplicação sem interface gráfica. Por isso apresentamos o Nagios Web Config.

O Nagios Web Config é um software que serve para configurar os hosts, serviços, grupos de hosts, comandos e todas as demais configurações do Nagios (exceto a configuração inicial do mesmo) de forma visual e prática utilizando para isso o seu browser. Por isso mesmo, ele já foi planejado para ser implementado na própria sidebar do Nagios, o que facilita ainda mais seu uso.

E como ele trabalha ? Ao ir adicionando/deletando/editando as configurações ele vai armazenando as mesmas em um DB MySQL. Depois você pode solicitar que ele escreva as configurações e ele próprio irá gerar os arquivos necessários sem que haja necessidade de editá-los manualmente. Além disso, como os dados ficam num DB caso você precise reinstalar o servidor (ou por exemplo decida colocar o Nagios em outro servidor), não haverá necessidade de refazer todas as configurações.

 

Para quem ainda não conhece, o Nagios Web Config é uma excelente ferramenta que permite configurar o Nagios através do browser, tornando essa tarefa muito mais rápida e agradável.

 

Outro amigo dos profissionais que trabalham com o Nagios realizando monitoração é o  nagstamon. Este é um software que permite que você controle múltiplos servidores Nagios diretamente no seu desktop, sem a necessidade de uso do browser. Ele pode residir no systray ou pode ser visualizado como uma barra de status flutuante, resumindo ou exibindo todos os alarmes existentes. Além disso, ele possibilita a conexão aos servidores pelo seu menu de contexto, possui alarmes sonoros e também permite o uso de expressões regulares e categorias para realização de filtros, entre tantos outros recursos.

Leia a lista completa de recursos e baixe o software aqui.

Juntamente com o Nagiosweb essa é uma ferramenta essencial para administradores de servidores Nagios.

 

 

Se você tem um nagios, talvez verificar os hosts pelo painel do próprio não seja tão eficiente quanto utilizar o Nagstamon.

Claro que você pode configurar o Nagios pra enviar email, sms etc. Mas se você não olha freneticamente todos os emails que chegam e também não liga muito para os sms que chegam, você instala esse nagstamon e ele fica no canto no Painel da sua máquina, e então atualiza constantemente e mostra os alarmes que estão rodando pra você.

Olha só um exemplo simples que ta aqui na minha máquina agora:

E quando você passa a barra por cima do Warning, ele mostra mais detalhes:

Pra instalar esse cara no Debian por exemplo: basta executar um aptitude install nagstamon. É possível compilá-lo utilizando o tar.gz também contido no sourceforge.

 

Depois de instalado vá em Aplicativos -> Sistema e abra o programa.

Aparecerá uma tela como essa:

Não vou detalhar, pois o que se deve inserir em cada campo é bem sugestivos.

E fim! Só dar o OK e nem precisa olhar email nem nada, porque os alarmes irão piscar direto no seu painel!

Pra quem usa firefox, existem plugins para ver alarmes como este.

 

Voxblue – Migração de Infraestrutura Cloud

Recentemente, a Intercom executou uma migração típica “cloud/cloud”: mudamos uma estrutura de servidores Linux anteriormente hospedados na Linode.com para Amazon Web Services, para a empresa Voxblue.

A Voxblue possui um conjunto de ferramentas Internet voltadas para comunicação empresarial via email e redes sociais. Atua no segmento corporativo. Anteriormente, hospedava seus servidores Linux na Linode.com, que é um provedor de serviços Linux VPS/Cloud com excelente reputação técnica e no atendimento, e apresentava custos razoáveis.

A migração foi precedida por minucioso estudo de viabilidade. Os recursos técnicos de “cloud computing” – CPU, memória, espaço de disco, banda de Internet, snapshots, backups, balanceadores, DNS, etc., foram avaliados e dimensionados de forma equivalente. Um ambiente de testes foi montado com AWS, idêntico ao ambiente existente na Linode.com, para testar as funcionalidades das aplicações Voxblue. Um detalhado plano foi definido para execução da migração na data de corte estabelecida.

A principal razão para a migração foi econômica. A Linode.com oferece vários pacotes de serviços pré-determinados (número de CPUs, quantidade de memória, espaço de disco, volume de tráfego mensal – veja os planos aqui), com pagamento antecipado mensal, e oferece descontos de 10% para assinaturas pré-pagas de 1 ano, e 15% para 2 anos. Mas a Amazon Web Services oferece um desconto vencedor: para Instâncias Reservadas por 3 anos com pagamento antecipado, o desconto chega a 75%!  Tendo um plano agressivo de crescimento da Voxblue nos próximos 36 meses, manter a plataforma estável e operacional num mesmo provedor de “cloud computing” por 3 anos é uma boa decisão de planejamento. O resultado desta migração é uma redução de custo operacional de datacenter da ordem de 80%, liberando recursos que serão injetados para pesquisa e desenvolvimento de novos produtos.

 

Ulimit – Ilimitando sua administração

Hoje, teremos como objetivo esclarecer como impôr limites a nível de processos em execução, quotas de memória, quotas de espaço em stack, número de arquivos abertos, etc.

Isto pode ser útil para evitar que um usuário ou serviço utilize sem limites o recurso do hardware. Com as políticas ulimit devidamente aplicadas estamos protegidos de gargalos de recursos, e consequentemente, crash do sistema.

Um detalhe importante sobre o ulimit é que ele se relaciona com a shell que você utiliza. Porém, mesmo executando uma nova shell diferente dentro da sua shell padrão, os limites se aplicam, pois a nova shell é um processo child daquela que impõe os limites, herdando tudo da mesma, com exceção do pid.

Portando para burlar o ulimit, o utilizador deve programar uma shell do zero e posteriormente setá-la como shell padrão. Isso porque o administrador pode aplicar os limites a todas as shells disponíveis no sistema. A única maneira de burlar é desenvolvendo uma shell que o administrador não setou tais limites. Desta forma, temos que as regras ulimit são seguras.

 
Os limites disponíveis

Abaixo a lista de possíveis limites:

  • Tamanho de arquivos core
  • Tamanho do segmento de stack
  • Tamanho do segmento de dados
  • Memória alocável
  • Número máximo de processos
  • Tamanho de arquivos
  • Tamanho máximo dos pipes
  • Número de filedescriptors (arquivos abertos)
  • Tempo de utilização de cpu
  • Tamanho máximo de memória virtual

Core – Tamanho máximo de um arquivo cujo contéudo de memória de um processo é escrito para um arquivo quando este crasha.

Stack – Espaço máximo que um utilizador pode ocupar na stack ou pilha de dados. A stack é utilizada para passar parâmetros nas chamadas de sub-rotinas, ou para guardar o estado da máquina em sistemas multi-programadas.

Seg. Dados – É o tamanho máximo que o segmento de dados de processos do usuário pode ocupar. Um processo tem um mapa de memória, e este divide-se em zonas, e uma delas é o segmento de dados.

Memória – Alocação máxima de memória que o usuário pode utilizar.

Processos – É o numero máximo de processos que o usuário pode ter, isto é, o número máximo de programas em execução que o utilizador pode ter. Ou seja, processos child da shell, porque no caso do X-Windows, este número não tem limite.

Tamanho de Arquivos – É o tamanho maximo que um arquivo pode ter, claro que isto também é limitado pelo espaço livre no sistema de arquivos e o tipo de sistema de arquivos definido, uma vez que, dependendo do sistema de arquivos utilizado, temos um limite por arquivo. Por exemplo: FAT32 possui o limite de aproximadamente 2GB/arquivo.
Tamanho Pipes – Tamanho máximo que um pipe pode ter. Pipe é um mecanismo de
comunicaçao entre processos da mesma família.

Número Filedescriptor – Número máximo de filedescriptors que podem estar abertos.
Filedescriptor é uma ligação entre um processo e um arquivo em disco. De uma forma mais simples, esta opção permite impor um número máximo de arquivos abertos.

Tempo de CPU – Tempo máximo que o usuário tem para utilizar o CPU. Desta forma, definimos o tempo a partir do qual ele não pode utilizar mais o processador.

Tamanho Memória Virtual – Tamanho máximo de memória virtual que o usuário pode utilizar.

Segurança

Em um passado não muito distante, um servidor configurado corretamente tinha seus riscos de ser invadido, mas esse risco era fisicamente dimencionado até os limites da sua rede local. Mas nos dias de hoje isso não é mais possível, por causa da chegada da Internet.

O grande crescimento de computadores interconectados, o crescimento de serviços virtuais e a quantidade de softwares com finalidades ilícitas, trazem como consequência a preocupação de se defender dessas pessoas mal intencionadas que posso utilizar esses softwares que tentam de várias formas invadir seu computador.

Existem vários aplicativos voltados a detectar a invasão do seu sistema, mas existem dois tipos de IDS, o que trabalha na user space (nível de usuário) ou kernel space (nível de kernel).

Podemos dizer que os IDS do tipo tripware que trabalha na camada de usuário podem ser mais vulneráveis, sendo assim burlados com mais facilidade, porque a maioria desses IDS tem arquivos de configuração, onde é informado , quais diretórios ou arquivos que precisam ter a proteção do IDS.

Caso a pessoa que efetuar a invasão não precisar fazer nenhuma alteração em arquivos, que estão relacionados no arquivo de configuração do IDS, somente fizer alterações em arquivos não configurados no IDS ou na camada de kernel ela possivelmente ela não será notada,tudo depende do contexto como o acesso arbitrário ocorreu.

Já com um sistema configurado com um IDS que esteja na camada de kernel, a dificuldade aumenta porque tudo o que a pessoa estiver tentando executar, gerará uma chamada no kernel(systemcall), assim como o IDS está na camada de kernel, todas as chamadas feitas geram mensagens de logs.

O registro das atividades dos usuários e serviços dos sistemas é, notoriamente, muito importante para os administradores e como foi citado o fato de todas as chamadas ao sistema que são negadas serem registradas, cria um cenário muito importante para auditorias futuras.

A importância de registro dos eventos do sistemas é tanta, que na norma NBR ISO/IEC 17799, o item 9.7.1 é todo dedicado ao “Registro (log) de eventos. Deixando claro que registro de eventos são também prioridade em uma política de segurança.

Em um sistema de log, oficialmente somente o root poderia alterar os arquivos de log, já com o Lids aplicado, nem o root teria o poder de alterar esses arquivos.

Lids é um path de segurança no nível de kernel, ou seja, é necessário a recompilação do kernel para a aplicação do path. Esse patch pode ser encontrado no site oficial do LIDS “www.lids.org” e o fonte do kernel em “www.kernel.org”
As ferramentas que acompanham o patch do Lids “lidsadm e lidsconf” são fáceis de utilizar e de configurar, elas estão no nível de usuário e servem para configurar as ACLs que serão determinadas pelo root, que, dependendo da configuração das ACLs do Lids, não será mais o dono do sistema, mas sim somente um usuário comum.

Como o Lids está no nivel de kernel, ele é acionado já no início do boot do sistema, portanto, já na inicialização o sistema se encontra protegido.

Com esse sistema de proteção no boot, ela nega permissão a muitos serviços padrões do sistema, como o dmesg, que gera um relatório de todo a inicialização do kernel. Isso é muito importante, por isso que se deve liberar o dmesg a gravar no diretório /var/log/.

# lidsconf -A BOOT -o /var/log/dmesg -j WRITE

 

Todos sabem que o arquivo /etc/shadow contém as senhas de todos os usuários do sistema e que as senhas estão criptografadas. Mesmo assim, existe um grande risco de alguém descobrí-las.

Por esse motivo, o LIDS trabalha da seguinte forma: ainda como usuário root é possivel determinar que nenhum binário vá conseguir o acesso a esse arquivo de senhas, colocando uma regra de DENY (proibido), por exemplo:

# lidsconf -A -o /etc/shadow -j DENY

 

Mas o mais importante é que para toda regra existem as exceções, podendo assim liberar qual binário poderá acessar o /etc/shadow como READONLY (somente leitura). Um exemplo claro, seria o binário /bin/login, que precisa ter permissão de leitura no arquivo para que possa efetuar o login normalmente.

# lidsconf -A -s /bin/login -o /etc/shadow -j READONLY

 

Mas caso se tente visualizar o conteúdo do arquivo com outros binários (por exemplo: vi, cat, more, etc..), o IDS acusará que esse arquivo não existe.
Da mesma que é possivel proibir o acesso as arquivos para todos os binários e liberar para alguns, também existe a possibilidade de ocultar processos, isso mesmo esconder os processos. Veja por exemplo como ocultar o processo do serviço ssh.

# ldisconf -A -s /usr/sbin/sshd -o CAP_HIDDEN -j GRANT

 

Quando tentar listar os processos da máquina, esse processo do serviço ssh não aparecerá, mas o serviço está ativo.

Diante desse poder de fogo sugiro como a melhor opção seria utilizar os dois sistemas de IDS, para que vc esteja protegido na camada de usuário e na camada de kernel. Assim dificultado em muito possiveis atividades arbritárias.

Mesmo hoje tendo recursos como LIDS e outros como o SELinux, GrSecurity, devemos pensar sempre de forma estratégica em tudo que for possivel e viável tanto na Kernel Space como na User Space, pois em algumas situações como uma estação de trabalho fica impraticavel o uso de um recurso com LIDS.

O Lids também é um mecanismo a mais para aumentar o nível de segurança de um sistema operacional buscando atender também as diretrizes inerentes ao nível C2 de segurança no que diz respeito o Sistema Operacional.

O nivel C2 recomendado pelo TCSEC ” Trusted Computer System Evaluation Criteria”, que é nível de segurança minimo requerido pelo governo Americano e utilizada em algumas instituições no Brasil.

Outro valor agregado nessa história é que somente conhecendo profudamente como o sistema funciona e as respectivas aplicações que estejam sendo executadas, conseguimos tirar proveito de um recurso como LIDS, pois do contrário, simplesmente nada vai funcionar corretamente, ou seja, além de melhoramos a segurança do sistema, nossa base de conhecimento se aprimora.

Onde instalar um novo servidor Linux para email?

Frequentemente recebemos contato de clientes interessados em instalar servidores Linux de email para uso próprio, pelas mais diversas razões:

  • o provedor atual não tem backup, seu servidor de email sofreu pane de hardware e gigabytes de mensagens foram para o espaço;
  • novamente, o provedor não tem backup, e um colaborador dispensado deletou anos de histórico de email da empresa;
  • necessidade de copiar todas as mensagens enviados e recebidos, como cópia oculta (CCO), para fins de arquivamento, auditoria e “compliance”.

Muitos pensam em hospedar “in-house” o servidor Linux de email, especialmente aqueles que passaram por um evento trágico (“servidor do meu provedor pifou”). Mas para muitas empresas, uma decisão deste tipo requer um grande planejamento: contratar um link Internet com IP fixo, preparar a energia elétrica com nobreak que dure 3 a 4 horas, reforçar o sistema de ar condicionado quando possível (em muitos prédios comerciais, o ar condicionado é central e fica desligado fora do horário comercial), etc.

Para quem quer evitar preocupações desta natureza, um caminho natural é considerar o “cloud computing”: custos de operação contidos, fácil manejo, desempenho sob medida. Há também a alternativa de contratar um serviço de “hosting” em datacenters tradicionais, mas estes sempre apresentam custos de operação elevados e amarrações contratuais de longa duração.

Qualquer que seja a decisão, há um item que não pode ser relegado ao segundo plano: planejar e operar um sistema eficiente de backup, contendo informações de configuração, as caixas de email, as senhas dos usuários e as próprias mensagens. Esta assinatura de um fórum técnico diz uma verdade incontestável: “Existem dois tipos de usuários de computadores, aqueles que fazem backup, e aqueles que nunca tiveram problemas com HDs”.

Servidor Linux e vários links Internet de banda larga

Cada vez mais aplicações para negócios estão disponíveis como serviços Internet. No jargão de “cloud computing”, é o modelo SaaS – “Software as a Service”, onde o programa aplicativo e seu dado ficam hospedados em servidores “cloud”, e os usuários os acessam através de browser e pagando pelo uso.

Para quem usa aplicativos desta natureza, ter acesso Internet sem interrupção é primordial. Com a popularização de acesso Internet de banda larga a preço acessível, empresas de qualquer tamanho podem contratar 2 ou mais links Internet (exemplo, acesso via cabo de TV e rádio), de provedores diferentes, para ter acesso Internet com redundância, e, como bônus, balancear o tráfego entre eles.

Desde kernel 2.2, servidores Linux sempre ofereceram recursos avançados de de roteamento e controle de tráfego antes restritos a roteadores. Neste “howto” clássico, o roteamento para múltiplos links Internet com balanceamento de tráfego é claramente demonstrado, além de outros mecanismos não-usuais (controle de banda, priorizar tráfego de voz e vídeo, etc.). Mas o manuseio destes recursos sempre exigiram grande domínio sobre TCP/IP, iptables e Linux, e algumas ferramentas tentam simplificar isto (por exemplo, Shorewall tem suporte a múltiplos links Internet, e Zentyal permite usar 2 links Internet facilmente).

Recentemente, roteadores de banda larga de baixo custo incorporaram estes recursos de múltiplos links Internet e balanceamento. Um bom exemplo é TP-Link R480T+, que permite conectar até 4 links Internet de banda larga; D-Link tem um produto para 2 links Internet, DI-LB604; D-Link ainda oferece um produto sofisticado, DSR-1000N, com 2 portas para links Internet de banda larga e uma porta para Internet via modem 3G. Estes equipamentos ajudam a popularizar uma tecnologia antes restrita a grandes empresas, e, conjugados a servidores Linux com função proxy, aumentam a produtividade de médias e pequenas empresas a um custo reduzido.