Beautified everything, again

wrapping is a pain--I needed to reflow and then beautify
This commit is contained in:
Brian Cunnie
2015-08-30 10:27:54 -07:00
parent 18b59e69d2
commit 1cdef71845
4 changed files with 194 additions and 153 deletions

10
.jsbeautifyrc Normal file
View File

@@ -0,0 +1,10 @@
{
"html": {
"unformatted": ["a", "sub", "sup", "b", "i", "u", "pre"],
"wrap_line_length": 60,
"wrap_attributes": "auto",
"beautifyEntireFileOnSave": true,
// "preserve_newlines": false,
"indent_size": 2
}
}

View File

@@ -1,26 +1,23 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- The above 3 meta tags *must*
come first in the head; any other head content must come *after* these tags -->
<meta name="viewport" content="width=device-width,
initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any
other head content must come *after* these tags -->
<title>About sslip.io</title>
<meta name="description" content="sslip.io">
<meta name="author" content="Brian Cunnie">
<!-- cute Green Lock icon -->
<link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico">
<!-- Latest
compiled and minified CSS -->
<!--
Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<!-- Optional theme -->
<link rel="stylesheet" href="css/starter-template.css">
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media
queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via
@@ -32,19 +29,19 @@ come first in the head; any other head content must come *after* these tags -->
</head>
<body>
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle
collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation
</span>
collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false"
aria-controls="navbar">
<span class="sr-only">Toggle navigation </span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button> <a class="navbar-brand" href="/">sslip.io</a> </div>
<div id="navbar" class="collapse navbar-collapse">
<div id="navbar" class="collapse
navbar-collapse">
<ul class="nav navbar-nav">
<li><a href="/">Home</a></li>
<li><a href="faq.html">FAQ</a></li>
@@ -54,15 +51,18 @@ come first in the head; any other head content must come *after* these tags -->
<!--/.nav-collapse -->
</div>
</nav>
<div class="container">
<div class="starter-template">
<h1>About sslip.io</h1>
<p><a href="https://github.com/tylerschultz">Tyler Schultz</a>, <a href="https://github.com/APShirley">Alvaro Perez Shirley</a>, and <a href="https://github.com/cunnie">Brian Cunnie</a> created sslip.io on Tuesday August 11, 2015 during a Pivotal Software-sponsored
Hack Day. Thanks Pivotal!</p>
<p><a href="https://github.com/sstephenson">Sam Stephenson</a> built <a href="http://xip.io/">xip.io</a>, upon which much of our code is based. He also suggested the name <i>sslip.io</i>.</p>
<p><a href="https://github.com/justinjsmith">Justin Smith</a> advised us on the security implications of releasing an SSL certificate and key to the general public.</p>
<p><a href="https://github.com/tylerschultz">Tyler Schultz</a>,
<a href="https://github.com/APShirley">Alvaro Perez Shirley</a>,
and <a href="https://github.com/cunnie">Brian Cunnie</a> created sslip.io on Tuesday August 11, 2015 during a
Pivotal Software-sponsored Hack Day. Thanks Pivotal!</p>
<p><a href="https://github.com/sstephenson">Sam Stephenson</a> built <a href="http://xip.io/">xip.io</a>, upon which
much of our code is based. He also suggested the name
<i>sslip.io</i>.</p>
<p><a href="https://github.com/justinjsmith">Justin Smith</a> advised us on the security implications of releasing
an SSL certificate and key to the general public.</p>
<div class="row">
<p></p>
</div>
@@ -70,7 +70,6 @@ come first in the head; any other head content must come *after* these tags -->
</div>
</div>
<!-- /.container -->
<!-- Bootstrap core JavaScript ================================================== -->
<!--
Placed at the end of the document so the pages load faster -->
@@ -83,20 +82,21 @@ come first in the head; any other head content must come *after* these tags -->
<!--
IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="https://raw.githubusercontent.com/twbs/bootstrap/master/docs/assets/js/ie10-viewport-bug-workaround.js"></script>
<!-- Google Analytics -->
<!--
Google Analytics -->
<script>
(function(i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject'] = r;
i[r] = i[r] || function() {
(i[r].q = i[r].q || []).push(arguments)
}, i[r].l = 1 * new Date();
a = s.createElement(o),
m = s.getElementsByTagName(o)[0];
a = s.createElement(o), m = s.getElementsByTagName(
o)[0];
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m)
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
})(window, document, 'script',
'//www.google-analytics.com/analytics.js', 'ga');
ga('create', 'UA-43107212-2', 'auto');
ga('send', 'pageview');
</script>

View File

@@ -1,5 +1,4 @@
<!doctype html>
<html lang="en">
<head>
@@ -9,7 +8,6 @@
initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any
other head content must come *after* these tags -->
<title>sslip.io FAQ</title>
<meta name="description" content="sslip.io">
<meta name="author" content="Brian Cunnie">
@@ -18,10 +16,8 @@ other head content must come *after* these tags -->
<!-- Latest
compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<!-- Optional theme -->
<link rel="stylesheet" href="css/starter-template.css">
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media
queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via
@@ -33,12 +29,12 @@ other head content must come *after* these tags -->
</head>
<body>
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle
collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false"
aria-controls="navbar">
<span class="sr-only">Toggle navigation </span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
@@ -55,69 +51,99 @@ other head content must come *after* these tags -->
<!--/.nav-collapse -->
</div>
</nav>
<div class="container">
<div class="starter-template">
<h1>FAQ</h1>
<p class="lead">Do I have to pay to use this service?</p>
<p>No, it's free.</p>
<p class="lead">Can I use this certificate on my commerce website?</p>
<p>Although there's no technical reason why you couldn't use the sslip.io SSL key and certificate for your commerce web, we <i>strongly</i> recommend against it: the key is publicly available; your traffic isn't secure. sslip.io's primary purpose is
to assist developers who need to test against valid SSL certs, not to safeguard content.</p>
<p class="lead">My webserver wants a certificate and an "intermediate certificate chain"&mdash;where do I get that?
</p>
<p>Certain web servers (e.g. <a href="http://www.tenable.com">Tenable's</a> <a href="http://www.tenable.com/products/nessus-vulnerability-scanner">Nessus</a> scanner) prefer to split the chained certificate file (which has three concatenated certificates)
into two files: one file containing a single certificate for the server itself (e.g. the "*.sslip.io" certificate), and a second file containing the intermediate certificate authorities (e.g. the two COMODO certificate authorities).</p>
<p>You can split the chained certificate file by hand, or you can download them, pre-split, from GitHub:
</p>
<p>Although there's no technical reason why you couldn't use
the sslip.io SSL key and certificate for your commerce
web, we <i>strongly</i> recommend against it: the key
is publicly available; your traffic isn't secure. sslip.io's
primary purpose is to assist developers who need to test
against valid SSL certs, not to safeguard content.</p>
<p class="lead">My webserver wants a certificate and an "intermediate certificate
chain"&mdash;where do I get that? </p>
<p>Certain web servers (e.g. <a href="http://www.tenable.com">Tenable's</a> <a href="http://www.tenable.com/products/nessus-vulnerability-scanner">Nessus</a> scanner) prefer to split the chained certificate file
(which has three concatenated certificates) into two
files: one file containing a single certificate for the
server itself (e.g. the "*.sslip.io" certificate), and
a second file containing the intermediate certificate
authorities (e.g. the two COMODO certificate authorities).</p>
<p>You can split the chained certificate file by hand, or
you can download them, pre-split, from GitHub: </p>
<ul>
<li>the server <a href="https://raw.githubusercontent.com/cunnie/sslip.io/master/ssl/sslip.io.crt.pem">certificate</a> ("*.sslip.io")
</li>
<li>the intermedicate certificate <a href="https://raw.githubusercontent.com/cunnie/sslip.io/master/ssl/intermediate-ca.crt.pem">chain</a> (the COMODO CAs)</li>
<li>the server <a href="https://raw.githubusercontent.com/cunnie/sslip.io/master/ssl/sslip.io.crt.pem">certificate</a> ("*.sslip.io") </li>
<li>the intermedicate certificate <a href="https://raw.githubusercontent.com/cunnie/sslip.io/master/ssl/intermediate-ca.crt.pem">chain</a> (the COMODO CAs)</li>
</ul>
<p class="lead">Why can't I use dots in my hostname? xip.io lets me use dots.
</p>
<p>You can't have dots, but you can have dashes: for example, "www-sf-ca-us-10-9-9-142.sslip.io" will work with sslip.io's wildcard SSL certificate, but "www.sf.ca.us.10.9.9.142.sslip.io" will not. This is a technical limitation of wildcard certs and the manner in which browsers treat them (read more <a href="http://security.stackexchange.com/questions/10538/what-certificates-are-needed-for-multi-level-subdomains">here</a>). This restricts sslip.io's usage model. For example, it won't work properly with Cloud Foundry's app domain or system domain.
<p class="lead">Can you make the hostnames easier to remember? I'm being force to memorize IP addresses.</p>
<p>Unfortunately, no. We appreciate that "52-0-56-137.sslip.io" is not an easy-to-remember hostname, whereas
something along the lines of
"aws-server.sslip.io" would be much simpler, but we don't see an easy solution&mdash;we need to be
able to extract the IP address from the hostname in order for our DNS nameserver to reply with the proper
address when queried.</p>
<p class="lead">Do you have support for IPv6-style addresses?</p>
<p>Not yet, but if there's enough demand for it we might try implementing it.</p>
<p class="lead">Why did you choose a 4096-bit key instead of a 2048-bit key?</p>
<p>We couldn't help ourselves&mdash;when it comes to keys, longer is better. In retrospect there were flaws in our thinking: certain hardware devices, e.g. YubiKeys, only support keys of length 2048 bits or less. Also, there was no technical value
in making a long key&mdash;it's publicly available on GitHub, so a zero-bit key would have been equally secure.</p>
<p class="lead">Do I have to use the sslip.io domain? I'd rather have a valid cert for my domain.</p>
<p>If you want valid SSL certificate, and you don't want to use the sslip.io domain, then you'll need to purchase a certificate for your domain. We purchased ours from <a href="https://www.cheapsslshop.com">Cheap SSL Shop</a>, but use a vendor with
whom you're comfortable. </p>
<p class="lead">What is the sslip.io certificate chain?
</p>
<p>The sslip.io certificate chain is the series of certificates, each signing the next, with a root certificate at the top. It looks like the following:</p>
<div class="col-sm-12">
<img src="img/cert_chain.png" height="206" /> </div>
<div class="row"></div>
<p></p>
<p>Note that the "root" certificate is "AddTrust's External CA Root", which issued a certificate to the "COMODO RSA Certification Authority", which in turn issued a certificate to the "COMODO RSA Domain Validation Secure Server CA" which in turn issued
our certificate, "*.sslip.io".</p>
<p class="lead">How is "sslip.io" pronounced?</p>
<p>ESS-ESS-ELL-EYE-PEE-DOT-EYE-OH</p>
<p class="lead">Where do I report bugs? I think I found one.</p>
<p>Open an issue on <a href="https://github.com/cunnie/sslip.io/issues">GitHub</a>; we're tracking our issues there.</p>
<p class="lead">There's a typo/mistake on the sslip.io website.
</p>
<p>Thanks! We love <a href="https://github.com/cunnie/sslip.io/pulls">pull requests</a>.</p>
<div class="row">
<p class="lead">Why can't I use dots in my hostname? xip.io lets me use
dots. </p>
<p>You can't have dots, but you can have dashes: for example,
"www-sf-ca-us-10-9-9-142.sslip.io" will work with sslip.io's
wildcard SSL certificate, but "www.sf.ca.us.10.9.9.142.sslip.io"
will not. This is a technical limitation of wildcard
certs and the manner in which browsers treat them (read
more <a href="http://security.stackexchange.com/questions/10538/what-certificates-are-needed-for-multi-level-subdomains">here</a>).
This restricts sslip.io's usage model. For example, it
won't work properly with Cloud Foundry's app domain or
system domain.
<p class="lead">Can you make the hostnames easier to remember? I'm being
force to memorize IP addresses.</p>
<p>Unfortunately, no. We appreciate that "52-0-56-137.sslip.io"
is not an easy-to-remember hostname, whereas something
along the lines of "aws-server.sslip.io" would be much
simpler, but we don't see an easy solution&mdash;we
need to be able to extract the IP address from the
hostname in order for our DNS nameserver to reply with
the proper address when queried.</p>
<p class="lead">Do you have support for IPv6-style addresses?</p>
<p>Not yet, but if there's enough demand for it we might
try implementing it.</p>
<p class="lead">Why did you choose a 4096-bit key instead of a 2048-bit
key?</p>
<p>We couldn't help ourselves&mdash;when it comes to keys,
longer is better. In retrospect there were flaws in
our thinking: certain hardware devices, e.g. YubiKeys,
only support keys of length 2048 bits or less. Also,
there was no technical value in making a long key&mdash;it's
publicly available on GitHub, so a zero-bit key would
have been equally secure.</p>
<p class="lead">Do I have to use the sslip.io domain? I'd rather have
a valid cert for my domain.</p>
<p>If you want valid SSL certificate, and you don't want
to use the sslip.io domain, then you'll need to purchase
a certificate for your domain. We purchased ours from
<a href="https://www.cheapsslshop.com">Cheap SSL Shop</a>,
but use a vendor with whom you're comfortable. </p>
<p class="lead">What is the sslip.io certificate chain? </p>
<p>The sslip.io certificate chain is the series of certificates,
each signing the next, with a root certificate at the
top. It looks like the following:</p>
<div class="col-sm-12">
<img src="img/cert_chain.png" height="206" /> </div>
<div class="row"></div>
<p></p>
</div>
<p>&copy; 2015 Brian Cunnie, Pivotal Software
</p>
<p>Note that the "root" certificate is "AddTrust's External
CA Root", which issued a certificate to the "COMODO
RSA Certification Authority", which in turn issued
a certificate to the "COMODO RSA Domain Validation
Secure Server CA" which in turn issued our certificate,
"*.sslip.io".</p>
<p class="lead">How is "sslip.io" pronounced?</p>
<p>ESS-ESS-ELL-EYE-PEE-DOT-EYE-OH</p>
<p class="lead">Where do I report bugs? I think I found one.</p>
<p>Open an issue on <a href="https://github.com/cunnie/sslip.io/issues">GitHub</a>;
we're tracking our issues there.</p>
<p class="lead">There's a typo/mistake on the sslip.io website. </p>
<p>Thanks! We love <a href="https://github.com/cunnie/sslip.io/pulls">pull requests</a>.</p>
<div class="row">
<p></p>
</div>
<p>&copy; 2015 Brian Cunnie, Pivotal Software </p>
</div>
</div>
<!-- /.container -->
<!-- Bootstrap core JavaScript ================================================== -->
<!--
Placed at the end of the document so the pages load faster -->
@@ -138,14 +164,13 @@ other head content must come *after* these tags -->
i[r] = i[r] || function() {
(i[r].q = i[r].q || []).push(arguments)
}, i[r].l = 1 * new Date();
a = s.createElement(o), m =
s.getElementsByTagName(o)[0];
a = s.createElement(o), m = s.getElementsByTagName(
o)[0];
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m)
})(window, document, 'script',
'//www.google-analytics.com/analytics.js', 'ga');
ga('create', 'UA-43107212-2', 'auto');
ga('send', 'pageview');
</script>

