JShielder
JShielder Script de Hardening Automatizado para Servidores Linux
JSHielder é um Script Bash Open Source desenvolvido para ajudar sysadmins e desenvolvedores a proteger seus servidores Linux nos quais irão implantar qualquer aplicação web ou serviços. Esta ferramenta automatiza o processo de instalação de todos os pacotes necessários para hospedar uma aplicação web e realizar o hardening de um servidor Linux com pouca interação do usuário. O script recentemente adicionado segue as diretrizes do CIS Benchmark para estabelecer uma postura de configuração segura para sistemas Linux.
Esta ferramenta é um Script Bash que endurece automaticamente a segurança do servidor Linux e as etapas seguidas são:
- Configura um hostname
- Reconfigura o fuso horário
- Atualiza todo o sistema
- Cria um novo usuário administrador para gerenciar o servidor com segurança, sem necessidade de conexões remotas com root
- Ajuda o usuário a gerar chaves RSA seguras, para que o acesso remoto ao servidor seja feito exclusivamente a partir do seu PC local e sem senha convencional
- Configura, otimiza e protege o servidor SSH (algumas configurações seguindo o CIS Benchmark)
- Configura regras de IPTABLES para proteger o servidor contra ataques comuns
- Desabilita sistemas de arquivos e protocolos de rede não utilizados
- Protege o servidor contra ataques de força bruta instalando e configurando fail2ban
- Instala e configura Artillery como ferramenta de honeypot, monitoramento, bloqueio e alerta
- Instala PortSentry
- Instala, configura e otimiza MySQL
- Instala o Apache Web Server
- Instala, configura e protege PHP
- Protege o Apache via arquivo de configuração e com a instalação dos módulos ModSecurity com o OWASP ModSecurity Core Rule Set (CRS3), ModEvasive, Qos e SpamHaus
- Protege o NginX com a instalação do módulo ModSecurity NginX e o OWASP ModSecurity Core Rule Set (CRS3)
- Instala RootKit Hunter
- Protege o diretório home do root e os arquivos de configuração do GRUB
- Instala Unhide para ajudar a detectar processos ocultos maliciosos
- Instala Tiger, um sistema de auditoria de segurança e prevenção de intrusão
- Restringe o acesso aos arquivos de configuração do Apache
- Desabilita compiladores
- Cria cron job diário para atualizações do sistema
- Hardening do kernel via arquivo de configuração sysctl (ajustado)
- Hardening do diretório /tmp
- Instalação do PSAD IDS
- Habilita o process accounting
- Habilita atualizações automáticas (unattended upgrades)
- MOTD e banners para acesso não autorizado
- Desabilita suporte USB para segurança aprimorada (opcional)
- Configura um UMASK restritivo padrão
- Configura e habilita o Auditd
- Configura regras do Auditd seguindo o CIS Benchmark
- Instala o Sysstat
- Instala o ArpWatch
- Etapas adicionais de hardening seguindo o CIS Benchmark
- Protege o Cron
- Automatiza o processo de definir uma senha para o bootloader GRUB
- Protege as configurações de inicialização
- Define permissões seguras de arquivos para arquivos críticos do sistema
#NOVO!!
- Implantação LEMP com ModSecurity e o OWASP ModSecurity Core Rule Set (CRS3)
Script CIS Benchmark JShielder Adicionado
Para Executar a Ferramenta
./jshielder.sh
Como usuário root
Problemas
Tendo problemas, por favor abra uma Nova Issue para o JShielder no Github.
Disponibilidade nas Distribuições
- Ubuntu Server 16.04LTS
- Ubuntu Server 18.04LTS
Registro de Alterações
v2.4 Adicionada implantação LEMP com ModSecurity e o OWASP ModSecurity Core Rule Set (CRS3)
v2.3 Mais etapas de hardening seguindo alguns itens do CIS Benchmark para implantação LAMP
v2.2.1 Removida instalação do suhosin no Ubuntu 16.04, corrigida configuração do MySQL, função de configuração do GRUB Bootloader,
IP do servidor agora obtido via ip route para não depender do nome da interface
v2.2 Adicionada nova opção de hardening seguindo as diretrizes do CIS Benchmark
v2.1 Configuração SSH endurecida, configuração de segurança do kernel ajustada, corrigidas regras de iptables não carregando na inicialização. Adicionada instalação auditd, sysstat, arpwatch.
v2.0 Mais opções de implantação, menu de seleção, instalação do PHP Suhosin, código mais limpo,
v1.0 - Novo código
Desenvolvido por Jason Soto
https://www.jasonsoto.com
https://github.com/jsitech
Twitter = @JsiTech