DSM6.1 .htaccess nur lokale IP geht nicht

Status
Für weitere Antworten geschlossen.

stern

Benutzer
Mitglied seit
08. Nov 2015
Beiträge
52
Punkte für Reaktionen
0
Punkte
6
Hallo zusammen,

DSM 6.1 (aktuell) + webstation Paket (aktuell)

im standart web-Verzeichnis (volume1) befindet sich momentan:
1. index.html (nur zur begrüßung, keine weitere Seite gehostet)
2. Piwik
3. phpMyAdmin

im Router sind port 80 und 443 durchgeschaltet.
Zugriff von extern soll nur auf Website (index.html im Verzeichnis web) erfolgen dürfen
(den zugriff braucht letsencrypt zum erneuern des Zertifikats)

auf alles andere im web-Verzeichniss soll nur aus LAN zugriff erlaubt sein (.htaccess 192.168.x.x)

jedoch: .htaccess wird ignoriert
alles im web-Verzeichnis ist von aussen zugänglich

kann mir einer sagen warum das jetzt so ist und wie ich das ändern kann?

Danke im voraus

Grüße, stern
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.168
Punkte für Reaktionen
415
Punkte
393
Hallo,
hast Du das Paket apache installiert und in Web-Station apache als Backend ausgewählt?

Gruß Götz
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.172
Punkte für Reaktionen
922
Punkte
424
Lets Encrypt geht denke ich auf /web/.well-known/acme-challenge oder ähnlich.

Im Normalfall antwortet hier nginx und der kennt .htaccess nicht.
Dafür muss man in die nginx config Dateien direkt gehen und passende Direktiven eintragen.

Wie so was prinzipiell gehen kann am Beispiel phpMyAdmin
http://www.synology-forum.de/showth...yAdmin-MariaDB&p=627969&viewfull=1#post627969

Dürfte sich also eher in der Richtung
/etc/nginx/app.d/server.webstation.conf
/etc/nginx/app.d/server.webstation-vhost.conf
was finden, als passender Ort zum eintragen.

@goetz - funktioniert das mit dem Backend im obersten doc root inzwischen ohne Probleme?
 

Holgo

Benutzer
Mitglied seit
22. Jul 2011
Beiträge
265
Punkte für Reaktionen
0
Punkte
0
Mal doof gefragt. Ging es mal und nun nicht mehr oder ist es der erste Versuch? Wo liegt denn die .htaccess und was steht drin?
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.168
Punkte für Reaktionen
415
Punkte
393
Hallo,
@Fusion
.htaccess wird im web root korrekt abgearbeitet bei Backend apache, weiter habe ich nicht getestet.

Gruß Götz
 

stern1

Benutzer
Mitglied seit
09. Mrz 2017
Beiträge
1
Punkte für Reaktionen
0
Punkte
0
Danke für die schnellen Antworten.

Ich hatte als Backend apache 2.2 und danach 2.4
Kein unterschied festgestellt. Bei beiden kann ich von extern auf alles zugreifen.
Nochmal, um Missverständnisse zu vermeiden:

Ich möchte verhindern, das auf einzelne Verzeichnisse (phpMyAdmin, piwik) von extern zugeriffen werden kann.
Diese sollen nur im LAN erreichbar sein.
Normalerweise kann man das per .htaccess im entsprechenden Verzeichnis einschränken.
Doch leiden funktioniert das nicht.
Scheinbar ist apache nicht aktiv, obwohl als backend eingestellt.
Wie kann ich testen ob apache oder Nginx aktiv ist?

Achja, bin mir nicht mehr sicher ob es vorher ging (vor DSM6)

Was letsencrypt betrifft: beim aktualisieren vom Zertifikat wird nur geprüft ob die web-adresse erreichbar ist, mehr nicht.

Grüßle stern
 

stern

