[sage] IPC Discovery Tool?
Gerd Aschemann
gerd at aschemann.net
Wed Mar 28 17:08:31 CEST 2012
Hallo zusammen,
kennt jemand *ein* Tool, mit dem ich die
Interprozess-Kommunikations-Landschaft eines Rechners explorieren
kann? Worum es mir geht, ist,
- z.B. festzustellen, welcher Prozess welche Sockets (oder Named
Pipes, Semaphoren, etc.) geöffnet (LISTEN, CONNECTed, ...) hat und
mir den Interconnectivity-Graphen berechnet.
- Das ganze für einen einzelnen Rechner (gerne aber auch für ein
ganzes Netz, ggf. natürlich mit entsprechenden Agenten)
- Den Graphen grafisch darstellt, möglichst in verschiedenen
Auflösungen (drill down), wie Netz, Subnet, Rechner, Prozess,
Threads? Prozessfamilie (alle Apaches, alle nfsds, ...).
- Den Graphen in einem "leicht lesbaren"/verarbeitbaren Format (XML,
DB, Adjazenzliste als CSV oder was auch immer) abspeichern (und auch
wieder einlesen kann ;-).
- Mir für Standard-Ports (e.g., 22=ssh) die Namen aus z.B. der
/etc/services oder entsprechenden RFCs oder von mir vorgegebene
Applikations-Spezifische Ports dazuschreiben kann.
- Informationen sinnvoll aufbereitet (z.B. interessiert mich bei einem
Java-Programm die benutzte Main-Methode bzw. das Main-jar etc.,
nicht das aufgerufene Executable, sonst habe ich nachher einen
Haufen Prozesse im Graphen, die alle /usr/bin/java heißen).
- Informationen parametrisierbar aggregiert (ich will z.B. nicht die
150 Apache-Worker sehen, sondern nur den Hauptprozess, wenn ein
Shellskript den Hauptprozess startet, will ich nicht das Skript im
Graphen sehen, sondern nur das Programm selbst)
- Evtl. feststellt, was auf einem Port für ein Protokoll gesprochen
wird (z.B. SMTP, RMI, HTTP, IIOP, ...)
- Evtl. um Sub-Protokolle erweiterbar ist (z.B. auch die Prozesse
hinter SunRPCs korrelieren kann).
- Live-Aktualisierung (z.B. alle zehn Sekunden ein Update), eine
"statische" bzw. "Snapshot-Sicht" wäre aber auch schon mal schön.
(Mir fällt bestimmt noch mehr ein, ich lasse es erst mal dabei).
Zielplattform ist aktuell Linux (es darf aber gerne auch auf Windows,
MacOS, Solaris, BSD, ... laufen).
Es ist mir klar, dass es jede Menge Tools gibt, die mir helfen, die
gesuchten Informationen zusammenzusammeln, sowohl in der Innensicht
(ps, netstat, lsof, /proc-FS, rpcinfo, ...) wie auch in der Aussensicht
(nmap, ...). Und natürlich kann man das auch Skripten, aber das möchte
ich mir gerne ersparen. Vielleicht hat jemand einen heißen Tipp?
Habe mich lange nicht mehr mit der Materie beschäftigt, früher gab es
z.B. mal "scotty", damit konnte man ein Netzwerk (SNMP, RPC,
Standard-Ports?) explorieren. Sowas für die Innensicht ist gesucht
(und Netz gerne auch, wie gesagt).
Falls niemand "das Tool" für meine Anforderung kennt, freue ich mich
aber auch über gute Tipps, um eine Toolchain selbst aufzubauen,
insbesondere die Visualisierung ist nicht so mein Thema (schön wäre
natürlich hinterher ein UML-konformes Deployment-Diagramm ;-))).
Vielen Dank,
--
Gerd Aschemann --- Veröffentlichen heißt Verändern (Carmen Thomas)
+49/173/3264070 -- gerd at aschemann.net -- http://www.aschemann.net
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.guug.de/pipermail/sage/attachments/20120328/8a34c3e3/attachment.pgp
More information about the SAGE
mailing list