Https och certifikat

Tråden skapades och har fått 10 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • Göteborg
  • 2004-03-07 20:06

Jag vill göra en hemsida med lite känslig information som endast behöriga skall ha tillgång till.
En lämplig säkerhetsnivå vore med inloggning via https. Jag antar att då måste man även involvera certifikat (eller finns det en nivå under med https utan egen certifikat?).

Var hittar man info om hur man sätter upp en sådan sida på egen server?
Den aktuella servern kör nån Linux (med http-sidor), men jag är nyfiken om detta även går att fixa på en OSX maskin?

Tips?

SSL-tunnling (=https) går precis lika bra under OS X också! Faktum är att det inte är någon skillnad mellan tillvägagångssättet i OS X och flertalet GNU/Linux-distributioner, eftersom det är OpenSSL som används i båda fallen.

Det går inte att köra utan signerat certifikat, men om det bara gäller ett intranät eller något liknande med begränsad användarbas kan man använda självsignerade certifikat. Användarna får då upp en varningsruta som säger att webbläsaren inte kan bekräfta identiteten för din webbplats, men trafiken går krypterad ändå. Apple har en väldigt bra steg-för-steg-guide här:

http://developer.apple.com/internet/serverside/modssl.html

  • Medlem
  • Göteborg
  • 2004-03-08 09:13

Jättebra! Jag har tittat lite lätt på sidan och det verkar precis vara vad jag behöver. Så nu är det bara å testa. Tack för det Samuel!
/Eric

Som Samuel K säger så är all https trafik krypterad, oavsett om man har ett certifikat eller inte. Certifikatet är mest till för att försäkra kunden/besökaren om att det här verkligen är servern man är ute efter som man browsar på. Vilket ju är rätt viktigt för dom flesta om dom tex ska handla med sitt kontokort över interwebben..

Ett SSL certifikat är tyvärr inte gratis, http://www.thawte.com/ skall vara bland dom med bättre pris. värd är nämna är också australienska cacert.org som utfärder ssl certifikat gratis, eftersom dom är en förening som tycker att sånt borde vara gratis, dock så är det inga webbläsare som "godkännar" dom som utfärdare (dvs man får upp rutan "den här webbplatsens certifikat kunde inte säkerställas" eller liknande), det har dock snackats om att Mozilla skulle vilja godkänna dom, men det verkar inte ha hänt.

Bottom line: vill man ha ett riktigt certifikat får man pröjsa, men vill man mest krypterar övergångar så räcker ju faktiskt en självsignerad...

Ursprungligen av johan dansk:

Som Samuel K säger så är all https trafik krypterad, oavsett om man har ett certifikat eller inte. Certifikatet är mest till för att försäkra kunden/besökaren om att det här verkligen är servern man är ute efter som man browsar på. Vilket ju är rätt viktigt för dom flesta om dom tex ska handla med sitt kontokort över interwebben..

Ja, ett förtydligande. Med SSL, eller TLS som IETF-standarden heter (SSL är Netscapes påhitt innan TLS fanns), kan två certifikat användas.
Det ena intygar serverns identitet. Detta måste man ha. Detta kan sedan verifieras mot ett Root-certifikat som installerats på datorn (eller finns förinstallerat). Om inte får användaren själv verfiera det. (vilket inte sker, då ingen användare i praktiken gör detta.)
Installerar man root-certifikatet slipper man dialogrutorna om opålitliga certifikat.

Det andra certifikatet i SSL/TLS är ett klientcertifikat som klienten kan använda för att intyga sin identitet. Detta ger en bättre säkerhet, men är självklart lite krångligare.
Dessutom är det ju inte intressant på en publik website, utan bara för site med begränsad grupp användare.

När man installerar ett självsignerat certifikat måste man på något sätt förvissa sig om att det är rätt certifikat man installerar. (Är det fel kommer man intet ont anandes att lita på någon annan, som skulle kunna hitta på vad som helst utan att man som användare behöver märka något.)
Detta görs lämpligen genom att verifiera fingeravtrycket på certifikatet mot en kod man fått av den man ska lita på i detta fall. Hur denna kod ska distribueras är ytterligare ett "problem" i vissa fall. Vanlig post? Per telefon? SMS?
Allt beror på vilken nivå på säkerhet man vill ha. Hur paranoid är man?

Det är lite katten på råttan....

  • Medlem
  • Göteborg
  • 2004-03-08 19:06

Jo, jag upptäckte det där med certifikatkostnaden. Det kunde vara ett antal tusenlappar per år. Men eftersom den sidan skall bara kommas åt av en liten grupp personer som rimligen vet på vilken server de skall vara på, låter det där med självsignerad certifikat som fullt tillräckligt bra. Det man mest vill komma åt är att själva inloggningen inte skall ske i klartext.

Vi kör "selfsigned" SSL på mac.se numera:

https://mail.mac.se/

"tyvärr" buggar bannern när man kör via SSL så jag ska ta bort den.

  • Medlem
  • Göteborg
  • 2004-03-09 22:46

OK, nu har jag följt Apples steg-för-steg instruktioner. Det funkar bra och jag kan ansluta med https till min egen dator. (Det enda som inte funkade för mig från instruktionerna var att ta bort lösenordet från certifikatet för att undvika stop i serveruppstarten då lösenordet måste anges, eftersom man inte kan ange detta när man startar via webdelningspanelen eller normal OSX-uppstart).

Men mitt problem är: hur triggar jag en inloggningsruta? På den gamla goda OS9-tiden kunde man bara ändra rättigheterna för katalogen i fråga och stänga av gästers läsbehörighet. När jag nu gör detta i OSX säger bara Apache "403 Forbidden - You don't have permission to access blablabla". Jag borde kunna få logga in som min egen användare som fortfarande har läsbehörighet.

Tips?

  • Medlem
  • Stockholm
  • 2004-03-10 00:57
Ursprungligen av pichia:

OK, nu har jag följt Apples steg-för-steg instruktioner. Det funkar bra och jag kan ansluta med https till min egen dator. (Det enda som inte funkade för mig från instruktionerna var att ta bort lösenordet från certifikatet för att undvika stop i serveruppstarten då lösenordet måste anges, eftersom man inte kan ange detta när man startar via webdelningspanelen eller normal OSX-uppstart).

Men mitt problem är: hur triggar jag en inloggningsruta? På den gamla goda OS9-tiden kunde man bara ändra rättigheterna för katalogen i fråga och stänga av gästers läsbehörighet. När jag nu gör detta i OSX säger bara Apache "403 Forbidden - You don't have permission to access blablabla". Jag borde kunna få logga in som min egen användare som fortfarande har läsbehörighet.

Tips?

Hej Eric!

Se till att mappen som du vill lösenordsskydda har följande data i httpd.conf
<Directory /Library/WebServer/Documents/mapp>
AllowOverride AuthConfig
</Directory>

sen så lägger du en fil i mapp som heter .htaccess och som ser ut ungefär som följer:

AuthName "denna text syns i browserns inloggnings ruta"
AuthType Basic
AuthUserFile /Library/Webserver/.htpasswd
require user eric

AuthUserFile kan ligga var som helst, bara användar-kontot som kör webservern kommer åt den.

Och sen sista steget - generera .htpasswd:
/usr/bin/htpasswd -c /Library/Webserver/.htpasswd eric

Done!

Cheers,
Eric

  • Medlem
  • Göteborg
  • 2004-03-11 10:58

Tack Eric! Det där funkade ju utmärkt. Det finurliga med det systemet är att man kan enkelt skapa olika inloggningar till olika kataloger utan att behöva ha dessa som riktiga användare på maskinen. Det är smidigt.
Jag undrar dock om det går att skapa grupper/listor på detta viset? Att en grupp användare skall ha tillgång till en huvudkatalog med personliga inloggningar och sedan tillgång till personliga underkataloger med samma inloggning.

Är det någon som sätt en bra guide (certfikat och os x) som fungerar tillsammans med Server Logistics Complete Apache 2?

1
Bevaka tråden