VPN client(vl auch server-Client) programmieren[C#/Java]

Doomt

Mitglied
Ich will mit einem Freund ein Projekt machen, welches so in der art wie Hamachi wird, also ein client der eine VPN verbindung zu einen Server aufbaut und wir wollen dann auch noch spiele server online stellen, welche benutzt werden können und Forum und so kommt auch noch.

Mein problem ist: Ich weis einfach nicht wie ich in C# oder Java einen Client/Serverclient(falls nötig) programmieren soll, damit dieser auch funktioniert. hab mir schon beispiele mit Rasdial/rasphone angeschaut und weis wie ich damit eine VPN verbindung erstell, doch ich will eine sichere VPN verbindung erstellen und mit dem client verbinden und trennen, ich hoffe man kann mir hier helfen.

PS: es tut mir leid, falls ich im falschen forum bin, ich bin neu und weis nciht richtig wo ich dieses Thema erstellen soll(also hab ich es hier erstellt, kam irgendwie am nächsten).

lg Doomt
 
Oft sind Sicherheitssysteme nicht so sicher, wie sie sich darstellen. Wenn du eine wirklich hackersichere Kommunikation haben willst, solltest du das Filespace-Konzept verwenden; ich weiß allerdings nicht, inwieweit du dabei auf vorhandene Bibliotheken zurückgreifen kannst. Shibboleth ist auch ganz brauchbar, aber nicht ganz so sicher.
Welche Programmiersprache du wählst, ist davon abhängig, welche Art Spiele du zur Verfügung stellen willst, und ob du einen eigenen Rechner als Server verwenden willst (wovon ich einfach mal ausgehe). Vermutlich soll das dann so aussehen, dass sich die Teilnehmer beispielsweise zu einem gemeinsamen Skat-spiel oder ähnlichem zusammenfinden. Ich würde dir dafür Flash oder C# empfehlen.
 
Naja ich will eigentlich einfach ein Netzwerk auf die Entfernugn aufbauen, mit VPN halt. ich brauche nur einen Client der bei der installation eine Verbindung erstellt und über diesen Client kann man sich dann auch verbinden und trennen. Dies wäre ja nicht das schwere, doch wie sieht das serverseitig aus? also nimmt dieser die Verbindung dann an oder müsste ich hier ein Server programm programmieren?

bis jetzt fand ich dies um eine Verbindung zu erstellen:
//----------------------------------------------------------------------------------------------------
this.AllUsersPhoneBook.Open();
RasEntry entry = RasEntry.CreateVpnEntry(
"Test-VPN",
IPAddress.Loopback.ToString(),
RasVpnStrategy.Default,
RasDevice.GetDeviceByName("(PPTP)", RasDeviceType.Vpn)
);
this.AllUsersPhoneBook.Entries.Add(entry);
//-----------------------------------------------------------------------------------------------------
Bin mir nciht sicher ob ich hiermit den richtigen Typ einer Verbindung erstelle...


Hiermit versuche ich auf diese Verbindung zuzugreifen und mcih zu verbinden:
this.Dialer.EntryName = "Test-VPN";
this.Dialer.PhoneBookPath = RasPhoneBook.GetPhoneBookPath(RasPhoneBookType.AllUsers);
this.Dialer.DialAsync(new NetworkCredential("testBenutzer", "testPasswort"));

C# programmieren kann ich, doch in diesem Gebiet habe ich so gut wie keine Erfahrung
Dieses Projekt hat noch zeit, ich programmier es nebenbei...

Die Sicherheit ist zu beginn noch nicht so wichtig, Wegen Sicherheit werde ich mich noch später befassen.
 
Zuletzt bearbeitet:
Du solltest einen zentralen Server verwenden, bei dem man sich einloggt; von einer direkten Nutzer-Nutzer-Verbindung rate ich dir ab. Du musst also ein Serverprogramm schreiben, bei dem man sich anmeldet (der Benutzer kann den Client ja in den Autostart-Ordner legen), und das dann die Verbindungen erstellt und verwaltet. Du könntest zur Kommunikation dann Remote-Objects oder Webservices verwenden. Für was du VPN brauchst, ist mir schleierhaft.
 
Also ich danke euch beiden sehr, ich kannte nur VPN und hab mir gedacht damit funktioniert das sicher. Aber ich hab schon gesehn wegn remote und so..
ich werd mal schauen und eure Tipps befolgen und mich erkundigen und lernen.

Herzlichen Dank
lg Doomt
 
Zurück