<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://pzwiki.wdka.nl/mw-mediadesign/index.php?action=history&amp;feed=atom&amp;title=Making_a_local_server_public_with_pagekite.py</id>
	<title>Making a local server public with pagekite.py - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://pzwiki.wdka.nl/mw-mediadesign/index.php?action=history&amp;feed=atom&amp;title=Making_a_local_server_public_with_pagekite.py"/>
	<link rel="alternate" type="text/html" href="https://pzwiki.wdka.nl/mw-mediadesign/index.php?title=Making_a_local_server_public_with_pagekite.py&amp;action=history"/>
	<updated>2026-08-04T12:44:55Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.38.2</generator>
	<entry>
		<id>https://pzwiki.wdka.nl/mw-mediadesign/index.php?title=Making_a_local_server_public_with_pagekite.py&amp;diff=125539&amp;oldid=prev</id>
		<title>Michael Murtaugh at 11:35, 26 June 2018</title>
		<link rel="alternate" type="text/html" href="https://pzwiki.wdka.nl/mw-mediadesign/index.php?title=Making_a_local_server_public_with_pagekite.py&amp;diff=125539&amp;oldid=prev"/>
		<updated>2018-06-26T11:35:38Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:35, 26 June 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l3&quot;&gt;Line 3:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 3:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;What you need:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;What you need:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* A public server where you can run pagekite&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* A public server where you can run pagekite&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* Access to the webserver (Apache/nginx) on the server to create a Proxy -- this isn't strictly necessary, but it hides the fact that the proxy is running on a &quot;high&quot; port.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;. Here are my notes for it's setup.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;. Here are my notes for it's setup.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Michael Murtaugh</name></author>
	</entry>
	<entry>
		<id>https://pzwiki.wdka.nl/mw-mediadesign/index.php?title=Making_a_local_server_public_with_pagekite.py&amp;diff=125538&amp;oldid=prev</id>
		<title>Michael Murtaugh at 11:34, 26 June 2018</title>
		<link rel="alternate" type="text/html" href="https://pzwiki.wdka.nl/mw-mediadesign/index.php?title=Making_a_local_server_public_with_pagekite.py&amp;diff=125538&amp;oldid=prev"/>
		<updated>2018-06-26T11:34:19Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:34, 26 June 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Recently I have setup a &lt;/del&gt;[[Raspberry Pi]] web server &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to be &lt;/del&gt;accessible publically &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;using &lt;/del&gt;[[pagekite.py]]. Here are my notes for it's setup.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;So you want to make your &lt;/ins&gt;[[Raspberry Pi]] web server accessible publically&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;? You can use &lt;/ins&gt;[[pagekite.py]] &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to create a tunnel. The way it works is that you actually run pagekite in two places: (1) on the pi (known as the &amp;quot;backend&amp;quot;) and (2) on a public server (such as pzwart1 -- this is then known as the &amp;quot;frontend&amp;quot;). Web traffic is configured to point to the public part of the tunnel (pzwart1), when the pi is running, the backend connects to the frontend and web requests to the frontend will be served via the tunnel.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;What you need:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* A public server where you can run pagekite&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;. Here are my notes for it's setup.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;DIRECT DOWNLOAD LINK TO SCRIPT: https://pagekite.net/pk/pagekite.py&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;DIRECT DOWNLOAD LINK TO SCRIPT: https://pagekite.net/pk/pagekite.py&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Michael Murtaugh</name></author>
	</entry>
	<entry>
		<id>https://pzwiki.wdka.nl/mw-mediadesign/index.php?title=Making_a_local_server_public_with_pagekite.py&amp;diff=125537&amp;oldid=prev</id>
		<title>Michael Murtaugh: Created page with &quot;Recently I have setup a Raspberry Pi web server to be accessible publically using pagekite.py. Here are my notes for it's setup.  DIRECT DOWNLOAD LINK TO SCRIPT: https...&quot;</title>
		<link rel="alternate" type="text/html" href="https://pzwiki.wdka.nl/mw-mediadesign/index.php?title=Making_a_local_server_public_with_pagekite.py&amp;diff=125537&amp;oldid=prev"/>
		<updated>2018-06-26T11:31:17Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Recently I have setup a &lt;a href=&quot;/mediadesign/Raspberry_Pi&quot; title=&quot;Raspberry Pi&quot;&gt;Raspberry Pi&lt;/a&gt; web server to be accessible publically using &lt;a href=&quot;/mw-mediadesign/index.php?title=Pagekite.py&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Pagekite.py (page does not exist)&quot;&gt;pagekite.py&lt;/a&gt;. Here are my notes for it&amp;#039;s setup.  DIRECT DOWNLOAD LINK TO SCRIPT: https...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Recently I have setup a [[Raspberry Pi]] web server to be accessible publically using [[pagekite.py]]. Here are my notes for it's setup.&lt;br /&gt;
&lt;br /&gt;
DIRECT DOWNLOAD LINK TO SCRIPT: https://pagekite.net/pk/pagekite.py&lt;br /&gt;
&lt;br /&gt;
== pagekite.py on the Server (front-end) ==&lt;br /&gt;
&lt;br /&gt;
Run pagekite (in my case using [[screen]])...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./pagekite.py --clean --isfrontend --ports=9999 --protos=http,https --domain=http,https:foo.activearchives.org:SECRET&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
BONUS: configure [[apache]] to reverse proxy on a CNAME (to have available as http://foo.activearchives.org instead of http://activearchives.org:9999).&lt;br /&gt;
&lt;br /&gt;
/etc/apache/sites-available/foo.activearchives.org&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
	ServerName   foo.activearchives.org:80&lt;br /&gt;
	UseCanonicalName Off&lt;br /&gt;
&lt;br /&gt;
	ProxyVia On&lt;br /&gt;
	ProxyRequests Off&lt;br /&gt;
	ProxyPreserveHost on&lt;br /&gt;
	&amp;lt;Location /&amp;gt;&lt;br /&gt;
        ProxyPass http://localhost:9999/ retry=0 timeout=30&lt;br /&gt;
        ProxyPassReverse http://localhost:9999/&lt;br /&gt;
	&amp;lt;/Location&amp;gt;&lt;br /&gt;
&amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== pagekite.py on the Pi ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./pagekite.py --clean --frontend=foo.activearchives.org:9999 --service_on=http://foo.activearchives.org:localhost:80:SECRET&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/etc/systemd/system/pagekite.service&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
[Unit]&lt;br /&gt;
Description=pagekite&lt;br /&gt;
After=syslog.target network.target&lt;br /&gt;
&lt;br /&gt;
[Service]&lt;br /&gt;
Type=simple&lt;br /&gt;
User=pi&lt;br /&gt;
Group=pi&lt;br /&gt;
ExecStart=/home/pi/pk/pagekite.py --clean --frontend=foo.activearchives.org:9999 --service_on=http://foo.activearchives.org:loc&lt;br /&gt;
alhost:80:SECRET&lt;br /&gt;
&lt;br /&gt;
[Install]&lt;br /&gt;
WantedBy=multi-user.target&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Test with:&lt;br /&gt;
&lt;br /&gt;
  sudo service etherpad start&lt;br /&gt;
  sudo service etherpad status&lt;br /&gt;
&lt;br /&gt;
and add to startup automatically with:&lt;br /&gt;
&lt;br /&gt;
  sudo systemctl enable pagekite&lt;br /&gt;
&lt;br /&gt;
== Configuring ssh ==&lt;br /&gt;
&lt;br /&gt;
So I wanted to have a Raspberry Pi's webserver public, and also be able to ssh to the machine. This via a public virtual server which has it's own SSH service (running on the standard port 22). In the end I used Apache reverseproxy to make the web available without the visibility of the high port (10107 in this example). NB however the reverseproxy is *not* necessary for the ssh access to work as this is handled by client configuration (to use an http proxy directly on 10107).&lt;br /&gt;
&lt;br /&gt;
NB: &amp;quot;SECRETFOO&amp;quot; is my &amp;quot;secret&amp;quot; (since changed in private ;) ... and &amp;quot;foo.activearchives.org&amp;quot; is the public CNAME registered domain. NB: My apache reverse proxy is only setup for port 80 (doesn't do SSL). SSH still seems to work via 10107.&lt;br /&gt;
&lt;br /&gt;
front end (public server)&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./pagekite.py --clean \&lt;br /&gt;
    --isfrontend \&lt;br /&gt;
    --rawports=virtual \&lt;br /&gt;
     --ports=10107 \&lt;br /&gt;
     --protos=http,https,raw \&lt;br /&gt;
     --domain=http,https,raw:foo.activearchives.org:SECRETFOO&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
back end / PI&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./pagekite.py --clean \&lt;br /&gt;
    --frontend=foo.activearchives.org:10107 \&lt;br /&gt;
    --service_on=http:foo.activearchives.org:localhost:80:SECRETFOO \&lt;br /&gt;
    --service_on=raw-22:foo.activearchives.org:localhost:22:SECRETFOO&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On my laptop (where I will try to ssh via the frontend to the PI, the key was that the proxy port is 10107. I needed to install corkscrew (via apt) to make this work on Debian (the netcat examples elsewhere work on Mac OSX / FreeBSD).&lt;br /&gt;
&lt;br /&gt;
~/.ssh/config&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
Host foo.activearchives.org&lt;br /&gt;
     CheckHostIP no&lt;br /&gt;
     ProxyCommand /usr/bin/corkscrew %h 10107 %h %p&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So in the end you can visit http://foo.activearchives.org/ and also:&lt;br /&gt;
&lt;br /&gt;
    ssh pi@foo.activearchives.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
some links used in getting here:&lt;br /&gt;
* https://stackoverflow.com/questions/25974680/setting-up-pagekite-with-my-own-fronted-to-access-ssh&lt;br /&gt;
* https://hackaday.com/2016/09/21/how-to-run-a-pagekite-server-to-expose-your-raspberry-pi/&lt;br /&gt;
* https://gist.github.com/evaryont/8278021&lt;br /&gt;
&lt;br /&gt;
extended notes&lt;br /&gt;
&lt;br /&gt;
Initially I was using &amp;quot;port 2222&amp;quot; but it seems completely unnecessary. the &amp;quot;service_on=raw-2222&amp;quot; and I configured my laptop's ssh to use the non-standard 2222. So apparently whatever PORT ssh tries to use translates into a request on the backend for raw-PORT. In the case of 2222 the backend still ended up connecting it to the Pi's sshd on port 22. In any case, none of this had any effect on the front end which (happily) remains quite simple to configure, basically I just needed to add &amp;quot;raw&amp;quot; to the protocols and the &amp;quot;rawports=virtual&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
Host foo.activearchives.org&lt;br /&gt;
     CheckHostIP no&lt;br /&gt;
     ProxyCommand /usr/bin/corkscrew %h 10107 %h %p&lt;br /&gt;
     Port 2222&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(old -- still based on service_on=raw-2222) When this starts it says:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; Hello! This is pagekite.py v0.5.9.0.                        [CTRL+C = Stop]&lt;br /&gt;
    Connecting to front-end relay 91.250.115.23:10107 ...                      &lt;br /&gt;
     - Protocols: http https raw                                               &lt;br /&gt;
     - Ports: 10107                                                            &lt;br /&gt;
     - Raw ports: virtual                                                      &lt;br /&gt;
~&amp;lt;&amp;gt; Flying localhost:22 as raw://foo.activearchives.org:2222/ (HTTP proxied)   &lt;br /&gt;
~&amp;lt;&amp;gt; Flying localhost:80 as http://foo.activearchives.org/                      &lt;br /&gt;
    ::1 &amp;lt; http://foo.activearchives.org:10107 (localhost:80)                   &lt;br /&gt;
    212.71.13.114 &amp;lt; raw://foo.activearchives.org:2222 (localhost:22)           &lt;br /&gt;
 &amp;lt;&amp;lt; pagekite.py [connect]  Front-end connect: 91.250.115.23:10107              &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Cookbook]]&lt;/div&gt;</summary>
		<author><name>Michael Murtaugh</name></author>
	</entry>
</feed>