User Tools

Site Tools


wiki:linux:comandos_grupos:cmd_redes

Nível Básico

1. Verificação de Conectividade

  • ping - Testa a conectividade com um endereço IP ou domínio.
    1. Exemplo de uso:
      ping google.com
    2. Descrição: Envia pacotes ICMP para google.com e exibe o tempo de resposta, verificando se o host está acessível.
  • ping -c - Limita o número de pacotes ICMP enviados.
    1. Exemplo de uso:
      ping -c 4 google.com
    2. Descrição: Envia 4 pacotes ICMP para google.com e exibe o resultado, ideal para testes rápidos de conectividade.

2. Exibição de Configuração de Rede

  • ifconfig - Exibe informações sobre interfaces de rede (versões mais antigas de Linux).
    1. Exemplo de uso:
      ifconfig
    2. Descrição: Exibe as configurações de rede de todas as interfaces, incluindo endereços IP, máscara de rede e status da interface.
  • ip addr - Exibe informações detalhadas das interfaces de rede (versões mais recentes).
    1. Exemplo de uso:
      ip addr
    2. Descrição: Mostra as configurações de rede das interfaces disponíveis no sistema, como endereço IP e status das interfaces.

3. Resolução de DNS

  • nslookup - Faz consultas de DNS para resolver um nome de domínio em IP.
    1. Exemplo de uso:
      nslookup google.com
    2. Descrição: Consulta servidores DNS para obter o endereço IP associado ao domínio google.com.
  • dig - Ferramenta avançada para consultas de DNS.
    1. Exemplo de uso:
      dig google.com
    2. Descrição: Realiza uma consulta DNS detalhada para o domínio google.com, exibindo informações sobre o servidor DNS, o tempo de resposta e o IP.

4. Exibição de Rotas de Rede

  • route - Mostra a tabela de rotas do sistema.
    1. Exemplo de uso:
      route -n
    2. Descrição: Exibe a tabela de roteamento de IPs com informações sobre gateways e sub-redes. A opção -n mostra os endereços IP em formato numérico.
  • ip route - Exibe as rotas de rede configuradas no sistema.
    1. Exemplo de uso:
      ip route
    2. Descrição: Exibe a tabela de roteamento de forma mais detalhada em sistemas modernos.

Nível Intermediário

1. Configuração de Interfaces de Rede

  • ip link set - Ativa ou desativa interfaces de rede.
    1. Exemplo de uso:
      sudo ip link set eth0 up
    2. Descrição: Ativa a interface de rede eth0, permitindo a comunicação de rede.
  • ip addr add - Atribui um endereço IP a uma interface.
    1. Exemplo de uso:
      sudo ip addr add 192.168.1.10/24 dev eth0
    2. Descrição: Atribui o endereço IP 192.168.1.10 com a máscara de sub-rede /24 (255.255.255.0) à interface eth0.
  • dhclient - Solicita um endereço IP via DHCP.
    1. Exemplo de uso:
      sudo dhclient eth0
    2. Descrição: Solicita um endereço IP de um servidor DHCP para a interface eth0, configurando automaticamente a rede.

2. Diagnóstico e Solução de Problemas de Rede

  • traceroute - Exibe o caminho que os pacotes percorrem até um destino.
    1. Exemplo de uso:
      traceroute google.com
    2. Descrição: Mostra o caminho (hops) que os pacotes percorrem até o domínio google.com, útil para identificar problemas de roteamento ou latência.
  • mtr - Combinação de ping e traceroute com atualização contínua.
    1. Exemplo de uso:
      mtr google.com
    2. Descrição: Exibe uma combinação de ping e traceroute em tempo real, permitindo visualizar latência e perda de pacotes em cada hop até o destino.
  • netstat - Exibe conexões de rede e portas abertas.
    1. Exemplo de uso:
      netstat -tuln
    2. Descrição: Exibe todas as portas TCP/UDP abertas no sistema e suas conexões ativas. A opção -tuln mostra a saída em formato numérico, útil para depuração de rede.

