Difference between revisions of "SSL"

From A-Eskwiki
Jump to: navigation, search
Line 51: Line 51:
  
 
== IPA SSL intern ==
 
== IPA SSL intern ==
Hier staat eigenlijk alles dat je moet weten: http://www.freeipa.org/page/Apache_SNI_With_Kerberos
+
 
Het komt hier op neer (merk op dat 'dummyhost' de naam van de virtualhost is):
+
Hier staat eigenlijk alles dat je moet weten: [http://www.freeipa.org/page/Apache_SNI_With_Kerberos http://www.freeipa.org/page/Apache_SNI_With_Kerberos] <br/>Het komt hier op neer (merk op dat 'dummyhost' de naam van de virtualhost is):
 +
 
 
  mkdir /etc/httpd/certs
 
  mkdir /etc/httpd/certs
 
  semanage fcontext -a -t cert_t '/etc/httpd/certs(/.*)?' && restorecon -v /etc/httpd/certs
 
  semanage fcontext -a -t cert_t '/etc/httpd/certs(/.*)?' && restorecon -v /etc/httpd/certs
Line 59: Line 60:
 
  ipa service-add HTTP/dummyhost.example.com
 
  ipa service-add HTTP/dummyhost.example.com
 
  ipa service-add-host HTTP/dummyhost.example.com --hosts="<fqdn-of-webserver>"
 
  ipa service-add-host HTTP/dummyhost.example.com --hosts="<fqdn-of-webserver>"
  ipa-getcert request -r -f /etc/httpd/certs/dummyhost.crt -k /etc/httpd/certs/dummyhost.key -N CN=dummyhost.example.com -D dummyhost.example.com -K HTTP/dummyhost.example.com
+
  ipa-getcert request -r -f /etc/httpd/certs/dummyhost.crt -k /etc/httpd/certs/dummyhost.key -N CN=dummyhost.example.com -D \
 +
  dummyhost.example.com -K HTTP/dummyhost.example.com
  
 
Het zou kunnen dat je de package ipa-admintools moet installeren.
 
Het zou kunnen dat je de package ipa-admintools moet installeren.
 
[[Category:Sysop]]
 
[[Category:Sysop]]

Revision as of 14:55, 26 May 2015

Uitleg

SSL wordt gebruikt om netwerk verbindingen te beveiligingen, zoals http en imap verkeer. Hiertoe gebruiken we bij a-eskwadraat een reverse proxy die het verkeer versleuteld voor de buitenwereld.

Voor het certificaat van A-Eskwadraat maken we op dit moment gebruik van xolphin: https://www.sslcertificaten.nl/

Wachtwoord van certificaat halen

Indien de private key is beveiligd met een wachtwoord, dan is dit wachtwoord ook nodig bij het opstarten. Dit kan vervelend zijn wanneer de server opnieuw opstart zonder dat iemand ter plaatse is om het wachtwoord in te tikken. Het wachtwoord kan met het volgende commando worden verwijderd. Zorg hierbij dat de shell zich bevindt in de map waarin de private key staat opgeslagen:

[root@server cert]# openssl rsa -in encrypted_private_key.key -out private_key.key

Vervang hierbij encrypted_private_key.key met de naam van de private key, en vervang private_key.key met de gewenste bestandsnaam voor de nieuwe private key zonder wachtwoord.

Aanmaken CSR

stap 1

Maak met behulp van SSH verbinding met de server en log in als root. Ga met behulp van het cd-commando naar de map toe waar de certificaten moeten worden bewaard:

[root@server]# cd /etc/ssl/cert/

stap 2

Met het volgende commando kunnen de Private Key en de CSR worden gegenereerd:

[root@server]# openssl req -nodes -newkey rsa:2048 \
-keyout a-eskwadraat_nl.`date +%Y%m%d`.key \
-out a-eskwadraat_nl.`date +%Y%m%d`.csr \
-subj '/C=NL/ST=Utrecht/L=Utrecht/O=A-Eskwadraat/OU=Sysop/CN=*.a-eskwadraat.nl/emailAddress=sysop@a-eskwadraat.nl'

stap 3

OpenSSL genereert twee bestanden: de Private Key (met als naam a-eskwadraat_nl.{datum}.key) en de CSR (met als naam a-eskwadraat_nl.{datum}.csr).

stap 4

Beveilig de certificaatbestanden zodat niemand behalve de rootgebruiker erbij kan:

[root@server cert]# chmod 600 *.key *.csr

stap 6

Nu kan de CSR met behulp van het cat-commando worden weergegeven:

[root@server cert]# cat a-eskwadraat_nl.`date +%Y%m%d`.csr 

De velden emailadres, optionele bedrijfsnaam en uitwisselingswachtwoord kunnen leeggelaten worden bij het aanvragen van een SSL certificaat.


IPA SSL intern

Hier staat eigenlijk alles dat je moet weten: http://www.freeipa.org/page/Apache_SNI_With_Kerberos
Het komt hier op neer (merk op dat 'dummyhost' de naam van de virtualhost is):

mkdir /etc/httpd/certs
semanage fcontext -a -t cert_t '/etc/httpd/certs(/.*)?' && restorecon -v /etc/httpd/certs
ipa host-add dummyhost.example.com --desc="Dummy Host" --location="<fqdn-of-webserver>"
ipa host-add-managedby dummyhost.example.com --hosts="<fqdn-of-webserver>"
ipa service-add HTTP/dummyhost.example.com
ipa service-add-host HTTP/dummyhost.example.com --hosts="<fqdn-of-webserver>"
ipa-getcert request -r -f /etc/httpd/certs/dummyhost.crt -k /etc/httpd/certs/dummyhost.key -N CN=dummyhost.example.com -D \
  dummyhost.example.com -K HTTP/dummyhost.example.com

Het zou kunnen dat je de package ipa-admintools moet installeren.