Benutzer
Mitglied seit
08. Nov 2015
Beiträge
52
Punkte für Reaktionen
0
Punkte
6
Hallo zusammen,
vielen Dank für die Antworten.
Leider wollte der Forums-Admin vom Dienst meine Antwort gestern nicht "zulassen" und hat sie wohl gelöscht.
(nach dem erstellen der Antwort erschien eine Meldung, das der Admin sie erst prüfen müsste vor dem veröffentlichen)

Daher jetzt nochmal:

Danke für die schnellen Antworten.

Ich hatte als Backend apache 2.2 und danach 2.4 eingestellt
Kein Unterschied festgestellt. In beiden Fällen konnte ich vom Internet auf alles zugreifen.
Nochmal, um Missverständnisse zu vermeiden:

Ich möchte verhindern, das auf einzelne Verzeichnisse (phpMyAdmin, piwik) von extern zugeriffen werden kann.
Diese sollen nur im LAN erreichbar sein.
Normalerweise kann man das per .htaccess im entsprechenden Verzeichnis einschränken.
Doch leider funktioniert das nicht.
Scheinbar ist apache nicht aktiv, obwohl als backend eingestellt.
Wie kann ich testen ob apache oder Nginx aktiv ist?

Übrigens: letsencrypt prüft beim erneuern des Zertifikats lediglich ob die Domain erreichbar ist.
Deshalb die einfache Willkommensseite im web-Verzeichnis.


Grüßle stern
 

stern

Benutzer
Mitglied seit
08. Nov 2015
Beiträge
52
Punkte für Reaktionen
0
Punkte
6
Hallo zusammen,

hat keiner eine "zündende" Idee, wie das zu lösen ist?
Oder evt. einen Hinweis?
Oder bin ich der einzige, bei dem das nicht funktioniert?

Grüßle stern
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.168
Punkte für Reaktionen
415
Punkte
393

stern

Benutzer
Mitglied seit
08. Nov 2015
Beiträge
52
Punkte für Reaktionen
0
Punkte
6
Hallo goetz,

erstmal Danke für die Lösungsvorschläge.
Habe ich das richtig verstanden, dass ich für jedes Verzeichniss diesen "Umweg" machen muss und nach jedem Paketupdate wieder neu?
phpMyAdmin war ja nur ein Beispiel, es betrifft ja alles was sich im web-Verzeichnis befindet.

Aber das kann doch nicht richtig sein, das im web-Verzeichnis allen und jedem Tür und Tor offen stehen.
Warum macht man denn sowas?
Sollte nicht erstmal alles gesperrt sein um dann einzelne Freigaben zu erteilen?

Grüßle stern
 

TeXniXo

Benutzer
Mitglied seit
07. Mai 2012
Beiträge
4.948
Punkte für Reaktionen
100
Punkte
134
Weil die Website in der Regel für die Öffentlichkeit gedacht ist und diese Station dementsprechend so konfiguiert wurde.

Es gibt ja auch andere Pakete, um "intern" (a la Intranet usw.) zu regeln.
 

stern

Benutzer
Mitglied seit
08. Nov 2015
Beiträge
52
Punkte für Reaktionen
0
Punkte
6
Allerdings installieren sich etliche Pakete automatisch in das web-Verzeichnis (piwik, phpMyAdmin, webalizer...)
und diese sollten ja bestimmt nicht für die Öffentlichkeit sein.
Das ist in meinen Augen ein ganz grober Sicherheitsfehler seitens Synology.

Besteht denn die möglichkeit nginx komplett durch apache zu ersetzen, so das nur noch apache läuft?
(habe nur die möglichkeit gefunden apache zu entfernen, aber nicht nginx)

Grüßle stern
 

Holgo

