Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Nginx: SSL Zertifikat (https) für lokal genutzte Domains/Container

Featured Replies

51 minutes ago, sonic6 said:

jap zusammen mit pihole

so nutze ich es auch auf einem Raspi4.

aber irgendwie scheint nicht alles "richtig" zu laufen.

 

Kannst du mal über meine Konfigs schauen ob ich irgendwo einen fehler drinne habe?

Ich habe pihole und Unbound unter dieser Anleitung installiert.

 

Bei meinem Raspi4, wo Pihole und unbound läuft, habe ich unter

/etc/dnsmasq.d/07-example.de.conf 

folgendes stehen.

address=/.example.de/192.168.178.110

wobei die 192.168.178.110 mein Nginx Proxy Manager ist, der als Docker im Unraid-Server läuft.

 

cat /etc/resolv.conf

spuckt beim Raspi4 das aus

domain fritz.box
search fritz.box
nameserver 192.168.178.20

wobei die

192.168.178.20

mein Raspi4 ist auf den Pihole und Unbound läuft.

 

 

 

beim Unraid-Server habe ich unter

Local-TLD: local

stehen und bei

IPv4 DNS server: 192.168.178.1

 

 

 

 

bei der Fritzbox habe ich unter

Internet > Zugangsdaten > DNS-Server

bei beiden Feldern die IP des Pihole`s eingetragen und unter

Heimnetzwerk > Netzwerk > Netzwerkeinstellungen > IPv4-Einstellungen > Lokaler DNS-Server:

habe ich ebenfalls die IP vom Pihole`s eingetragen.

 

 

 

Dann habe ich in Pihole unter DNS-Records folgendes eingetragen:

 

server.fritz.box > 192.168.178.200

 

das ist mein Unraid-Server.

 

und unter CNAME-Records

 

proxy.example.de > server.fritz.box

cloud.example.de > server.fritz.box

....

 

Wenn ich jetzt z.b. cloud.example.de anpinge bekomme ich die ip vom Unraid-Server und nicht die IP vom Nextcloud Container, wo ich eine static IP vergeben habe.

Habe ich da ein denkfehler oder stimmt da was nicht?

  • Replies 61
  • Views 15.5k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • Ok, dann ist deine Lösung die einzig gangbare. 👍

  • Revan335
    Revan335

    Kann man bspw. im Router einrichten. https://avm.de/service/wissensdatenbank/dok/FRITZ-Box-7590/3565_FRITZ-Box-meldet-Der-DNS-Rebind-Schutz-Ihrer-FRITZ-Box-hat-Ihre-Anfrage-aus-Sicherheitsgrunden

  • und in unbound in der conf (in meinem fall /etc/unbound/unbound.conf.d/pi-hole.conf):  

Posted Images

53 minutes ago, sakistech said:

beim Unraid-Server habe ich unter

Local-TLD: local

da müsste fritz.box rein, das wird aber nicht der Grund sein, warum es nicht läuft.

 

Hast du den dns-rebind Schutz für deine Domains in der der Fritzbox und am Unbound deaktivert? Besonders der vom Unbound wird gerne mal vergessen.

20 minutes ago, sonic6 said:

da müsste fritz.box rein, das wird aber nicht der Grund sein, warum es nicht läuft.

 

Hast du den dns-rebind Schutz für deine Domains in der der Fritzbox und am Unbound deaktivert? Besonders der vom Unbound wird gerne mal vergessen.

Danke für den Hinweis.

 

wie kann ich es auf beiden deaktivieren?

Ob Wildcard/*.domain.de funktioniert weiß ich nicht.

Aber jedenfalls deine externen Domains für die du ein Cert willst. Das müsste bei Reverse Proxy oder so nur eine sein?

Ich glaube wir haben uns mistverstanden. Ich möchte nichts von extern zugreifen sondern nur intern.

Ah, dass hatte ich auch.

Hier hatte ich drüber geschrieben. Also in dem Thread.

 

Aber sollte das nicht mit 6.10 wegfallen oder einfacher sein?

3 hours ago, sakistech said:

wie kann ich es auf beiden deaktivieren?

image.thumb.png.104fa377ca1fde0a1731b6ecde9f5a94.png

 

und in unbound in der conf (in meinem fall /etc/unbound/unbound.conf.d/pi-hole.conf):

image.thumb.png.02547e2c0d246d987f3b7b240ac53426.png

 

  • 2 months later...

Hi zusammen,

beschäftige mich aktuell auch mit dem Thema. 

Hab einige Subdomains aktuell über NGINX Proxy Manager und meinem Hoster übers Inet veröffentlicht, vorallem auch wegen Bitwarden (Vaultwarden) https.

Da ich zukünftig auf meiner Domain eine Homepage erstellen möchte, könnte man über nen Subdomain Scanner die Subdomains ausfindig machen und hat durch nen Ping

meine IP Adresse (dadurch evtl. DDOS Attacken oder weiteren Blödsinn anstellen). 

 

Das was ich mir nun vorstelle ist: 

- Wireguard einrichten auf der PFSense

- Alle Clients wo drauf sollen, Wireguard einrichten

- Einen lokalen DNS einrichten (könnte ja NPM dafür nehmen)

- Eigene Zertifikate erstellen und diese im NPM auf den Host als SSL eintragen

 

So könnte man sich dann von außerhalb mit dem Wireguard einloggen und via DNS auf die Web Pages der verschiedenen Docker zugreifen (Jellyfin, piwigo usw....) vor allem aber auch via https auf den Vaultwarden.

Hab leider keine Lösung gefunden, via http bei Vaultwarden zugreifen zu können....

 

Hoffe ich bin nicht ganz auf dem falschen Dampfer 🙂 

Ich habe mir eine extra Domain für den Server-Kram gebucht.

So hat diese nichts mit meinen Mailadressen etc. zu tun. Die kosten ja heute auch nicht mehr die Welt.

  • Author
1 hour ago, High-Tower said:

dadurch evtl. DDOS Attacken oder weiteren Blödsinn anstellen

Das Problem hast du immer, wenn du was erreichbar machst. Auch wenn du nur einen Port für den VPN aufmachst. Nur warum sollte jemand überhaupt seine Ressourcen für so einen Angriff verschwenden. 

On 9/11/2022 at 4:22 PM, mgutt said:

Das Problem hast du immer, wenn du was erreichbar machst. Auch wenn du nur einen Port für den VPN aufmachst. Nur warum sollte jemand überhaupt seine Ressourcen für so einen Angriff verschwenden. 


Das mit der eigenen Domain wäre eine Idee.

Würde das aber eigentlich gerne über Wireguard regeln (Zugriff über das Internet). Im eigenen Lan spielt das ja keine Rolle, wenn ein Gerät verbunden ist. 
Einzig Vaultwarden benötigt https, die anderen Geräte sind auch ohne SSL erreichbar, bzw. Funktionieren. 
 

Das ob, warum, usw.. ist das eine Glaubensfrage.

Ob man es braucht oder nicht, darf man sich als IT verrückter nicht stellen 😂

eher, wie bekommt man das hin…

 

Auch in dem Hinblick, wenn das Internet ausfällt und ich aber auf Vaultwarden Zugreifen muss, dann spätestens hab ich ein Problem. 

 

Edited by High-Tower

Ich hatte kurz einen Schreck bekommen. Richtig, was ist wennn das Netz ausfällt, und ich nicht mehr an meine Passwörter ran komme. Doch die Weboberfläche brauche ich dafür nicht zwingend. Es gibt da ja noch das Handy. Und wenn das Netz wirklich ausfällt. Wozu dann einen Passwortmanager über die Weboberfläche öffnen wollen?

Gesendet von meinem Pixel 6 Pro mit Tapatalk

  • Author

Ich habe die Anleitung im ersten Beitrag so aktualisiert, dass nun auch IPv6 unterstützt wird.

  • 4 months later...
On 10/30/2021 at 3:44 PM, mgutt said:

Ich möchte möglichst alle Docker über https verschlüsseln. Über NPM kann ich jedem Docker eine Domain zuweisen und dann ein Let's Encrypt Zertifikat anfordern. Allerdings möchte ich nicht jeden Container öffentlich erreichbar machen. Daher kam ich auf die Idee nur lokale Zugriffe zu erlauben:

 

1.) Ich trage in NPM bei jedem Host, der nur lokal erreichbar sein soll, unter "Advanced" folgende Regel ein:

location / {
  # allow anyone in 192.168.178.0/24
  allow 192.168.178.0/24;
  # allow our public ipv4
  allow 169.254.1.1;
  # allow our public ipv6
  allow fe80::/10;
  # drop rest of the world
  deny all;
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection $http_connection;
  proxy_http_version 1.1;
  # Proxy!
  include conf.d/include/proxy.conf;
}

 

2.) Nun wird das folgende Skript alle 5 Minuten ausgeführt, damit die Platzhalter IP 169.254.1.1 bzw fe80::/10 aus der zuvor genannten Konfiguration gegen meine öffentliche IP ersetzt wird:

#!/bin/bash

# make script race condition safe
if [[ -d "/tmp/${0//\//_}" ]] || ! mkdir "/tmp/${0//\//_}"; then exit 1; fi; trap 'rmdir "/tmp/${0//\//_}"' EXIT;

# get public ipv4
ipv4=$(getent ahostsv4 server.example.com | grep STREAM | head -n 1 | cut -d ' ' -f 1)
ipv6=$(ip -6 addr show dev br0 scope global | grep -oP "(?<=inet6 )[^/]+" | head -n 1 | cut -d ':' -f 1-4)"::/56"

# replace ipv4 in nginx config
sed -i "/# allow our public ipv4/!b;n;c\ \ allow $ipv4;" /mnt/user/appdata/npm/data/nginx/proxy_host/*.conf

# replace ipv6 in nginx config
sed -i "/# allow our public ipv6/!b;n;c\ \ allow $ipv6;" /mnt/user/appdata/npm/data/nginx/proxy_host/*.conf

# reload nginx configuration
docker exec -i npm nginx -s reload

 

Das ist wichtig, denn obwohl ich von lokal auf den Container zugreife, kommen meine Zugriffe "von außen" über die öffentliche IP-Adresse.

 

Ich komme nun über die Domain auf meinen Container (Falls ich den Proxy Host über NPM bearbeite, verliert er kurz die IP, aber nach 5 Minuten ist sie wieder erlaubt):

image.png.c97005237f35ea493a90898d233042c6.png

 

Haltet ihr das für die "einfachste" Lösung oder habt ihr eine bessere Idee wie man das umsetzen könnte?

 

 

Hi

 

ich komme hier leider nicht weiter und hoffe mal wieder auf deine Hilfe.

 

Deine Regel habe ich eingefügt, nur ist danach vaultwarden nicht erreichbar. Zum testen habe ich meine Public IP direkt in die Regel geschrieben, ansonsten alles so gelassen. Das Skript habe ich erstmal ignoriert, die IP habe ich ja wie gesagt eingetragen

 

VG

 

Edited by Daen

  • Author
On 1/30/2023 at 1:07 AM, Daen said:

Deine Regel habe ich eingefügt

Zeig mal was du eingetragen hast.

Guten Morgen/Mahlzeit

gerne:


 

daten.png

 

Damit kommt ein 403 Forbidden (openresty)

 

 

Wenn ich z.B. das deny all; entferne komme ich drauf, aber auch jeder andere, egal welche IP.

 

Ich habe auch das Gefühl, dass mir Ordner fehlen?! Wenn ich es richtig irgendwo gelesen habe, sollte im verzeichnis /etc/nginx/conf.d

eigentlich der ordner include sein oder nicht? Ist er aber nicht.
Dort sind nur zwei Dateien: 

 

• locations.conf

• server.conf

 

 

Edited by Daen

Ok ich habe es hinbekommen, ich führe das morgen/gleich mal ausführlicher aus.

 

Oh man, was für eine "Geburt" 🥳

  • Author
On 2/1/2023 at 1:09 AM, Daen said:

ich führe das morgen/gleich mal ausführlicher aus.

Bin gespannt 😁

Sorry etwas arg verspätet. Meine Netzwerksituation sieht man auf dem Bild. Ich hatte im NGINX Proxy Manager mein Netz 192.168.178.0/24 auf allow. Der Fehler ist/war aber, dass ich das Netz des Routers bzw. die IP nicht auf auf allow gesetzt habe.

Nachdem ich das gemacht habe, ging alles.....

Rausgefunden habe ich das nur, weil ich den NGINX PM und vaultwarden im Docker auf einem Raspberry 4 installiert habe und diesen direkt an den Router..... war purer Zufall. Aber egal. Vielleicht gibt es ja noch einen ähnlichen und  gefährlichen Amateuer wie mich und mein Beitrag hilft diesem hier :)
 

netzwerk.png

  • 2 months later...

Versuche das Thema hier zu verstehen, klappt aber nicht so richtig.

 

Hier möchte man also den Zugriff von außen über Reverse Proxy nur auf ausgewählte Docker beschränken, richtig?

 

Geht das nicht einfach über den NPM, dort die jeweilig gewünschte Subdomain des Dockers ink. dem Port angeben und über Access List zusätzlich sichern? Also so wie hier z.B beschrieben: 

 (Das man evtl. die Unraid GUI nicht über Reverse Proxy zugänglich machen sollte, sollte eigentlich klar sein).

 

Ist an der Vorgehensweise im Video sicherheitstechnisch etwas als kritisch zu bezeichnen?

 

Edit: So wie ich das verstanden habe, soll hier auf alle Docker über die „einfachere/schönere“ custom-domain (anstelle der IP:PORT-Adresse) zugegriffen werden, aber trotzdem nur im lokalen Netzwerk, korrekt?

 

Hat das bis auf die einfachere Adresse sonst noch Vorteile?

 

 

 

Edited by Kazino43

  • Author
30 minutes ago, Kazino43 said:

aber trotzdem nur im lokalen Netzwerk, korrekt?

Hat das bis auf die einfachere Adresse sonst noch Vorteile?

Es gibt Cornainer, die verlangen, dass man ausschließlich über https draufgeht. Und https bei einer lokalen IP, also ohne gültiges Zertifikat, quittiert der Browser mit einer Warnung/Fehlermeldung. Ist das dann auch noch ein Container, den du nur ausschließlich lokal nutzen willst, brauchst du eine Lösung.

 

Ansonsten gibt es bis auf leichter zu merkende Adressen keinen Mehrwert. 

  • 1 year later...
On 4/9/2023 at 6:35 PM, Kazino43 said:

Versuche das Thema hier zu verstehen, klappt aber nicht so richtig.

 

Hier möchte man also den Zugriff von außen über Reverse Proxy nur auf ausgewählte Docker beschränken, richtig?

 

Geht das nicht einfach über den NPM, dort die jeweilig gewünschte Subdomain des Dockers ink. dem Port angeben und über Access List zusätzlich sichern? Also so wie hier z.B beschrieben: 

 (Das man evtl. die Unraid GUI nicht über Reverse Proxy zugänglich machen sollte, sollte eigentlich klar sein).

 

Ist an der Vorgehensweise im Video sicherheitstechnisch etwas als kritisch zu bezeichnen?

 

Edit: So wie ich das verstanden habe, soll hier auf alle Docker über die „einfachere/schönere“ custom-domain (anstelle der IP:PORT-Adresse) zugegriffen werden, aber trotzdem nur im lokalen Netzwerk, korrekt?

 

Hat das bis auf die einfachere Adresse sonst noch Vorteile?

 

 

 

Hallo

Ich habe das System 1 Jahr genutzt und so eingerichtet wie in dem Video erklärt, nach einem Neustart was sonst auch immer funktioniert hatte geht jetzt aber nichts mehr.

 

Ich finde nicht denn Fehler hatte in Verdacht das die routing Tabelle nicht stimmt

 

Kann sich jemand das mal ansehen?

 

Fritzbox router

Freigaben sind eingestellt für ports von nginx und auch nginx Einstellung hatte immer funktioniert.

 

Ich habe alles deaktiviert und nur Docker am laufen und möchte nur das die Haupt URL raus und rein geht.

Screenshot_20240828_103330_edit_93711950113303.jpg

Screenshot_20240828_121102.jpg

Edited by A2w2SbpKA8D4RK

Was genau geht jetzt nicht mehr? Das der Nextcloud Docker nicht mehr startet?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.