[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