Hallo,
ich habe eine UDM SE, eine Ugreen NAS und NGINX.
Möchte also Port 80 und 443 auf NGINX umleiten.
Wie muss es in der aktuellen Firmware von der UDM SE eingestellt werden? Fand die Firewall Einstellungen bei unifi früher einfacher ![]()
Danke
Hallo,
ich habe eine UDM SE, eine Ugreen NAS und NGINX.
Möchte also Port 80 und 443 auf NGINX umleiten.
Wie muss es in der aktuellen Firmware von der UDM SE eingestellt werden? Fand die Firewall Einstellungen bei unifi früher einfacher ![]()
Danke
...
Dann musst du eigentlich nur die Weiterleitung vom Proxy (bei mir in der DMZ Zone, IP 10.0.60.10) an die IP des NAS weiterleiten:
...
Das ist aber sehr irreführend formuliert und eigentlich auch falsch. Man erlaubt den Traffic zwischen Proxy und NAS. Weitergeleitet wird da gar nichts in der Firewall durch diese Regeln.
Ansonsten ist der Inhalt der Screenies korrekt und das sollte flutschen ![]()
Das ist aber sehr irreführend formuliert und eigentlich auch falsch. Man erlaubt den Traffic zwischen Proxy und NAS. Weitergeleitet wird da gar nichts in der Firewall durch diese Regeln.
Ansonsten ist der Inhalt der Screenies korrekt und das sollte flutschen
Ja sorry, habe das nebenbei auf der Arbeit geschrieben und mich falsch ausgedrückt.
Hauptsache es sollte so funktionieren... ![]()
Bei mir ist der Wurm drin ![]()
ich kann die Anschlussweiterleitung nicht speichern, es kommt:
Beim Speichern der Änderungen an der Anschlussweiterleitungsregel ist ein Fehler aufgetreten. Port-Weiterleitungsregel an Port 443 kann nicht erstellt werden, da er von der Funktion „Direkte Remote-Verbindung“ verwendet wird. Bitte deaktiviere die Funktion, um die Port-Weiterleitungsregel zu erstellen.
Wie kann ich dies umgehen?
Settings --> Control Plane --> Console --> Advanced
ok, den remote möchte ich allerdings ungern entfernen... gibt es noch eine andere Möglichkeoit?
Vermutlich nur, wenn Du für NGINX andere Ports benutzt.
dies ist meine docker compose:
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
container_name: Nginx
hostname: Nginx # Hostname für den Container
restart: unless-stopped
ports:
- '9980:80' # Public HTTP Port (da 80 ja meistens schon belegt ist)
- '9943:443' # Public HTTPS Port (da 443 ja meistens schon belegt ist)
- '9981:81' # Admin Web Port (Weboberfläche) Ports können natürlich wieder verändert werden
volumes:
- /volume1/docker/nginx/data:/data # Data Verzeichniss
- /volume1/docker/nginx/tmp/le_logs:/tmp/letsencrypt-log # für die LOG dateien
- /volume1/docker/nginx/letsencrypt:/etc/letsencrypt # Hier werden die Zertifikate abgelegt
environment:
- DB_SQLITE_FILE=/data/database.sqlite # Hab mich für die SQLite entschieden. War für mich der einfachste weg.
- USER_ID=1000 # Deine UID (dein Wert, siehe oben)
- GROUP_ID=10 # Deine GID (dein Wert, siehe oben)
- TZ=Europe/Berlin # Zeitzone hinzufügen
labels:
- "com.centurylinklabs.watchtower.enable=true" # Watchtower Label für automatische Updates
networks:
default:
ipv4_address: 192.168.0.123 #Adapt the IP address according to your environment
networks:
default:
name: docker #Customize the name of your MacVlan according to your environment
external: true
im Anhang einmal meine Einstellungen in Unifi - leider klappt es weiterhin nicht... jemand ein Tipp?
Jemand eine Idee?
Du leitest den externen Port 9980 auf 80 intern weiter, laut deiner docker config horcht der Nginx aber auf 9980.
Also musst du im internen Netz auch auf 9980 weiterleiten.
Extern kann es natürlich 9980 sein aber dann funktionieren SSL Zertifikat mit lets encrypt nicht die wollen den Server im Internet auf Port 80
So bei mir ,ich habe den Nginx im hausinternen Netz aber auf 80 und 443 laufen.
danke dir, leider bekomme ich die 443 nicht frei, da ich sonst auf die direkte remote verbindung verzichten müsste... egal wie ich es einstelle, es kommt bei nginx ssl einstellungen immer der fehler: "internal error" ![]()
danke dir, leider bekomme ich die 443 nicht frei, da ich sonst auf die direkte remote verbindung verzichten müsste... egal wie ich es einstelle, es kommt bei nginx ssl einstellungen immer der fehler: "internal error"
Für dein Vorhaben benötigst du keine FW Regel sondern nur Portforwarding. DU musst nicht auf dein Remote verzichten. Abhilfe verschafft dir Nginx Proxy Manager (NPM) als Docker Container. Setze den Haken bei Remote Access und mach ihn bei DIrekt Remote Access raus, somit lässt sich der Port 443 problemlos an dein NPM weiterleiten. Beachten musst du halt, das alle externen Ports wie zB in deinen Fall: 9980, 9943 & 9981 von deiner UDM-SE via Portforwarding an dein Docker weitergeleitet wird. Somit kannst du dir auch ein Zertifikat von Lets Encrypt holen. Wenn noch was unklar ist, melde dich einfach
Hier die docker-compose.yml
networks:
nginx-proxy-manager_default:
external: true
name: "nginx-proxy-manager_default"
services:
nginx-proxy-manager:
container_name: "nginx-proxy-manager-test"
dns:
- "8.8.8.8"
entrypoint:
- "/init"
environment:
- "PATH=/opt/certbot/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- "SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt"
- "OPENRESTY_VERSION=1.21.4.3"
- "CROWDSEC_OPENRESTY_BOUNCER_VERSION=0.1.7"
- "CURL_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt"
- "SUPPRESS_NO_CONFIG_WARNING=1"
- "S6_BEHAVIOUR_IF_STAGE2_FAILS=1"
- "S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0"
- "S6_FIX_ATTRS_HIDDEN=1"
- "S6_KILL_FINISH_MAXTIME=10000"
- "S6_VERBOSITY=1"
- "NODE_ENV=production"
- "NPM_BUILD_VERSION=2.11.2"
- "NPM_BUILD_COMMIT=12d77e3"
- "NPM_BUILD_DATE=2024-05-22 22:49:17 UTC"
- "NODE_OPTIONS=--openssl-legacy-provider"
hostname: "nginx-proxy-manager"
image: "jc21/nginx-proxy-manager:latest"
ipc: "private"
labels:
com.docker.compose.config-hash: "ff396259a43fbc0f5bf57165cf6a874b9ecb951cf670f0be0f0a3f3df453c980"
com.docker.compose.container-number: "1"
com.docker.compose.depends_on: ""
com.docker.compose.image: "sha256:d80fbe2806c85a3fc2e02213d523bb4670f18dbdb43dc2ebcc5d8400d4a01277"
com.docker.compose.oneoff: "False"
com.docker.compose.project: "nginx-proxy-manager"
com.docker.compose.project.config_files: "/data/compose/17/42b3d87e6aa8b93d4883f351bf01d528b8caa3c2/docker-compose.yml"
com.docker.compose.project.working_dir: "/data/compose/17/42b3d87e6aa8b93d4883f351bf01d528b8caa3c2"
com.docker.compose.replace: "ef55ef4c4db69350299f02898181e23bd8fae1d233ed39725d16dd36412cdb08"
com.docker.compose.service: "nginx-proxy-manager"
com.docker.compose.version: "2.20.2"
maintainer: "Jamie Curnow <jc@jc21.com>"
org.label-schema.cmd: "docker run --rm -ti jc21/nginx-proxy-manager:latest"
org.label-schema.description: "Docker container for managing Nginx proxy hosts with a simple, powerful\
\ interface "
org.label-schema.license: "MIT"
org.label-schema.name: "nginx-proxy-manager"
org.label-schema.schema-version: "1.0"
org.label-schema.url: "https://github.com/jc21/nginx-proxy-manager"
org.label-schema.vcs-url: "https://github.com/jc21/nginx-proxy-manager.git"
logging:
driver: "json-file"
options: {}
networks:
- "nginx-proxy-manager_default"
ports:
- "441:443/tcp"
- "86:80/tcp"
- "85:81/tcp"
restart: "unless-stopped"
volumes:
- "/home/benlue/Docker/Nginx-Proxy-Manager/data:/data"
- "/home/benlue/Docker/Nginx-Proxy-Manager/letsencrypt:/etc/letsencrypt"
working_dir: "/app"
version: "3.6"
Display More
PS: Volume Path müsste bei dir angepasst werden!!!
LG
Ben
Danke dir nochmals... habe eben probiert deine compose zu übernehmen und habe die pfade angepasst... allerdings nimmt er dann die ip von meinem switch. wie muss die compose lauten, wenn ich z.b. die 192.168.0.126 haben möchte? habe mehrere varianten probiert, aber bekomme immer fehler im compose
Danke dir nochmals... habe eben probiert deine compose zu übernehmen und habe die pfade angepasst... allerdings nimmt er dann die ip von meinem switch. wie muss die compose lauten, wenn ich z.b. die 192.168.0.126 haben möchte? habe mehrere varianten probiert, aber bekomme immer fehler im compose
Du möchtest nicht wirklich dein Netzwerk mit Docker IPs vermüllen. Docker verwendet 172er Bereich und das ist gut so. Der Dienst ist dann über die normale Server IP:Port erreichbar.
Als Beispiel: Mein Server hat die IP Adresse: 192.168.1.45, darüber läuft Docker Server (Docker/Portainer). Ich erstelle jetzt Nginx Proxy Manager (NPM) mit der Docker IP: 172.25.0.2 und dem Port 80 ist dieser dann zeitgleich über 192.168.1.45:80 erreichbar! Thats is ...
Hier nochmal in Beispiel wie du die NPM Einträge tätigen könntest. Die Geblurten IPs sind PUBLIC IPs
ok, also muss:
networks:
nginx-proxy-manager_default:
external: true
name: "docker"
es klappt zwar in dem fall, bekomme halt aber die 192.x Adresse....
dies klappt leider nicht:
networks:
nginx-proxy-manager_default:
external: true
name: "nginx-proxy-manager_default"
Failed to deploy a stack: compose up operation failed: network nginx-proxy-manager_default declared as external, but could not be found
Er sollte eigendlich das Netzwerk nginx-proxy-manager_default automatisch anlegen. Wenn nicht, versuch mal manuell anzulegen!
LG
dies funktioniert:
ports:
- "441:443/tcp"
- "86:80/tcp"
- "81:81/tcp"
dann kann ich es so aufrufen und mich einloggen: http://192.168.0.254:81
bedeutet, nginx ist nun fertig... (?) und nun fehlen noch die beiden anschlussweiterleitungen in der udm richtig? dort leite ich in meinem fall nun die 80 auf 80 und die 443 auf 443 weiter?
Don’t have an account yet? Register yourself now and be a part of our community!