<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://training-course-material.com/index.php?action=history&amp;feed=atom&amp;title=Apache_SSL</id>
	<title>Apache SSL - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://training-course-material.com/index.php?action=history&amp;feed=atom&amp;title=Apache_SSL"/>
	<link rel="alternate" type="text/html" href="https://training-course-material.com/index.php?title=Apache_SSL&amp;action=history"/>
	<updated>2026-05-13T09:38:15Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://training-course-material.com/index.php?title=Apache_SSL&amp;diff=10856&amp;oldid=prev</id>
		<title>Bernard Szlachta: /* Exercise */</title>
		<link rel="alternate" type="text/html" href="https://training-course-material.com/index.php?title=Apache_SSL&amp;diff=10856&amp;oldid=prev"/>
		<updated>2013-06-05T08:20:24Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Exercise&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Cat|Apache}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== nginx and SSL ==&lt;br /&gt;
* Encrypted transport over which HTTP runs&lt;br /&gt;
* Decent performance with nginx&lt;br /&gt;
* Can be combined with other features&lt;br /&gt;
** Apache can handle SSL and proxy to another application&lt;br /&gt;
&lt;br /&gt;
== Installing mod_ssl ==&lt;br /&gt;
* SSL not included by default in EL5&lt;br /&gt;
*  `yum -y install mod_ssl` to install&lt;br /&gt;
*  Will receive errors like &amp;#039;`Invalid command &amp;#039;SSLEngine&amp;#039;`&amp;#039; if not installed&lt;br /&gt;
&lt;br /&gt;
== SSL ==&lt;br /&gt;
*  Public key encryption&lt;br /&gt;
*  **Private key** - should exist only on the server and not be transferred&lt;br /&gt;
*  **Certificate** - purchased from a third party who (should) verify that the recipient really is who they say they are&lt;br /&gt;
* Safe to copy wherever/however you like - a copy given to every visitor to the website&lt;br /&gt;
&lt;br /&gt;
== Getting an SSL certificate ==&lt;br /&gt;
* First, generate a private key&lt;br /&gt;
 $ openssl genrsa -des3 -out server.key 2048&lt;br /&gt;
* Next, generate a certificate signing request (CSR)&lt;br /&gt;
 $ openssl req -new -key server.key -out server.csr&lt;br /&gt;
* Now give the CSR to wherever you are buying the certificate from, and&lt;br /&gt;
  wait for them to send you an SSL cert&lt;br /&gt;
&lt;br /&gt;
== Using SSL Certificates ==&lt;br /&gt;
* When you receive the SSL certificate, you will also receive an intermediary certificate&lt;br /&gt;
* On Apache, this can be kept in its own file&lt;br /&gt;
* If you have more than one intermediary, these must be combined into a single file&lt;br /&gt;
&lt;br /&gt;
== Adding SSL to Apache ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;VirtualHost *:443&amp;gt; &lt;br /&gt;
 ServerName www.example.com&lt;br /&gt;
 DocumentRoot /var/www/html &lt;br /&gt;
 &lt;br /&gt;
 SSLEngine On&lt;br /&gt;
 SSLProtocol all -SSLv2&lt;br /&gt;
 SSLCertificateKeyFile /etc/httpd/server.key&lt;br /&gt;
 SSLCertificateFile /etc/httpd/server.crt&lt;br /&gt;
 SSLCertificateChainFile /etc/httpd/intermediate.crt&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Exercise ==&lt;br /&gt;
&lt;br /&gt;
* Generate a private key + CSR, send to me to be signed&lt;br /&gt;
* Install provided certificate&lt;br /&gt;
* Make /foo proxy to the server on localhost:8000&lt;br /&gt;
&lt;br /&gt;
== Removing password from the key ==&lt;br /&gt;
 openssl rsa -in server.key -out server-nopw.key&lt;/div&gt;</summary>
		<author><name>Bernard Szlachta</name></author>
	</entry>
</feed>