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.

HTTPS-Zertifikate mit NPM lokal verwenden

Featured Replies

Guten Abend zusammen,

 

vielleicht könnt ihr mir ja auf die Sprünge helfen.

Ich möchte einige Dockercontainer, u.a. homarr, intern via HTTPS erreichen. Am einfachsten, so dachte ich, verwende ich den NPM dafür, da ich NPM eh im Einsatz für den externen Zugriff habe.

Fix ein Zertifikat erstellt, in NPM eingefügt und einen neuen Host für homarr erzeugt.

IP des Unraid Servers, Port des homarr-Containers - und im DNS Server den Namen Dashboard auf die IP des Unraid-Servers geleitet.


Soweit so gut, nur komme ich via Browser immer lediglich auf die Unraid-Weboberfläche. Es ist so, als würde NPM gar nicht greifen und mich nicht zum Dockercontainer umleiten. Ich will die Container lediglich intern im Netz erreichen, nicht außerhalb.

 

Habt ihr eine Idee, wie ich das am charmantesten lösen kann? 


Lieben Dank im Voraus.

Solved by MAM59

14 minutes ago, Mimika said:

im DNS Server den Namen Dashboard auf die IP des Unraid-Servers geleitet.

Müsste doch eigentlich aber an die IP von npm geleitet werden?!

  • Author
5 minutes ago, jj1987 said:

Müsste doch eigentlich aber an die IP von npm geleitet werden?!

Der NPM hat die gleiche IP wie der Unraidserver, da ebenfalls Dockercontainer. :)

  • Community Expert
8 hours ago, Mimika said:

Der NPM hat die gleiche IP wie der Unraidserver, da ebenfalls Dockercontainer. :)

Aber doch wohl nicht dieselben Ports...

Der NPM ermittelt die Weiterleitungen anhand der Hostnamen, Du darfst also die internen Seiten dann nicht über IP Adresse aufrufen, sondern musst den Namen nehmen.

(Warum jemand allerdings intern unbedingt verschlüsseln will, erschliest sich mir nicht ?!?!?)

Und bei den Namen musst Du aufpassen, sie müssen ÜBERALL auflösbar sein, nicht nur intern! Es ist also quasi unmöglich, über NPM einen Host einzubinden, der NICHT über Internet erreichbar ist.

(Wenn Die Auflösung / Weiterleitung nicht funktioniert, landest Du je nach Einstellung im NPM entweder auf der "Homepage", einer Fehlerseite oder auf einer zentralen Umleitungsseite. Aber das hast Du ja inzwischen selber rausgefunden 🙂 )

 

Edited by MAM59

  • Community Expert

Ich mache das so bzw in dem Thread sind noch weitere Lösungsvorschläge:

 

  • Author
14 hours ago, MAM59 said:

(Warum jemand allerdings intern unbedingt verschlüsseln will, erschliest sich mir nicht ?!?!?)

 

Weil ich intern einige Seiten habe und es nervig ist, wenn man bestätigen muss, dass die Verbindung unsicher ist. :)

14 hours ago, MAM59 said:

Und bei den Namen musst Du aufpassen, sie müssen ÜBERALL auflösbar sein, nicht nur intern! Es ist also quasi unmöglich, über NPM einen Host einzubinden, der NICHT über Internet erreichbar ist.

Das erklärt es... :( schade 

 

 

2 hours ago, mgutt said:

Ich mache das so bzw in dem Thread sind noch weitere Lösungsvorschläge:

Oh, danke. Ich schaue es mir auf jeden Fall an.

  • Community Expert
11 minutes ago, Mimika said:

Das erklärt es... :( schade 

na ja, ist ja auch logisch, oder?

Du willst die Zertifikate von Letsencrypt.

Wo sind die? richtig: im Internet

Wie werden die überprüft bei der Ausstellung/Verlängerung? richtig: per Rückwärtsverbindung des Zertifikatiservers (aka: Die prüfen, ob es den Host auch gibt und ob er erreichbar ist).

 

Somit geht das Ganze nur, für "offene" Systeme.

(Du kannst allerdings auch die Lebenszeit damit verwenden, rauszukriegen, von welchen Adressen die Tests kommen und nur die im Firewall durchlassen, aber, das ist wahrscheinlich ein sehr müssiges und fehlerträchtiges Unterfangen)

 

Kurzum: man kann nicht alles haben 🙂

  • Author
2 minutes ago, MAM59 said:

Du willst die Zertifikate von Letsencrypt.

 

Ne, die Zertifikate meiner CA würden hier gänzlich ausreichen :)

Allerdings kann ich via DNS nicht auf Ports leiten, das ist das blöde dabei. Daher dachte ich, wenn ich via Name auf die IP des Unraids komme, dass der NPM mit meinem intern ausgestelltem Zertifikat die Weiterleitung (und zwar als sichere Verbindung) zu den entsprechenden Dockercontainer übernimmt.

Aber offenbar geht es leider nur übers Internet. :(

  • Community Expert
  • Solution
2 minutes ago, Mimika said:

Ne, die Zertifikate meiner CA würden hier gänzlich ausreichen :)

Aber die kannste gar nicht in NPM installieren. 

 

Da musse Dir dann schon was Eigenes basteln.  NPM ist ja eigentlich nur ein NGINX mit CERTBOT und ein paar Skripten, die die Konfigurationsdateien für NGINX automatisch erzeugen (und per cron den Certbot aufrufen um das Renew zu machen). Ist kein Hexenwerk.

 

Das Namensproblem bleibt Dir aber trotzdem. Der Reverse Proxy nimmt ja alle Verbindungen über dieselber Adresse/Port an und unterscheidet immer nur nach Namen in der Anforderung wohin er weiterleiten soll.

 

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.