Administrations-Daemon horcht an Ports nach Signalen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Gimli
Beiträge: 57
Registriert: 02.08.2004 17:45:37

Administrations-Daemon horcht an Ports nach Signalen

Beitrag von Gimli » 13.02.2006 18:09:28

Guten Tag

Ich habe ein wenig ein spezielles Problem.

Ich kann bereits C (nicht perfekt und alles, aber ich bin da lernfähig), Python kriege ich auch hin, bash ist auch kein grossen Problem. Jetzt habe ich ein relativ komplexes Unterfangen.

Ich habe einen autonomen Computer im Netzwerk. Dieser arbeitet selbständig. Jetzt gibt es ein paar Dinge (zB Computer herunterfahren) welche ich erledigen möchte, ohne dass ich mich immer zuerst per ssh einloggen muss.
Ich dachte daran, einen Daemon zu programmieren, welcher auf einem (oder mehreren) Port(s) nach Signalen horcht. Trifft ein entsprechendes Signal ein, führt er den entsprechenden Befehl aus.

Jetzt zu den konkreten Problemen:
-Wie kann ich dem Daemon einen (mehrere) Ports zuweisen, auf welchem er die eintreffenden Signale abfängt?
-Wie kann ich (auf einem anderen Computer) ein entsprechendes Signal versenden (da reicht mir der Bash-Befehl, im Manual nachschlagen anch Argumenten kann ich selbst).

-Ich denke, dass der Daemon wohl am besten in C verfasst sein soll. Oder gibt es auch geeignete Bash-Programme, die das erledigen können?

Wenn jetzt einer von wegen Sicherheit argumentieren will: Der Computer ist nicht direkt am Internet, er hängt nur am internen Nertzwerk. Den Port und die Signale wird niemand erfahren, und selbst wenn, es ist egal, wenn der Computer von jemand fremdem heruntergefahren wird.

Ich will das vor allem realisieren, damit ich etwas daraus lerne, und um die Administration der Kiste zu vereinfachen.

Ich hoffe, jemand kann mir das erklären, oder mir Links zu weiterführenden Informationen anbieten.

Ich danke im Voraus.

mfg Gimli

Benutzeravatar
herrchen
Beiträge: 3257
Registriert: 15.08.2005 20:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Re: Administrations-Daemon horcht an Ports nach Signalen

Beitrag von herrchen » 13.02.2006 18:37:34

Gimli hat geschrieben:ohne dass ich mich immer zuerst per ssh einloggen muss.
du kannst "ssh" auch ein command mit auf den weg geben.
wenn du auf dem zielrechner "sudo" konfigurierst, kannst du auch befehlle ausführen, die root rechte erfordern.
mit der pubkey authentifizierung brauchst du nicht einmal ein passwort einzugeben.

herrchen

roli
Beiträge: 3174
Registriert: 10.09.2003 17:39:58

Beitrag von roli » 13.02.2006 19:21:07

Hi,

wenn Sicherheit nicht die Rolle spielt, haette ich vielleicht was.
Ich habe vor einiger Zeit mal ein Tool namens UDPKIT gefunden http://www.sylvain-nahas.com/ (ist aber seit dem scheinbar nicht weiterentwickelt worden).
Gedacht ist es wohl um Nachrichten von einem Rechner zum anderen zu senden, aehnlich "net send". Du musst die Nachrichten aber nicht in einem Popup anzeigen, sondern kannst sie auf dem Zielrechner, von dem Daemon auswerten lassen und entsprechende Befehle daraufhin ausführen.
Roland


"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Re: Administrations-Daemon horcht an Ports nach Signalen

Beitrag von gms » 13.02.2006 20:53:52

Gimli hat geschrieben: -Wie kann ich dem Daemon einen (mehrere) Ports zuweisen, auf welchem er die eintreffenden Signale abfängt?
http://www.unixguide.net/network/socketfaq/4.4.shtml
Gimli hat geschrieben: -Wie kann ich (auf einem anderen Computer) ein entsprechendes Signal versenden (da reicht mir der Bash-Befehl, im Manual nachschlagen anch Argumenten kann ich selbst).
schau dir einmal "netcat" an, damit lassen sich solche Dinge leicht realisieren

Code: Alles auswählen

-Ich denke, dass der Daemon wohl am besten in C verfasst sein soll. Oder gibt es auch geeignete Bash-Programme, die das erledigen können?
Für so ein einfaches Programm würde ich eher Perl verwenden, aber man sollte auch zumindest einmal in seinem Leben einen Daemon in C geschrieben haben :)
http://www.enderunix.org/documents/eng/daemon.php


Gruß
gms

Gimli
Beiträge: 57
Registriert: 02.08.2004 17:45:37

Beitrag von Gimli » 14.02.2006 18:18:56

Vielen Dank für die Antworten, insbesondere die Tipps von gsm haben mich weitergebracht.

@gsm
Perl kann ich eben noch nicht mal ansatzweise, klar könnte ich es relativ einfach lernen (da es nicht die erste Sprache ist) aber es ist den Aufwand (nur für einen Daemon) nicht wert.

mfg Gimli

Antworten