[Debian] ISPConfig 3 Multiserver Setup mit nginx als Reverse Proxy für Apache

maja437

Member
ist das der versuch, sich zum lokalen oder master-sql zu verbinden?
Ja genau, vom lokalen zum Master-SQL. Hier die Ausgabe (anonymisiert):
Code:
root@test1:~# mysql -h test2.cdn.example.com -u root -p'mein_passwort'
ERROR 1130 (HY000): Host '0a846ca4c43d25b5d276301f465f4690.example.com' is not allowed to connect to this MariaDB server
root@test1:~# hostname
test1
root@test1:~# hostname -f
test1.cdn.example.com
Ich habe keine Ahnung woher Host '0a846ca4c43d25b5d276301f465f4690' kommt, die danach folgende Domain 'example.com' ist aber korrekt.

Auf beiden Servern ist der Hostname wenn ich nach hostname (-f) gehe korrekt, komisch. Ich versuch mal herauszufinden woher das kommt.

Anmerkung: Den Punkt "18 Install PHPMyAdmin Database Administration Tool" in der Anleitung habe ich wie auch Punkt 19 (RoundCube Webmail) übersprungen, da ich beides nicht benötige.
 
Zuletzt bearbeitet:

matz

Active Member
Ich würde sogar soweit gehen und einfach mal behaupten, dass Dir dieses Skript in bestimmten Situationen komplett um die Ohren fliegt. Ich kenne genügend "versuchte" Installationen, die an an den unterschiedlichsten Stellen gescheitert sind.
Danke für den Hinweis. Bei mir lief alles einwandfrei und Probleme gibt es bis heute keine, auch das Update auf ISPC 3.2 lief glatt durch. Die "versuchten" Installationen werde ich allerdings im Hinterkopf behalten. In meinem Fall war das System gerade neu geboren und unbefleckt. Bestimmte Situationen waren demnach eher nicht zu erwarten. Vielleicht trug diese Tatsache zum Glück bei.


(...)
Ich habe keine Ahnung woher Host '0a846ca4c43d25b5d276301f465f4690' kommt, die danach folgende Domain 'example.com' ist aber korrekt.

Auf beiden Servern ist der Hostname wenn ich nach hostname (-f) gehe korrekt, komisch. Ich versuch mal herauszufinden woher das kommt.
(...)

Der so kryptisch anmutende Hostname sieht aus wie Hash-String. Solche Namen vergeben manche Server-Anbieter bei der Auslieferung. Hast du schon die A-Records im DNS geprüft?
 
Zuletzt bearbeitet:

maja437

Member
Der so kryptisch anmutende Hostname sieht aus wie Hash-String. Solche Namen vergeben manche Server-Anbieter bei der Auslieferung.
Die /etc/hosts Dateien sehen so aus, der String kommt da nicht vor:
Code:
127.0.0.1       localhost

::1     localhost       ip6-localhost   ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters


127.0.1.1       packer-output-dd0d5e86-1b54-48ab-bc93-cb3ebe9f1b16      packer-output-dd0d5e86-1b54-48ab-bc93-cb3ebe9f1b16
127.0.1.1       test1.cdn.example.com      test1
127.0.1.1       vps-649.example.com.example.net.novalocal      vps-649
Hast du schon die A-Records im DNS geprüft?
Ja, es erscheint die Seite "Apache2 Debian Default Page".
 

matz

Active Member
(...)
Ja, es erscheint die Seite "Apache2 Debian Default Page".

Das sagt nicht viel über DNS-Einträge aus. Dein Server ist erreichbar und das war's.
In welcher Umgebung arbeitest du jetzt? In einer realen, die über I-Net erreichbar ist oder in einer virtuellen, womöglich im LAN? Falls du es kennst: nslookup kann da schon einiges an Licht ins Dunkle bringen, z.B. nslookup deine_domain.tld oder nslookup ip_adresse_deiner_domain (bzw. deines Servers).
 

maja437

Member
Ist aus dem Interneterreichbar, DNS-Einträge mehrfach geprüft, Cloudflare oder sonstiges funkt auch nicht dazwischen. Ich denke mit der Host-Datei stimmt was nicht. :confused:
 

florian030

Well-Known Member
die hosts-datei "überschreibt" bestenfalls dns-einträge. das hat nichts damit zu tun, welche seite ausgegeben wird.

die gewünschte seite hat aber einen link in /etc/apache2/sites-enabled bzw. /etc/nginx/sites-enabled ?
 

maja437

Member
Ja, existiert als vhost, ich bekomme die Meldung "Herzlich Willkommen auf Ihrer Website!" und Let's Encrypt läuft auch.

