Visual para tcpdump com dialog
Publicado por Jonatam Ribeiro dos Santos (última atualização em 30/07/2012)
[ Hits: 5.090 ]
Salve salve galera, bom vou estar postando o script ae para vocês que fiz para quem esta começando com GNU/Linux e mexendo com shell script, fiz um visualzinho para usar o tcpdump para captura e analise de dados, o script esta em dialog para poder ser executado também em servidores com conexão ssh que não possuem o X em breve posto ele na versão kdialog, bom abaixo segue o script.
# !/bin/bash # by Jonatan / Baguio Loko # jonatam.ribeiro@hotmail.com # http://www.homedesenvolvimento.com # visual para tcpdump # V 1.0 # função ver as interfaces ver() { hosts=$(tcpdump -D) # JOGA AS INTERFACES UMA ABAIXO DA OUTRA E EXIBE NA TELA echo $hosts | while read LINHA; do set - $LINHA dialog --title 'INTERFACES' --msgbox "INTERFACES ENCONTRADOS\n\n${1}\n${2}\n${3}${4} ${5} ${6} ${7}\n${8}${9}${10}${11}${12}\n${13}${14} ${15} ${16} ${17} ${18} ${19}\n${20}" 0 0 done } ## função de snifar a rede snifar() { #FUNCÃO SNIFAR REDE ETH0 snifar_eth0() { pact=$( dialog --stdout --inputbox 'Digite a quantidade de pacotes a ser filtrada:' 0 0 "50000") string="tcpdump -i eth0" t1=-n t2=-nn t3=host t4=src t5=dst t6="and port" t7=not t8=-p pacotes="-c$pact" while : ; do respostaeth0=$( dialog --stdout \ --title 'Menu' \ --menu 'Escolha:' \ 0 0 0 \ 1 'filtrar apenas por determinado host' \ 2 'Mais Opções' ) [ $? -ne 0 ] && break break #Inicia a estrutura de condição case case "$respostaeth0" in #FUNÇÕES 1) host=$( dialog --stdout --inputbox 'Digite o HOST:' 0 0 ) nome1=$( dialog --stdout --inputbox 'Digite o nome do arquivo a ser salvo:' 0 0 "nome.pcap") string="$string $pacotes $t3 $host -w $nome1" dialog --title 'INTERFACES' --msgbox "$string" 0 0 $string ;; 2) string="$string $pacotes" dialog --yesno 'Não exibir o nome da porta mas sim o numero' 0 0 if [ $? = 0 ]; then string="$string $t2" dialog --title 'INTERFACES' --msgbox "$string" 0 0 else echo 'ok' fi dialog --yesno 'Não colocar a placa em promiscue mode' 0 0 if [ $? = 0 ]; then string="$string $t8" dialog --title 'INTERFACES' --msgbox "$string" 0 0 else echo 'ok' fi dialog --yesno 'Não resolver nome DNS e mostrar apenas o IP' 0 0 if [ $? = 0 ]; then string="$string $t1" dialog --title 'INTERFACES' --msgbox "$string" 0 0 else echo 'ok' fi dialog --yesno 'Deseja filtra por pacotes recebidos pelo host' 0 0 if [ $? = 0 ]; then hostr=$( dialog --stdout --inputbox 'Digite o HOST:' 0 0 ) string="$string $t5 $t3 $hostr" dialog --title 'INTERFACES' --msgbox "$string" 0 0 else echo 'ok' fi dialog --yesno 'Deseja filtra por pacotes enviados pelo host' 0 0 if [ $? = 0 ]; then hoste=$( dialog --stdout --inputbox 'Digite o HOST:' 0 0 ) string="$string and $t4 $t3 $hoste" dialog --title 'INTERFACES' --msgbox "$string" 0 0 else echo 'ok' fi dialog --yesno 'não filtra nada relacionado ao host' 0 0 if [ $? = 0 ]; then hostn=$( dialog --stdout --inputbox 'Digite o HOST:' 0 0 ) string="$string and $t7 $t3 $hostn" dialog --title 'INTERFACES' --msgbox "$string" 0 0 else echo 'ok' fi dialog --yesno 'Deseja filtra por determinada porta' 0 0 if [ $? = 0 ]; then porta1=$( dialog --stdout --inputbox 'Digite a Porta:' 0 0 ) string="$string $t6 $porta1" dialog --title 'INTERFACES' --msgbox "$string" 0 0 else echo 'ok' fi nome1=$( dialog --stdout --inputbox 'Digite o nome do arquivo a ser salvo:' 0 0 "nome.pcap") string="$string -w $nome1" $string ;; esac done } # INICIO DO MENU DE REDES while : ; do # Mostra o menu na tela, com as ações disponíveis resposta2=$( dialog --stdout \ --title 'Menu' \ --menu 'Escolha:' \ 0 0 0 \ 1 'eth0' \ 0 'Voltar') # Ela apertou CANCELAR ou ESC, então vamos sair e limpar a Tela [ $? -ne 0 ] && break #Inicia a estrutura de condição case case "$resposta2" in #FUNÇÕES DE REDES 1)snifar_eth0 ;; 0)break clear ;; esac done } ajuda() { dialog --title "================================= Desenvovlvedor =================================" \ --msgbox "\n http://www.homedesenvolvimento.com\n jonatam[dot]ribeiro[at]hotmail[dot]com\n 2012" 0 0 } analize() { #pega o nome do arquivo a ser analizado nome1=$( dialog --stdout --inputbox 'Digite o nome do arquivo a ser analizado:' 0 0 "nome.pcap") #verifica se o usuario deseja ver o cabeçalho e conteudo do pacote dialog --yesno 'deseja ver o cabeçalho e conteudo do pacote' 0 0 if [ $? = 0 ]; then tcpdump -r $nome1 -xx >>log.txt else tcpdump -r $nome1 >>log.txt fi # mostra o conteudo do arquivo log.txt dialog \ --title 'Monitorando Mensagens do Sistema' \ --textbox log.txt \ 0 0 rm log.txt # remove o arquivo log.txt } ################################################################################################ # INICIO DO MENU PRINCIPAL while : ; do # Mostra o menu na tela, com as ações disponíveis resposta=$( dialog --stdout \ --title 'Menu' \ --menu 'Escolha:' \ 0 0 0 \ 1 'Ver Interfaces' \ 2 'Snifar' \ 3 'Ajuda' \ 4 'Analizar dados' \ 0 'sair') # Ela apertou CANCELAR ou ESC, então vamos sair e limpar a Tela [ $? -ne 0 ] && break clear #Inicia a estrutura de condição case case "$resposta" in #FUNÇÕES DO MENU PRINCIPAL 1)ver ;; 2) snifar ;; 3) ajuda ;; 4) analize ;; 0)break clear ;; esac done
Baixando fotos de uma câmera digital pela USB
Liberação do servidor DNS no firewall
POSTFIX AUTOMÁTICO COM MYSQL E IPTABLES - CALCULA O % DE USO DA QUOTA E ATUALIZA BANCO
Nenhum comentário foi encontrado.
Atualizar o macOS no Mac - Opencore Legacy Patcher
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Instalando Zoom Client no Ubuntu 24.04 LTS
Instalando Zoom Client no Fedora 40
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin
Sistema da Coréia do Norte - Red Star OS (56)
Dificuldade em ler binário (10)
script para gerar arquivo .AppImage (6)