JVerein auf Mac OS mit MySQL DB (SSL)

Hier können die JVerein-Frischlinge ihre Fragen stellen.

Moderator: heiner

Antworten
wpein2m
Beiträge: 134
Registriert: Freitag 7. Oktober 2016, 18:58
Verein: 1. TC Sankt Augustin
Mitglieder: 320
JVerein-Version: 2.8.15
Betriebssystem: Windows 10 / MacOS

JVerein auf Mac OS mit MySQL DB (SSL)

Beitrag von wpein2m »

Wir nutzen JVerein auf diversen PCs unter Linux und Windows, die zentrale Datenbank ist MySQL (Anbindung per TLS/SSL), die auf einem Raspberry läuft.
Das läuft im wesentlichen ohne Probleme.

Nun möchte ich morgen für ein Vorstandsmitglied JVerein mit MySQL Anbindung (ebenfalls per SSL/TLS) auf einem MAC OS X 10.11.6 (El Capitan) mit JAVA 8 von Oracle in Betrieb nehmen - gibt es jemanden, der diese Kombination schon einmal erfolgreich implementiert hat?

Ich denke JVerein sollte laufen (nach allem was ich in den diversen Foren gelesen habe), aber ich habe keinen einzigen Beitrag gefunden zum Thema: MAC OS und Anbindung an eine remote MySQL-Datenbank (erst recht nicht per TLS).

Wie konfiguriert man das bzw. in welches directory muss ich die Datei "de.jost_net.JVerein.rmi.JVereinDBService" stellen?

Für Tipps/Hinweise/Kommentare bin ich sehr dankbar!

Gruß

Wolfgang
Benutzeravatar
heiner
Administrator
Beiträge: 4509
Registriert: Freitag 30. Oktober 2009, 16:44
JVerein-Version: aktuelle Entwicklerversion
Betriebssystem: W10
Kontaktdaten:

Re: JVerein auf Mac OS mit MySQL DB (SSL)

Beitrag von heiner »

.jameica/jverein/cfg

Heiner
PS: Denkt daran, eure Vereine unter viewforum.php?f=3 vorzustellen.
wpein2m
Beiträge: 134
Registriert: Freitag 7. Oktober 2016, 18:58
Verein: 1. TC Sankt Augustin
Mitglieder: 320
JVerein-Version: 2.8.15
Betriebssystem: Windows 10 / MacOS

Re: JVerein auf Mac OS mit MySQL DB (SSL)

Beitrag von wpein2m »

Hallo zusammen,
ich kann jetzt bestätigen, dass die Kombination von JVerein mit Version 2.8.15 auf einem Mac OS X 10.11.6 (El Capitan) und einem entfernten MySQL-Server funktioniert. Der MySQL-Server ist per TLS-Verschlüsselung angebunden.

Beim Einrichten mussten wir diverse Probleme überwinden, waren letztlich aber erfolgreich. Da der Nutzer des MacBook Jameica + Hibiscus selbst installiert hat, kann ich nicht für alle Informationen garantieren. Ich habe mich per Teamviewer eingewählt und wir haben dann gemeinsam JVerein in Betrieb genommen.

Wesentliche Probleme waren die folgenden:

1. JAVA - es klappte zwischendurch (JVerein lief noch ohne Anbindung an SQL), dann mal wieder nicht. Final lief es erst, nachdem wir Apples JAVA 6 komplett vom MacBook deinstalliert/gelöscht und danach Oracles JAVA 8 eingespielt haben.

2. Die aktuelle JVerein-Version 2.8.15 "vertrug" sich anfänglich nicht mit dem MySQL-Server (noch auf V2.8.13). Da ging die Verbindung zum SQL-Server noch, aber die notwendigen SQL Alter table Kommandos wurden wegen unzureichender user rechte abgewiesen. Ich habe daraufhin den MySQL-Server mit einem anderen PC auf V2.8.15 upgegraded. Das war ein hausgemachtes Problem wegen unterschiedlicher Versionen (hätte mal wohl vermieden, wenn wir auf dem MacBook von Anfang an auch V2.8.13 installiert hätten, diese Version wurde aber im JVerein-repository nicht angeboten, hätte man separat besorgen müssen).

3. Die grösste Hürde war die Datei "de.jost_net.JVerein.rmi.JVereinDBService" (Anbindung an SQL) und deren location. In Jameica findet man unter "plugins" die location, in der JVerein installiert ist. Dort muss im directory cfg diese Datei platziert werden (der MacBook user hatte einen speziellen Ordner benutzt!!!). Komischerweise gabe es auch eine Ordner programme/cfg, in welchem auch Jameica-Dateien vorhanden waren. Zur Sicherheit haben wir diese Date auch dorthin kopiert (war wohl überflüssig). Entscheidend ist aber scheinbar der Typ der Datei: auf dem PC unter Windows heißt die Datei wie oben angegeben. Legt man sie so auf dem MacBook an, wird sie nicht benutzt. Erst als wie sie umbenannt haben, indem wir die extension "properties" angehängt haben, wurde diese Datei zur Anbindung an MySQL benutzt - etwas seltsam. Die volle Datei hieß also: de.jost_net.JVerein.rmi.JVereinDBService.properties

Good luck für alle, die ggf. mal die gleiche Kombination betreiben wollen.

:-) Wolfgang
wpein2m
Beiträge: 134
Registriert: Freitag 7. Oktober 2016, 18:58
Verein: 1. TC Sankt Augustin
Mitglieder: 320
JVerein-Version: 2.8.15
Betriebssystem: Windows 10 / MacOS

Re: JVerein auf Mac OS mit MySQL DB (SSL)

Beitrag von wpein2m »

Korrektur zu einem Punkt: auch auf dem PC muss die MySQL-Konfig-Datei die extension "properties" haben. Bei einer Installation auf einem neuen PC funktionierte die Verbindung erst, nachdem ich die extension "properties" hinzugefügt habe.

Die Irritation kommt wohl daher, dass ich auf meinem Windows-PC die Datei im Verzeichnis /<benutzer>/.jameica/cfg ohne extension "properties" habe, im Verzeichnis c:/programme/jameica/cfg dagegen mit der extension "properties" - war mit bisher gar nicht bewusst!! Scheint durchsucht JVerein beide Verzeichnisse!!

Fazit: sowohl auf dem Mac als auch auf dem PC muss die Datei vollständig heißen: de.jost_net.JVerein.rmi.JVereinDBService.properties
wpein2m
Beiträge: 134
Registriert: Freitag 7. Oktober 2016, 18:58
Verein: 1. TC Sankt Augustin
Mitglieder: 320
JVerein-Version: 2.8.15
Betriebssystem: Windows 10 / MacOS

Re: JVerein auf Mac OS mit MySQL DB (SSL)

Beitrag von wpein2m »

Hallo zusammen,
ich nutze diesen alten Thread, um neuere Erkenntnisse zum Thema Anbindung von MAC OS an remote MySQL per TLS zu dokumentieren.
Ein Vorstandskollege hat ein neues Mac Book unter MAC OS Catalina 10.15.4 bekommen und dort klappte zunächst die verschlüsselte Anbindung an remote MySQL nicht. Im Wireshark trace konnte man sehen, dass das Server-Zertifikat (die CA/Stammzellenzertifikat) vom Mac OS mit der Begründung "certificate unknown" abgewiesen wurde.

Nach längerem Rätseln war die Lösung wie folgt: in der Datei "de.jost_net.JVerein.rmi.JVereinDBService.properties " den Eintrag " useSSL\=true" zu entfernen. Das hätte eigentlich dazu führen sollen (dachte ich), dass die Verbindung unverschlüsselt ist (weil auf dem MySQL-Server zwar SSL aktiviert ist aber nicht ausschließlich). Dem ist aber nicht so: tatsächlich scheint das Betriebssystem oder JVerein/Java(?) zunächst immer eine TLS-Verbindung zu versuchen - selbst wenn der Eintrag " useSSL\=true" fehlt. Da der Server entsprechend konfiguriert ist wird die verschlüsselte Verbindung akzeptiert.

Interessanterweise verhält sich Windows 10 oder Java(?) genauso (ich meine das war früher anders): zunächst wird scheinbar immer TLS genutzt, erst danach, wenn notwendig, ohne TLS. Das MySQL-Server-CA(Stammzellen)-Zertifikat wird nach erfolgreicher Verbindung in Jamaica aufgelistet.

Nicht herausfinden konnte ich, warum MAC OS (im Gegensatz zu Windows 10) so "sensibel" auf den Eintrag " useSSL\=true" reagiert hat - ist letztlich auch egal, da die Verbindung ja trotzdem TLS nutzt.

Vielleicht hilft es ja jemandem, der ein ähnliches Problem hat.

:-) Wolfgang
Antworten