Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   mySQL sicher machen - SSH oder SSL - Kosten - Anleitung (https://www.delphipraxis.net/180732-mysql-sicher-machen-ssh-oder-ssl-kosten-anleitung.html)

mkinzler 13. Jun 2014 23:40

AW: mySQL sicher machen - SSH oder SSL - Kosten - Anleitung
 
Zitat:

@mkinzler: SSL und SSH sind doch kein VPN! Neben IPSec gibt's da vor zum Beispiel OpenVPN, Cisco VPN, Fritz VPN und mehr.
Dann schau mal, auf was OpenVPN basiert -> SSL ( SSL-VPN) und auch Cisco arbeitet nun primär über SSL und nicht mehr IPSEC (CISCO AnyConnect).

http://openvpn.net/index.php/access-.../overview.html

Und es gibt auch Lösungen mit OpenSSH

https://wiki.archlinux.org/index.php/VPN_over_SSH

Valle 13. Jun 2014 23:59

AW: mySQL sicher machen - SSH oder SSL - Kosten - Anleitung
 
@mkzinler: SSL ist trotzdem kein VPN. ;-)

Java ist auch kein Webserver. Und ein Rechteck kein Quadrat. Klar was ich meine?

Bei deinem Link ist SSH aber auch nicht das VPN direkt, sondern der TUN/TAP Treiber des Linux Kernels. SSH überimmt die Point-to-Point Verbindung zum Remote Server und schiebt die Daten durch einen Tunnel. Du hast also einen Tunnel, aber kein Network. (VPN) (Ich gebe aber zu, dass das Wortklauberei ist.)

@Sir Rufo: Du hast Recht mit dem was du sagst, aber ich habe die Absicht des TE anders verstanden. Deine Technik kann durchaus sinnvoll sein. Aber wenn es nur um die Anbindung externer Standorte an einen MySQL-Server geht, wäre das nicht die Lösung, die ich bevorzugen würde. Zumal man mit halb-öffentlichen Webservices die Angriffsfläche ziemlich breit fächert. Es hängt eben vom Einsatzszenario ab. Lass uns warten was der TE sagt.

baumina 16. Jun 2014 06:49

AW: mySQL sicher machen - SSH oder SSL - Kosten - Anleitung
 
Wow, danke für diese rege Beteiligung mir helfen zu wollen, danke! Wie gesagt sind das für mich noch recht viele Abkürzungen unter denen ich mir bislang nur so ungefähr etwas vorstellen kann.

Ich versuche das gerade mal für mich alles zusammenzufassen.

Lösung 1 : HTTPS
Hierfür müsste ich auf dem Server noch zusätzlich einen Apache o.ä. installieren, der als Web-Server dienen soll. Dienst wie FTP oder mySQL wären dann zwar auch auf dem Server, aber von außen nicht erreichbar. Den Zugriff aus meinem Client-Programm für FTP (im Moment nehme ich eine TALWinInetFTPClient-Komponente dafür) müsste ich dann auf ein HTTP-Zugriff abändern. Der MySQL-Zugriff müsste dann wie geändert werden? Das habe ich nicht verstanden mit dem "PHP-Skript von DevArt", ist das bei der UniDAC-Komponente dabei, muss ich auf der Clientseite den Zugriff ändern? Muss ich für all das Zertifikate erstellen und wenn ja womit erstelle ich die?

Lösung 2 : VPN
Hierfür müsste ich auf dem Server und auf allen Clients VPN (z.B. OpenVPN) installieren? Gibt man dann dafür serverseitig nur die Ports 3306 und 21 frei und auf der Clientseite bleibt alles gleich?

Lösung 3 : Beide Dienste (mySQL und FTP) auf SSL umstellen
Dafür müsste ich mySQL serverseitig umstellen und Zertifikate erstellen. Clientseitig müsste ich dann die Zertifikate auf jedem PC installieren und den mySQL-Zugriff in meinem Programm anpassen. Ebenso für FTP server- und clientseitig umstellen und Zertifikate verteilen, wobei der FTP-Server nicht in meinem Administrationsbereich liegt, das müsste dann die IT-Abteilung meines Kunden übernehmen.

