Drift/Oppdatere SSL-sertifikater
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
Merk at imap.crt.pem må være i riktig rekkefølge, og må kanskje "snus". Sjekk tips og triks nederst på denne siden, at nøkkel og sertifikat passer sammen.
- i /etc/ssl/certs:
-rw-r--r-- 1 root dovecot dovecot.pem ; full chain
- Kjør
systemctl restart dovecot
systemctl restart exim4
ogsystemctl 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> -rw-r--r-- 1 root www-data 8630 Jan 2 16:25 ca.pem ; cat fullchain
- Kjør
systemctl restart lighttpd
ogsystemctl restart gogs
- Sjekk at git/gogs virker i nettleser med https.
isvegg
- i /etc/lighttpd/certs:
-rw-r--r-- 1 root root 8603 Jan 2 16:34 cert_fullchain.pem -rw------- 1 root root 1704 Jan 2 16:32 privkey.pem
- Denne fullchain-fila må antageligvis også byttes rekkefølge, slik at CA er sist.
Tips 'n Tricks
Noen nyttige kommandoer for å verifisere nøkkel-/cert- par
- Modulus til nøkkel:
openssl rsa -modulus -noout -in nøkkelfil.pem
- Modulus til sertifikat:
openssl x509 -modulus -noout -in certfil.pem
Disse bør vise samme output. Dersom de ikke gjør det kan det hende du bruker feil fil, eller at sertifikatene i en fullchain-fil er i feil rekkefølge.
Verifisere nøkler på epost-serveren
openssl s_client -showcerts -connect imap.pvv.ntnu.no:993 -servername imap.pvv.ntnu.no
Søke om sertifikater
Per 2022/23 har vi fått tilgang til å logge inn på NTNU sin GEANT-portal med feide, der vi kan laste opp CSR-filer. I fremtiden håper vi på et ACME-endepunkt for dette, så vi slipper epost og skjemaer.
Det er idag ingen "riktig" måte å søke om sertifikater for .org-domenet vårt samtidig, så pvv.ntnu.no er det kanoniske domenenavnet vårt for sikker kommunikasjon.