nginxproxymanager vs proxy von der Synology

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

daschmidt94

Benutzer
Registriert
17. Mai 2020
Beiträge
266
Reaktionspunkte
19
Punkte
24
Guten Morgen,

zurzeit läuft auf einem Raspberry ein Nginxproxymanager in einem Docker.

Nun bin ich am überlegen, ob es nicht einfacher/sichriger ist den Proxymanager von der Synology zu verwenden und über die Firewall auch von der DS nur bestimmte Länder freizugeben. Da im Nginxproxymanager keine Geoip gesperrt werden können.

Was ist eure Meinung dazu?

MFG
 
Ich verwende den NGINX RP auch in Docker. Aber in einer VM unter Proxmox. Da hab ich noch die Proxmox Firewall vor der VM.
Der NGINX der Synology ist halt im Umfang leicht beschränkt (zumindest mit dem, was auf der GUI geht).
Ich verwende meinen RP nur intern. Von extern ausschließlich VPN.
 
  • Like
Reaktionen: daschmidt94
  • Like
Reaktionen: daschmidt94
Ich nutze auch SWAG inklusive der Maxmind Geo Block und Crowdsecurity. Damit ich nicht immer per SSH die Configs anpassen muss, habe ich mir einen weiteren Container aufgesetzt um per Weboberfläche (nur intern) die bearbeiten zu können.
 
  • Like
Reaktionen: daschmidt94
SWAG hier
Crowdsec einrichtung wird hier beschrieben.
Maximind hier.

Wenn gewünscht kann ich auch gerne meinen Stack posten, aber davon sind ja die Configs nicht angepasst. Man muss sich bisschen Zeit nehmen und reinlesen.
 
  • Like
Reaktionen: daschmidt94
danke werde ich mir bei Gelegenheit mal anschaun
 
Hier mal mein kompletter Stack. Da sind paar optionale Container drin.
Code:
version: "2.1"
services:
  crowdsec:
    image: crowdsecurity/crowdsec:latest
    container_name: crowdsec
    environment:
      - GID=1000
      - COLLECTIONS=crowdsecurity/nginx crowdsecurity/http-cve crowdsecurity/whitelist-good-actors
      - CUSTOM_HOSTNAME=<HOSTNAME>
    volumes:
      - /home/docker/docker/swag/crowdsec/config:/etc/crowdsec:rw
      - /home/docker/docker/swag/crowdsec/data:/var/lib/crowdsec/data:rw
      - /home/docker/docker/swag/config/log/nginx:/var/log/swag:ro
      - /home/docker/docker/swag/config/log/syslog:/var/log/syslog:ro
      - /var/log:/var/log/host:ro    
    restart: unless-stopped
    logging:
      driver: syslog
      options:
        syslog-address: "udp://192.168.22.5:514"
        tag: 'crowdsec'
 
  swag:
    image: linuxserver/swag:latest
    container_name: swag
    restart: unless-stopped
    cap_add:
      - NET_ADMIN
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Berlin
      - DOCKER_MODS=linuxserver/mods:swag-dashboard|linuxserver/mods:swag-auto-reload|linuxserver/mods:swag-maxmind|linuxserver/mods:swag-crowdsec
      - CROWDSEC_API_KEY=<CROWDSEC_API_KEY>
      - CROWDSEC_LAPI_URL=http://crowdsec:8080
      - MAXMINDDB_LICENSE_KEY=<MAXMINDDB_LICENSE_KEY>
      - URL=<DEINE-DOMAIN>
      - SUBDOMAINS=wildcard
      - EXTRA_DOMAINS=<WEITERE-DOMAINS-FALLS-VORHANDEN>
      - VALIDATION=dns #WIE DAS LE ZERTIFIKAT GEHOLT WERDEN SOLL
      - DNSPLUGIN=cloudflare #DOMAIN ANBIETER
      - PROPAGATION=30
      - EMAIL=<DEINE-EMAIL-FÜR-LE>
    volumes:
      - /home/docker/docker/swag/config:/config
    ports:
      - 443:443
      - 80:80
      - 81:81
    dns:
      - 192.168.22.1
    logging:
      driver: syslog
      options:
        syslog-address: "udp://192.168.22.5:514"
        tag: 'swag'
 
  ### AB HIER OPTIONAL
  tailon:
    ports:
      - '5002:80'
    container_name: tailon
    volumes:
      - /home/docker/docker/swag/config/log/syslog:/log/syslog
      - /home/docker/docker/swag/config/log/nginx/access.log:/log/nginx/access.log
      - /home/docker/docker/swag/config/log/nginx/unauthorized.log:/log/nginx/unauthorized.log
      - /home/docker/docker/swag/config/log/nginx/error.log:/log/nginx/error.log
    image: ghcr.io/kmlucy/docker-tailon
    restart: unless-stopped

  #WENN DAS NICHT VERWENDET WIRD, DANN MUSS DER TEIL MIT "loggin:" entfernt werden
  syslog-ng:
    image: lscr.io/linuxserver/syslog-ng:latest
    container_name: syslog-ng
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Berlin
    volumes:
      - /home/docker/docker/swag/syslog:/config
      - /home/docker/docker/swag/config/log/syslog:/var/log #optional
    ports:
      - 514:5514/udp
      - 601:6601/tcp
      - 6514:6514/tcp
    restart: unless-stopped

  cloudcmd:
    user: "1000:1000"
    container_name: cloudcmd
    ports:
      - 9080:8000
    volumes:
      - /home/docker/docker/swag/cloudcmd:/root
      - /home/docker/docker/swag/config:/mnt/swag
    image: coderaiser/cloudcmd
    restart: unless-stopped
    logging:
      driver: syslog
      options:
        syslog-address: "udp://192.168.22.5:514"
        tag: 'cloudcmd'

Die Container tailon, syslog-ng und cloudcmd werden für den Stack nicht benötigt. Diese erleichtern mir nur die Verwaltung.
Tailon: Zeigt die Logs im Webbrowser an.
Syslog-NG: Empfängt die Logs von allen Containern. Könnte dann für Fail2Ban Integration verwendet werden. Meine Config für Syslog
CloudCMD: Filebrowser. Zugriff auf die Configs über den Browser inklusive Git. Kann so meine Configs direkt commiten.

Aber der Stack alleine bringt nicht so viel, wenn die Configs dazu fehlen. Ohne die Anleitung zu studieren wird der Stack nicht direkt starten.

Mein Stack läuft in einer Ubuntu-Server VM in Proxmox. Ob alle Stacks auf einem RPI laufen weiß ich nicht.
 
  • Like
Reaktionen: daschmidt94
danke,

noch eine "dumme" Frage, macht es sinn, dies in einer VM auf der Synology direkt zu machen mit einem Debian Lite oder ist das nicht ratsam?

Da
 
Auf der DS selbst ist 1. die Docker Version und der Kernel sehr alt und 2. der Port 80/443 vom internen RP belegt. Deshalb würde ich es definitiv in einer VM machen bzw. mache das auch selbst so
 
dachte evtl. Sicherheitstechnisch.


Dann werde ich mich da mal versuchen.

Mal schauen ob das was wird
 
Sicherheitstechnisch wäre es sogar besser. Weil wenn was sein sollte, dann ist man "nur" auf der VM und kommt nicht auf den Host.
 
meinte mit Sicherheitstechnisch, dass die VM auf der Synology liegt und nicht auf einem externen Gerät
 
Ich hänge mich hier mal ran. Ich wollte letztens den nginx Proxy Manager mal in einem Proxmox Container installieren, Muss da echt jede Subdomain extra anlegen? Ich habe nämlich keine Möglichkeit gefunden, ein Wildcard-Zertifikat anzufordern. Ich wollte das erstmal mit einer Testdomain von DuckDNS machen, bevor ich meine normale Domain dafür nutze. Und das geht dann sicherlich auch nur per DNS-Challenge, nehme ich mal an?
 
  • Like
Reaktionen: MattCB und alexhell

Additional post fields

 

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