3. Teste de Transferência de Dados

  • nc (netcat) - Ferramenta básica para envio e recebimento de dados via rede.
    1. Exemplo de uso:
      nc -l 1234
    2. Descrição: Inicia um servidor TCP simples que escuta na porta 1234, permitindo que qualquer cliente se conecte e envie dados.
  • iperf - Mede a largura de banda da conexão entre dois hosts.
    1. Exemplo de uso:
      iperf -s

      (Servidor) e

      iperf -c 192.168.1.1

      (Cliente)

    2. Descrição: O comando iperf -s inicia o servidor de teste de largura de banda, enquanto iperf -c testa a largura de banda entre o cliente e o servidor.

4. Firewall com `ufw`

  • ufw status - Exibe o status atual do firewall.
    1. Exemplo de uso:
      sudo ufw status
    2. Descrição: Exibe o status do firewall ufw, incluindo regras ativas e o estado (habilitado ou desabilitado).
  • ufw allow - Permite o tráfego de uma porta específica.
    1. Exemplo de uso:
      sudo ufw allow 22/tcp
    2. Descrição: Permite o tráfego de entrada na porta 22 via protocolo TCP, normalmente usado para SSH.
  • ufw deny - Bloqueia o tráfego de uma porta específica.
    1. Exemplo de uso:
      sudo ufw deny 80/tcp
    2. Descrição: Bloqueia o tráfego de entrada na porta 80 via protocolo TCP, normalmente usado para servidores HTTP.

Nível Avançado

1. Análise de Pacotes com `tcpdump`

  • tcpdump - Captura pacotes de rede em uma interface.
    1. Exemplo de uso:
      sudo tcpdump -i eth0
    2. Descrição: Captura e exibe os pacotes que estão passando pela interface de rede eth0, útil para análise e depuração de problemas de rede.
  • tcpdump -w - Salva pacotes capturados em um arquivo.
    1. Exemplo de uso:
      sudo tcpdump -i eth0 -w captura.pcap
    2. Descrição: Captura os pacotes da interface eth0 e os salva no arquivo captura.pcap para análise posterior com ferramentas como Wireshark.
  • tcpdump port - Filtra pacotes por porta.
    1. Exemplo de uso:
      sudo tcpdump -i eth0 port 80
    2. Descrição: Captura apenas os pacotes que trafegam pela porta 80 na interface eth0, útil para análise de tráfego HTTP.

2. Tunelamento Seguro com `ssh`

  • ssh -L - Cria um túnel local para encaminhar portas via SSH.
    1. Exemplo de uso:
      ssh -L 8080:localhost:80 usuario@servidor_remoto
    2. Descrição: Cria um túnel local na porta 8080 que redireciona o tráfego para a porta 80 do servidor remoto, permitindo acessar serviços remotos como se fossem locais.
  • ssh -D - Cria um proxy SOCKS via SSH.
    1. Exemplo de uso:
      ssh -D 1080 usuario@servidor_remoto
    2. Descrição: Estabelece um proxy SOCKS na porta 1080, permitindo redirecionar o tráfego da rede através do servidor remoto via SSH, útil para navegação segura.

3. Controle Avançado de Firewall com `iptables`

  • iptables -L - Lista todas as regras do firewall.
    1. Exemplo de uso:
      sudo iptables -L
    2. Descrição: Exibe todas as regras de firewall configuradas no iptables, incluindo regras de entrada (INPUT), saída (OUTPUT) e encaminhamento (FORWARD).
  • iptables -A - Adiciona uma nova regra ao firewall.
    1. Exemplo de uso:
      sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
    2. Descrição: Adiciona uma regra permitindo tráfego TCP na porta 22 (SSH) na tabela de entrada (INPUT).
  • iptables -D - Remove uma regra específica do firewall.
    1. Exemplo de uso:
      sudo iptables -D INPUT 1
    2. Descrição: Remove a primeira regra da cadeia de entrada (INPUT) no iptables, permitindo o ajuste fino das regras de firewall.

