Drift/Oppdatere SSL-sertifikater: Difference between revisions

From Programvareverkstedet
No edit summary
No edit summary
Line 1: Line 1:
{| cellspacing="5" cellpadding="0" style="margin: 0em 0em 1em 0em; border: 1px solid #1DA0E7;  background: #B3DDF4; width: 100%"
| '''''Denne siden er trolig utdatert'''''
|}
Her er info om hvordan man oppdaterer de ulike SSL-sertifikatene på PVV.
Her er info om hvordan man oppdaterer de ulike SSL-sertifikatene på PVV.
Hele prosessen er basert på [http://jornane.no/doc/openssl-cheatsheet/ denne guiden], sjekk den for forklaring.


Husk commonName i sertifikatet, likt hostnavnet til tjenesten du lager sertifikat for.
== www.pvv.ntnu.no ==
* Legg det nye sertifikatet i rdist, under rdist/web/certs
* rdist/web/certs/verify.sh kan brukes for å sjekke om .key og .crt passer sammen.
* Kjør '''./Rdist -m tim web''' (bytt ut "tim" med gjeldende webserver om den er byttet)
* Sjekk at webben virker etterpå.
== smtp.pvv.ntnu.no ==


Oppdater disse filene (key-filen kan ofte resirkuleres):
'''''Ta backup av alle filer du bytter ut. bruk "old"-mapper samme sted som sertifikatene.'''''


* /etc/exim4/exim.crt
= Hvorfor =
* /etc/exim4/exim.key
I nyere tider, altså etter 2020, skal ikke sertifikater vare lenger enn 13 måneder. Derfor må denne prosessen gjennomføres omtrent en gang i året.


Bruker ikke rdist, kopier filene direkte inn på maskinen.


== imap.pvv.ntnu.no ==
SSL-kryptering krever to deler, en privatnøkkel og en kjede med sertifikater. Privatnøkkelen skal aldri deles, og ligger som regel med begrenset lese/skrive-tilgang. Det første sertifikatet i kjeden er den aktuelle maskinen, for eksempel for www.pvv.ntnu.no, som er "signert" av neste i kjeden. Til slutt ligger rotsertifikatet(CA / Certificate Authority) klienten kjenner fra før.


Oppdater disse filene (key-filen kan ofte resirkuleres):


* /etc/dovecot/ssl/imap.crt.pem
Fordi vi bruker et ntnu-domene kan vi ikke bruke hvilken som helst CA, men bruke GEANT/Sectigo. For å få tilgang til signeringstjenesten kan du ta kontakt med Orakeltjenesten / NTNU IT, eller spørre en drifter som har gjort dette før.
* /etc/dovecot/ssl/imap.key.pem


Bruker ikke rdist, kopier filene direkte inn på maskinen.


== wiki.pvv.ntnu.no ==
For at CA-en skal kunne lage et signert sertifikat trenger du en [https://www.globalsign.com/en/blog/what-is-a-certificate-signing-request-csr CSR]. Konfigurasjonsfilene for disse ligger i <code>/etc/ssl/private</code> på spikkjeposche. For å legge til nye maskiner eller endre aktuelle tjenestenavn kan du redigere filene der. Om .conf-filene ser greie ut, les gjennom og kjør <code>make.sh</code> De resulterende req-filene kan sendes til CA for signering. Per nå brukes typen <code>01 GÉANT OV Multi-Domain</code> da våre maskiner ofte går under flere navn.


Oppdater disse filene (key-filen kan ofte resirkuleres):


* /etc/apache2/ssl/wiki.pvv.ntnu.no.crt
= Hvor og Hvordan =
* /etc/apache2/ssl/wiki.pvv.ntnu.no.key
For å oppdatere sertifikatene, bytt ut disse filene. Pass på at du ikke endrer filnavn, permissions, eierskap eller format.


Bruker ikke rdist, kopier filene direkte inn på maskinen.
== spikkjeposche ==
* i /etc/ssl/private:
-rw-------  1 root  wheel spikkjeposche_pvv_ntnu_no.pem          ; cat <bare cert> <private key>
-rw-r--r--  1 root  wheel spikkjeposche_pvv_ntnu_no_interm.cer  ; full chain
* Kjør <code>usr/local/etc/rc.d/lighttpd restart</code>
* Test om nettsiden, webmail og wiki fungerer med https.


== dev.pvv.ntnu.no ==


Oppdater filen
== microbel ==
NB! mange filer, mange forskjellige permissions.
* i /etc/exim4:
-r-------- 1 Debian-exim  root exim.crt                          ; bare cert
-rw------- 1 Debian-exim  root exim.key                          ; private key
* i /etc/dovecot/ssl:
-rw-r--r-- 1 root root imap.crt.pem                              ; full chain
-rw------- 1 root root imap.key.pem                              ; private key
* i /etc/ssl/certs:
-rw-r--r-- 1 root dovecot dovecot.pem                            ; full chain
* Kjør <code>systemctl restart dovecot</code> <code>systemctl restart exim4</code> og <code>systemctl restart apache2</code>
* Test at IMAP, SMTP og web(list.pvv.ntnu.no) fungerer med https.


* /etc/apache2/ssl/apache.pem


med nøkkel og sertifikat i samme fil. Kjør restart av apache etterpå. Ingen rdist.
== essendrop ==
* i /usr/local/opt/gogs/certs:
-rw-r----- 1 root www-data privchain-essendrop.pvv.ntnu.no.pem  ; cat <bare cert> <private key>
Muligens noen av de andre? Prøv med denne først, eventuelt prøv en og en gjenværende.
* Kjør <code>systemctl restart lighttpd</code> og <code>systemctl restart gogs</code>
* Sjekk at git/gogs virker i nettleser og evt. git CLI.

Revision as of 16:52, 13 January 2022

Her er info om hvordan man oppdaterer de ulike SSL-sertifikatene på PVV. Hele prosessen er basert på denne guiden, sjekk den for forklaring.


Ta backup av alle filer du bytter ut. bruk "old"-mapper samme sted som sertifikatene.

Hvorfor

I nyere tider, altså etter 2020, skal ikke sertifikater vare lenger enn 13 måneder. Derfor må denne prosessen gjennomføres omtrent en gang i året.


SSL-kryptering krever to deler, en privatnøkkel og en kjede med sertifikater. Privatnøkkelen skal aldri deles, og ligger som regel med begrenset lese/skrive-tilgang. Det første sertifikatet i kjeden er den aktuelle maskinen, for eksempel for www.pvv.ntnu.no, som er "signert" av neste i kjeden. Til slutt ligger rotsertifikatet(CA / Certificate Authority) klienten kjenner fra før.


Fordi vi bruker et ntnu-domene kan vi ikke bruke hvilken som helst CA, men bruke GEANT/Sectigo. For å få tilgang til signeringstjenesten kan du ta kontakt med Orakeltjenesten / NTNU IT, eller spørre en drifter som har gjort dette før.


For at CA-en skal kunne lage et signert sertifikat trenger du en CSR. Konfigurasjonsfilene for disse ligger i /etc/ssl/private på spikkjeposche. For å legge til nye maskiner eller endre aktuelle tjenestenavn kan du redigere filene der. Om .conf-filene ser greie ut, les gjennom og kjør make.sh De resulterende req-filene kan sendes til CA for signering. Per nå brukes typen 01 GÉANT OV Multi-Domain da våre maskiner ofte går under flere navn.


Hvor og Hvordan

For å oppdatere sertifikatene, bytt ut disse filene. Pass på at du ikke endrer filnavn, permissions, eierskap eller format.

spikkjeposche

  • i /etc/ssl/private:
-rw-------  1 root  wheel spikkjeposche_pvv_ntnu_no.pem          ; cat <bare cert> <private key>
-rw-r--r--  1 root  wheel spikkjeposche_pvv_ntnu_no_interm.cer   ; full chain
  • Kjør usr/local/etc/rc.d/lighttpd restart
  • Test om nettsiden, webmail og wiki fungerer med https.


microbel

NB! mange filer, mange forskjellige permissions.

  • i /etc/exim4:
-r-------- 1 Debian-exim  root exim.crt                          ; bare cert
-rw------- 1 Debian-exim  root exim.key                          ; private key
  • i /etc/dovecot/ssl:
-rw-r--r-- 1 root root imap.crt.pem                              ; full chain
-rw------- 1 root root imap.key.pem                              ; private key
  • i /etc/ssl/certs:
-rw-r--r-- 1 root dovecot dovecot.pem                            ; full chain
  • Kjør systemctl restart dovecot systemctl restart exim4 og systemctl restart apache2
  • Test at IMAP, SMTP og web(list.pvv.ntnu.no) fungerer med https.


essendrop

  • i /usr/local/opt/gogs/certs:
-rw-r----- 1 root www-data privchain-essendrop.pvv.ntnu.no.pem   ; cat <bare cert> <private key>
Muligens noen av de andre? Prøv med denne først, eventuelt prøv en og en gjenværende.
  • Kjør systemctl restart lighttpd og systemctl restart gogs
  • Sjekk at git/gogs virker i nettleser og evt. git CLI.