20 Dicas de segurança de endurecimento do servidor CENTOS - Parte 1
- 745
- 142
- Spencer Emard
Este tutorial abrange apenas dicas gerais de segurança para CENTOS 8/7 que pode ser usado para endurecer o sistema. As dicas da lista de verificação pretendem ser usadas principalmente em vários tipos de servidores de metal nu ou em máquinas (físicas ou virtuais) que fornecem serviços de rede.
No entanto, algumas das dicas também podem ser aplicadas com sucesso em máquinas de uso geral, como desktops, laptops e computadores de placa única do tamanho de um cartão (Raspberry Pi).
Requisitos
- Instalação mínima do CentOS 8
- Instalação mínima do CentOS 7
1. Proteção física
Bloquear o acesso às salas do servidor, use racks de bloqueio e vigilância por vídeo. Leve em consideração que qualquer acesso físico às salas de servidores pode expor sua máquina a sérios problemas de segurança.
BIOS As senhas podem ser alteradas redefinindo jumpers na placa -mãe ou desconectando a bateria do CMOS. Além disso, um intruso pode roubar os discos rígidos ou anexar diretamente novos discos rígidos às interfaces da placa -mãe (SATA, SCSI etc.
2. Reduzir o impacto de espionagem
Em caso de dados altamente sensíveis, você provavelmente deve usar proteção física avançada, como colocar e bloquear o servidor em uma gaiola de Faraday ou usar uma solução militar tempestade para minimizar o impacto de espionar o sistema por meio de emanações de rádio ou vazamento elétrico.
3. BIOS/UEFI seguro
Inicie o processo de endurecer sua máquina, protegendo BIOS/UEFI Configurações, especialmente definindo um BIOS/UEFI Senha e desativar dispositivos de mídia de inicialização (CD, DVD, Desativar suporte USB) para impedir que qualquer usuário não autorizado modifique as configurações do BIOS do sistema ou altere a prioridade do dispositivo de inicialização e inicialize a máquina de um meio alternativo.
Para aplicar esse tipo de alteração à sua máquina, você precisa consultar o manual do fabricante da placa -mãe para obter instruções específicas.
4. Carregador de inicialização seguro
Defina a Grub Senha para impedir que usuários maliciosos adulterem a sequência de inicialização do kernel ou executem níveis, edite parâmetros do kernel ou inicie o sistema em um modo de usuário único para prejudicar seu sistema e redefinir a senha raiz para obter controle privilegiado.
5. Use partições de disco separadas
Ao instalar CENTOS Em sistemas destinados como servidores de produção, usam partições dedicadas ou discos rígidos dedicados para as seguintes partes do sistema:
/(root) /boot /home /tmp /var
6. Use LVM e RAID para redundância e crescimento do sistema de arquivos
O /var Partição é o local onde as mensagens de log são gravadas no disco. Esta parte do sistema pode crescer exponencialmente em tamanho em servidores de tráfego fortemente que expõem serviços de rede, como servidores da Web ou servidores de arquivos.
Assim, use uma grande partição para /var ou considere configurar esta partição usando volumes lógicos (Lvm) ou combine vários discos físicos em um dispositivo Virtual RAID 0 maior para sustentar grandes quantidades de dados. Para dados, a redundância considera o uso do layout LVM em cima o ataque 1 nível.
Para configurar LVM ou ataque aos discos, siga nossos guias úteis:
- Configurar armazenamento em disco com LVM no Linux
- Crie discos LVM usando VGCreate, LvCreate e LVEXTEND
- Combine vários discos em um grande armazenamento virtual
- Crie RAID 1 usando dois discos no Linux
7. Modifique as opções do FSTAB para proteger partições de dados
Partições separadas destinadas a armazenar dados e impedir a execução de programas, arquivos de dispositivo ou setuid bit nesse tipo de partição adicionando as seguintes opções a fstab Arquivo como ilustrado no trecho abaixo:
/dev /sda5 /NAS ext4 padrões,Nosuid, Nodev, Noexec 1 2
Para evitar a escalonação de privilégios e a execução de script arbitrária, crie uma partição separada para /tmp e monte como Nosuid, nodev, e NoExec.
/dev /sda6 /tmp ext4 padrões,Nosuid, Nodev, Noexec 0 0
8. Criptografar os discos rígidos no nível do bloco com Luks
Para proteger os dados sensíveis de dados em caso de acesso físico aos discos rígidos da máquina. Sugiro que você aprenda a criptografar o disco lendo nosso artigo Linux Disce Data Data Criptografia com Luks.
9. Use PGP e criptografia de chave pública
Para criptografar discos, use PGP e criptografia de chave pública ou comando OpenSSL para criptografar e descriptografar arquivos sensíveis com uma senha, como mostrado neste artigo, configure armazenamento de sistema Linux criptografado.
10. Instale apenas a quantidade mínima de pacotes necessários
Evite instalar programas, aplicativos ou serviços sem importância ou desnecessária para evitar vulnerabilidades de pacotes. Isso pode diminuir o risco de que o comprometimento de um software possa levar a comprometer outros aplicativos, partes do sistema ou até sistemas de arquivos, finalmente resultando em corrupção de dados ou perda de dados.
11. Atualize o sistema com frequência
Atualize o sistema regularmente. Mantenha o kernel Linux em sincronia com os mais recentes patches de segurança e todo o software instalado atualizado com as versões mais recentes, emitindo o comando abaixo:
# yum atualização
12. Desativar Ctrl+Alt+del
Para impedir que os usuários reinicie o servidor depois de terem acesso físico a um teclado ou através de um aplicativo de console remoto ou um console virtualizado (KVM, Interface de software virtualizando) você deve desativar Ctrl+alt+del
Sequência de teclas executando o comando abaixo.
# SystemCtl Mask Ctrl-Alt-Del.alvo
13. Remova pacotes de software desnecessários
Instale o software mínimo necessário para sua máquina. Nunca instale programas ou serviços extras. Instale pacotes apenas de repositórios confiáveis ou oficiais. Use a instalação mínima do sistema, caso a máquina esteja destinada a executar a vida inteira como servidor.
Verifique os pacotes instalados usando um dos seguintes comandos:
# rpm -qa
Faça uma lista local de todos os pacotes instalados.
# Lista Yum instalada >> instalado.TXT
Consulte a lista de software inútil e exclua um pacote emitindo o comando abaixo:
# yum remover package_nameArtigo relacionado: Desativar e remover pacotes indesejados sobre a instalação mínima de CentOS
14. Reinicie os serviços do Systemd após as atualizações de daemon
Use o exemplo de comando abaixo para reiniciar um serviço Systemd para aplicar novas atualizações.
# SystemCtl Reiniciar httpd.serviço
15. Remova serviços desnecessários
Identifique os serviços que estão ouvindo portas específicas usando o seguinte comando SS.
# ss -tulpn
Para listar todos os serviços instalados com seu status de saída, comando o comando abaixo:
# systemctl list -units -t Service
Por exemplo, CENTOS A instalação mínima padrão vem com o daemon postfix instalado por padrão, que é executado pelo nome de um mestre sob porta 25. Remova o serviço de rede Postfix, caso sua máquina não seja usada como servidor de email.
# yum remova o postfixArtigo relacionado: Pare e desative serviços indesejados em Centos
16. Encrypt Data Transmitido
Não use protocolos não garantidos para acesso remoto ou transferência de arquivos, como Telnet, Ftp, ou outros protocolos altos de texto simples, como SMTP, HTTP, NFS ou SMB, que, por padrão, não criptografaram as sessões de autenticação ou enviam dados.
Use apenas SFTP, SCP para transferências de arquivos e SSH ou VNC sobre túneis SSH para conexões de console remoto ou acesso à GUI.
Para túnel um console VNC via SSH, use o exemplo abaixo que encaminhe a porta VNC 5901 da máquina remota para sua máquina local:
# ssh -l 5902: localhost: 5901 remote_machine
Na máquina local, execute o comando abaixo para a conexão virtual com o terminal remoto.
# VncViewer localhost: 5902
17. Digitalização da porta de rede
Realize verificações de porta externas usando a ferramenta NMAP de um sistema remoto sobre a LAN. Esse tipo de varredura pode ser usado para verificar vulnerabilidades de rede ou testar as regras do firewall.
# nmap -st -o 192.168.1.10Artigo relacionado: Aprenda a usar o NMAP com esses 29 exemplos
18. Firewall de filtragem de pacotes
Usar Firewalld utilidade para proteger as portas do sistema, portas de serviços específicos abertos ou próximos, especialmente portas conhecidas (<1024).
Instale, inicie, habilite e liste as regras do firewall emitindo os comandos abaixo:
# yum instalar firewalld # SystemCtl Iniciar firewalld.Serviço # SystemCtl Ativar firewalld.serviço # firewall-cmd-list-all
19. Inspecione pacotes de protocolo com tcpdump
Use o utilitário tcpdump para farejar pacotes de rede localmente e inspecionar seu conteúdo quanto a tráfego suspeito (portas de origem de origem, protocolos TCP/IP, camada dois tráfego, solicitações de ARP incomuns).
Para uma melhor análise do tcpdump Arquivo capturado Use um programa mais avançado, como Wireshark.
# tcpdump -i eno16777736 -w tcpdump.PCAP
20. Evite ataques de DNS
Inspecione o conteúdo do seu resolvedor, normalmente /etc/resolv.conf Arquivo, que define o endereço IP dos servidores DNS que deve usar para consultar nomes de domínio, a fim de evitar ataques de homem no meio, tráfego desnecessário para servidores DNS root, falsificar ou criar um ataque de DOS.
Esta é apenas a primeira parte. Na próxima parte, discutiremos outras dicas de segurança para CENTOS 8/7.
Não perca: O mega guia para endurecer e proteger o CentOS 8/7 - Parte 2- « Como criar equipes ou unidades da NIC no CentOS 8 / RHEL 8
- Como executar qualquer distribuição Linux diretamente do disco rígido no Ubuntu usando o menu Grub »