ubuntuusers.de

Sicherer Zugriff auf Zertifikate von Letsencrypt

Status: Ungelöst | Ubuntu-Version: Ubuntu 16.04 (Xenial Xerus)
Antworten |

alex42

Anmeldungsdatum:
6. Juni 2007

Beiträge: 124

Hallo alle miteinander,

ich nutze auf meinem Server Zertifikate von Letsencrypt, was wunderbar funktioniert. Nun habe ich für meine Nextcloud LibreOffice-Online (LO) mit dem Skript von husisusi kompiliert und möchte es in meine Cloud einbinden. (https://github.com/husisusi/officeonlin-install.sh)

Damit ich über eine verschlüsselte Verbindung Zugriff auf LO haben möchte, muss ich den Pfad der Zertifikate in der /opt/online/loolwsd.xml eintragen. Allerdings schmeißt der Dienst anschließend einen Fehler aus, weil er nicht auf die Zertifikate zugreifen kann:

FTL Cannot load CA file/directory at /etc/letsencrypt/live/domain.com/chain.pem (error:0200100D:system library:fopen:Permission denied)| wsd/LOOLWSD.cpp:2634

Ich habe mir vorübergehend geholfen, indem ich die Zertifikate in einen anderen Ordner kopiert habe und sie dem Nutzer lool zu eigen gemacht habe:

chown lool:lool chain.pem

usw.

Ich vermute, dass dies allerdings nicht die beste Lösung ist, da ja die Zertifikate auch spätestens alle 90 Tage erneuert werden. Was ist die beste und gleichzeitig sicherste Art dies zu bewerkstelligen?

Ich würde mich freuen, wenn ihr mir helfen würdet!

Moderiert von sebix:

Thema in einen passenden Forenbereich verschoben. Bitte beachte die als wichtig markierten Themen („Welche Themen gehören hier her und welche nicht?“) in jedem Forenbereich. Danke.

VolkerRaschek

Avatar von VolkerRaschek

Anmeldungsdatum:
19. August 2014

Beiträge: 358

Wohnort: Eifel

Hallo, schau dir mal den Howto Artikel von getssl an. Da gibt es die Möglichkeit nach Erstellung der SSL zertifikate einen Befehl auszuführen. Da kannst du dann ein bash Script hinterlegen, dass die entsprechende Berechtigungen auf die Dateien setzt, sodass du diese für andere Dienste verwenden kannst.

https://wiki.ubuntuusers.de/Howto/getssl/

alex42

(Themenstarter)

Anmeldungsdatum:
6. Juni 2007

Beiträge: 124

@VolkerRaschek

Ein solches Skript nutze ich ja schon, welches über Anacron ausgeführt wird:

#!/bin/sh
# Datei /etc/cron.weekly/letsencrypt
certbot renew
result=$(find /etc/letsencrypt/live/ -type l -mtime -1 )
if [ -n "$result" ]; then
  systemctl restart postfix
  systemctl restart dovecot
fi

Meine Frage war vielmehr, ob es eine gute Idee ist das Zertifikat an einen anderen Ort zu kopieren und dem Nutzer volle Rechte auf diese Zertifikate zu geben, oder ob es hierfür eine bessere und sicherere Lösung gibt. Kannst du mir (oder jemand anders) da weiterhelfen?

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

alex42 schrieb:

Meine Frage war vielmehr, ob es eine gute Idee ist das Zertifikat an einen anderen Ort zu kopieren und dem Nutzer volle Rechte auf diese Zertifikate zu geben, oder ob es hierfür eine bessere und sicherere Lösung gibt.

Das kommt darauf an, ob es anders möglich ist. Ich würde für ein Zertifikat und auch den Key dazu immer nur minimale Berechtigungen setzen. Bei einem normalen Apache2 setze ich also root:root als Besitzer und 600 als Bereichtigung. Wenn dein Dienst direkt unter einem Nutzer läuft, dann muss er dafür Leserechte haben, aber mehr nicht. Der schlimmste Fall wäre, wenn jemand dein Libreoffice-Online hackt und damit dein Zertifikat kompromittiert. Genaueres kann ich mangels Erfahrung über Libreoffice-Online nicht sagen.

alex42

(Themenstarter)

Anmeldungsdatum:
6. Juni 2007

Beiträge: 124

Hallo @misterunknown

Das wäre dann wahrscheinlich z.B. ein:

sudo chmod ugo+r key.pem

oder?

Wahrscheinlich benötige ich den Zugriff auf die Keys jetzt doch nicht, aber vielleicht findet ja jemand anders diesen Thread?

MfG

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

alex42 schrieb:

Das wäre dann wahrscheinlich z.B. ein:

sudo chmod ugo+r key.pem

oder?

Nein, damit würdest du auch der Welt (o) Leserechte geben. Das ist nicht gut. Es wäre eher das:

chown <User_der_den_Key_lesen_muss> key.pem
chmod 600 key.pem
Antworten |