Relatório de sistema via browser (shell script + CGI)

Um bom administrador de redes tem que estar atento aos detalhes provenientes do seu servidor Linux. Uma forma simples e fácil é pelo uso eficaz de relatórios de sistema. Aqui vou mostrar uma forma de fazer um relatório com shell script + CGI, podendo ser visualizado remotamente via internet através de seu servidor web.

[ Hits: 54.537 ]

Por: William França em 06/10/2006


relatorio.cgi



Eis um exemplo de um relatório simples. Adapte para as suas necessidades, retire tudo o que for desnecessário e formule o seu próprio relatório.

#!/bin/bash

echo "Content-type: text/plain"
echo
echo "
+------------------------------------+
|Departamento de Tecnologia          | 
|FTC ead UP: Uauá                    |
|Adm.Redes: William França           | 
|                                    |
|                                    | 
|[email protected]                     |
+------------------------------------+
|.:: ANALISE DA REDE inet.upuaua ::. |
+------------------------------------+
"
echo "======================================"
echo "Informações básicas do Servidor"
echo "======================================"
echo "Hora atual"
echo "----------"
uptime
echo "---------------------------------------"
echo "Kernel"
echo "--------"
uname -a
echo "---------------------------------------"
echo "Informações da CPU /proc/cpuinfo"
echo "--------------------------------"
cat /proc/cpuinfo
echo "---------------------------------------"
echo "Informações da memória"
echo "-----------------------------"
vmstat -S M 1 5
echo "---------------------------------------"
vmstat -s
echo "---------------------------------------"
echo "---------------------------------------"
echo "Informações de disco"
echo "--------------------"


df -Th
echo "---------------------------------------"
free
echo "---------------------------------------"
cat /etc/fstab
echo "---------------------------------------"
echo "Informações dos itens PCI plugados"
echo "-----------------------------------"
lspci
echo "---------------------------------------"

echo ""
echo ""
echo ""
echo "======================================="
echo "Programas Ativos "
echo "======================================="
ps aux
echo ""
echo ""
echo ""
echo "======================================="
echo "REDE"
echo "======================================="
echo "USUÁRIOS LOGADOS"
echo "----------------"
who
echo "O QUE ESTÃO FAZENDO?"
echo "--------------------"
w
echo "---------------------------------------"
echo "DOMÍNIO DA REDE"
echo "---------------"
dnsdomainname
echo "---------------------------------------"
echo "Estatísticas e roteamentos"
echo "-------------------------"
netstat
echo "---------------------------------------"
echo "---------------------------------------"
echo "Histórico de entrada e saída de usuários no sistema"
echo "---------------------------------------------------"
last
echo "---------------------------------------"
echo "Configuração das Interfaces de rede"
echo "--------"
/sbin/ifconfig
echo "---------------------------------------"
cat /etc/network/interfaces
echo "---------------------------------------"
echo "Portas Abertas"
echo "--------------"
nmap localhost
echo "---------------------------------------"
echo " [1] ATIVADO [0] DESATIVADO"
echo "FORWARD"
echo "-------"
cat /proc/sys/net/ipv4/ip_forward
echo "RP FILTER"
echo "---------"
cat /proc/sys/net/ipv4/conf/default/rp_filter
echo "---------------------------------------"
echo "FIREWALL"
echo "--------"
cat /proc/net/ip_tables_matches
echo "<<----------------------------------------->>"
cat /proc/net/ip_tables_names
echo "<<----------------------------------------->>"
cat /proc/net/ip_tables_targets
echo ""
echo ""
echo ""
Página anterior     Próxima página

Páginas do artigo
   1. Configuração
   2. Entendendo o CGI e preparando o terreno
   3. Lógica do relatório e dependências
   4. relatorio.cgi
   5. Segurança do CGI e considerações finais
Outros artigos deste autor

Simples sistema de backup com acesso remoto

Leitura recomendada

Liberar navegação para Speedy Home

Script com muitas utilidades para arquivos e pastas

Simples sistema de backup com acesso remoto

Ubuntu 14.04 no AD com CiD

Como programar backup com rsync e cron de maneira rápida e simples

  
Comentários
[1] Comentário enviado por pacman em 06/10/2006 - 18:22h

Fazer CGI-BIN em Bash é muito divertido :)

Sugestão: para evitar 4750834750345 echo "...." pode ser feito algo assim

cat <<EOF
Content-type: text/html

<html> <head> <title> Exemplo de CGI </title> </head>
...
EOF

Abraço

[2] Comentário enviado por coffani em 06/10/2006 - 18:48h

Excelente artigo Wilian, vou usar nos meus servers, tenhos uns mais saum separados pra cada serviço esse ai apesar de simples é bem funcional.. Parabéns.

[3] Comentário enviado por balani em 08/10/2006 - 01:19h

Cara muito bom seu artigo, parabens, sera muito util para mim, vlw

[4] Comentário enviado por williamcrazy em 17/10/2006 - 21:58h

Obrigado, fico feliz em saber que ajudei de alguma forma alguem, pois é muito importante temos o efetivo controle de nossos servidores para manter a casa em ordem, pois o linux é uam excelente plataforma e bem segura, mais o linux só será isso tudo se por de trás tiver um hacker preparado e disposto a aprender cada vez mais, do contrário o linux pode ser uma brecha para dor de cabeça sua e da empresa que você trabalha, e nada melhor do que usar estes tipos de soluções para estar a par do que circula na sua rede.

[5] Comentário enviado por cleitão em 05/12/2006 - 15:23h

Cara bem legal mesmo da pra fazer o cgi funcionar de forma simples e rápida....

Valeu!!!!!!!!!

[6] Comentário enviado por dtux em 28/02/2007 - 23:53h

BOA CARA!!!!!!!!!!!!!!!!

[7] Comentário enviado por coffani em 09/06/2008 - 23:18h

kra... muito bacana seu artigo... muito bem feito, parabens.. vai pro meu favoritos..

[8] Comentário enviado por removido em 12/06/2008 - 03:09h

Parabéns...

[9] Comentário enviado por wagner_guitar em 26/11/2008 - 18:20h

eu instalei o apache , mas nao tem esse arquivo httpd.conf,
sabe o que acontece?????
e ai,o que faco???

desde ja agradeco!!!!!!!

[10] Comentário enviado por williamcrazy em 27/11/2008 - 12:56h

Prezado Wagner Guitar,
o arquivo httpd.conf está presente na pasta que quarda as configurações do seu webserver Apache, dependendo da distro ou da pré-configuração de instalação, podemos encontralo em diferentes lugares.
Na maioria das instalações encontramos ele na pasta /etc/apache ou /etc/apache2 (OBS: Se você está usando o Apache 2, o arquivo que você deve editar é o apache2.conf [ /etc/apache2/apache2.conf], embora exista um httpd.conf, o mesmo serve para outros própositos.) Na dúvida leia o arquivo README, logo no inicio ele indica o arquivo de configuração default (padrão)
Se nada resolver, execulte o seguinte comando: find / -name httpd.conf
E sairá na tela uma gama de resultados com os possiveis diretórios pelos quais seu httpd.conf poderá estar presente, se não resolver tente find / -name apache2.conf

O comando dará um retorno parecido com o seguinte:
/etc/apache/httpd.conf
/etc/apache2/httpd.conf
/var/www/downloads/httpd.conf
/var/www/secreto/confs/httpd.conf

/usr/share/doc/apache/examples/httpd.conf
/usr/share/apache/default-configs/apache-perl/httpd.conf
/usr/share/apache/default-configs/apache-ssl/httpd.conf
/usr/share/apache/default-configs/apache/httpd.conf
/home/www/secreto/httpd.conf

A primeira linha do retorno dá o caminho a ser seguido. Conte conosco!!!

Atenciosamente,
William França (SLACKWARE ATÉ A MORTE)

[11] Comentário enviado por cardelli em 13/04/2010 - 10:54h

Já utilizei cgi.... mas com o apache2 não esta rolando...



como faço para adicionar o modulo do cgi no arquivo apache2.conf?

[12] Comentário enviado por joaopaulobrinate em 11/09/2010 - 09:53h

Cara parabens pelo material viu mto bom mesmo... rapaz talvez vc possa me ajudar!!! veja so o que estou precisando. " TO PRECISANDO CADASTRAR USUARIOS NO PPTPD VIA CGI, E EU NAO SEI NADA DE CGI SE VC PUDER ME DAR UMA FORÇA OBRIGADO VIU" QUAL O SEU MSN?

[13] Comentário enviado por nielsenyuri em 15/02/2011 - 16:50h

material muito bom mesmo,ja estou testando


Contribuir com comentário