OPNsense Forum

International Forums => German - Deutsch => Topic started by: ChrisChros on February 04, 2022, 02:42:45 pm

Title: OPNsense Backup auf Nextcloud
Post by: ChrisChros on February 04, 2022, 02:42:45 pm
Hallo zusammen,

ich habe bei mir Nextcloud 23.0.0 auf meinem TrueNAS-System als Plugin laufen. So weit ist alles eingerichtet und läuft auch. Währen der Installation wird auch nginx eingerichtet und es findet ein redirect auf HTTPS statt. Die ganze Zertifikation mit SSL wird eigentlich nicht benötigt da nur von intern zugegriffen werden kann, ist aber Teil der Installationsroutine von dem Plugin.
Ich möchte nun gerne die Backupfunktion von OPNsense nutzen und alles in Nextcloud ablegen. Doch leider bekomme ich keinen Zugriff auf Nextcloud, ich vermute das dies mit dem HTTPS zusammenhängt.

Die eingegebenen Daten sind alle richtig. Dies konnte ich bestätigen, in dem ich die Datei
Code: [Select]
/usr/local/opnsense/mvc/app/library/OPNsense/Backup/Nextcloud.phpmit folgenden Zusätzen versehe:
Code: [Select]
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_SSL_VERIFYPEER => false,

Natürlich ist das nicht die schönste Art weshalb ich das gerne mit Zertifikaten lösen möchte. Zumal die Änderungen wahrscheinlich bei einem Update wieder überschrieben werden.

Woher bekomme ich nun das verwendete Zertifikat von Nextcloud und wie pflege ich diese in OPNsense ein damit der Zugriff klappt?

Danke für eure Unterstützung
Gruß Chris
Title: Re: OPNsense Backup auf Nextcloud
Post by: fabian on February 04, 2022, 07:15:16 pm
Du musst auf der OPNsense ein CA-Zertifikat machen und ein Server-Zertifikat damit erzeugen und signieren. Alternativ kannst du das CA-Zertifikat auch in die OPNsense importieren oder ein öffentliches Zertifikat verwenden.
Title: Re: OPNsense Backup auf Nextcloud
Post by: ChrisChros on February 04, 2022, 07:18:02 pm
OK und woher bekomme ich das CA-Zertifikat um es in OPNsense zu importieren?

Kenne mich mit der ganzen Zertifikatsgeschichte Null aus.
Title: Re: OPNsense Backup auf Nextcloud
Post by: fabian on February 04, 2022, 07:31:05 pm
Kannst du direkt auf der OPNsense erzeugen. Dann ein Server-Zertifikat erzeugen, das mit dem CA-Zertifikat signiert ist und das dann am Webserver, auf dem Nextcloud läuft, installieren. Wichtig dabei ist, dass der interne Hostname oder die IP-Adresse drin steht - je nachdem mit was du zugreifen willst.
Title: Re: OPNsense Backup auf Nextcloud
Post by: ChrisChros on February 04, 2022, 07:42:01 pm
welche IP Adresse, die von OPNsense oder Nextcloud?
Title: Re: OPNsense Backup auf Nextcloud
Post by: fabian on February 04, 2022, 08:15:55 pm
Im Zertifikat immer alles von dem System, auf dem es betrieben wird. Das heiß beim Server-Zertifikat die Daten vom Nextcloud-Server.
Title: Re: OPNsense Backup auf Nextcloud
Post by: ChrisChros on February 04, 2022, 08:50:40 pm
OK, soweit so gut.
Wenn ich das richtig sehe nutz das plugin nginx. In der nginx.conf kann ich sehen wo aktuell die Zertifikate abgelegt sind:
Code: [Select]
# SSL
# ----------

ssl_certificate /usr/local/etc/letsencrypt/live/truenas/fullchain.pem;
ssl_certificate_key /usr/local/etc/letsencrypt/live/truenas/privkey.pem;
# Verify chain of trust of OCSP response using Root CA and Intermediate certs
ssl_trusted_certificate /usr/local/etc/letsencrypt/live/truenas/chain.pem;

muss ich dieser ersetzten?
Kann ich dort hinerlegten Zertifikaten in OPNsense einlesen damit es funtioniert?

Anbei noch ein screenshoot welche Zertifikate in dem Ordner alle sind. hilft das irgendwie weiter?
Title: Re: OPNsense Backup auf Nextcloud
Post by: ChrisChros on February 04, 2022, 11:46:45 pm
So habe es nun hinbekommen. Ich vermute, es ist nicht die schönste Möglichkeit, aber es klappt.
Zuerst habe ich, wie @fabian beschrieben hat, auf der OPNsense ein CA-Zertifikat erstellt und dann ein Server-Zertifikat damit erzeugen und signieren. Bei dem CA und Server-Zertifikat darauf achten das eine entsprechend lange Laufzeit eingetragen ist, somit ist man für die nächsten Jahre gut gewappnet.
Anschließend habe ich user cert und user key von OPNsense exportiert und mit einem Editor geöffnet.