View File

@@ -1,45 +1,41 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- The above 3 meta tags *must*
come first in the head; any other head content must come *after* these tags -->
<meta name="viewport" content="width=device-width,
initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any
other head content must come *after* these tags -->
<title>Welcome to sslip.io</title>
<meta name="description" content="sslip.io">
<meta name="author" content="Brian Cunnie">
<!-- cute Green Lock icon -->
<link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico">
<!-- Latest
compiled and minified CSS -->
compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<!-- Optional theme -->
<!--
Optional theme -->
<link rel="stylesheet" href="css/starter-template.css">
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media
queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via
file:// -->
<!--[if lt IE 9]> <script
src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<!--
HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!--
WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt
IE 9]> <script
src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> <script
src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]-->
</head>
<body>
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle
collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation
</span>
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse"
data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation </span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
@@ -54,42 +50,43 @@ come first in the head; any other head content must come *after* these tags -->
<!--/.nav-collapse -->
</div>
</nav>
<div class="container">
<div class="starter-template">
<h1>sslip.io</h1>
<h3>Turn your red lock into a green lock!</h3>
<br />
<div class="col-sm-5">
<img src="img/red_lock.png" height="71" />
</div>
<img src="img/red_lock.png" height="71" /> </div>
<div class="col-sm-1">
<p></p>
</div>
<div class="col-sm-5">
<img src="img/green_lock.png" height="71" />
</div>
<img src="img/green_lock.png" height="71" /> </div>
<div class="col-sm-1"></div>
<div class="row"></div>
<h3>What is it?</h3>
<p><b>sslip.io</b> is a means for developers to test against valid SSL certificates
without the bother of purchasing them. Two components make this possible:</p>
<p><b>sslip.io</b> is a means for developers to test against
valid SSL certificates without the bother of purchasing
them. Two components make this possible:</p>
<ol>
<li>a special DNS backend that maps crafted hostnames to IP addresses
(e.g. <i>192-168-0-1.sslip.io</i> resolves to <i>192.168.0.1</i>) (similar to xip.io)</li>
<li>a wildcard SSL certificate for *.sslip.io and the corresponding key, both downloadable
from GitHub</li>
<li>a special DNS backend that maps crafted hostnames to
IP addresses (e.g. <i>192-168-0-1.sslip.io</i> resolves
to <i>192.168.0.1</i>) (similar to xip.io)</li>
<li>a wildcard SSL certificate for *.sslip.io and the corresponding
key, both downloadable from GitHub</li>
</ol>
<p>A developer can install the certificate and key on the
server, configure the server's name to its sslip.io fully-qualified domain name,
(FQDN, e.g. <i>52-0-56-137.sslip.io</i>), at which point anyone can
browse the server using the sslip.io FQDN via HTTPS and receive a valid
SSL connection (green lock). All in a matter of seconds.</p>
<h3>How do I use it?
</h3>
<p class="lead">First, find your server's IP address to determine its sslip.io hostname</p>
<p>Your server's sslip.io hostname is a mash-up of your server's IP address and the <b>sslip.io</b> domain. Here are some examples:</p>
server, modify the server's configuration and restart
the daemon, at which point anyone can browse the server
using the sslip.io hostname (e.g. <i>52-0-56-137.sslip.io</i>)
via HTTPS and receive a valid SSL connection (green lock).
All in a matter of seconds. </p>
<h3>How do I use it? </h3>
<p class="lead">First, find your server's IP address to determine its sslip.io
hostname</p>
<p>Your server's sslip.io hostname is a mash-up of your server's
IP address and the <b>sslip.io</b> domain. Here are some
examples:</p>
<table class="sslip">
<tr>
<th>Server's IP Address</th>
@@ -113,27 +110,35 @@ come first in the head; any other head content must come *after* these tags -->
</tr>
</table>
<br />
<p style="font-style: italic;">Note that in the last two examples we prepended additional information to the hostname, i.e. "www-" and "console-", respectively. This allows sslip.io to work with <a href="https://en.wikipedia.org/wiki/Virtual_hosting#Name-based">name-based
<p style="font-style:
italic;">Note that in the last two examples we prepended additional
information to the hostname, i.e. "www-" and "console-",
respectively. This allows sslip.io to work with <a href="https://en.wikipedia.org/wiki/Virtual_hosting#Name-based">name-based
virtual hosting</a>.</p>
<p class="lead">Second, download sslip.io's SSL certificate and key from GitHub</p>
<p>Download the SSL key (<a href="https://raw.githubusercontent.com/cunnie/sslip.io/master/ssl/sslip.io.key.pem">sslip.io.key.pem</a>) and wildcard SSL certificate chain (<a href="https://raw.githubusercontent.com/cunnie/sslip.io/master/ssl/sslip.io.chained.crt.pem">sslip.io.chained.crt.pem</a>)
from GitHub. You may use <i>curl</i> if you prefer the command line:</p>
<pre>
<p class="lead">Second, download sslip.io's SSL certificate and key from
GitHub</p>
<p>Download the SSL key (<a href="https://raw.githubusercontent.com/cunnie/sslip.io/master/ssl/sslip.io.key.pem">sslip.io.key.pem</a>)
and wildcard SSL certificate chain (<a href="https://raw.githubusercontent.com/cunnie/sslip.io/master/ssl/sslip.io.chained.crt.pem">sslip.io.chained.crt.pem</a>)
from GitHub. You may use <i>curl</i> if you prefer the
command line:</p> <pre>
curl -OL https://raw.githubusercontent.com/cunnie/sslip.io/master/ssl/sslip.io.key.pem
curl -OL https://raw.githubusercontent.com/cunnie/sslip.io/master/ssl/sslip.io.chained.crt.pem</pre>
<p class="lead">Third, configure the webserver with your sslip.io hostname, SSL certificate, and SSL key</p>
<p>Configure your webserver. Set the server name to sslip.io hostname, and configure the SSL portion to use the key and certificate downloaded from GitHub. Here is a sample from sslip.io's webserver's <i>nginx.conf</i> (modified for clarity):</p>
<pre>
<p class="lead">Third, configure the webserver with the SSL certificate
&amp; key</p>
<p>Configure the server's configuration file's SSL portion
to use the SSL certificate &amp; key downloaded from
GitHub. Here is a sample from sslip.io's webserver's
<i>nginx.conf</i> (modified for clarity):</p> <pre>
server {
server_name 52-0-56-137.sslip.io;
listen 443 ssl;
ssl_certificate /etc/ssl/sslip.io.chained.crt.pem;
ssl_certificate_key /etc/ssl/sslip.io.key.pem;</pre>
<p class="lead">Finally, restart your webserver and browse to its sslip.io address via HTTPS</p>
<p>Browse to your webserver's sslip.io hostname, e.g. <a href="https://52-0-56-137.sslip.io">https://52-0-56-137.sslip.io</a> (assuming that 52.0.56.137 is the IP address of your webserver, which it isn't because that's
the IP address of <i>our</i> webserver). Admire the beautiful green lock in your browser's address bar.</p>
<p class="lead">Finally, restart your webserver and browse to its sslip.io
address via HTTPS</p>
<p>Browse to your webserver's sslip.io hostname, e.g. <a href="https://52-0-56-137.sslip.io">https://52-0-56-137.sslip.io</a> (assuming that 52.0.56.137 is the IP address of your
webserver, which it isn't because that's the IP address
of <i>our</i> webserver). Admire the beautiful green
lock in your browser's address bar.</p>
<div class="row">
<p></p>
</div>
@@ -141,33 +146,34 @@ the IP address of <i>our</i> webserver). Admire the beautiful green lock in your
</div>
</div>
<!-- /.container -->
<!-- Bootstrap core JavaScript ================================================== -->
<!--
Placed at the end of the document so the pages load faster -->
Bootstrap core JavaScript ================================================== -->
<!--
Placed at the end of the document so the pages load faster -->
<!-- jQuery
(necessary for Bootstrap's JavaScript plugins) -->
(necessary for Bootstrap's JavaScript plugins) -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<!--
Latest compiled and minified JavaScript -->
Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<!--
IE10 viewport hack for Surface/desktop Windows 8 bug -->
IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="https://raw.githubusercontent.com/twbs/bootstrap/master/docs/assets/js/ie10-viewport-bug-workaround.js"></script>
<!-- Google Analytics -->
<!--
Google Analytics -->
<script>
(function(i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject'] = r;
i[r] = i[r] || function() {
(i[r].q = i[r].q || []).push(arguments)
}, i[r].l = 1 * new Date();
a = s.createElement(o),
m = s.getElementsByTagName(o)[0];
a = s.createElement(o), m = s.getElementsByTagName(
o)[0];
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m)
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
})(window, document, 'script',
'//www.google-analytics.com/analytics.js', 'ga');
ga('create', 'UA-43107212-2', 'auto');
ga('send', 'pageview');
</script>