4. Redirecionamento de Pacotes com `iptables`

  • iptables -t nat -A PREROUTING - Redireciona tráfego de uma porta.
    1. Exemplo de uso:
      sudo iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port 80
    2. Descrição: Redireciona o tráfego da porta 8080 para a porta 80, útil para servidores que precisam redirecionar conexões HTTP.
  • iptables -t nat -A POSTROUTING - Habilita masquerading para compartilhamento de internet.
    1. Exemplo de uso:
      sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    2. Descrição: Configura masquerading na interface eth0, permitindo que uma rede local compartilhe a conexão de internet.

5. Configuração de VPN com `openvpn`

  • openvpn –config - Inicia uma conexão VPN usando um arquivo de configuração.
    1. Exemplo de uso:
      sudo openvpn --config cliente.ovpn
    2. Descrição: Estabelece uma conexão VPN usando o arquivo de configuração cliente.ovpn, criando um túnel seguro entre o cliente e o servidor VPN.
  • openvpn –genkey - Gera uma chave para a VPN.
    1. Exemplo de uso:
      openvpn --genkey --secret chave_vpn.key
    2. Descrição: Gera uma chave secreta para criptografia e a salva no arquivo chave_vpn.key, usado para configurar uma VPN segura.

6. Gerenciamento de Bandwidth com `tc`

  • tc qdisc - Configura controle de tráfego na interface de rede.
    1. Exemplo de uso:
      sudo tc qdisc add dev eth0 root tbf rate 1mbit burst 32kbit latency 400ms
    2. Descrição: Configura o controle de tráfego na interface eth0 com uma taxa limitada de 1 Mbps, útil para simular redes lentas ou gerenciar o consumo de largura de banda.
  • tc class - Cria classes para controle de largura de banda.
    1. Exemplo de uso:
      sudo tc class add dev eth0 parent 1:1 classid 1:10 htb rate 512kbit
    2. Descrição: Cria uma classe de controle de largura de banda, limitando a taxa de tráfego para 512 kbps em uma subinterface de rede, ideal para gerenciamento avançado de redes.

Nível Especializado

1. Monitoramento e Análise de Rede com `nmap`

  • nmap - Escaneia portas abertas em um host ou rede.
    1. Exemplo de uso:
      nmap 192.168.1.1
    2. Descrição: Escaneia o host com endereço IP 192.168.1.1 e exibe todas as portas abertas, útil para descobrir serviços ativos e potenciais vulnerabilidades.
  • nmap -sS - Realiza um escaneamento stealth (SYN scan).
    1. Exemplo de uso:
      nmap -sS 192.168.1.1
    2. Descrição: Realiza um escaneamento de portas usando pacotes SYN, sem completar a conexão TCP, o que dificulta a detecção em logs de segurança.
  • nmap -A - Escaneia portas e tenta identificar o sistema operacional e serviços.
    1. Exemplo de uso:
      nmap -A 192.168.1.1
    2. Descrição: Além de escanear as portas, tenta identificar o sistema operacional e os serviços em execução, fornecendo uma análise mais detalhada do host.

2. Manipulação de Pacotes com `scapy`

  • scapy - Ferramenta interativa para criar e manipular pacotes.
    1. Exemplo de uso:
      scapy
    2. Descrição: Inicia o modo interativo do Scapy, uma poderosa ferramenta de manipulação de pacotes para testes de redes, análise e exploração.
  • scapy (envio de pacotes ICMP) - Envia pacotes ICMP (ping).
    1. Exemplo de uso:
    send(IP(dst="192.168.1.1")/ICMP())
 
  1. Descrição: Envia um pacote ICMP para o IP 192.168.1.1, útil para testes personalizados de conectividade.
  • scapy (spoofing de pacotes) - Cria pacotes IP com spoofing de origem.
    1. Exemplo de uso:
    send(IP(src="1.2.3.4", dst="192.168.1.1")/ICMP())
 
  1. Descrição: Envia um pacote ICMP com o IP de origem falsificado como 1.2.3.4, o que pode ser usado para testar comportamentos de firewall ou IDS.