Nochmal kurz zu meinem Ist-Zustand:
- 1 Server, der bei meinem Kunden steht, der Kunde ist groß, sehr groß. Die IT-Abteilung hat den Server meines Wissens nach außen (außer für meinen FTP- und mySQL-Zugriff) komplett abgeschirmt, d.h. er ist sicherlich hinter einer Firewall und was es da sonst noch so alles gibt. Über Juniper habe ich darauf remote-Zugriff um ihn administrieren zu können.
- Mit meiner Client-(Delphi)-Software greifen nun ca. 10 verschiedene Firmen (in ganz Deutschland verteilt) via mySQL (UniDAC) und FTP (TALWinInetFTPClient) auf die Daten zu.
- Ebenfalls läuft meine Client-Software innerhalb der Firma, in der der Server steht und greift ebenfalls auf den mySQL- und FTP-Server zu, allerdings über eine interne IP-Adresse.

mkinzler 16. Jun 2014 07:09

AW: mySQL sicher machen - SSH oder SSL - Kosten - Anleitung
 
Zitat:

Zitat von baumina (Beitrag 1262396)
Wow, danke für diese rege Beteiligung mir helfen zu wollen, danke! Wie gesagt sind das für mich noch recht viele Abkürzungen unter denen ich mir bislang nur so ungefähr etwas vorstellen kann.

Ich versuche das gerade mal für mich alles zusammenzufassen.

Lösung 1 : HTTPS
Hierfür müsste ich auf dem Server noch zusätzlich einen Apache o.ä. installieren, der als Web-Server dienen soll. Dienst wie FTP oder mySQL wären dann zwar auch auf dem Server, aber von außen nicht erreichbar. Den Zugriff aus meinem Client-Programm für FTP (im Moment nehme ich eine TALWinInetFTPClient-Komponente dafür) müsste ich dann auf ein HTTP-Zugriff abändern. Der MySQL-Zugriff müsste dann wie geändert werden? Das habe ich nicht verstanden mit dem "PHP-Skript von DevArt", ist das bei der UniDAC-Komponente dabei, muss ich auf der Clientseite den Zugriff ändern? Muss ich für all das Zertifikate erstellen und wenn ja womit erstelle ich die?

Du würdest nur ein Zertifikat benötigen, für den Server. Ich würde aber bei diesem Szenario eher auf eine Mehrschichtarchitektur setzen.
Zitat:

Lösung 2 : VPN
Hierfür müsste ich auf dem Server und auf allen Clients VPN (z.B. OpenVPN) installieren? Gibt man dann dafür serverseitig nur die Ports 3306 und 21 frei und auf der Clientseite bleibt alles gleich?
Nach aussen gibst Du die Ports überhaupt nicht frei. Per VPN werden die entfernten Rechner in das Netz eingebunden, sie sind dann wie "intern".
Dafür musst du dann aber auch eine VPN-Server installieren, dessen Port nach aussen Freigegeben und an den Server weitergeleitet wird. Oder Du verwendest die VPN-Funktionalität der Firewall ( in Deinem Fall Juniper kann wohl sowohl IPSEC wie SSLVPN). Am Client werden die Daten durch den VPN Client durch den Tunnel ins Netz des Server transportiert.
Zitat:

Nochmal kurz zu meinem Ist-Zustand:
- 1 Server, der bei meinem Kunden steht, der Kunde ist groß, sehr groß. Die IT-Abteilung hat den Server meines Wissens nach außen (außer für meinen FTP- und mySQL-Zugriff) komplett abgeschirmt, d.h. er ist sicherlich hinter einer Firewall und was es da sonst noch so alles gibt. Über Juniper habe ich darauf remote-Zugriff um ihn administrieren zu können.
Also scheinst Du ja schon einen VPN Zugriff zu haben?
Zitat:

- Mit meiner Client-(Delphi)-Software greifen nun ca. 10 verschiedene Firmen (in ganz Deutschland verteilt) via mySQL (UniDAC) und FTP (TALWinInetFTPClient) auf die Daten zu.
Für diesen Fall ist es fraglich, ob der Kunde bereit wäre diesen externen Kunden einen VPN-Zugriff auf ihr Netz zu gewähren. Für dieses Szeneario fällt VPN imho aus. Ich würde FTP auf SFTP (SSH) oder FTPS (SSL) umstellen und den Zugriff über SSL sichern.
Zitat:

- Ebenfalls läuft meine Client-Software innerhalb der Firma, in der der Server steht und greift ebenfalls auf den mySQL- und FTP-Server zu, allerdings über eine interne IP-Adresse.
Dies sollte ja keine Gefahr darstellen.

mkinzler 16. Jun 2014 07:14

AW: mySQL sicher machen - SSH oder SSL - Kosten - Anleitung
 
Zitat:

Zitat von Valle (Beitrag 1262270)
@mkzinler: SSL ist trotzdem kein VPN. ;-)

Nein und IPSEC, PPTP und L2TP auch nicht. Aber mit allen der Protokolle, kann man ein VPN aufbauen.

Zitat:

VPN bedeutet, das eine Teilstrecke eines Netwerkes über einen verschlüsselten Kanal durch eine unsichere "Wolke" erfolgt. Dafür gibt es verschiedene Wege.
-SSL
-IPSEC
-SSH

baumina 16. Jun 2014 07:49

AW: mySQL sicher machen - SSH oder SSL - Kosten - Anleitung
 
Ah ja, da wäre ja noch

Lösung 3 : Beide Dienste (mySQL und FTP) auf SSL umstellen
Dafür müsste ich mySQL serverseitig umstellen und Zertifikate erstellen. Clientseitig müsste ich dann die Zertifikate auf jedem PC installieren und den mySQL-Zugriff in meinem Programm anpassen. Ebenso für FTP server- und clientseitig umstellen und Zertifikate verteilen, wobei der FTP-Server nicht in meinem Administrationsbereich liegt, das müsste dann die IT-Abteilung meines Kunden übernehmen.

Habe das oben mal ergänzt.

mkinzler 16. Jun 2014 07:52

AW: mySQL sicher machen - SSH oder SSL - Kosten - Anleitung
 
Die Zertifikate brauchst Du nur auf den Clients installieren, wenn es sich nicht um "offizielle" handelt, d.h. wenn du diese selbst signierst.
Ich wundere mich sowieso, dass eine große Firma soche Dienste ungesichert zulässt. Oder ist Dein Programm das einzige, welches diese verwendet (und auch dann leigen wohl daten des Unternehmens in den Diensten)

baumina 16. Jun 2014 08:08

AW: mySQL sicher machen - SSH oder SSL - Kosten - Anleitung
 
Ja, der Server ist dort ausschließlich für den Zugriff aus meinem Programm eingerichtet worden. Ich glaube der Server befindet sich dort auch nicht im normalen Firmennetz, sondern irgendwie in einem separaten Netzbereich. Bevor wir jetzt nen riesen Wirbel machen, muss ich das Ganze auch wirklich sehr gut planen, denn sobald das Wort Sicherheitslücke beim Kunden fällt, werden alle sicher sehr panisch.

mkinzler 16. Jun 2014 08:19

AW: mySQL sicher machen - SSH oder SSL - Kosten - Anleitung
 
Dann könntest Du Dir auch überlegen gleich auf eine Mehrschicht-Architektur umzustellen. (DataSnap, RemoteDB, mORMoT, ...)

baumina 16. Jun 2014 08:37

AW: mySQL sicher machen - SSH oder SSL - Kosten - Anleitung
 
Zitat:

Zitat von mkinzler (Beitrag 1262410)
Dann könntest Du Dir auch überlegen gleich auf eine Mehrschicht-Architektur umzustellen. (DataSnap, RemoteDB, mORMoT, ...)

Auch damit habe ich mich noch niemals beschäftigt. Deswegen die laienhafte Frage : Müsste ich dafür komplett alle SQL-Befehle, die ich in meiner Anwendung drin habe, rauswerfen und durch irgendwas anderes ersetzen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:27 Uhr.
Seite 3 von 4     123 4      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz