Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Ich würde gerne mein Monitoring System (Zabbix) übers Internet erreichbar machen. Es ist im lokalen Netzwerk erreichbar unter "http://[Servername]/zabbix".
Ich habe probiert es freizugeben, allerdings habe ich keine Möglichkeit gefunden wie man NPM sagen kann, dass er bei einem Aufruf folgendes Abrufen soll:
"http://[Server-IP]:80/zabbix]"
http würde ich mal so gar nicht nach außen freigeben. Schon mal über ein VPN nachgedacht? Mit pivpn.io ist es kinderleicht ein Wireguard Tunnel einzurichten.
Ich würde gerne mein Monitoring System (Zabbix) übers Internet erreichbar machen. Es ist im lokalen Netzwerk erreichbar unter "http://[Servername]/zabbix".
Ich habe probiert es freizugeben, allerdings habe ich keine Möglichkeit gefunden wie man NPM sagen kann, dass er bei einem Aufruf folgendes Abrufen soll:
"http://[Server-IP]:80/zabbix]"
Und möchtest das ganze jetzt aus dem Internet erreichbar haben, als bspw. unter http(s)://zabbix.example.com
Dann wäre ein Reverseproxy eine mögliche Lösung (Nginx bspw.): Du richtest eine Domain ein, lässt die auf den Server zeigen auf dem der Reverseproxy läuft (dieser muss natürlich aus dem Internet erreichbar sein) und definierst dort dann eine Site, die den "internen" Server dann als Upstream hat. Auf diesem Reverseproxy-Server kann dann auch Letsencrypt laufen oder du kannst ein Zertifikat für die (Sub)Domain kaufen.
Was dafür natürlich notwendig ist, ist ein entsprechendes Netzwerkkonzept, dass alles entsprechend absichert.
Dann wäre ein Reverseproxy eine mögliche Lösung (Nginx bspw.): Du richtest eine Domain ein, lässt die auf den Server zeigen auf dem der Reverseproxy läuft (dieser muss natürlich aus dem Internet erreichbar sein) und definierst dort dann eine Site, die den "internen" Server dann als Upstream hat. Auf diesem Reverseproxy-Server kann dann auch Letsencrypt laufen oder du kannst ein Zertifikat für die (Sub)Domain kaufen.
Genau das habe ich schon, klappt bei anderen Servern auch problemlos (wo der Service auf einem bestimmten Port läuft bzw. auf der Standard-Seite http://server.local läuft). Sobald der Service aber hinter einem "/" steht kann ich das dem Nginx Proxy Manager nicht sagen
Genau das habe ich schon, klappt bei anderen Servern auch problemlos (wo der Service auf einem bestimmten Port läuft bzw. auf der Standard-Seite http://server.local läuft). Sobald der Service aber hinter einem "/" steht kann ich das dem Nginx Proxy Manager nicht sagen
nur ein vereinfachtes Beispiel gewesen, oder in der Tat so? Dann könntest du dort ja eine dauerhafte Weiterleitung einrichten. Alternativ im Apache eine eigene Siteconfig für Zabbix, die die Inhalte auf einem alternativen Port ausliefert? Das wiederum würde mit proxy_pass gehen.
Also bspw. (im Reverseproxy):
Code:
location / {
set $upstream http://interneip:8080;
proxy_pass $upstream;
# ggf. ergänzt um
proxy_redirect http://interneip:8080 https://zabbix.example.com;
}
Ergänzung ()
Ergänzung:
Du kannst mit dieser Lösung "trotzdem" mit https://zabbix.example.com/zabbix arbeiten, aber ich denke das weißt du schon. Das einzige Problem dabei ist, dass damit natürlich auch der Webserver insgesamt unter dem Namen erreichbar ist. Also auch
wenn das nicht passieren darf, geht m.E. kein Weg an einer eigenen Siteconfig im Apache vorbei, wenn es über einen Reverseproxy laufen soll. (Inwiefern VPN o.ä. als alternative Lösung zum Reverseproxy denkbar und möglich wäre, kann ich nicht abschätzen, da fehlt mir das Wissen.)