Den här rutinen gäller s.k. server-certifikat utfärdade genom SCS (Sunet Certificate Service). Man använder normalt dem för att kunna körs TLS(SSL) på webservrar.
Se till att vara ute i god tid. Certifikat utfärdas normalt inom en vecka. Om du behöver certifikatet snabbare än så bör du kontakta oss i förväg för att kontrollera att det går.
Det finns ett antal begränsningar för vilka certifikat som kan utfärdas genom SCS. De viktigaste är:
.KTH.se
.
Vid tveksamhet, kontakta oss för att diskutera läget.
Den person som genererar certifikatbegäran på den tekniska nivån och fyller i webbforumuläret kallas i detta sammanhang Technical Contact.
En behörig person på institutionen eller motsvarande måste intyga att begäran är korrekt. Denna person kallas "sponsor". Från början är sponsor it-ansvarig på skolan eller i andra hand prefekt etc.
Innan du kan ansöka om certifikat måste du skapa en privat nyckel och en fil med certifikatbegäran (CSR, Certificate Signing Request) i så kallat PKCS#10-format för varje certifikat.
Se till att nyckeln skyddas mot obehörig åtkomst. Det är också en god idé att ordna en säkerhetskopia av den (som då också måste hållas skyddad).
Nyckellängenden får inte vara mindre än 1024 bitar. Vi rekommenderar nyckellängden 2048 bitar. Följande krav gäller för namnkomponenterna i certifikatet:
Namnkomponent | Krav | Exempel |
---|---|---|
Common Name (CN) | Ska vara serverns DNS-namn. | www.xxx.kth.se |
Organizational Unit (OU) | Ska vara institutionens eller enhetens förkortning eller fullständiga namn. | ITE |
Organization (O) | Ska vara Kungliga Tekniska Hogskolan . |
Kungliga Tekniska Hogskolan |
City/Locality (L) | Ska utelämnas helt om möjligt (inte bara vara tom). Om den måste anges ska den vara Stockholm . |
utelämnad |
State/Province (ST) | Ska utelämnas helt om möjligt (inte bara vara tom). Om den måste anges ska den vara Stockholm . |
utelämnad |
Country (C) | Ska vara SE . |
SE |
Så här kan en nyckel och en CSR för www.xxx.kth.se
, WWW-server för den
fiktiva domänen XXX, genereras (kommandot skrivs på en enda rad):
openssl req -new -sha1 -newkey rsa:2048 -nodes -subj "/CN=www.xxx.kth.se/OU=ITE/O=Kungliga Tekniska Hogskolan/C=SE" -keyout www.xxx.kth.se.key -out www.xxx.kth.se.csr
Om OpenSSL är av för gammal version fungerar inte -subj
.
Du får i så fall felmeddelandet unknown option -subj
och en hjälptext. Använd då kommandot:
openssl req -new -newkey rsa:2048 -nodes -keyout www.xxx.kth.se.key -out www.xxx.kth.se.csr
och svara på de frågor man får enligt ovan. (passkey skall var blank!)
Skapa en fil config.txt med innehåll enligt följande.
[ req ] default_bits = 2048 prompt = no encrypt_key = no default_md = sha1 distinguished_name = dn utf8 = yes [ dn ] C = SE O = Kungliga Tekniska Hogskolan OU = ITE 0.CN = www.xxx.kth.se 1.CN = yyy.zzz.kth.se 2.CN = o.s.v.
openssl req -new -sha1 -newkey rsa:2048 -nodes -config config.txt -keyout www.xxx.kth.se.key -out www.xxx.kth.se.csr
Som första CN (0.CN) bör det namn för servern som har ett A record i DNS väljas.
I filen www.xxx.kth.se.key
hamnar den privata
nyckeln. Denna måste hållas hemlig och skyddas mot obehörig åtkomst. I
filen www.xxx.kth.se.csr
hamnar den CSR som ska bifogas
ansökningsblanketten. Det är praktiskt att döpa
CSR- och nyckel-filerna till namn som är baserade på certifikatets
CN
, särskilt om du ansöker om flera certifikat åt gången.
För att verifiera innehållet i CSR-filen kan följande kommando användas:
openssl req -in www.xxx.kth.se.csr -noout -text
Starta Internet Services Manager som finns under Administrative Tools i startmenyn. Ta fram Properties (högerklick) för den site du ska ansöka om certifikat för.
Välj fliken Directory Security och klicka på Server Certificate. Välj Create a new Certificate och Prepare the request now, but send it later i wizarden.
Ge rätt svar på frågorna om de olika namnkomponenterna.
Se tabellen med krav ovan! State/province och City/locality borde utelämnas,
men IIS verkar inte gilla det. Fyll i Stockholm
.
Sedan är det dags att spara CSR till fil. Det är denna fil du ska bifoga ansökan. Bekräfta och avsluta wizarden.
OBS! Microsoft IIS 6.0 har problem vid förnyande av certifikat eller ansökan om certifikat ifall det redan finns ett certifikat i drift för siten! När du genererar CSR, så upphör det existerande certifikatet att fungera och det blir inte bra igen förrän du fått det nya certifikatet. Det finns ett sätt att "lura" systemet genom att skapa en tillfällig site. Se Microsofts instruktioner.
För IIS 7.0 (dvs Windows 2008) så görs CSR:en i UTF8STRING oavsett om man använder 8-bitars tecken eller inte. Globalsigns system klarar inte av detta. Så för att kringgå detta får man skapa csr:en i IIS 6.0 (enligt ovan) och även slutföra operationen på IIS 6.0 för att sedan exportera ut nyckel och cert i pfx-format eller motsvarande och sedan importera in den på Windows 2008
Att ha multipla CN är inte heller helt trivialt och kräver specialinstruktioner som finns att läsa på den här sidan
Nu är det dags att skicka in CSR-filen och samtidigt fylla i kompletterande information på GlobalSigns sida för SUNET SCS. Din webbläsare behöver ha Javascript aktiverat för att det ska fungera.
Fyll i formuläret enligt:
Fält | Innehåll | Exempel |
---|---|---|
Technical Contact | ||
Surname | Ditt eget efternamn | Exempelsson |
First Name | Ditt eget förnamn | Anders |
Function | Din roll | system administrator |
Organization | Förifyllt från CSR, lämna exakt: | Kungliga Tekniska Hogskolan |
Phone number | Ditt eget telefonnummer | +46 8 790 xxxx |
Din egen epostadress | andersexe@KTH.se |
|
Organisation Information | ||
Admin Contact Person | Fyll i exakt: | KTH CA |
Fyll i exakt: | sunet-scs@KTH.se |
|
Organization | Förifyllt från CSR, lämna exakt: | Kungliga Tekniska Hogskolan |
Street & number | Fyll i exakt: | Valhallavagen 79 |
Zip/Post Code | Fyll i exakt: | 100 44 |
City | Fyll i exakt: | Stockholm |
Country | Förifyllt från CSR, lämna exakt: | SE |
Phone number | Fyll i exakt: | +46 8 790 6000 |
Password and Password Hint | ||
Your password | Ett lösenord du inte använder till annat | |
Again for verification | Samma lösenord igen, såklart | |
Your password hint | Minneshjälp för lösenordet ovan |
Välj sedan att gå vidare till nästa steg.
Kontroller att information är korrekt. Om så är fallet: välj att bekräfta och gå vidare.
En sida med rubriken "We are processing your request" visas. När behandlingen är klar ersätts den av en sida med rubriken "Thank you for your certificate order."
Du kommer också som Technical Contact att få en kopia av det epostbrev som vi centralt får till KTH CA med instruktioner om hur vi ska gå vidare. Du som är Technical Contact ska inte följa instruktionerna i brevet. Däremot ska du skriva ut brevet i samband med punkt 4.
Om du ansöker om flera certifikat för exakt samma Technical Contact och Sponsor kan du nu göra om punkt 2 och 3 för dessa certifikat innan du går vidare med punkt 4.
Tröttnar du på att fylla i samma information gång på gång i webbformuläret? Använd en utökning till din webbläsare som hjälper dig att fylla i formuläret automatiskt. Ett exempel för Mozilla Firefox är AutoFormer.
KTH CA måste nu godkänna din begäran innan certifikatet tillverkas av GlobalSign på vårt ansvar. För att ha möjlighet att kontrollera att allt är OK och för att få spårbarhet måste du be "sponsorn" (enligt punkt 1), normalt IT-ansvarig på skolan, godkänna din begäran. Detta sker via en lank pa denna plats
Nu får du vänta ett tag medan KTH CA och senare SUNET SCS RA-gruppen tar hand om ansökan. Du kan komma att bli kontaktad för verifikation av ansökan.
Certifikat utfärdas normalt inom en vecka. Om det är mer bråttom
än så behöver du meddela oss det, så gör vi vad vi kan för att skynda på.
Kontakta oss också om certifikatet dröjer.
NOT: Skicka INTE in något mer information till cybertrust eller SUNET-CA. Det enda tekniska kontakten skall göra är att fylla i webformuläret.
Verifikation att certifikatet är korrekt sker i följande punkter av "sponsorn" och kth centrala certifikatgrupp.
Mailet ni får om scannade PDF etc är till för den centrala gruppen, ni skall INTE skicka in ngt sådant!
När certifikatet är klart får du som är Technical Contact epost från GlobalSign med ärendet "Your SureServerEDU TLS Certificate" (eller motsvarande). Certifikatet som sådant finns bifogat i brevet, som också innehåller en länk där det kan hämtas.
Du behöver också hämta hem och spara CA-certifikatet för
"Cybertrust Educational CA":
sureserverEDU.pem
.
I TLS/SSL-konfigurationen ska följande rader läggas in, med de filnamn som är korrekta i din Apache-miljö:
SSLCertificateFile /opt/apache/conf/certs/www.xxx.kth.se.pem SSLCertificateKeyFile /opt/apache/conf/certs/www.xxx.kth.se.key SSLCertificateChainFile /opt/apache/conf/certs/sureserverEDU.pem
Filen www.xxx.kth.se.pem
är det certifikat du fått
utfärdat (namnet i epostsvaret från GlobalSign är annorlunda).
Filen www.xxx.kth.se.key
är den nyckel-fil du skapade
tillsammans med certifikat-begäran vid punkt 2. Tänk på att fortsätta skydda
den mot obehörig åtkomst! Den som kommer över den här filen kan låtsas vara
servern.
Filen sureserverEDU.pem
är CA-certifikatet som du
också tankade hem nyligen. Webbservern måste skicka med det också för
att användarens webbläsare ska kunna sätta ihop certifikatkedjan.
Rot-certikatet "GTE CyberTrust Global Root" behöver inte konfigureras på något sätt i webbservern. Användaren som ska surfa till webbservern behöver inte heller göra något, eftersom detta certifikat finns med i alla vanliga webbläsare.
När certifikatet är godkänt på verizon (cybertrust edu) så välj certifikat av Other Program och certifikat av typen The certificate packaged with the signing certificates (PEM PEM encoded file).
Efter detta måste du slå ihop certifikatet till ett .p12 (pfx eller pkcs12) certifikats store genom detta kommando:
openssl pkcs12 -export -in ditt_servernamn.cer -inkey ditt_servernamn.key -out ditt_servernamn.p12 -name tomcat
changeit
med gemener när du får frågan.
När ihopslagningen är klar måste storen konverteras till jks format (tomcat hanterar detta format bäst):keytool -importkeystore -deststorepass changeit -destkeypass changeit -destkeystore ditt_servernamn.keystore -srckeystore ditt_servernamn.p12 -srcstoretype PKCS12 -srcstorepass changeit -alias tomcat
Starta Internet Services Manager som finns under Administrative Tools i startmenyn. Ta fram Properties (högerklick) för den site du har ansökt om certifikat för.
Välj fliken Directory Security och klicka på Server Certificate. Välj Process the Pending Request and Install the Certificate i wizarden och ange filnamnet till certifikatet du fått i eposten. Se till att rätt port (normalt 443) är vald. Bekräfta och avsluta.
För att allt ska fungera korrekt måste även
CA-certifikatet
för Cybertrust Educational CA installeras via MMC (Microsoft
Management Console). Starta det verktyget via Run i
startmenyn; ange programnamn mmc
.
I MMC, välj Console - Add/Remove Snap-in. Klicka Add, markera Certificates och klicka Add. Välj sedan Computer account och i nästa ruta Local computer (the computer this console is running on). Avsluta tilläggsdialogen med Finish, Close och OK.
Välj Certificates i vänsterspalten och dubbelklicka
sedan på Intermediate Certification Authorities i högerspalten.
Högerklicka vid Certificates i högerspalten och välj
All Tasks - Import i menyn. Vid frågan File to Import
anges filen sureserverEDU.pem
som du tankade hem nyligen.
Avsluta med Next och Finish.
Avsluta med att starta om IIS.
OBS! Microsoft IIS 6.0 har problem vid förnyande av certifikat! Om du under punkt 2 följde Microsofts instruktioner för att ta dig förbi den begränsningen så måste du avsluta enligt dessa instruktioner också (importera certifikatet till den tillfälliga siten och sedan ta det i drift i den riktiga).
Kontrollera att certifikatet fungerar. Om det används i en webbserver ska du kunna surfa till den HTTPS-URL som skyddas av certifikatet. Din webbläsare ska inte klaga på något som rör certifikatet. Kontakta KTH CA om du har problem med att få det att fungera.