<?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=SSL</id>
	<title>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=SSL"/>
	<link rel="alternate" type="text/html" href="https://training-course-material.com/index.php?title=SSL&amp;action=history"/>
	<updated>2026-05-13T09:35:41Z</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=SSL&amp;diff=23946&amp;oldid=prev</id>
		<title>Cesar Chew at 17:32, 24 November 2014</title>
		<link rel="alternate" type="text/html" href="https://training-course-material.com/index.php?title=SSL&amp;diff=23946&amp;oldid=prev"/>
		<updated>2014-11-24T17:32:02Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Cat|Nginx}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;slideshow style=&amp;quot;nobleprog&amp;quot; headingmark=&amp;quot;?&amp;quot; incmark=&amp;quot;…&amp;quot; scaled=&amp;quot;true&amp;quot; font=&amp;quot;Trebuchet MS&amp;quot; &amp;gt;&lt;br /&gt;
;title: SSL&lt;br /&gt;
;author: Bernard Szlachta (NobleProg Ltd)&lt;br /&gt;
&amp;lt;/slideshow&amp;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;
:* nginx can handle SSL and proxy to another application&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;
=== 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;
&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;
&lt;br /&gt;
* Now give the CSR to wherever you are buying the certificate from, and 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;
* For nginx, this needs to be appended to the certificate &lt;br /&gt;
 $ cat intermediate.crt &amp;gt;&amp;gt; certificate.crt&lt;br /&gt;
&lt;br /&gt;
=== Adding SSL to nginx ?===&lt;br /&gt;
 &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 server {&lt;br /&gt;
  listen 443 default ssl;&lt;br /&gt;
  server_name www.example.com;&lt;br /&gt;
  ssl_prefer_server_ciphers on;&lt;br /&gt;
  ssl_protocols TLSv1 SSLv3;&lt;br /&gt;
  ssl_ciphers RC4:HIGH:!aNULL:!MD5:@STRENGTH;&lt;br /&gt;
  ssl_certificate /etc/nginx/www.example.com.crt;&lt;br /&gt;
  ssl_certificate_key /etc/nginx/www.example.com.key;&lt;br /&gt;
&lt;br /&gt;
  location / {&lt;br /&gt;
    root /usr/share/nginx/html;&lt;br /&gt;
    index index.html index.html;&lt;br /&gt;
  }&lt;br /&gt;
 }&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
=== Exercise ?===&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;/div&gt;</summary>
		<author><name>Cesar Chew</name></author>
	</entry>
</feed>