3. Otimização de Tráfego com `ethtool`

  • ethtool - Exibe e modifica configurações de uma interface de rede.
    1. Exemplo de uso:
      sudo ethtool eth0
    2. Descrição: Exibe as configurações detalhadas da interface de rede eth0, como velocidade, modo duplex e estatísticas de erros.
  • ethtool -s - Ajusta a velocidade da interface de rede.
    1. Exemplo de uso:
      sudo ethtool -s eth0 speed 100 duplex full
    2. Descrição: Configura a interface de rede eth0 para operar em 100 Mbps com modo full-duplex, útil para otimizar o desempenho de rede em cenários específicos.
  • ethtool -K - Habilita/desabilita offloading na interface.
    1. Exemplo de uso:
      sudo ethtool -K eth0 rx off tx off
    2. Descrição: Desabilita o offloading de recebimento e transmissão na interface eth0, útil para testes de desempenho e troubleshooting de rede.

4. Segurança de Rede com `fail2ban`

  • fail2ban-client - Gerencia o serviço fail2ban, que bloqueia IPs maliciosos.
    1. Exemplo de uso:
      sudo fail2ban-client status
    2. Descrição: Exibe o status atual do serviço fail2ban, incluindo quais jails estão ativas e quantos IPs estão banidos.
  • fail2ban-client set - Bloqueia manualmente um IP.
    1. Exemplo de uso:
      sudo fail2ban-client set sshd banip 192.168.1.100
    2. Descrição: Bloqueia manualmente o IP 192.168.1.100 para o serviço SSH (jail sshd), útil para ações imediatas contra ataques de força bruta.
  • fail2ban-client unban - Desbloqueia um IP banido.
    1. Exemplo de uso:
      sudo fail2ban-client set sshd unbanip 192.168.1.100
    2. Descrição: Remove o banimento do IP 192.168.1.100, liberando o acesso bloqueado anteriormente.

5. Túnel de Rede com `wireguard`

  • wg-quick up - Inicia uma conexão VPN WireGuard usando uma configuração.
    1. Exemplo de uso:
      sudo wg-quick up wg0
    2. Descrição: Ativa a interface VPN WireGuard chamada wg0 usando as configurações definidas no arquivo de configuração, estabelecendo o túnel seguro.
  • wg show - Exibe o status atual da conexão WireGuard.
    1. Exemplo de uso:
      sudo wg show
    2. Descrição: Mostra o status da conexão VPN, incluindo peers conectados, chaves públicas e estatísticas de pacotes enviados/recebidos.

6. Qualidade de Serviço com `tc` e `qdisc`

  • tc qdisc - Configura a disciplina de enfileiramento para controle de tráfego.
    1. Exemplo de uso:
      sudo tc qdisc add dev eth0 root fq_codel
    2. Descrição: Aplica o algoritmo de controle de fila fq_codel na interface eth0, uma técnica usada para reduzir latência e evitar congestionamento de rede.
  • tc class add - Define classes de QoS (Quality of Service).
    1. Exemplo de uso:
      sudo tc class add dev eth0 parent 1:1 classid 1:10 htb rate 1mbit ceil 2mbit
    2. Descrição: Cria uma classe de tráfego que limita a largura de banda da interface eth0 para 1 Mbps, com picos permitidos até 2 Mbps, garantindo o controle do uso de recursos de rede.
wiki/linux/comandos_grupos/cmd_redes.txt · Last modified: by Wiki Administrator