Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Nextcloud und Bitwarden selbst gehostet

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Nextcloud und Bitwarden selbst gehostet

    This topic has been deleted. Only users with topic management privileges can see it.
    • wendy2702
      wendy2702 last edited by

      Hi,

      Ich habe eine Nextcloud Installation in Proxmox welche per Domain erreichbar ist und letsencrypt nutzt.

      Jetzt versuche ich verzweifelt auf einem anderen Proxmox Server in einem Container Bitwarden zu installieren was grundsätzlich lokal mit IP Adresse funktioniert.

      Stelle ich jetzt auf Domain und letsencrypt um schlägt das Downloaden der certificate fehl.

      Wenn ich die USG logfile Einträge richtig interpretiere versucht letsencrypt immer mit der Nextcloud installieren zu kommunizieren.

      Port forwarding ist im USG für beide Installationen eingerichtet.

      Jemand zufällig diese oder eine ähnliche Konstellation laufen und kann mit einen Tip geben was ich machen muss damit die CERT Erstellung funktioniert und ich Bitwarden dann über seine eigene Domain erreichen kann?

      Danke und Gruß

      BananaJoe T 3 Replies Last reply Reply Quote 0
      • BananaJoe
        BananaJoe Most Active @wendy2702 last edited by

        @wendy2702 also, Lets Encrypt auf dem System welches sich das Zertifikat holt (oder erneuert) muss von außen per Port 80 und 443 erreichbar sein.
        Simpel erklärt beantragt die Software ein Zertifikat. Die Server von Lets Encrypt fordern einen Beweis das man über die Domäne verfügt und fordern an das eine bestimmte Datei bereit gestellt wird über den DNS-Namen. Diese wird dann über Port 80 bereit gestellt.

        Ergo muss für ein solchen Zertifikat Port 80 (und 443 meine ich) von außen direkt erreichbar sein.
        Bei 2 Servern hinter einer IPv4 Adresse kann das nicht gehen. IPv6 würde gehen.

        Bei mir kommt ein 3. System mit einem (Apache) Reverse Proxy zum Einsatz. Dieser ist per Port 80 und 443 von außen erreichbar und beantragt auch die Zertifikate. Die Systeme dahinter sind mit selbstsignierten oder unverschlüsselt intern erreichbar. Der Reverse Proxy reicht die Anfragen von außerhalb zu den internen Systemen weiter, je nachdem mit welchen DNS-Namen der Aufruf erfolgte.
        Mein System macht das auch für IPv6 auch wenn das eigentlich nicht nötig wäre. Ich wollte aber nicht per IPv4 über den Proxy und per IPv6 daran vorbei, unter anderem weil ich auch noch GeoIP-Blocking anwende (meine Cloud-Server sind nur aus Deutschland erreichbar).

        Wenn ich du wäre, würde ich also eine zusätzlichen Reverse-Proxy VM nutzen.

        1 Reply Last reply Reply Quote 0
        • T
          tritor @wendy2702 last edited by

          @wendy2702
          Ähnlich wie BananaJoe nutze ich einen reverse proxy Server.
          Bei mir läuft auf einem separaten Intel Nuc der Nginx Reverse Proxy Manager.
          Sehr einfach zu bedienen und die Certs von lets encrypt lassen sich direkt erstellen und werden auch erneuert.

          Und weit weniger Portforwarding im Router.

          Grüße

          1 Reply Last reply Reply Quote 0
          • wendy2702
            wendy2702 last edited by wendy2702

            Danke für eure Antworten.

            Habt ihr zufällig einen Link der die Einrichtung für Reverse Proxy noobs gut beschreibt?

            @tritor sagte in Nextcloud und Bitwarden selbst gehostet:

            Nginx Reverse Proxy Manager

            Sehe ich das richtig das der Manager nur als Docker läuft?

            Wszene 1 Reply Last reply Reply Quote 0
            • Wszene
              Wszene @wendy2702 last edited by

              @wendy2702 sagte in Nextcloud und Bitwarden selbst gehostet:

              Sehe ich das richtig das der Manager nur als Docker läuft?

              Ja leider
              Ich nutze ihn auch und bin sehr zufrieden
              Ich hatte früher einen Reverse Proxy ohne GUI laufen das war aber immer sehr umständlich
              Daher habe ich auch zum NPM gewechsel
              Wenn du Bitwarden nutzen möchtest hast du ja eh schon Docker im Einsatz den gibt es ja leider auch nur als Docker

              1 Reply Last reply Reply Quote 0
              • BananaJoe
                BananaJoe Most Active @wendy2702 last edited by BananaJoe

                @wendy2702 ich hab das zwar aufgeworfen aber kann dir hierbei wohl nicht viel weiterhelfen.
                Ich nutze eine Ubuntu 20.04 VM mit installiertem ISPConfig (das ist so ein Multi-Webseiten-Hosting-Tool) um Subdomänen anzulegen und mit einem Lets Encrypt Zertifikat zu beglücken und ergänze dann um eine Revers-Proxy-Konfiguration. Wenn es etwas leichtes ist dann per Einträge in der Web-GUI, ansonsten manipuliere ich die Konfigurationsdateien direkt.

                Mit Reverse Proxy klappt oft das Erneuern der Zertifikate nicht mehr weshalb ich ein einen extra Cronjob nutze der bei bedarf den Webserver anhält und das Lets-Encrypt-Tool übernimmt für kurze zeit den Port 80/443

                Die Sophos-UTM Firewall die es auch als virtuelle Appliance gibt (privat kostenlos aber mit eingeschränkter Geräteanzahl) kann das auch, nutze ich für meinen Mailserver.

                Ist aber alles nicht von jetzt auf gleich gelernt. Das ISPConfig bräuchte ich eigentlich nicht, nutze ich mehr aus Bequemlichkeit weil dann das Grundgerüst nach ein paar Mausklicks steht.

                Mit meiner Liebe zum Apache Reverse Proxy stehe ich gefühlt eh oft einsam da, gefühlt schreien alle anderen immer NGINX

                So eine spezialisierte Docker-VM wäre da sicherlich einfacher.

                1 Reply Last reply Reply Quote 0
                • wendy2702
                  wendy2702 last edited by wendy2702

                  OK. Erneut danke für eure Antworten.

                  Der NGINX Manager läuft jetzt in eine CT in Proxmox allerdings kann ich kein Certifikat von Letsencrypt bekommen.

                  Erhalte immer nur "Internal error". Wie ich im Docker an das logfile komme habe ich noch nicht rausfinden können 😞

                  Nebenbei, ich nutze Securepoint DNS und habe zum updaten aktuell auf meiner Nextcloud ein kleines Script laufen. Das aktualisiert aber nur die IP4 Adresse, nutzt eventuell jemand diesen anbieter und hat eine Idee wie ich auch die IPv6 aktualisieren kann?

                  1 Reply Last reply Reply Quote 0
                  • OliverIO
                    OliverIO last edited by OliverIO

                    ich habe nextcloud/letsencrypt/reverseproxy/fail2ban/plus eine interne webseite
                    alles in einem docker-compose-service laufen (in portainer heisst es stacks)
                    über das docker-image von https://hub.docker.com/r/jwilder/nginx-proxy
                    lassen sich ganz einfach weitere dienste unter einem reverse proxy zusammenfassen.

                    evtl. noch ein kleinen hinweis zur Sicherheit, die man hier wissen sollte:
                    1 )
                    hiermit gibt man dem container die möglichkeit mit docker direkt zu kommunizieren. wird hier benötigt um die anderen container herauszufinden die einen virtual host haben wollen. allerdings kann der container dann alles mit docker machen was er will. daher hier zumindest mit ro=readonly eingeschränkt
                    - /var/run/docker.sock:/tmp/docker.sock:ro

                    2 )

                    Mit dem Abschnitt
                    cap_add:
                    - NET_ADMIN
                    - NET_RAW
                    erhält der Container besondere Privilegien. In dem Fall kann fail2ban die iptables (also der firewall) des hostsystems verändern.

                    dem Anbieter sollte man vertrauen, bzw. den erstellungsweg des containers reviewen, damit da nix böses eingeschmuggelt wird.


                    hier mal mein docker-compose
                    sensible bereiche habe ich mit *** versehen

                    version: '3'  
                    
                    services:
                    
                      nginx-proxy:
                        image: jwilder/nginx-proxy:alpine
                        labels:
                          - "com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy=true"
                        container_name: nextcloud-proxy
                        networks:
                          nextcloud_network:
                       
                        ports:
                          - 80:80
                          - 443:443
                        volumes:
                          - /home/iobroker/docker/volume/nextcloud/nginx/log:/var/log/nginx
                          - /home/iobroker/docker/volume/nextcloud/nginx/vhost.d:/etc/nginx/vhost.d:rw
                          - /home/iobroker/docker/volume/nextcloud/nginx/html:/usr/share/nginx/html:rw
                          - /home/iobroker/docker/volume/nextcloud/nginx/certs:/etc/nginx/certs:ro
                          - /home/iobroker/docker/volume/nextcloud/nginx/myconf/mynginx.conf:/etc/nginx/conf.d/my_proxy.conf:ro
                          - /home/iobroker/docker/volume/nextcloud/nginx/myconf/nginx.tmpl:/app/nginx.tmpl:ro
                          - /etc/localtime:/etc/localtime:ro
                          - /var/run/docker.sock:/tmp/docker.sock:ro
                    
                        restart: unless-stopped
                      letsencrypt:
                        image: jrcs/letsencrypt-nginx-proxy-companion
                        container_name: nextcloud-letsencrypt
                        depends_on:
                          - nginx-proxy
                        networks:
                          - nextcloud_network
                        volumes:
                          - /home/iobroker/docker/volume/nextcloud/nginx/vhost.d:/etc/nginx/vhost.d:rw
                          - /home/iobroker/docker/volume/nextcloud/nginx/html:/usr/share/nginx/html:rw
                          - /home/iobroker/docker/volume/nextcloud/nginx/certs:/etc/nginx/certs:rw
                          - /etc/localtime:/etc/localtime:ro
                          - /var/run/docker.sock:/var/run/docker.sock:ro
                        restart: unless-stopped
                    
                      mysql:
                        image: mariadb
                        container_name: nextcloud-mysql
                        networks:
                          - nextcloud_network
                        volumes:
                          - /home/iobroker/docker/volume/nextcloud/mysql:/var/lib/mysql
                          - /etc/localtime:/etc/localtime:ro
                        environment:
                          - MYSQL_ROOT_PASSWORD=****
                          - MYSQL_PASSWORD=****
                          - MYSQL_DATABASE=****
                          - MYSQL_USER=****
                        restart: unless-stopped
                    
                      nextcloud-app:
                        image: nextcloudsmbc:latest
                        container_name: nextcloud-app
                        networks:
                          - nextcloud_network
                        depends_on:
                          - letsencrypt
                          - nginx-proxy
                          - mysql
                        volumes:
                          - /home/iobroker/docker/volume/nextcloud/app/html:/var/www/html
                          - /home/iobroker/docker/volume/nextcloud/app/config:/var/www/html/config
                          - /home/iobroker/docker/volume/nextcloud/app/custom_apps:/var/www/html/custom_apps
                          - /home/iobroker/docker/volume/nextcloud/app/data:/var/www/html/data
                          - /home/iobroker/docker/volume/nextcloud/app/themes:/var/www/html/themes
                          - /etc/localtime:/etc/localtime:ro
                        environment:
                          - VIRTUAL_HOST=****
                          - LETSENCRYPT_HOST=****
                          - LETSENCRYPT_EMAIL=****
                        restart: unless-stopped
                        
                      fail2ban:
                        container_name: fail2ban
                        image: crazymax/fail2ban:latest
                        restart: always
                        network_mode: host
                        security_opt:
                          - no-new-privileges:true
                        cap_add:
                          - NET_ADMIN
                          - NET_RAW
                        volumes:
                          - /var/log/docker:/var/log/docker
                          - /home/iobroker/docker/volume/nextcloud/fail2ban/data:/data
                          - /home/iobroker/docker/volume/nextcloud/fail2ban/jail.local:/etc/fail2ban/jail.local
                          - /home/iobroker/docker/volume/nextcloud/nginx/log:/var/log/nginx
                          - /home/iobroker/docker/volume/nextcloud/app/data/nextcloud.log:/var/log/nextcloud/nextcloud.log
                    
                        environment:
                          - TZ=Europe/Berlin
                          # - F2B_LOG_LEVEL=DEBUG
                          - F2B_DB_PURGE_AGE=1d # Age at which bans should be purged from the database
                          - F2B_IPTABLES_CHAIN=DOCKER-USER # Specifies the iptables chain to which the Fail2Ban rules should be added 
                        
                      linklist:
                        image: nginx:alpine
                        container_name: linklist
                        networks:
                          - nextcloud_network
                        depends_on:
                          - nginx-proxy
                        volumes:
                          - /home/olinuc/projects/linklist/output/:/usr/share/nginx/html:ro
                          - /home/iobroker/docker/volume/linklist/nginx/conf.d/:/etc/nginx/conf.d:ro
                          - /etc/localtime:/etc/localtime:ro
                    
                        environment:
                          - VIRTUAL_HOST=***lokale Domäne***
                        restart: unless-stopped
                    
                    networks:
                      nextcloud_network:
                      dockerMACVLAN:
                        external: true    
                    

                    1 Reply Last reply Reply Quote 0
                    • I
                      ignis-draco last edited by

                      Ich habe den nginx proxy manaager in einem LC laufen ohne Docker.
                      Sofern man in der lage ist bash scripte zu lesen findet man Hier eine Anleitung. Und da ich mich nicht an Probleme erinnern kann sollte das auch relativ problemlos gehen.

                      1 Reply Last reply Reply Quote 0
                      • wendy2702
                        wendy2702 last edited by

                        Danke erneut.

                        Der NGINX Proxy Manager läuft jetzt.

                        Jetzt habe ich in einem ersten Schritt versucht meine Nextcloud installation anzupassen weil die Erreichbarkeit wichtig ist.

                        Allerdings hat das nicht geklappt.

                        Jemand ne Idee oder kann Hilfestellung zur Umstellung der Nextcloud Einstellungen geben? Meine Nextcloud läuft mit Apache2.

                        Wenn das funktioniert kann ich mit Bitwarden weiter machen.

                        Meister Mopper 1 Reply Last reply Reply Quote 0
                        • Meister Mopper
                          Meister Mopper @wendy2702 last edited by

                          @wendy2702
                          Was steht in der config.php unter trusted domains?

                          wendy2702 1 Reply Last reply Reply Quote 0
                          • wendy2702
                            wendy2702 @Meister Mopper last edited by wendy2702

                            @meister-mopper sagte in Nextcloud und Bitwarden selbst gehostet:

                            @wendy2702
                            Was steht in der config.php unter trusted domains?

                            Aktuell wieder das:

                             'trusted_domains' =>
                              array (
                                0 => '192.168.178.*',
                                1 => 'duxxxxxxxxxxxxay.com',
                              ),
                            
                            

                            nextcloud läuft intern auf der .38, der NGINX Reverse Proxy auf der .34

                            Meister Mopper 1 Reply Last reply Reply Quote 0
                            • Meister Mopper
                              Meister Mopper @wendy2702 last edited by Meister Mopper

                              @wendy2702 Schreib mal den nginx proxy manager dazu 2 => 'IP',

                              wendy2702 1 Reply Last reply Reply Quote 0
                              • wendy2702
                                wendy2702 @Meister Mopper last edited by

                                @meister-mopper sagte in Nextcloud und Bitwarden selbst gehostet:

                                @wendy2702 Schreib mal den nginx proxy manager dazu 2 => 'IP',

                                Wenn ich das

                                  'trusted_domains' =>
                                  array (
                                    0 => '192.168.178.*',
                                    1 => 'duffysservice.firewall-gateway.com',
                                    2 => '192.168.178.34',
                                
                                

                                mache kommt das:

                                447e2570-dc9b-4513-8ae8-21e916281c61-grafik.png

                                Das hatte ich schonmal und die Cookies gelöscht. Hat leider nicht geholfen.

                                Meister Mopper 1 Reply Last reply Reply Quote 0
                                • Meister Mopper
                                  Meister Mopper @wendy2702 last edited by

                                  @wendy2702 sagte in Nextcloud und Bitwarden selbst gehostet:

                                  duffysservice.firewall-gateway.com

                                  Bei mir läufts mit diesen drei domains. Wie hast Du den NPM für nextcloud konfiguriert?

                                  wendy2702 1 Reply Last reply Reply Quote 0
                                  • wendy2702
                                    wendy2702 @Meister Mopper last edited by wendy2702

                                    @meister-mopper

                                    bc23526d-c392-481c-bbc6-3d05e268fbca-grafik.png

                                    5505f137-dfc0-449a-b1fd-a3c781a9235c-grafik.png

                                    Wie sieht denn deine config.php aus? bei mir so:

                                    root@Nextcloud:/var/www/nextcloud# cat  config/config.php
                                    <?php
                                    $CONFIG = array (
                                     'instanceid' => 'oc1pfu1ifcq8',
                                     'passwordsalt' => '/jxSxxx8Cm/jsl',
                                     'secret' => 'AtgB/4riPxxxxM49TR9',
                                     'trusted_domains' =>
                                     array (
                                       0 => '192.168.178.*',
                                       1 => 'duxxxxxxxcom',
                                       2 => '192.168.178.34',
                                     ),
                                     'datadirectory' => '/mnt/data',
                                     'dbtype' => 'mysql',
                                     'version' => '21.0.9.1',
                                     'overwrite.cli.url' => 'https://192.168.178.38',
                                     'dbname' => 'nextcloud',
                                     'dbhost' => 'localhost',
                                     'dbport' => '',
                                     'dbtableprefix' => 'oc_',
                                     'mysql.utf8mb4' => true,
                                     'dbuser' => 'nextclouduser',
                                     'dbpassword' => 'oxxxxer',
                                     'installed' => true,
                                     'default_phone_region' => 'DE',
                                     'memcache.local' => '\\OC\\Memcache\\Redis',
                                     'memcache.locking' => '\\OC\\Memcache\\Redis',
                                     'redis' =>
                                     array (
                                       'host' => '/var/run/redis/redis-server.sock',
                                       'port' => 0,
                                       'timeout' => 0.0,
                                     ),
                                     'maintenance' => false,
                                     'theme' => '',
                                     'loglevel' => 2,
                                     'mail_smtpmode' => 'smtp',
                                     'mail_smtpsecure' => 'ssl',
                                     'mail_sendmailmode' => 'smtp',
                                     'mail_from_address' => 'maxxxxx0',
                                     'mail_domain' => 'gmx.de',
                                     'mail_smtpauthtype' => 'LOGIN',
                                     'mail_smtpauth' => 1,
                                     'mail_smtphost' => 'mail.gmx.net',
                                     'mail_smtpport' => '465',
                                     'mail_smtpname' => 'mxxxxxgmx.de',
                                     'mail_smtppassword' => 'Sxxxxx2',
                                     'updater.release.channel' => 'stable',
                                     'log_type' => 'file',
                                     'logtimezone' => 'Europe/Berlin',
                                     'logfile' => '/var/log/nextcloud.log',
                                     'syslog_tag' => 'Nextcloud',
                                    );
                                    
                                    

                                    Was hast du in

                                    /etc/apache2/sites-available/nextcloud-ssl.conf
                                    
                                    Meister Mopper 3 Replies Last reply Reply Quote 0
                                    • Meister Mopper
                                      Meister Mopper @wendy2702 last edited by

                                      @wendy2702 Schonmal websocket aktiviert?

                                      1 Reply Last reply Reply Quote 0
                                      • Meister Mopper
                                        Meister Mopper @wendy2702 last edited by

                                        @wendy2702 sagte in Nextcloud und Bitwarden selbst gehostet:

                                        Wie sieht denn deine config.php aus?

                                        Sorry, kann ich jetzt nicht zeigen, bin nicht zuhause.

                                        1 Reply Last reply Reply Quote 0
                                        • Meister Mopper
                                          Meister Mopper @wendy2702 last edited by

                                          @wendy2702 sagte in Nextcloud und Bitwarden selbst gehostet:

                                          Was hast du in
                                          /etc/apache2/sites-available/nextcloud-ssl.conf

                                          Ich lass die nc über nginx laufen.

                                          wendy2702 1 Reply Last reply Reply Quote 0
                                          • wendy2702
                                            wendy2702 @Meister Mopper last edited by

                                            @meister-mopper OK.

                                            WebSockets bleibt unverändert

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            733
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            bitwarden domain letsencrypt ssl https nextcloud
                                            7
                                            20
                                            2592
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo