O Nmap (Network Mapper) é uma ferramenta gratuita e de código aberto utilizada para descobrir hosts e serviços numa rede de computadores. Quer seja um administrador de sistemas a manter um inventário, um estudante de segurança a aprender como as redes se comportam ou um programador a resolver problemas de conectividade, o Nmap oferece uma visão clara do que está acessível, que portas estão abertas e que serviços estão a ser executados. Este guia aborda o que o Nmap faz, conceitos básicos, passos simples de instalação, comandos essenciais com exemplos, como interpretar os resultados e práticas de digitalização seguras e éticas para começar.
O que é o Nmap?
O Nmap é um utilitário de linha de comandos (com uma GUI opcional chamada Zenmap) que realiza a descoberta de hosts, a varredura de portas, a deteção de serviços/versões e scripts básicos de vulnerabilidades. Desenvolvido para velocidade e flexibilidade, funciona em Linux, macOS e Windows. Essencialmente, o Nmap envia pacotes cuidadosamente elaborados para alvos e analisa as respostas para inferir quais os hosts que estão ativos, quais as portas que aceitam ligações e, frequentemente, qual o software e o sistema operativo que estão a ser executados. Os casos de utilização comuns incluem inventário de rede, auditoria de segurança, resolução de problemas de regras de firewall e suporte a testes de intrusão. O motor de script do Nmap (NSE) acrescenta extensibilidade, permitindo aos utilizadores executar scripts que verificam configurações incorretas específicas, problemas conhecidos ou recolhem informações adicionais.
Conceitos básicos
-
Descoberta de hosts: Identifica quais os IPs de um intervalo que estão ativos (normalmente através de ICMP, TCP/ACK ou ARP).
-
Varredura de portas: Determina quais as portas TCP ou UDP que estão abertas, fechadas ou filtradas.
-
Tipos de varredura: A varredura TCP SYN (
-sS) é rápida e discreta; a ligação TCP (-sT) completa o handshake; as varreduras UDP (-sU) sondam os serviços UDP. -
Deteção de serviço/versão (
-sV): Liga-se a portas abertas para sondar e identificar serviços e versões em execução. -
Deteção de SO (
-O): Utiliza as impressões digitais da pilha TCP/IP para adivinhar o SO alvo com uma estimativa de precisão. -
Mecanismo de script do Nmap (NSE): Executa scripts Lua para tarefas como verificação de vulnerabilidades, força bruta ou descoberta de informação.
-
Sincronização e evasão: Os modelos de sincronização (
-T0…-T5) ajustam a velocidade e a furtividade; opções como--source-portou engodos existem, mas devem ser utilizadas com responsabilidade.
Instalar o Nmap
Windows
- Descarregue o instalador
- Visite a página oficial de downloads do Nmap e descarregue o instalador mais recente para Windows (normalmente com o nome
nmap-<versão>-setup.exe).
- Execute o instalador
-
Clique duas vezes no ficheiro
.exedescarregado. -
Siga o assistente de instalação: Aceite a licença, escolha os componentes (mantenha as opções padrão) e selecione um local de instalação.
- Adicione o Nmap ao PATH (opcional, normalmente oferecido pelo instalador)
-
Se o instalador oferecer a opção "Adicionar ao PATH", ative-a para que possa executar o
nmapa partir de qualquer Linha de Comandos ou PowerShell. -
Se não for adicionado automaticamente:
-
Abra Iniciar → Definições → Sistema → Acerca de → Definições avançadas do sistema → Variáveis de ambiente.
-
Em "Variáveis do sistema", edite
Path→ Novo → adicione a pasta de instalação do Nmap (por exemplo,C:\Program Files (x86)\Nmap). -
Guarde e reinicie o terminal.
- Verifique a instalação
nmap --versão
- Deverá ver a versão do Nmap apresentada.
- Opcional: Instale o Zenmap (interface gráfico)
- O instalador pode incluir o Zenmap; ative-o durante a instalação ou descarregue-o separadamente. Execute o Zenmap a partir do Menu Iniciar.
Interface gráfico do Zenmap
Linux
Debian/Ubuntu
sudo apt update
sudo apt install -y nmap
Fedora
sudo dnf install -y nmap
CentOS / RHEL (8+)
sudo dnf install -y nmap
openSUSE
sudo zypper refresh
sudo zypper install -y nmap
macOS
Usando o Homebrew (recomendado)
- Instale o Homebrew, caso ainda não o tenha:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- Instale o Nmap:
brew update
brew install nmap
Utilizar o MacPorts (alternativa)
-
Instale o MacPorts em https://www.macports.org/, se necessário.
-
Instale o Nmap:
sudo port selfupdate
sudo port install nmap
Comandos essenciais com exemplos
(Substitua os IPs pelo seu alvo, por exemplo, um dispositivo na sua rede doméstica.)
- Varredura de ping (descoberta de hosts):
nmap -sn 192.168.1.0/24
- Varredura TCP SYN (furtiva) de portas comuns:
nmap -sS 192.168.1.10
- Varredura de ligações TCP (sem necessidade de sockets raw):
nmap -sT 192.168.1.10
- Varredura UDP:
nmap -sU 192.168.1.10
- Detecção de serviço/versão:
nmap -sV 192.168.1.10
- Detecção SO:
nmap -O 192.168.1.10
- Varredura agressiva (combina várias verificações):
nmap -A 192.168.1.10
- Intervalo de portas específico:
nmap -p 1-65535 192.168.1.10
- Guardar saída:
nmap -oN scan.txt 192.168.1.0/24
- Executar scripts de vulnerabilidades:
nmap --script vuln 192.168.1.10
Noções básicas de interpretação
A saída do Nmap começa com os alvos verificados, seguindo-se uma lista de portas e os seus respetivos estados:
-
open — a aplicação está a aceitar ligações.
-
closed — acessível, mas nenhuma aplicação está a escutar.
-
filtered — o filtro de pacotes (por exemplo, firewall) impediu uma resposta.
-
open|filtered e closed|filtered — utilizadas para respostas ambíguas de UDP ou firewall.
As linhas de serviço mostram a porta/protocolo, o estado, o nome do serviço e qualquer informação de versão disponível (a partir de -sV). A deteção do sistema operativo fornece uma estimativa com uma probabilidade; considere-a como indicativa, e não definitiva. As opções de temporização e as condições da rede afetam a precisão; varreduras mais lentas (-T0 a -T2) têm menor probabilidade de não detetar hosts atrás de IDS ou alvos com taxa de transferência limitada.
Aqui, apenas verifiquei a porta 80 de um router Mikrotik com deteção de versão (-sV)
Boas práticas e segurança
-
Autorização: Obtenha sempre permissão explícita antes de analizar redes que não lhe pertencem.
-
Âmbito: Comece com varreduras limitadas e aumente o âmbito: varredura de ping e, em seguida, varredura de portas direcionadas.
-
Tempo: Utilize modelos de tempo para evitar sobrecarregar as redes:
-T2para cautela,-T4para a velocidade da LAN local. -
Verificação: Combine os resultados do Nmap com os logs e outras ferramentas.
-
Alertas: Lembre-se que a verificação pode desencadear alertas IDS/IPS.
-
Documentação: Guarde e documente as varreduras para fins de repetibilidade e geração de relatórios.
Quando utilizar o Nmap em vez de outras ferramentas
-
Utilize o Nmap para a descoberta de hosts, mapeamento de portas/serviços e verificações simples por script.
-
Utilize o Masscan para varreduras de portas extremamente rápidas à escala da internet e, em seguida, envie os resultados para o Nmap para obter detalhes.
-
Utilize o Nessus/OpenVAS para verificações CVE abrangentes e relatórios de conformidade.
-
Utilize o Wireshark quando necessitar de visibilidade ao nível do pacote em vez de enumeração de hosts/serviços.
Próximos passos e características
Pratique num laboratório seguro: configure algumas máquinas virtuais (por exemplo, Kali e Metasploitable) e faça scans às mesmas. Leia o livro "Nmap Network Scanning" e a página de manual oficial (nmap --help e man nmap). Tente escrever scripts NSE simples para verificações repetidas. Mantenha a ética e a autorização em primeiro plano enquanto aprende.
Conclusão
O Nmap é um conjunto de ferramentas poderoso e flexível para compreender os sistemas em rede. Para os principiantes, dominar os tipos básicos de varreduras/scan, interpretar resultados e seguir práticas seguras proporciona uma base sólida para a resolução de problemas de rede e para o trabalho de segurança. Experimente algumas varreduras no seu laboratório doméstico e vá aprimorando os seus conhecimentos a partir daí.
