ralfkausk
Goto Top

Netzwerkscanner unter UNIX shell

Hallo zusammen

ich möchte ein komplettes Netzwerk scanner, bedeutet ich gebe Start- und Zieladresse vor, das script scannt alles und gibt das Ergebnis in eine datei aus

z.B.: scan.sh 10.0.0.1:10.0.2.255

ich möchte nicht unbedingt direkt eine Lösung bekommen, sondern eher einen Tip wie ich das hinbekommen könnte.

OS: UNIX (Solaris)
shell: ksh

Danke im voraus
Ralf

Content-ID: 62057

Url: https://administrator.de/contentid/62057

Ausgedruckt am: 05.11.2024 um 12:11 Uhr

stplaner
stplaner 22.06.2007 um 09:39:22 Uhr
Goto Top
benutze das tool nmap ist relativ einfach man page

nmap -v ..... 10.0.0.1-254

must dir noch die Richtigen parameter raussuchen
viel spaß
ralfkausk
ralfkausk 22.06.2007 um 09:42:52 Uhr
Goto Top
hmm, keine schlechte Idee, hatte ich auch schon dran gedacht, aber das Problem ist das ich hier an einem Firmensystem sitze auf dem nmap nicht installiert ist.

Gibt es noch andere vorschläge?
cykes
cykes 22.06.2007 um 10:15:51 Uhr
Goto Top
Hi,

was für Ergebnisse soll der Scan denn liefern, nur die existenten/erreichbaren IP Adressen oder
noch weitere Infos? Wenn Du keine Installations- - sprich Adminrechte hast und nichts installieren
darfst, dann solltest Du auch nicht scnannen (dürfen). Weiss der Administrator von Deinem
Vorhaben?

Gruß

cykes
ralfkausk
ralfkausk 22.06.2007 um 10:38:43 Uhr
Goto Top
Also, admin bin ich, ich will nur nix installieren weil das nicht erlaubt ist face-sad

Als Ausgabe hätte ich gerne was in dem Stil:
10.0.0.1 not alive
10.0.0.2 hostname
cykes
cykes 22.06.2007 um 10:45:43 Uhr
Goto Top
Das könntest Du auch mittels eines ping Scriptes machen, wenn Du nicht unbedingt auch noch
offene Ports als Ergebnis haben willst. Eine Google Suche nach "Ping Script Linux" beispielsweise
sollte Dich weiterbringen.
stplaner
stplaner 22.06.2007 um 10:47:16 Uhr
Goto Top
Dann schreib doch ein kleines Script

mit perl oder shell das einen Ping an die rechner schickt, danach eine Überprüfung mit nslookup das du den namen zu dieser ip bekommst. Nur sollte dann die IP auch in deinem DNS drin sein.
broecker
broecker 22.06.2007 um 15:41:23 Uhr
Goto Top
ein anderer Ansatz ohne installieren:
BOSS-CD vom BSI auf Firmen-PC laufen lassen und neben nmap auch gleich mit NESSUS nach vielen weiteren Sicherheitslücken suchen lassen - und Du bist aber wirklich Admin, nich, daß damit das BMI das BSI wg. Verbreitung von Hackertools und mich wg. Vollbart ...
HG,
Mark (nach Diktat geflohen)
ralfkausk
ralfkausk 23.06.2007 um 00:14:44 Uhr
Goto Top
ok, nette idee, aber ...
ich hätte zwar auch 'ne workstation zur verfügung, arbeite aber weils einfacher ist über Exceed auf dem Server bzw. den Clients
Wie ich das mit irgendwelchen windows-tools (z.B. angry ip scanner) machen kann weiß ich schon, da ich aber lernen möchte wie das unter unix funktioniert dachte ich mir ich schreib ein script ...
7lifes
7lifes 25.06.2007 um 07:46:43 Uhr
Goto Top
sorry....