Ich verstehe nicht warum die Meldung "ERROR 1130 (HY000): Host 'test1.cdn.example.com' is not allowed to connect to this MariaDB server" kommt, der Port (3306) ist offen, auf dem Master-Server läuft SQL und dort einloggen mit 'mysql -u root -p -h localhost' klappt auch - die Logindaten sind dann wohl auch korrekt.
 

matz

Active Member
Sind die Datenbank-Benutzer auch korrekt angelegt, inkl. Hostname und Authentifizierung?
 

maja437

Member
Ich gehe von aus, wenn ich SELECT host FROM mysql.user WHERE User = 'root'; eingebe sehe "host" und "localhost".

Kann es sein das ich die IPs der Slave-Server beim Master whitelisten muss damit eine Verbindung akzeptiert wird?

Nachtrag: Habe jetzt zum Test mal ein UPDATE mysql.user SET Host='IP-Adresse-vom-Slave' WHERE Host='127.0.0.1' AND User='root' und FLUSH PRIVILEGES; ausgeführt. Jetzt sollte man sich ja mit dem Root-User anmelden können, klappt aber trotzdem nicht. Komisch.
 
Zuletzt bearbeitet:

matz

Active Member
Da bin ich jetzt überfragt, weil mein kleiner Server solo läuft und weitere Maschinen sind nicht geplant. Wo wolltest du sie whitelisten? Ich wäre eher dafür, dass du dir im phpmydamin den Benutzer root mal anschaust und prüfst, welche Verbindungen für ihn zulässig sind. Wenn da z.B. nur 'localhost' steht dann klappt es nicht vom external host weil not allowed...
 

maja437

Member
Danke erstmal euch für die Hilfe, ich habe die bzw. eine Lösung jetzt gefunden. :D

Man gibt auf dem Master-Server in der SQL-Konsole UPDATE mysql.user SET Host='IP-Adresse-vom-Slave(s)' WHERE Host='localhost' AND User='root';, dann FLUSH PRIVILEGES; ein und dann klappt die Verbindung. Mit diesem Befehl whitelisted man die IP-Adressen der Slaves. Also darf man offensichtlich sich aus Sicherheitsgründen standardmäßig nicht mit dem Root-User von außerhalb (sprich fremden IPs) anmelden - was ja auch definitiv sinnvoll ist.

Nun stellt sich mir die Frage ob das die Standardlösung ist, soll man das so machen?
 

matz

Active Member
(...)
Nur ist Debian 5 Anfang 2009 (!) erschienen, ist das fast 12 Jahre später noch aktuell?
Nein. Debian 10 wäre jetzt angesagt, 9 geht vielleicht auch noch. Aber es laufen auf diesem Planet Maschinen mit älteren Versionen. Das Problem dabei ist nur, dass irgendwann die Sicherheitsupdates nicht mehr geliefert werden und wenn sich irgendwo eine Lücke auftut, dann ist man u.U. geliefert, d.h. nur dann wenn man diese Lücke bietet, weil z.B. die betroffenen Libs oder Software-Versionen im Einsatz sind.

Bei Debian soll bald der Support für Version 9 auslaufen. Ob man da noch die 5er pflegt?

Zu deinem Problem:
Mit dieser SQL-Anweisung hast du dem root einen anderen (externen) Host zugewiesen, vom er sich einloggen kann. Es war also so wie ich es weiter oben angenommen habe. Schön, dass es (endlich) geklappt hat.
 

maja437

Member
Habe mich leider schlecht ausgedrückt: Ich mein nicht die Debian-Version, sondern die Anleitung. Der SQL Querie dort lautet:

Code:
CREATE USER 'root'@'192.168.0.106' IDENTIFIED BY 'myrootpassword';GRANT ALL PRIVILEGES ON * . * TO 'root'@'192.168.0.106' IDENTIFIED BY 'myrootpassword' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;

meiner ist ja wesentlich kürzer, überlege ob ich die Parameter wie oben angegeben übernehmen soll.
 

matz

Active Member
Ok. Ich habe es vermutlich auch falsch verstanden, mit dieser Version.
Mit CREATE USER 'root.... erstellst den Gott selbst, sofern du an einen glaubst ;) Die IP-Adressen hast du jetzt "verfälscht", denke ich, denn 192.168.xxx.xxx werden bekanntlich nicht geroutet. Oder bist du im LAN? Die SQL-Anweisung aus Post #32 macht aus meiner Sicht wirklich Sinn. Aber egal, wenn es läuft - lass es laufen.
 

maja437

Member
Die lokalen IPs stammen aus der Anleitung, bis jetzt läuft ISPConfig 3 problemlos im Multiserversetup, danke ich lass alles erstmal so.
 

Werbung

Top