Saudações amigos, fiz um script para monitorar portas abertas em micros da rede onde trabalho, gostaria que os amigos dessem uma analisada e se possível melhorassem o mesmo ou pelo menos dessem uma dica para que eu possa melhorar o mesmo, utilizao o nmap para vasculhar a minha rede gerando um relatório e depois enviando o mesmo por email.. Agradeço qualquer crítica e melhoria no mesmo Segue abaixo o código do mesmo: -----------------------------------------------------------------------------------------------
#!/bin/bash #espiao.sh VERSAO 0.3 #ultima atualizacao 29/01/2007 #Desenvolvido por: #Halexsandro de Freitas Sales 09/01/2007 #Com a colaboracao de: #Carlos Fernando A. Azevedo # #Contatos: # [EMAIL PROTECTED]; [EMAIL PROTECTED]; [EMAIL PROTECTED] ## Este programa scaneia a rede com o 'nmap' e gera um relatorio ## que eh enviado por email ## para ser analisado mais tarde pelo administrador ## Este programa pode ser baixado em ftp://www.aerovix.com.br ## Para utilizar este programa, basta copia-lo para dentro de "/bin" ## e dar permissao de execucao para o mesmo. ex: chmod 777 /bin/espiao.sh ############################################################################" # Funcao 'programa' programa() { # Declaracao da variavel $ip ip=1 log=/Desenvolvimento/pillares/espiao/espiao.log #Limpando o LOG, caso o processo tenha sido abortado anteriormente cat /dev/null > $log #interatividade do programa clear echo "Digite a faixa de \"IP\" a ser scaneada" echo "Exemplo: 192.168.0." read faixa echo "Digite o endereco de email para o qual o relatorio deve ser enviado" read email #Processo e loop do programa while [ $ip -le 255 ] do #Processo condicional do programa ping -c1 $faixa$ip > /dev/null #Checando se o ip a ser escaneado existe na rede #Caso o mesmo nao exista, eh acrescentado +1 no host e o teste eh reiniciado if [ $? = 0 ]; then #Sendo o host existente e ativo na rede, eh inicializado o processo echo - - - - - ---------------------------------------inicio-------------------------------------- - - - - - >> $log echo >> $log #Escaneando o host e cortando partes indesejaveis do resulta, assim tornando o log mais limpo tput bel nmap $faixa$ip | grep -v ^Starting | grep -v ^"Service de" | grep -v ^"Nmap fini" >> $log echo >> $log echo - F - I - M - - ------------- H - A - L - E - X - S - A - N - D - R - O ------------ - - F - I - M - >> $log echo >> $log #Fim da condicional 'if' fi #Alterando o host para o proximo da rede (+1) ip=$( expr $ip + 1 ) #Fim do loop 'while' done #envio do relatorio por email mail $email -s "Relatorio do Software espiao.sh" < /Desenvolvimento/pillares/espiao/espiao.log #Condicional do resultado de envio do email if [ $? = 0 ]; then clear echo "Fim do Processo espiao.sh" echo "Relatorio gerado e enviado por email com sucesso" echo "O email foi:" $email else clear echo "Por algum motivo houve falha no envio do email" echo "Verifique os servico de postagem de seu servidor" echo "O arquivo de log foi gerado e encontra-se em:" echo "/Desenvolvimento/pillares/espiao/espiao.log" fi exit 0 } # Limpando o prompt para inicializar o programa espiao clear ##### Inicialização da saudacao e do menu principal ##### # Soando um bip tput bel echo " ######## - Obrigado por utilizar o programa espiao.sh - ######## Este programa vasculha a rede utilizando o -nmap- Portanto, eh necessario que voce tenha o mesmo instalado O nmap pode ser baixado em www.nmap.org ############## - Pillares Desenvolvimentos Tecnologicos - ############## " tput bel if ls / | grep Desenvolvimento 2> /dev/null then echo "O Programa \'espiao.sh\' ja esta pronto para rodar..." echo "Deseja continuar??? Isso apagara o log anterior! (S ou N)???" read opcao case $opcao in S|s) echo "Inicializando o programa..." #clear programa #Chamada da funcao 'programa' ;; N|n) echo "Cancelando a execucao do programa" exit ;; esac else echo "O diretorio \"/Desenvolvimento/pillares/espiao\" nao existe e sera criado" echo "Criando o diretorio \"/Desenvolvimento/pillares/espiao\"" mkdir /Desenvolvimento 2> /dev/nul mkdir /Desenvolvimento/pillares 2> /dev/nul mkdir /Desenvolvimento/pillares/espiao 2> /dev/nul touch /Desenvolvimento/pillares/espiao/espiao.log 2> /dev/nul echo "Diretorio criado com sucesso!" echo "Dando permissao ao diretorio \"/Desenvolvimento/pillares/espiao\"" chmod 777 /Desenvolvimento/pillares/espiao/ -R echo "Iniciando programa" sleep 3 programa #Segunda chamada da funcao 'programa' fi __________________________________________________ Fale com seus amigos de graça com o novo Yahoo! Messenger http://br.messenger.yahoo.com/ [As partes desta mensagem que não continham texto foram removidas]