wie will man etwas mit unix machen, wenn man, so wie du es rüber bringst.. überhaupt keine rechte hat etwas im firmennetz zu ändern, bzw. zu installieren und administrieren..
ralfkausk
ralfkausk 26.06.2007 um 10:22:00 Uhr
Goto Top
hääää

was hat das eine mit dem anderen zu tun?
nur weil ich root-rechte habe heißt das noch lange nicht das ich alles machen kann was ich will
die firma hat mir die rechte nicht gegeben damit wie'n irrer fremdsoftware installiere, sondern das system administriere
es gibt hier so was wie eine "IT Policie" an die ich mich halten muß
das ist kein 10 mann unternehmen sonder eher in der hhunderter größenordnung!

und was ist unklar an meiner frage?
ich möchte ein script schreiben (ksh) das einen von mir bestimmten adressbereich abgrast
script.sh startadresse endadresse

als ausgabe möchte ich folgendes bekommen
IP/hostname1 is alive
IP/hostname2 is dead
IP/hostname3 is alive
IP/hostname4 is alive

So, und jetzt noch mal die frage: wie kriege ich das hin?
was muß ich machen damit mein scrip den adressbereich durchläuft und nicht nur eine adresse scannt?
broecker
broecker 26.06.2007 um 11:17:30 Uhr
Goto Top
tja, was kann man jetzt noch ohne sich selbst zu ärgern raten, cykes hat - Lob: wie immer - Herrn Google empfohlen, eine Schleife for sollte wohl eine Variable hochzählen können, der ping die Variable mit ausgeben hinter 192.168.1., die Antwort sollte z.B. in eine Datei kommen aus der mit grep wieder nach ms gesucht wird - o.ä. - das ganze m.e. dann cron-gesteuert und mit mail admin@example.com - aber installieren wollten wir ja nicht face-wink
die "eingebauten" Befehle bekommt man mit: man "Name der Shell"

also entweder das fertige Skript googlen oder die 5 Befehle selber zusammenschreiben - das Wissen ist recht universell - die ksh nicht zu exotisch.
Fertige Skripte sind bei mir kostengünstig zu erwerben face-wink
ralfkausk
ralfkausk 28.06.2007 um 08:41:53 Uhr
Goto Top
So, nachdem mir hier nicht wirklich jemand helfen konnte hab ich ein wenig ausprobiert und das ist dabei rausgekommen. Das Skript ist allerdings noch nicht fertig, es fehlt noch eine übersichtliche, vernünftige Ausgabe...

#!/bin/bash
  1. scan ip-range
###############################

if [ -f iprange ] ; then
rm -rf iprange
fi
if [ -f iprange_output ] ; then
rm -rf iprange_output
fi

clear
echo ""
echo " use CTRL+C to abort "
echo ""
echo "scan your local network ..."
echo "enter subnet e.g.: 19.187.240 :"
read subn
  1. echo ""
echo "enter start ip :" #einagbe letztes oktett
read sip
  1. echo ""
echo "enter end ip :" #einagbe letztes oktett
read eip
echo ""
#
  1. unalias rm
#
echo "- subnet to scan: ${subn}"
echo "iprange: ${subn}.${sip} - ${subn}.${eip}" | tee tmpfile
for i in $(seq ${sip} ${eip}); do echo ${subn}.$i >> iprange ; done

while read file ; do
ping $file 1 1>&2 >> iprange_output
done < iprange
cat iprange_output
rm -rf tmpfile
exit 0
cykes
cykes 28.06.2007 um 11:05:57 Uhr
Goto Top
So, nachdem mir hier nicht wirklich jemand
helfen konnte [...]

Also entschuldige mal, wenn Du zu faul zum Lesen bist, dann kann dir hier auch keiner helfen,
ich hatte Dir gesagt, was Du bei Google anfragen musst, und die ersten 3 oder 5 Treffer haben
Scriptbeispiele zu Hauf geliefert. Man muss ja nicht jedes Mal das Rad neu erfinden.

#!/bin/bash

Das ist aber keine ksh! Ist bash auf dem System überhaupt installiert!?