A sound analysis of a computer network begins by understanding what are the available tools to perform the task, how to pick the right one(s) for each step of the way, and last but not least, where to begin.
Esta é a última parte da série LFCE (Linux Foundation Certified Engineer), aqui vamos rever algumas ferramentas 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 da Linux Foundation
Por favor, note que esta lista não pretende ser abrangente, então sinta-se à vontade para comentar neste post usando o formulário no final se desejar adicionar outra utilidade útil que possamos estar perdendo.
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 essa informação em mãos, é uma decisão sábia desativar todos aqueles que não são estritamente necessários e evitar hospedar muitos servidores na mesma máquina física.
Por exemplo, você precisa desativar seu servidor FTP se sua rede não precisar de um (existem métodos mais seguros para compartilhar arquivos em uma rede, a propósito). 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, o restante corre o risco de ser comprometido também.
Investigando Conexões de Soquete com ss
ss é usado para exibir estatísticas de soquete e mostra informações semelhantes ao netstat, embora possa exibir mais informações de TCP e estado do que outras ferramentas. Além disso, está listado no man netstat como substituto do netstat, que está obsoleto.
No entanto, neste artigo, vamos nos concentrar apenas nas informações relacionadas à segurança de rede.
Exemplo 1: Mostrando TODAS as portas TCP (sockets) que estão abertas em nosso servidor
Todos os serviços em execução em suas portas padrão (ou seja, http na 80, mysql na 3306) são indicados por seus respectivos nomes. Outros (ocultos aqui por motivos de privacidade) são mostrados em sua forma numérica.
# ss -t -a

A primeira coluna mostra o estado TCP, enquanto a segunda e terceira colunas exibem a quantidade de dados atualmente enfileirados para recepção e transmissão. A quarta e quinta colunas mostram os sockets de origem e destino de cada conexão.
Em uma nota lateral, você pode querer verificar o RFC 793 para atualizar 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 se conscientizar dos ataques (D)DoS.
Exemplo 2: Exibindo TODAS as conexões TCP ativas com seus temporizadores
# ss -t -o

No resultado acima, você pode ver que existem 2 conexões SSH estabelecidas. Se você observar o valor do segundo campo do temporizador:, você notará um valor de 36 minutos na primeira conexão. Esse é o tempo até a próxima sonda de keepalive ser enviada.
Como é uma conexão que está sendo mantida viva, 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 está sendo usada atualmente (como indicado por on).
Exemplo 3: Filtrando conexões por socket
Suponha que você queira filtrar conexões TCP por soquete. Do ponto de vista do servidor, você precisa verificar as conexões em que a porta de origem é 80.
# ss -tn sport = :80
Resultando em..

Protegendo Contra Varreduras de Porta com NMAP
A varredura de porta é uma técnica comum usada por invasores para identificar hosts ativos e portas abertas em uma rede. Uma vez que uma vulnerabilidade é descoberta, ela é explorada para obter acesso ao sistema.
A wise sysadmin needs to check how his or her systems are seen by outsiders, and make sure nothing is left to chance by auditing them frequently. That is called “defensive port scanning”.
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 para detecção de SO e versão, informações de porta e traceroute (-A). Finalmente, -sS envia uma varredura TCP SYN, impedindo que o nmap complete o handshake TCP de 3 vias e, portanto, geralmente não deixa logs na máquina alvo.
Antes de prosseguir com o próximo exemplo, por favor, tenha em mente que varredura de portas não é uma atividade ilegal. O QUE é ilegal é usar os resultados para um propósito malicioso.
Por exemplo, a saída do comando acima executado contra o servidor principal de uma universidade local retorna o seguinte (apenas parte do resultado é mostrada para fins de brevidade):

Como você pode ver, descobrimos várias anomalias que deveríamos relatar aos administradores do sistema nesta universidade local.
Esta operação específica de varredura de portas fornece todas as informações que também podem ser obtidas por outros comandos, como:
Exemplo 5: Exibição de informações sobre uma porta específica em um sistema local ou remoto
# nmap -p [port] [hostname or address]
Exemplo 6: Mostrando traceroute para, e descobrindo a versão dos serviços e tipo de sistema operacional, nome do host
# nmap -A [hostname or address]
Exemplo 7: Escaneando várias portas ou hosts simultaneamente
Você também pode escanear várias portas (intervalo) ou sub-redes, da seguinte forma:
# nmap -p 21,22,80 192.168.0.0/24
Nota: Que o comando acima escaneia as portas 21, 22 e 80 em todos os hosts nesse segmento de rede.
Você pode verificar a man page para mais detalhes sobre como realizar outros tipos de escaneamento de portas. Nmap é de fato uma ferramenta de mapeamento de rede muito poderosa e versátil, e você deve estar muito familiarizado com ela para defender os sistemas dos quais você é responsável contra ataques originados após uma varredura de portas maliciosa por pessoas de fora.
Source:
https://www.tecmint.com/audit-network-performance-security-and-troubleshooting-in-linux/