Dj_Offset Skrevet 5. april 2002 Del Skrevet 5. april 2002 Quote: On 2002-04-05 11:06, xeon skrev:Hva er forskjellen på ipchains og iptables? iptables er etterfølgeren til ipchains. ipchains kom var ny i linux 2.2 iptables er ny i linux 2.4 iptables er bedre på mange måter da den har mer funksjonalitet og bedre "logikk". Lenke til kommentar
oskar1 Skrevet 5. april 2002 Del Skrevet 5. april 2002 Kansje smart å holde oss til iptables å enkel scripting i dette tilfellet... er ikke alle som kan / gidder å programere og styre får å få resultatet på en webbside som oppdaterer seg selv etter 15 min. Dette er IKKE spydig ment, det ser veldig proft ut det her Dj_offset, men tror ikke det er en fult så avansert løsning A_B_C er ute etter her. Noen som har en ide??, vart faktisk litt nyskjerrig selv jeg... Lenke til kommentar
Dj_Offset Skrevet 5. april 2002 Del Skrevet 5. april 2002 Quote: On 2002-04-05 13:15, oskar1 skrev:Kansje smart å holde oss til iptables å enkel scripting i dette tilfellet... er ikke alle som kan / gidder å programere og styre får å få resultatet på en webbside som oppdaterer seg selv etter 15 min. Dette er IKKE spydig ment, det ser veldig proft ut det her Dj_offset, men tror ikke det er en fult så avansert løsning A_B_C er ute etter her.Noen som har en ide??, vart faktisk litt nyskjerrig selv jeg... Men hvis man virkelig vil ta vare på dataene over reboot og logge bruk med tidspunkt må en nesten til med databaseprogrammering (evt kan en bruke flate tekstfiler). I mitt tilfelle har jeg bare et shellscript som kjøres av cron, og at shellscriptet skriver en html side er trivielt å få til (man echo). For moro skyld la jeg til ting funksjoner for å se om hver enkelt host er oppe (svarer på ping) og evt om de kjører samba (for å detecte OS). - Unødvendig men trivielt. Hvis noen er interresert kan jeg godt poste shellscriptene mine. Og når det gjelder båndbredde-grafen øverst så er den tilsvarende lik den som er på http://www.kernel.org/. Lenke til kommentar
oskar1 Skrevet 5. april 2002 Del Skrevet 5. april 2002 Ja, kunne da vært litt interessant å sett hvordan du gjør det. Er ikke så veldig inne på det med scripting, men skal lære det etter kvart. Vist du orker å poste dem så hadde det vært fint. Driver mye med linux og nettverk og føler jeg kommer litt til kort med scripting... har du noen gode bøker eller howtoer å annbefale?? På forhånd takk! mvh Oskar Lenke til kommentar
Dj_Offset Skrevet 5. april 2002 Del Skrevet 5. april 2002 Her er cron-jobben som genererer tabellen: (Bruker quote) Quote: #!/bin/csh -f# Dette er litt grisete. # Jeg bruker forresten c-shell istedet for bash (ikke STORE forskjeller # men...)# lese inn en fil med hosts i arrayset hosts = `cat /home/httpd/bin/chains`echo "<table border=1>"echo "<tr><td>Host</td><td>Status</td><td>OS</td><td>Samba</td><td>Downloaded</td><td>Uploaded</td><td>Download speed</td><td>Upload speed</td></tr>"foreach host ( $hosts )set online = "0"set alive = `fping $host | awk '{ print $3 }'`set stat = " "if ("$alive" == "unreachable") then set stat = "<img src='/img/offline.png' height=32>" set online = "0"else set stat = "<img src='/img/online.png' height=32>" set online = "1"endifecho "<tr><td>$host</td><td>"echo $statecho "</td><td>"if ("$online" == "1") thenswitch ( `/home/httpd/bin/security/os $host` )#switch ( `echo "unknown"` ) case "windows": echo "<img src='/img/windows.png'>" breakswcase "linux": echo "<img src='/img/linux.png'>" breaksw case "unknown": echo "??" breakswdefault : # unknown operatingsystem (this should not happen) echo "?" endsw echo "</td><td>" # then the samba tabecho `/home/httpd/bin/security/samba $host`else # don't display anything in the os-field if the computer doesn't reply to pings. echo " </td><td> "endif# Classic er routeren min, så denne ignorerer vi.if ("$host" != "classic") then echo "</td><td>" echo `/home/httpd/bin/bw/account_in $host` # ip in echo "</td><td>" echo `/home/httpd/bin/bw/account_out $host` # ip out echo "</td><td>" # les byte counters set DLS = `/home/httpd/bin/bw/bytes_in $host` set ULS = `/home/httpd/bin/bw/bytes_out $host` # beregn gjennomsnittlig hastighet for det siste kvarteret echo `expr $DLS / 1024 / 900 ` # packets in echo "KB/s</td><td>" echo `expr $ULS / 1024 / 900 ` # packets out echo "KB/s</td></tr>"else echo "</td>" echo "<td>-</td><td>-</td>" echo "<td>-</td><td>-</td>" echo "</td></tr>"endifendecho "</table>"# echo "<em>Last updated: `date +%h %d %Y, %H:%M` </em>"# nullstill byte countere/sbin/ipchains -Z Så var det bytes_in, bytes_out, packets_in og packets_out scriptene Disse må tilpasses et hvert system uansett og er nesten identiske så jeg viser bare bytes_in scriptet her: Quote: #!/bin/sh/sbin/ipchains -nvxL | grep $1 | awk '{ print $2 '} | head -n 2 | tail -n 1 OS detection script: Quote: #!/bin/csh -f# This script detects if a remote host on a network is a linux host or a windows host# by using samba and nmap#set windows = Falseset linux = Falseset conclution = Falseif ("$1" == "") then echo "Usage: os ip" exit 1endifset samba = `/home/httpd/bin/security/samba $1`;# samba testif (`echo $samba | grep -i win` != "") then set windows = True set conclution = Trueendifif (`echo $samba | grep -i unix` != "") then set linux = True set conclution = Trueendifif ($conclution == True) then if ($windows == True) then echo "windows" else if ($linux == True) then echo "linux" endifelse set nmap = `/usr/local/bin/nmap -sS -O $1 | grep -i "system guess"` if (`echo $nmap | grep -i win` != "") then echo "windows" else if (`echo $nmap | grep -i linux` != "") then echo "linux" else echo "unknown" endifendif tilslutt sambascriptet som brukes av os detection: Quote: #!/bin/bashif [ "$1" = "" ]; then echo "Usage: SAMBA host" exit 1fiALL=`smbclient -L $1 -N | grep OS | sed s/ OS=//g | sed s/ Server=//g | sed s/Domain=//g | sed s/ /_/g`OS=`echo $ALL | sed s/[[]/ /g | sed s/[]]/ /g | awk '{ print $2 }'`case $OS in (Windows_5.1) SYS="Windows XP";; (Windows_5.0) SYS="Windows 2000";; (Windows*) SYS="Unknown windows version";; (*nix) SYS="Unix";; (*) SYS="Unknown";;esac;echo $SYS Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå