Verbindung zu einem VPN ohne installation von client-software
Ich muss auch mal schreiben, software zum herstellen einer Buchse mit einem bestimmten server befindet sich in einem Cisco-VPN. Ich schreib einfach meine software, als gäbe es kein VPN (unter Verwendung von standard-sockets-Bibliothek). Wenn es Zeit ist, um dieses Programm ausführen, die ich manuell mit dem VPN verbinden die client-software auf meinem computer installiert, führen Sie das Programm selbst.
Wäre es jedoch wünschenswert, um die software zu schreiben, um die Vorteile einer spezialisierten socket-Bibliothek in der Lage die Kommunikation über das VPN direkt, ohne installierte client-software.
Hier einige Java-code illustriert die Funktionalität, die ich möchte:
String vpnHost = ...;
String vpnUser = ...;
String vpnPassword = ...;
VPNConnection vpnConnection = new CiscoVPNConnection(vpnHost, vpnUser, vpnPassword);
String serverHost = ...;
int serverPort = ...;
Socket socket = vpnConnection.openSocket(serverHost, serverPort);
Ist es möglich festzustellen, wie eine Verbindung zu einem VPN ohne Installation einer client-software?
InformationsquelleAutor Adam Paynter | 2009-05-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese hängt davon ab, wie der VPN server konfiguriert ist.
Meisten VPN-Produkte ist die Verwendung von IPSEC, ein standard-Protokoll für die Verschlüsselung von TCP/IP-verbindungen. Die meisten Produkte nutzen außerdem die ISAKMP Internet Security-Architektur-Key-Management-Protokoll, auch ein standard, der zum einrichten der Sitzung. Source-code für IPSEC und ISAKMP ist leicht erhältlich, und kann bereits auf Ihrem system installiert sein.
Jetzt für die schlechte Nachricht: obwohl alles, was ich bereits erwähnt habe ist der standard, den Authentifizierungsschemas, die verwendet werden können, mit ISAKMP sind fast alle proprietär. Die beiden "standard" - Authentifizierungsschemas sind pre-shared key) und X. 509-Zertifikate. Wenn der VPN-server ist so konfiguriert, dass entweder von diesen, dann haben Sie eine chance. Ansonsten kann man nicht wirklich verwenden, das VPN, das Protokoll ist wirklich geschützte und fast unmöglich, zurückentwickeln, wie die Authentifizierung Gespräch verschlüsselt ist.
Einen sehr viel einfacheren Weg: brauchen Sie wirklich ein VPN, oder gibt es eine Möglichkeit, Sie können tunnel über SSL? Ich denke, Java SSL unterstützt; Sie können einfach erstellen Sie die secure socket Sie brauchen, und gehen von dort aus.
Wenn Sie wissen, was client-system Sie verwenden, dann halten Beschuss aus aufrufen, der Cisco-VPN-client für das system.
Ansonsten haben Sie zu replizieren, was eine VPN-client. Der VPN-client die Authentifizierung durchführt und die Einrichtung einer Sitzung mit ISAKMP und installiert, das Ergebnis in den kernel zu erstellen, die die VPN-Verbindung. ISAKMP-Implementierungen sind verfügbar; Sie müssen nur herausfinden, welche Authentifizierung verwendet wird und versuchen Sie dies einrichten. An welcher Stelle haben Sie geschrieben, Ihre eigenen VPN-client.
InformationsquelleAutor
Nutze ich das vpnc-Paket auf linux, um die Verbindung zu meiner Firma Cisco VPN, da wir nicht über einen kompatiblen linux-client. vpnc ist in c geschrieben, obwohl, so müssen Sie einen port.
InformationsquelleAutor
Lesen Sie die Offiziellen cisco-doc und danach können Sie Erstellen Sie eine bat-Datei mit diesen Daten:
vpnclient connect [name der Verbindung] pwd [Kennwort]
und die Verbindung zu trennen.
Zählen es zu Ihrer java Programm:
- Laufzeit.getRuntime().exec("cmd /c start [Pfad zur bat-Datei]");
InformationsquelleAutor