Jump to content
Froxlor Forum
  • 0
kunkelinho

Datei mit Verzeichnisoptionen wird nicht mehr geschrieben

Question

Guten Abend zusammen,

ich habe mehr oder weniger zufällig festgestellt, dass Froxlor bei mir keine Datei mehr mit den Verzeichnisoptionen schreibt. Ich nutze nginx und habe dort ein Custom Log Format definiert. Daher musste ich auch Awstats aktivieren. Die Statistiken interessieren mich zwar nicht unbedingt, dennoch ist mir irgendwann aufgefallen, dass die awstats Seiten nicht aufrufbar sind. Auch das Verzeichnis mit den htpasswd Dateien bleibt leer. Seit wann das genau nicht mehr geht, kann ich allerdings leider nicht sagen. Die restlichen Webserverkonfigs und auch die Datei mit der Definition des Logformats sind alle da und werden nach Änderungen auch geupdatet.

Die Diroptions wurden bei mir immer ins gleiche Verzeichnis wie die Websitekonfigs geschrieben. Hab das testweise geändert, hat aber nix gebracht.

Hat jemand eine Idee, wie ich dahinter kommen könnte, wo es da klemmt?

 

System: Ubuntu Server 18.04
Webserver: nginx mit php-fpm (php7.4 für Froxlor und den Cronjob)
Froxlor-Version: 0.10.12

 

Log des Cronjobs:

root@server:/# php7.4 /var/www/html/froxlor/scripts/froxlor_master_cronjob.php --debug --force
[information] TasksCron: Searching for tasks to do
[information] TasksCron: Task10 started - setting filesystem quota
[information] Running Let's Encrypt cronjob prior to regenerating webserver config files
[information] Requesting/renewing Let's Encrypt certificates
[information] No new certificates or certificates due for renewal found
[information] nginx::createIpPort: creating ip/port settings for  [2axx:xxx:xxx:xxxx:xxxx:xxxx:xxxx:xxxx]:80
[information] nginx::createIpPort: creating ip/port settings for  [2axx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]:443
[information] nginx::createIpPort: creating ip/port settings for  46.xxx.xxx.xxx:80
[information] nginx::createIpPort: creating ip/port settings for  46.xxx.xxx.xxx:443
[information] nginx::writeConfigs: rebuilding /etc/nginx/sites-enabled/
[information] Froxlor\Cron\Http\NginxFcgi::reload: running systemctl reload php7.3-fpm
[information] Froxlor\Cron\Http\NginxFcgi::reload: running systemctl reload php7.4-fpm
[information] Froxlor\Cron\Http\NginxFcgi::reload: reloading Froxlor\Cron\Http\NginxFcgi
[notice] Creating passwd file
[notice] Writing 3 entries to passwd file
[notice] Succesfully wrote passwd file
[notice] Creating group file
[notice] Writing 3 entries to group file
[notice] Succesfully wrote group file
[notice] Creating shadow file
[notice] Writing 3 entries to shadow file
[notice] Succesfully wrote shadow file
[notice] Checking system's last guid

 

Danke vorab!

Chris

Share this post


Link to post
Share on other sites

6 answers to this question

Recommended Posts

  • 0

d00p hat sich mein Setup angeschaut und die Ursache für mein Problem lokalisiert.

Ich habe folgende Einstellung in Froxlor Panel gesetzt:

frx-systemeinstellung.thumb.png.c30056d0448bfb9f6d51313ab1dce2c5.png

 

Da der awstats-Ordner, der im Kundenroot erstellt wird, nun außerhalb der Documentroots der Domains liegt, erstellt Froxlor keine basic_auth Konfig in den vHosts. 

Wenn man die awstats sehen will, kann das über eine Subdomain gelöst werden, deren Documentroot direkt auf das awstats-Verzeichnis zeigt.

Share this post


Link to post
Share on other sites
  • 0
12 hours ago, kunkelinho said:

zufällig festgestellt, dass Froxlor bei mir keine Datei mehr mit den Verzeichnisoptionen schreibt

nginx erstellt ja auch all die optionen in den domain vhost und nicht in eine separate Datei

12 hours ago, kunkelinho said:

Daher musste ich auch Awstats aktivieren. Die Statistiken interessieren mich zwar nicht unbedingt, dennoch ist mir irgendwann aufgefallen, dass die awstats Seiten nicht aufrufbar sind. Auch das Verzeichnis mit den htpasswd Dateien bleibt leer.

1) hast du denn awstats auch installiert und entsprechend der konfigurations-templates konfiguriert?
2) froxlor braucht entweder webalizer oder awstats für traffic berechnung, aktuell ist das halt noch fester bestandteil, ggfls wird das irgendwann optional
3) Verzeichnis leer? Dann lief ggfls. der Traffic cronjob noch nicht, was hat ein leeres Verzeichnis jezt aber damit zu tun, dass die diroptions angeblich nicht erstellt werden?

12 hours ago, kunkelinho said:

Die Diroptions wurden bei mir immer ins gleiche Verzeichnis wie die Websitekonfigs geschrieben. Hab das testweise geändert, hat aber nix gebracht.

wie gesagt, sicher nicht bei nginx...

Zudem wäre ein generierter VHOST der betroffenen Domain sicherlich auch hilfreich gewesen

Share this post


Link to post
Share on other sites
  • 0

Moin d00p,
danke für die Antwort. Hatte im Kopf, mal eine diroptions-Datei gesehen zu haben, die jetzt nicht mehr da ist. Kann aber sein, dass das noch zu Apache-Zeiten war. Egal.

Zu den Fragen:

zu 1) Ja, awstats hatte ich vorher installiert und auch übers Template eingerichtet. Die Binaries und der Konfigordner liegen da, wo Froxlor sie erwartet und die Statistiken werden auch erstellt. Das ist gar nicht das Problem. Wenn ich mir selbst die Umleitung für /awstats und /awstats-icons in den VHost Einstellungen einbaue, sehe ich auch die Statistiken.

zu 2) OK, macht ja nix 😉

zu 3) Das war unabhängig von awstats gemeint: Mit "Verzeichnis" meinte ich das Verzeichnis mit den basic_auth Dateien für den Verzeichnisschutz (bei mir /etc/nginx/froxlor-htpasswd). Das bleibt leer, trotz aktiviertem Verzeichnisschutz für den awstats Ordner.

 

Hier zwei frisch generierte VHosts ohne Spezialschnickschnack, einmal für HTTP,  einmal für HTTPs. Für den Kundenbenutzer ist ein Verzeichnisschutz für /awstats/ eingerichtet.

root@server:~# cat /etc/nginx/sites-enabled/35_froxlor_normal_vhost_domain.de.conf 
# 35_froxlor_normal_vhost_domain.de.conf
# Created 25.01.2020 09:35
# Do NOT manually edit this file, all changes will be deleted after the next domain change at the panel.

server {
	listen 46.xx.xxx.xxx:80;
	listen [2a03:xxxx:xx:xxx:xxxx:xxxx:xxxx:xxxx]:80;
	server_name domain.de;
	include /etc/nginx/snippets/acme.conf;
	access_log /var/customers/logs/kunde-domain.de-access.log frx_custom;
	error_log /var/customers/logs/kunde-domain.de-error.log error;
	root /var/customers/webs/kunde/domain.de/;
	location / {
		index index.html index.htm;
	}

  # PHP is disabled for this vHost

}





root@server:~# cat /etc/nginx/sites-enabled/35_froxlor_ssl_vhost_domain.de.conf 
# 35_froxlor_ssl_vhost_domain.de.conf
# Created 25.01.2020 09:35
# Do NOT manually edit this file, all changes will be deleted after the next domain change at the panel.

server {
	listen [2a03:xxxx:xx:xxx:xxxx:xxxx:xxxx:xxxx]:443 ssl http2;
	listen 46.xx.xxx.xxx:443 ssl http2;
	server_name domain.de;
	ssl_protocols TLSv1 TLSv1.2 TLSv1.3;
	ssl_ciphers ECDH+AESGCM:ECDH+AES256:!aNULL:!MD5:!DSS:!DH:!AES128;
	ssl_dhparam /etc/ssl/certs/dhparams.pem;
	ssl_prefer_server_ciphers off;
	ssl_session_tickets on;
	ssl_session_cache shared:SSL:10m;
	ssl_certificate /etc/ssl/froxlor-custom/domain.de.crt;
	ssl_certificate_key /etc/ssl/froxlor-custom/domain.de.key;
	add_header Strict-Transport-Security "max-age=0";
	ssl_stapling on;
	ssl_stapling_verify on;
	ssl_trusted_certificate /etc/ssl/froxlor-custom/domain.de.crt;
	include /etc/nginx/snippets/acme.conf;
	access_log /var/customers/logs/kunde-domain.de-access.log frx_custom;
	error_log /var/customers/logs/kunde-domain.de-error.log error;
	root /var/customers/webs/kunde/domain.de/;
	location / {
		index index.html index.htm;
	}

  # PHP is disabled for this vHost

}

 

 

Share this post


Link to post
Share on other sites
  • 0
29 minutes ago, kunkelinho said:

Die Binaries und der Konfigordner liegen da, wo Froxlor sie erwartet

...Andersrum, die Settings dahingehend anpassen wo das system die binaries installiert

30 minutes ago, kunkelinho said:

Wenn ich mir selbst die Umleitung für /awstats und /awstats-icons in den VHost Einstellungen einbaue, sehe ich auch die Statistiken.

HÄ? Macht null sinn, /awstats ist keine Umleitung, sondern wird direkt im Kunden-Homedir erstellt. und /awstats-icons pfad ist ne Setting in froxlor die du natürlich korrekt setzen musst damit das funktioniert

31 minutes ago, kunkelinho said:

zu 3) Das war unabhängig von awstats gemeint: Mit "Verzeichnis" meinte ich das Verzeichnis mit den basic_auth Dateien für den Verzeichnisschutz (bei mir /etc/nginx/froxlor-htpasswd). Das bleibt leer, trotz aktiviertem Verzeichnisschutz für den awstats Ordner.

Hättest du gleich so sagen können :) das macht schon mehr sinn. Steht denn in der Datenbanktabelle "panel_htpasswd"  / "panel_htaccess" überhaupt was drin? Du hast ja nicht mal nen auth_basic eintrag in dem vhost, also es werden nicht nur die htpasswd Dateien nicht erstellt, sondern offenbar gibt es für die domains keine diroptions - sonst wär das ja da drin.

Share this post


Link to post
Share on other sites
  • 0
vor 4 Stunden schrieb d00p:

Steht denn in der Datenbanktabelle "panel_htpasswd"  / "panel_htaccess" überhaupt was drin?

In der panel_htpasswds steht was drin, nämlich die geschützten Verzeichnisse aller User. Die panel_htaccess hingegen ist komplett leer. Für die o.g. Domain sieht das folgendermaßen aus:

MariaDB [froxlor]> select * from panel_htpasswds where username='kunde';
+----+------------+-------------------------------------+----------+-----------------------------------+-------------+
| id | customerid | path                                | username | password                          | authname    |
+----+------------+-------------------------------------+----------+-----------------------------------+-------------+
|  6 |          2 | /var/customers/webs/kunde/awstats/  | kunde    | {SHA}MeinGeheimerHash             | Statistiken |
+----+------------+-------------------------------------+----------+-----------------------------------+-------------+
1 row in set (0.00 sec)



MariaDB [froxlor]> select * from panel_htaccess;
Empty set (0.00 sec)

MariaDB [froxlor]> 

 

 

vor 4 Stunden schrieb d00p:

HÄ? Macht null sinn, /awstats ist keine Umleitung, sondern wird direkt im Kunden-Homedir erstellt. und /awstats-icons pfad ist ne Setting in froxlor die du natürlich korrekt setzen musst damit das funktioniert

Schon klar, wo der awstats Ordner liegt. Damit dieser aber über meine-domain.tld/awstats ausgeliefert wird, muss ja irgendwo eine entsprechende Einstellung gesetzt werden. OK, "Umleitung" ist der falsche Begriff, "Alias" trifft es eher, aber auch der fehlt 😄.

 

Share this post


Link to post
Share on other sites
  • 0

Nein, weder Umleitung noch Alias trifft es. Es ist ein einfacher unterordner im Kunden home-directory. Sprich, eine domain zeigt auf / und mit http://domain.tld/awstats komm ich an die stats. Alles andere ist angepasst (unterordner für domains etc. das liegt dann alles bei dir).

Ich will jetzt ungern den ganzen Samstag "raten". Wenn du magst biete ich dir an, das ich mich auf der kiste mal einlogge und schaue was da passiert bzw. nicht passiert, vllt können wir dann rauskriegen wo das problem liegt. Hier mein public key, alles weitere gerne via PM: https://froxlor.support/files/froxlorsupport-ecdsa.pub

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...