Recentemente, a Linux Foundation divulgou um checklist completo com um conjunto de diretrizes para ajudar profissionais de TI e usuários, que usam o Linux como estação de trabalho, a manter a segurança do sistema e reduzir o risco de um ataque. Em resumo, esse material é destinado para você que está usando um sistema Linux agora ou deseja usá-lo algum dia. Portanto, para facilitar seu entendimento, este artigo está organizado seguindo uma ordem cronológica que vai desde o momento que antecede o boot da máquina e escolha da distro Linux ao uso rotineiro do sistema.
O que esse material não garante?
O checkList, divulgado pela Linux Foundation, não visa detalhar procedimentos de segurança em sistemas Linux; mas sim uma tentativa de oferecer um conjunto de recomendações básicas para evitar que você cometa erros comuns que atinjam a segurança do sistema. Em resumo, são diretrizes com um conjunto básico de regras de segurança fundamentais para um bom uso do sistema.
RECOMENDO QUE LEIA: TOP 11 ferramentas de segurança de redes para Linux Saiba como aumentar a segurança dos sistemas Linux configurando políticas de senhas
Estrutura
O material divulgado pela Linux Foundation abrange vários níveis de criticidade que poderão lhe ajudar a decidir se usará ou não determina medida de segurança. Entre os quais, são:
- ESSENCIAL – medidas que devem ser consideradas. Senão implementadas, podem oferecer alto risco de segurança;
- MODERADA – medidas que aumentarão a segurança do sistema. Contudo, podem ser analisadas com mais cautela, pois vão afetar a forma como você interage com seu ambiente de trabalho, e, provavelmente, exigirá aprendizados de novos hábitos ou desaprendizados de velhos;
- PARANOIA
Neste último caso, são recomendações para melhorar consideravelmente a segurança, mas também exigem um trabalho de alta adaptação ao interagir com o sistema. Em resumo, requer um nível maior de entendimento do sistema.
Em geral, o material oferece um equilíbrio entre a segurança e facilidade de uso!
PASSO A PASSO COMPLETO
1 – Escolha do Hardware
SecureBoot
Nível de criticidade: ESSENCIAL
Apesar de sua natureza controversa, o SecureBoot oferece prevenção contra muitos ataques a estações de trabalho; tais como: Rootkits, “Evil Maid” – bootkit que altera o booter loader, etc. O uso do SecureBoot não vai evitar um ataque bem elaborado ou predestinado, mas ter SecureBoot garante uma camada à mais de segurança.
Sem suporte Firewire, thunderbolt ou ExpressCard ports
Nível de criticidade: MODERADA
Firewire é um padrão que permite acesso direto à memória do seu sistema a qualquer dispositivo de conexão (ver Wikipedia). Thunderbolt e ExpressCard permitem o mesmo, embora algumas implementações posteriores do Thunderbolt tentaram limitar a abrangência de acesso à memória.
Em resumo, o material recomenda que é melhor seu computador não possuir nenhuma dessas portas. Contudo, não é crítica, uma vez que geralmente pode ser desligado via UEFI ou desabilitado no próprio kernel.
2 – Antes do boot
UEFI mode habilitado - (não Legacy BIOS)
Nível de criticidade: ESSENCIAL
UEFI, mesmo com todas as suas questões, oferece uma grande quantidade de recursos que o modo Legacy BIOS não, tais como: SecureBoot. A maioria dos sistemas modernos vêm com o modo de UEFI ativado por padrão.
Senha para acessar configurações da UEFI
Nível de criticidade: ESSENCIAL
Certifique-se de usar uma senha forte para entrar no modo de configuração UEFI.
Dependendo da distribuição Linux que você decidir usar, você pode ou não ter que importar a chave SecureBoot da sua distribuição que lhe permitiria iniciar a distro. Muitas distribuições fizeram uma parceria com a Microsoft para assinar seus kernels lançados com uma chave que já é reconhecido pela maioria dos fabricantes de sistemas, portanto, poupando-lhe o problema de ter que lidar com a importação de chave.
3 – Escolha da distro
SELinux/AppArmor/GrSecurity
Nível de criticidade: ESSENCIAL
Mandatory Access Controls (MAC) ou Role-Based Access Controls (RBAC) são uma extensão do mecanismo de segurança do usuário / grupo básico utilizado em sistemas de legado POSIX. A maioria das distribuições nos dias de hoje ou já vêm junto com uma implementação MAC / RBAC (Fedora, Ubuntu), ou fornece um mecanismo para adicioná-lo através de uma etapa pós-instalação opcional (Gentoo, Arch, Debian). Obviamente, é altamente recomendado que você adquira uma distribuição que vem pré-configurado com um sistema MAC / RBAC. Contudo, se você tem apreço sobre uma distribuição que não tem um habilitado por padrão, planeje-se configurar após a instalação do sistema.
Distribuições que não oferecem quaisquer mecanismos MAC / RBAC devem ser evitadas!!
Boletins de segurança periódicos
Nível de criticidade: ESSENCIAL
A maioria das distribuições, amplamente utilizadas, têm um mecanismo para publicar os Boletins de Segurança para seus usuários. Ausência de tal mecanismo é um sinal de alerta importante que a distribuição não é madura o suficiente para ser considerada para uma estação de trabalho.
Fornecer correções de segurança em tempo hábil
Nível de criticidade: ESSENCIAL
A maioria das distribuições, amplamente utilizadas, entregam atualizações de segurança regulares. Contudo, vale à pena verificar se as atualizações são fornecidas em tempo hábil.
Suporte a UEFI e SecureBoot
Nível de criticidade: ESSENCIAL
Verifique se a distribuição suporta UEFI e SecureBoot. Descubra se é necessária a importação de uma chave extra ou se assina seus kernels de inicialização com uma chave confiável pelos fabricantes (por exemplo, através de um acordo com a Microsoft). Algumas distribuições não suportam UEFI / SecureBoot mas oferecerem alternativas para garantir à prova de falsificação ou adulteração evidente ambientes de inicialização. Se uma distribuição não suporta SecureBoot e não tem mecanismos para impedir ataques no nível de inicialização, procure outra distro.
4 – Pós-instalação
Firewall habilitado
Nível de criticidade: ESSENCIAL
Atualização de sistema automática
Nível de criticidade: ESSENCIAL
Recomenda-se a ativar as atualizações automáticas, a menos que você tenha uma boa razão para não fazê-lo, como, por exemplo, o medo de que uma atualização automática iria tornar seu sistema inutilizável. No mínimo, você deve habilitar notificações automáticas de atualizações disponíveis. A maioria das distribuições já ter este serviço executado automaticamente para você, então as chances são que você não tem que fazer nada. Consulte a documentação de distribuição para saber mais.
Utilização de um IDS
Nível de criticidade: MODERADA
Instalação um detector de rootkit como rkhunter, ou um tipo de sistema de detecção de intrusão (IDS) como o aide ou tripwire.
5 – Rotina de backup
Armazenamento secundário - external storage
Nível de criticidade: ESSENCIAL
É útil ter um disco rígido externo, onde se pode despejar backups completos sem ter que se preocupar com tais coisas como largura de banda e velocidades de upload. Não somente enviar dados para o armazenamento secundário, mas é preciso armazená-los criptografados usando uma ferramenta de backup que cria backups criptografados, como Duplicty.
Também, é interessante criar um ponto de restauração no seu sistema Linux.
6 – Boas práticas
Usar 2 diferentes browsers
Nível de criticidade: ESSENCIAL
Usando dois browsers diferentes, uma para o trabalho / locais de alta segurança, e outra para tudo o resto vai ajudar a evitar compromissos menores de dar atacantes acesso a todo os cookies salvos. O principal inconveniente será a quantidade de memória consumida por dois processos diferentes do navegador.
É recomendado o uso do Firefox para alta segurança e Chrome/Chromium para todas as outras. No Firefox, você deve instalar os seguintes add-ons:
- NoScript
- Privacy Badger
- HTTPS Everywhere
- Certificate Patrol
Usar 2 diferentes browsers - 1 em uma VM
Nível de criticidade: MODERADA
Esta é uma recomendação semelhante ao anterior, exceto que você irá adicionar uma etapa extra de executar o “todo o resto” em um navegador dentro de uma VM dedicada – usando o VirtualBox, por exemplo. Isto irá adicionar uma excelente camada de isolamento entre os navegadores, garantindo que os atacantes que conseguem comprometer totalmente o seu browser terá, então, para quebrar adicionalmente para fora da camada de isolamento VM, a fim de chegar ao resto da seu sistema.
Esta é uma configuração viável, mas requer uma grande quantidade de RAM e processadores rápidos que podem lidar com o aumento da carga.
Usar VM para cada tarefa
Nível de criticidade: PARANOIA
O uso de máquinas virtuais para separar a atividade de trabalho, especialmente o uso do projeto Qubes que fornece esse isolamento.
7 – Gerenciamento de senhas
Uso de um gerenciador de senhas
Nível de criticidade: ESSENCIAL
Uso do software Keepass, por exemplo.
Se você quiser mais informações sobre o assunto ou deseja apenas conhecer as políticas de TI da Linux Foundation, você pode ver a lista completa no GitHub.
Onde encontrei?
La Fundación Linux publica un checklist de seguridad para administradores de sistemas
Linux Foundation Sysadmins Open-Source Their IT Policies
Excelente artigo!