Pesquisa de site

Como auditar o desempenho, a segurança e a solução de problemas da rede no Linux - Parte 12


Uma análise sólida de uma rede de computadores começa pela compreensão de quais são as ferramentas disponíveis para executar a tarefa, como escolher a(s) ferramenta(s) certa(s) para cada etapa do processo e, por último, mas não menos importante, por onde começar.

Esta é a última parte da série LFCE (Linux Foundation Certified Engineer), aqui revisaremos algumas ferramentas bem conhecidas para examinar o desempenho e aumentar a segurança de uma rede e o que fazer quando as coisas não estão indo como esperado.

Apresentando o Programa de Certificação Linux Foundation

Observe que esta lista não pretende ser abrangente, então sinta-se à vontade para comentar esta postagem usando o formulário na parte inferior se desejar adicionar outro utilitário útil que possa estar faltando.

Quais serviços estão em execução e por quê?

Uma das primeiras coisas que um administrador de sistema precisa saber sobre cada sistema é quais serviços estão em execução e por quê. Com essas informações em mãos, é uma decisão acertada desabilitar todos aqueles que não sejam estritamente necessários e evitar hospedar muitos servidores na mesma máquina física.

Por exemplo, você precisa desabilitar seu servidor FTP se sua rede não exigir um (a propósito, existem métodos mais seguros para compartilhar arquivos em uma rede). Além disso, você deve evitar ter um servidor web e um servidor de banco de dados no mesmo sistema. Se um componente for comprometido, os demais correm o risco de ficar comprometidos também.

Investigando conexões de soquete com ss

ss é usado para despejar estatísticas de soquete e mostra informações semelhantes ao netstat, embora possa exibir mais informações de TCP e de estado do que outras ferramentas. Além disso, está listado em man netstat como substituto do netstat, que é obsoleto.

No entanto, neste artigo focaremos apenas nas informações relacionadas à segurança da rede.

Exemplo 1: Mostrando TODAS as portas TCP (soquetes) que estão abertas em nosso servidor

Todos os serviços executados em suas portas padrão (ou seja, http em 80, mysql em 3306) são indicados por seus respectivos nomes. Outros (ocultados aqui por motivos de privacidade) são mostrados em formato numérico.

ss -t -a

A primeira coluna mostra o estado do TCP, enquanto a segunda e a terceira colunas exibem a quantidade de dados que estão atualmente na fila para recepção e transmissão. A quarta e quinta colunas mostram os soquetes de origem e destino de cada conexão.
Por outro lado, você pode querer verificar o RFC 793 para refrescar sua memória sobre possíveis estados TCP, porque você também precisa verificar o número e o estado das conexões TCP abertas para tomar conhecimento dos ataques (D)DoS.

Exemplo 2: Exibindo TODAS as conexões TCP ativas com seus temporizadores
ss -t -o

Na saída acima, você pode ver que existem 2 conexões SSH estabelecidas. Se você notar o valor do segundo campo de timer:, você notará um valor de 36 minutos na primeira conexão. Esse é o tempo até que a próxima sonda de manutenção de atividade seja enviada.

Como é uma conexão que está sendo mantida ativa, você pode assumir com segurança que é uma conexão inativa e, portanto, pode encerrar o processo após descobrir seu PID.

Quanto à segunda conexão, você pode ver que ela está sendo usada no momento (conforme indicado por on).

Exemplo 3: Filtrando conexões por soquete

Suponha que você queira filtrar conexões TCP por soquete. Do ponto de vista do servidor, você precisa verificar as conexões onde a porta de origem é 80.

ss -tn sport = :80

Resultando em..

Proteção contra varredura de porta com NMAP

A varredura de portas é uma técnica comum usada por crackers para identificar hosts ativos e portas abertas em uma rede. Uma vez descoberta uma vulnerabilidade, ela é explorada para obter acesso ao sistema.

Um administrador de sistema sábio precisa verificar como seus sistemas são vistos por pessoas de fora e garantir que nada seja deixado ao acaso, auditando-os com frequência. Isso é chamado de “varredura defensiva de portas”.

Exemplo 4: Exibindo informações sobre portas abertas

Você pode usar o seguinte comando para verificar quais portas estão abertas em seu sistema ou em um host remoto:

nmap -A -sS [IP address or hostname]

O comando acima irá verificar o host em busca de detecção de SO e versão, informações de porta e traceroute (-A). Finalmente, -sS envia uma varredura TCP SYN, evitando que o nmap complete o handshake TCP de 3 vias e, portanto, normalmente não deixa logs na máquina de destino.

Antes de prosseguir com o próximo exemplo, lembre-se de que a verificação de portas não é uma atividade ilegal. O que É ilegal é usar os resultados para fins maliciosos.

Por exemplo, a saída do comando acima executado no servidor principal de uma universidade local retorna o seguinte (apenas parte do resultado é mostrada por questões de brevidade):

Como você pode ver, descobrimos várias anomalias que deveríamos relatar aos administradores de sistema desta universidade local.

Esta operação específica de varredura de porta fornece todas as informações que também podem ser obtidas por outros comandos, como:

Exemplo 5: Exibindo informações sobre uma porta específica em um sistema local ou remoto
nmap -p [port] [hostname or address]
Exemplo 6: Mostrando o traceroute e descobrindo a versão dos serviços e o tipo de sistema operacional, nome do host
nmap -A [hostname or address]
Exemplo 7: Verificando diversas portas ou hosts simultaneamente

Você também pode verificar diversas portas (intervalo) ou sub-redes, como segue:

nmap -p 21,22,80 192.168.0.0/24 

Nota: O comando acima verifica as portas 21, 22 e 80 em todos os hosts nesse segmento de rede.

Você pode verificar a página de manual para obter mais detalhes sobre como realizar outros tipos de varredura de portas. O Nmap é de fato um utilitário de mapeamento de rede muito poderoso e versátil, e você deve estar bem familiarizado com ele para defender os sistemas pelos quais você é responsável contra ataques originados após uma varredura maliciosa de portas por terceiros.