Laden...

Remote Administration Tool / Fernwartungsprogramm

Erstellt von Speedy_92 vor 11 Jahren Letzter Beitrag vor 11 Jahren 1.557 Views
S
Speedy_92 Themenstarter:in
89 Beiträge seit 2007
vor 11 Jahren
Remote Administration Tool / Fernwartungsprogramm

Hallo Leute,
ich habe mich die letzten paar Wochen mit Netzwerkprogrammierung beschäftigt und ein wenig mit Server-Client Anwendungen herumgespielt. Ich habe ein laienhaftes Fernwartungsprogramm geschrieben, dass Nachrichten versenden konnte, das Dateisystem darstellen und Screenshots erstellen konnte. Nun werde ich das ganz von Grund auf neu beginnen und es ein wenig professioneller gestalten. Dazu habe ich ein paar Fragen.

Einige der von mir angestrebten Funktionen werden sein:
-Dateisystem
-Remote Desktop + Screenshots
-System-Infos
(-Chat)
(-Keylogger)
-Dateien hoch- und herunterladen
-Prozessmanager
-Remote-Konsole
-Registry-Editor

Ich bin recht zuversichtlich, dass dies alles zu realisieren ist.
Es wird so ausfallen, dass jeweils ein Server nur von einem Clienten gesteuert werden kann und er dann "locked" wird, damit kein anderer darauf zugreifen kann. Ein Client kann aber mehrere Server steuern. Dort fängt aber schon das erste Problem an. Wäre es schlauer, das steuerne Element als Server oder Clienten auszurichten? Denn auf der Seite des Servers wird es sicher Probleme mit der Portfreigabe im Router geben, wenn dort eine Firewall vorsitzt. Das ist eigentlich kein Problem und muss ja schließlich nur eingerichtet werden, aber wie herum würdet ihr das realisieren?

Der Datentransfer soll natürlich verschlüsselt werden. Reicht dazu eine RSA-Verschlüsselung aus? Oder gibt es eine effektivere und elegantere Methode die Daten zu verschlüsseln? Sollte der Benutzer selber für den Schlüssel verantwortlich sein oder wäre es vielleicht die bessere Wahl, wenn die Mac-Adresse oder ähnliches als Schlüssel benutzt wird?
Ist es wirklich notwendig alles zu verschlüsseln oder nur interessant, wenn Passwörter oder ähnliche wichtige Informationen übertragen werden?

Als Protokoll werde ich für Dateientransfer und ähnliches TCP benutzen. Ist es empfehlenswert für den Remotedesktop zum Beispiel UDP zu benutzen, da man hier ja nur den Bildschirm sieht und es nicht so entscheidend ist, wenn ein paar Informationen auf dem Weg verloren gehen.

Ist es sehr ressourcenfressend, wenn ich für jede neue Verbindung einen neuen Thread starte? Ich kann es sicherlich so realisieren, dass ich nur wenige Threads für alles benötige, allerdings würde es das ganze wahrscheinlich unübersichtlicher in der Programmierung machen.

Ich denke das war es erst einmal.

Gruß,
Speedy_92