Nach der Installation von Gogs läuft dieses standardmäßig über unverschlüsseltes HTTP. Um dies zu ändern muss die app.ini welche sich im Verzeichnis gogs/custom/conf/ befindet bearbeitet werden:
nano app.ini
In der Sektion Server welche für gewöhnlich so aussieht:
[server] DOMAIN = example.org HTTP_PORT = 3000 ROOT_URL = http://example.org:300/ DISABLE_SSH = false SSH_PORT = 22 OFFLINE_MODE = false
müssen einige Änderungen vorgenommen werden. Die Schlüssel PROTOCOL, CERT_FILE und KEY_FILE werden hinzugefügt und die ROOT_URL angepasst. Danach sollte die Server-Sektion in etwa so aussehen:
[server] DOMAIN = example.org HTTP_PORT = 3000 PROTOCOL = https ROOT_URL = https://example.org:300/ CERT_FILE = custom/https/cert.pem KEY_FILE = custom/https/key.pem DISABLE_SSH = false SSH_PORT = 22 OFFLINE_MODE = false
Nachdem die Konfiguration gespeichert wurde muss das passende Zertifikat erzeugt werden:
cd custom mkdir https cd https ./gogs cert -ca=true -duration=8760h0m0s -host=example.org
Damit ist Gogs nach einem Neustart des Service per HTTPS und damit verschlüsselt erreichbar.
Vielen Dank für die gogs-Beiträge, die waren sehr hilfreich!
Kleiner Fehler: es muss custom/https/cert.pem statt custom/https/cert.cert heissen
Danke für den Hinweis. Ich habe den Fehler gleich mal korrigiert.
Damit ist der gogs service im browser über http nicht mehr erreichbar, weiss jemand was man einstellen muss damit automatisch ein redirect von http zu https gemacht wird?
@hans: Wuerde mich ebenfalls interessieren!