Benutzer
Mitglied seit
22. Jul 2011
Beiträge
265
Punkte für Reaktionen
0
Punkte
0
Allerdings installieren sich etliche Pakete automatisch in das web-Verzeichnis (piwik, phpMyAdmin, webalizer...)
und diese sollten ja bestimmt nicht für die Öffentlichkeit sein.
Das ist in meinen Augen ein ganz grober Sicherheitsfehler seitens Synology…
Das hat schon seine Richtigkeit. Wenn du irgendwo auf einem Webspace eine Seite selbst bastelst, dann mußt du dort doch auch von außen an phpMyAdmin rankommen (also wenn man davon ausgeht, dass der Dienstanbieter das als Standard-Bearbeitungsmöglichkeit für die Datenbanken bereitstellt). Wenn Du selbst einen Webserver betreibst, dann bist Du für dessen Absicherung verantwortlich, nicht Synology.

Ansonsten, habe ich in den Ordnern, die nur lokal erreichbar sein sollen eine .htaccess mit

Rich (BBCode):
order deny,allow
deny from all
allow from 192.168.0

(Letzte Zeile natürlich dann entsprechend des eigenen Netzwerkes anpassen)

und das funktioniert ohne sonstigen Klimbim. Der eine verlinkte Thread ist auch zu einem völlig anderen Problem, wenn ich das richtig gelesen habe. Da gehts um MySQL von außen, also da läuft irgendwo eine Webseite auf einem Webserver und auf der von dort aus gesehen entfernten DS ist nur die Datenbank auf die der Webserver über das Internet zugreift.
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.168
Punkte für Reaktionen
415
Punkte
393
Hallo,
wenn eine Webseite vom nging ausgeliefert wird dann nützt keine. htaccess, nginx kennt diese nicht. Die verlinkten Beitrage beschäftigen sich mit genau der Problematik phpMyAdmin (welches von Synology für nginx konfiguriert ist) von außen zu blockieren.
piwik ist für nginx konfiguriert.
webalizer ist für apache konfiguriert.

Gruß Götz
 

Holgo

Benutzer
Mitglied seit
22. Jul 2011
Beiträge
265
Punkte für Reaktionen
0
Punkte
0
Dann ist »nginx« ein Wort, dass es wirklich gibt? Hat das jemand vom Glücksrad entwickelt, dem aber schon nach dem i das Geld für Vokale ausgegangen ist?
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.168
Punkte für Reaktionen
415
Punkte
393

Holgo

Benutzer
Mitglied seit
22. Jul 2011
Beiträge
265
Punkte für Reaktionen
0
Punkte
0
Was geht in so Entwicklern eigentlich vor? Da schreiben die an Scripten, mit einer totalen Präzision, weil es ja auf die richtige Syntax ankommt und jedes falsche Semikolon zu einem Fehler führt, aber beim Namen für ein Projekt, das der Kunde lesen können sollte, da »Ach komm, egal, lass die Vokale weg.« Aber gut, das führt jetzt zu weit weg vom ursprünglichen Problem.
 

stern

Benutzer
Mitglied seit
08. Nov 2015
Beiträge
52
Punkte für Reaktionen
0
Punkte
6
@Holgo
nicht der "webspace" ist das problem, sondern das die andern Pakete (z.B. piwik, phpMyAdmin...), die automatisch ins web-Verzeichnis installiert werden, von aussen erreichbar sind.
.htaccess hatte ich vorher um genau dieses zu vermeiden.
Jedoch wird .htaccess seit nginx nicht mehr beachtet.


an alle:
Daher jetzt nochmal die Frage:

Kann man nginx entfernen und nur noch apache benutzen?

Grüßle stern
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.168
Punkte für Reaktionen
415
Punkte
393
Hallo,
nginx kann man nicht entfernen, die DSM eigene Oberfläche läuft darauf. Wie bereits gesagt, Du mußt die Konfigurationen der Pakete anpassen.

Gruß Götz
 

stern

Benutzer
Mitglied seit
08. Nov 2015
Beiträge
52
Punkte für Reaktionen
0
Punkte
6
Ich habe ein Ticket bei Synology erstellt.
Mal sehen was die zu dieser Sicherheitslücke sagen.

Danke an alle die helfen wollten.

Grüßle stern
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat