Verbindung zu MySQL

Status
Nicht offen für weitere Antworten.

Spoocky

Aktives Mitglied
Ich habe eine Anwendung geschrieben, die Verbindung zu einer MySQL-Datenbank aufnimmt. Solange ich intern im lokalen Netz meine Anwendung starte ist alles ok.

Möchte ich nun von außerhalb dieses lokalen Netzes, sprich vom Internet aus, von meiner Anwendung die Verbindung zur MySQL-Datenbank nutzen, kann keine Verbinung hergestellt werden, weil die Firewall des lokalen Netztes den Port für die MySQL-Zugriffe blockiert, was aus sicherheitstechnischen Gründen richtig ist.

Jetzt stellt sich mir die Frage, ob man in einer Anwendung so eine Art 'tunnelling' programmieren kann, sodass ich über HTTP eine Verbindung zur MySQL-Datenbank herstellen kann?
 

Dante

Bekanntes Mitglied
wenn es aus sicherheitsgründen gut ist, den port zu sperren, warum ist ein Tunnel dann die Lösung?
 
T

tuxedo

Gast
;-) Das ist was dran.

Auf der anderen Seite: Die meisten Webspaces bieten PhpMyAdmin an. Das ist dann nicht viel sicherer wie JPMDBC.

An HTTPS Support wird jedoch gerade gearbeitet.
 

AlArenal

Top Contributor
alex0801 hat gesagt.:
Auf der anderen Seite: Die meisten Webspaces bieten PhpMyAdmin an. Das ist dann nicht viel sicherer wie JPMDBC.

An HTTPS Support wird jedoch gerade gearbeitet.

Und jeder halbwegs gescheite Hoster lässt phpMyAdmin nur über HTTPS laufen. Hier ist auch die Protokollierung von Zugriffen leichter und damit die Identifizierung und Rückverfolgung von evtl. Eindringversuchen.
 
T

tuxedo

Gast
Deswegen wird ja auch am HTTPS Support gebastelt ;-)

Zur Protokollierung: Apache loggt doch HTTP genau wie HTTPS? Wo ist da der Unterschied? Sicherer ist HTTPS, keine Frage. Aber was daran besser sein soll bei der Rückverfolgung und Protokollierung musst du mir bitte erklären.

- Alex
 

Dante

Bekanntes Mitglied
https ist vorallem noch langsamer. Hast du da schon benchmarks gemacht? das wird doch langsam ohne ende, oder?
 
T

tuxedo

Gast
Nein hab ich nicht. Ich wüsste jetzt auf Anhieb auch nicht wie ich's anders sicherer machen soll und die performance auch nicht drunter leidet.
 

AlArenal

Top Contributor
Dante hat gesagt.:
https ist vorallem noch langsamer. Hast du da schon benchmarks gemacht? das wird doch langsam ohne ende, oder?

Du bist auch ein lustiger Vogel. Im ersten Satz stellst du mal einfach ne Behauptung als Tatsache hin und danach fragst du andere, ob diese Benchmarks gemacht haben, um deine Behauptung zu stützen.
 

Dante

Bekanntes Mitglied
ja, wenn man schon mal etwas mit ssl und http zu tun hatte dann weiss man, dass da ne menge mehr last erzeugt wird (vorallem dioe handshakes müssen ordentlich gemacht werden, da diese ewig viel overhead erzeugen). Dass jeder application server echte sql-verbindungen schon poolt um keinen overhead mit dem aufmachen neuer verbindungen erzeugen sollte wohl auch bekannt sein. Ob das tunneln über ein weiteres protokoll inkl. serialisierung dann wirklich komplett ohne geschwindigkeitsnachteil abgeht, halte ich für deutlich unwarscheinlicher als das gegenteil.

Insofern gebe ich dir den lustigen vogel gerne zurück. Wenn ich jemand wirkluch hinsetzt um das zu schreiben wird man sich doch wohl mal erkundigen dürfen, ob er bedacht hat, dass das deutlich langsamer werden könnte.

Da du dich in diesem Thread auch nich wirklich mit Ruhm beckleckert hast, solltest du vielleicht etwas kürzer treten. Wir sind doch alle erwachsen, oder?

@Alex: Wie ist denn überhaupt der Plan? Was soll hinter dem Http-Server sitzen? Das müsste ja schon was mit state sein, also zB. nen servlet, was die Verbindungen offen halten kann. Und das läuft wohl auf den wenigsten billig-hostern... Wenn ich aber eh root hab um einen servlet-container zu installieren, dann kann ich dass doch auch mit nem einfachen socket-proxy machen? Oder halt den Mysql-Server für eine IP nach aussen aufmachen, notfalls per Firewall..
 
T

tuxedo

Gast
@Dante:

Das ganze soll auf 0815 Standardservern laufen. Wenn du dir die müge gemacht hättest mal die Projektseite zu öffnen, dann wüsstest du dass ich für die Serverseite ein kleines, aber feines PHP-Script nutze.

Ich bin mir durchaus bewusst dass das nur suboptimal ist, aber um "der breiten Masse" zu ermöglichen so eine DB zu benutzen und den Einsatz so einfach wie möglich zu machen, gabs für mich erstmal keinen anderen Weg. Die Performance OHNE ssl kann sich bereits jetzt schon sehen lassen (dank gzip geht jetzt noch mehr durch die Leitung). Die Geschwindigkeit ist quasi nur noch von der Downloadgeschwindigkeit des Clients abhängig.

Das offen halten der Verbindung geht mit PHP leider nicht. Dafür ist das Ding aber total easy zu benutzen. Der einzigtse, bis jetzt für mich gravierende Nachteil: Die Prepeared Statements haben keinen Geschwindigkeitsvorteil (die leben ja nur während einer Verbindung).

Das verwendete Protokoll produziert absolut minimalen Overhead (muss mal noch den Prozentualen Anteil ausrechnen...).

Dass es noch andere Wege gibt ist mir klar (rootserver, eigener tunnelserver, vpn, ssh, ....). Aber die wenigsten haben soetwas. Und diejenigen die sowas haben, setzen dann doch lieber gleich den originalen MySQL Connector/J ein und schauen selbst wie sie die Verbindung herstellen.

Zu dem Plan "was soll hinter dem Server sitzen" ... Naja, das Projekt ist schon soweit dass man es verwenden kann. D.h. der Plan ist nicht nur gemacht, sondern auch ausgeführt.

Es fehlt nur noch eine Verschlüsselung und etliche Methoden (die von den meisten JDBC-Anfängern vermutlich eh nie genutzt werden) die ausimplementiert werden müssen.

- Alex
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M RMI direkte Verbindung mit einer Mysql datenbank Netzwerkprogrammierung 13
X Kann ich einen Client/Server verbindung hinkriegen die mir alle paar Sekunden die aktuellen Daten per Realtime zuschickt ? Netzwerkprogrammierung 9
F Verbindung zu einem LDAP Server über Java Netzwerkprogrammierung 4
D Verbindung zu Geräten mit gleicher IP aber in unterschiedlichen VLans aufbauen Netzwerkprogrammierung 2
M Socket Socket lehnt Verbindung ab Netzwerkprogrammierung 3
IAmFloppy Socket Nachstellen der Verbindung Netzwerkprogrammierung 6
M Socket Verbindung Matlab(Server) Java(Client) Netzwerkprogrammierung 1
M Socket peer to peer Verbindung zwischen Java und Matlab Netzwerkprogrammierung 0
S Bluetooth Verbindung zwischen Android app und Raspberry Pi 3 Netzwerkprogrammierung 1
S Peer2Peer Verbindung trotz NAT Netzwerkprogrammierung 2
T VPN-Verbindung über Java Netzwerkprogrammierung 4
Aruetiise Socket Verbindung Überprüfen Netzwerkprogrammierung 18
F Socket Verbindung mit Verschlüsselung und Authentifierzung Netzwerkprogrammierung 1
F Probleme mit Connection Reset bei Telnet Verbindung Netzwerkprogrammierung 1
U Client Soap Verbindung wieder schließen Netzwerkprogrammierung 0
M Verbindung zwischen zwei Pc in dem Selben Netzwerk Netzwerkprogrammierung 8
P Socket Socket-Verbindung Input sehr langsam Netzwerkprogrammierung 1
S FTP Verbindung zu einem BS2000 Großrechner mit Commons Net Netzwerkprogrammierung 0
F Einfache Socket Verbindung Netzwerkprogrammierung 2
F Verbindung zwischen Server und handy Netzwerkprogrammierung 1
M TCP Verbindung Byte-weise lesen? Netzwerkprogrammierung 5
Shams Problem mit Eventbus in Verbindung mit Server Netzwerkprogrammierung 0
Z Verbindung zwischen 2 Rechnern über ServerSockets nicht möglich Netzwerkprogrammierung 3
F TCP Client, verbindung aufrecht halten Netzwerkprogrammierung 0
I Swing hängt sich auf bei Verbindung zum Server Netzwerkprogrammierung 3
P RMI Hohe CPU Last RMI Verbindung Netzwerkprogrammierung 4
J Pc - Handy Verbindung? Netzwerkprogrammierung 3
M Socket 2x Proxy multithread-server mit Cross Verbindung Netzwerkprogrammierung 0
T Verbindung zum Server fehlgeschlagen Netzwerkprogrammierung 7
D Einfache Verbindung zu Linux Server und Datei auslesen Netzwerkprogrammierung 13
B Nach Verbindung gleich ObjectStream empfangen Netzwerkprogrammierung 1
R Dauerhaft offene Socket-Verbindung? Netzwerkprogrammierung 3
P server - client verbindung (anfänger) Netzwerkprogrammierung 8
G Socket Socket verbindung für Chat System Netzwerkprogrammierung 3
S Socket Socket Verbindung wiederherstellen Netzwerkprogrammierung 16
T Socket Bidirektionale Verbindung mit Sockets Netzwerkprogrammierung 8
N (TCP) Verbindung ohne Portforwarding Netzwerkprogrammierung 12
N Lan-Verbindung erstellen Netzwerkprogrammierung 2
H Socket Java Chat - Verbindung zum Server fehlgeschlagen. Netzwerkprogrammierung 5
A TCP über UDP Verbindung? Netzwerkprogrammierung 10
D TCP Verbindung (Java Client und Visual Basic Server) Netzwerkprogrammierung 12
E Verbindung zu SQL-Datenbank auf einem Server Netzwerkprogrammierung 13
S Socket Applet Client bekommt keine GLOBALE Verbindung zum Server Netzwerkprogrammierung 25
D Server Client Verbindung - Unexpected End of File - Invalid HTTP Response Netzwerkprogrammierung 4
V NullPointerException bei Verbindung zu RabbitMQ-Server Netzwerkprogrammierung 4
B FTP commons net verschlüsselte verbindung Netzwerkprogrammierung 11
C Verbindung zu einem Hostrechner über das Internet herstellen Netzwerkprogrammierung 15
T Socket Client versucht zyklische Verbindung zum Server Netzwerkprogrammierung 4
X Über eine Socket-Verbindung Arrays übergeben Netzwerkprogrammierung 5
P Socket Verbindung über das Internet Netzwerkprogrammierung 2
A Socket Socket Verbindung unterbrochen --> keine Exception Netzwerkprogrammierung 7
S SVNKit - Verbindung zum Repository trennen? Netzwerkprogrammierung 2
P Socket neuer Client - neue(r) Socket/Verbindung geöffnet? Netzwerkprogrammierung 6
M Problem mit Socket-Verbindung Netzwerkprogrammierung 2
X SSH Verbindung zu Remote Datenbank Netzwerkprogrammierung 2
S TCP Verbindung zu Beamer Netzwerkprogrammierung 8
Y server client socket verbindung übers internet aufbauen Netzwerkprogrammierung 8
M ganymed-ssh2.har: ftp-Verbindung über ftp-Proxy Netzwerkprogrammierung 2
D Verbindung zw. zwei Rechnern funzt nicht Netzwerkprogrammierung 5
F Socket Socket Verbindung Netzwerkprogrammierung 10
E Server schließt einfach verbindung? Netzwerkprogrammierung 6
Shoox VPN-Verbindung für Datenbankzugriff Netzwerkprogrammierung 2
X Socket Handy/PC Verbindung unterscheiden Netzwerkprogrammierung 18
O Telnet verbindung Netzwerkprogrammierung 4
Dit_ UDP Verbindung durch Proxy Netzwerkprogrammierung 4
H Socket Client server,verbindung läst sich nicht abbauen&code optimierung Netzwerkprogrammierung 3
V Verbindung zweier Rechner über das Internet mit Sockets Netzwerkprogrammierung 8
M HTTP HTTPS-Verbindung mittels Java und Javascript Netzwerkprogrammierung 2
N Verbindung zu Fritzbox Socket/Telnet ??? Netzwerkprogrammierung 5
multiholle RMI Verbindung Linux <-> Windows Netzwerkprogrammierung 4
S netzwerkprotokoll auf basis einer tcp verbindung erstellen Netzwerkprogrammierung 9
S SSH Verbindung mit j2ssh Netzwerkprogrammierung 3
H Socket Mit Applet Verbindung zu eigener Website aufbauen Netzwerkprogrammierung 4
H Socket Socket verbindung mit einem TeamSpeak2 Server Netzwerkprogrammierung 5
H TCP verbindung hinter NAT Netzwerkprogrammierung 28
G TCP SSL Verbindung Netzwerkprogrammierung 3
P Java / My-Sql Verbindung herstellen Netzwerkprogrammierung 6
W Socket Shellscript über ssh Verbindung aufrufen Netzwerkprogrammierung 14
N Socket Verbindung wird immer verweigert Netzwerkprogrammierung 5
Dit_ UDP-Verbindung, DatagramPakete Netzwerkprogrammierung 3
S Socket verbindung trennen Netzwerkprogrammierung 3
D Verbindung zu einem Server - POST Netzwerkprogrammierung 2
musiKk SSL-Verbindung mit Client-Zertifikat (Private Key) scheitert Netzwerkprogrammierung 13
D Socketprogrammierung Verbindung C++=>Java Netzwerkprogrammierung 23
B Probleme mit FTP verbindung Netzwerkprogrammierung 22
T Mac Adresse über Socket Verbindung abfragen? Netzwerkprogrammierung 9
L SSL Verbindung aber Server wird erst im Programm festgelegt Netzwerkprogrammierung 4
L Https Verbindung wird aus jar heraus nicht aufgebaut Netzwerkprogrammierung 12
M Verbindung über Proxy// Problem mit Outputstream bei URLConn Netzwerkprogrammierung 5
O TCP Socket-Verbindung überprüfen Netzwerkprogrammierung 4
F Peer to Peer Verbindung zwischen mehreren Clients? Netzwerkprogrammierung 8
F applet verbindung zum server Netzwerkprogrammierung 6
T Verbindung über das Internet Netzwerkprogrammierung 2
G Verbindung zwischen PC und Handy Netzwerkprogrammierung 10
B Bibliothek, um Eckdaten zur Internet-Verbindung rauszufinden Netzwerkprogrammierung 2
C Verbindung zwischen 2 Computern herstellen Netzwerkprogrammierung 12
G USB-Verbindung herstellen Netzwerkprogrammierung 3
O SSH-Verbindung (trilead-ssh2-build212) Netzwerkprogrammierung 2
K Verbindung mit Unix Server aufnehmen Netzwerkprogrammierung 2
J close() Socket Verbindung nötig ? Netzwerkprogrammierung 3

Ähnliche Java Themen

Neue Themen


Oben