Anschließend über die GUI von TrueNAS das Nextcloud Plugin stoppen. In dem Nextcloud Jail unter
Quote
/usr/local/etc/letsencrypt/live/truenas/
liegen die Zertifikate ab. Dort gibt es einmal fullchain.pem und privatkey.pem.
Das Zertifikat fullchain.pem habe mit nano geöffnet und mit dem Inhalt aus dem exportierten user cert überschrieben. Das Gleiche habe ich auch mit privatkey.pem und dem Inhalt von dem exportierten user key gemacht.
Danach wieder das Plugin gestartet und in OPNsense unter SYSTEM: CONFIGURATION: BACKUPS die benötigten Daten für Nextcloud eingegeben und gespeichert.
et voila das Backup kann wieder in Nextcloud gespeichert werden.

Aktuell habe ich im error.log von nginx noch folgenden Eintrag:
Code: [Select]
2022/02/04 23:17:05 [warn] 91318#101931: "ssl_stapling" ignored, issuer certificate not found for certificate "/usr/local/etc/letsencrypt/live/truenas/fullchain.pem"
Hat da jemand vielleicht noch eine Idee wie ich diese Warnung weg bekomme oder ist das nicht wirklich tragisch, bzw. bei einem selbstsignierten Zertifikat ganz normal?

Gruß Chris
Title: Re: OPNsense Backup auf Nextcloud
Post by: ChrisChros on February 05, 2022, 08:39:58 am
Gibt es eine Möglichkeit das Zertifikat von Nextcloud in die OPNsense einzupflegen?
Title: Re: OPNsense Backup auf Nextcloud
Post by: fabian on February 05, 2022, 03:44:42 pm
Das Setting dürfte in der nginx.conf zu finden sein
Title: Re: OPNsense Backup auf Nextcloud
Post by: ChrisChros on February 05, 2022, 08:00:16 pm
das  müsste ja dann das hier sein oder?
Code: [Select]
ssl_certificate /usr/local/etc/letsencrypt/live/truenas/fullchain.pem;
ssl_certificate_key /usr/local/etc/letsencrypt/live/truenas/privkey.pem;
# Verify chain of trust of OCSP response using Root CA and Intermediate certs
ssl_trusted_certificate /usr/local/etc/letsencrypt/live/truenas/chain.pem;

certificate_key = Privat Key
trusted_certificate = CA
certificate = Zertifikat

Ist die Zuordnung so richtig?
Title: Re: OPNsense Backup auf Nextcloud
Post by: fabian on February 06, 2022, 08:32:48 am
Da müsste man ins chain.pem rein schauen.
Oder es ist beim Zertifikat dabei. Die können im PEM einfach untereinander sein.
Title: Re: OPNsense Backup auf Nextcloud
Post by: ChrisChros on February 06, 2022, 10:36:44 am
In der Datei chain.pem hat nur folgenden Inhalt:
Code: [Select]
-----BEGIN CERTIFICATE-----
MIIDSDCCAjCgAwIBAgIUY6RcfCDrTg2BEgNZhZzpCLSKvZ4wDQYJKoZIhvcNAQEL
.
.
.
.
.
3ZUGddKmMSahL+0YrLztSrEYmsd9CL0qxdqmUw==
-----END CERTIFICATE-----

Das steht nur ein solcher Block drin.
In der Datei fullchain.pem sieht es genauso aus.
Title: Re: OPNsense Backup auf Nextcloud
Post by: fabian on February 06, 2022, 01:43:28 pm
Schau dir den Inhalt an - Wenn es ein CA-Zertifikat ist, dann kannst du's importieren.
Title: Re: OPNsense Backup auf Nextcloud
Post by: ChrisChros on February 06, 2022, 01:50:34 pm
Woran kann ich ein CA erkennen.
Ist an dem Aufbau des CA etwas besonders?

Also das chain.pem scheint das CA-Zertifikat zu sein.
Title: Re: OPNsense Backup auf Nextcloud
Post by: ChrisChros on February 06, 2022, 02:24:00 pm
Habe jetzt mal das chain.pem als CA in OPNsense importiert.
Muss ich jetzt noch das fullchain.pem in SYSTEM: TRUST: CERTIFICATES zusammen mit dem privkey.pem importieren?

UPDATE:
Habs jetzt einfach mal so gemacht und die originalen Zertifikate von Nextcloud wieder hergestellt. Leider funktioniert dann das Backup auf Nextcloud nicht mehr.