<p>In I2P, hidden services are addressed using a 'key', which is represented as a long Base64 string.
The 'key' is somewhat like an IP address, and is shown on the <ahref="http://127.0.0.1:7657/i2ptunnel/edit?tunnel=3">Hidden Service Configuration page</a>.
After you start your I2P Webserver tunnel, it will be difficult for other people to find
It can only be accessed with the long Base64 key or with the shorter Base32 address (.b32.i2p), which is a hash of the Base64 key.
You could just tell people the long key or the Base32 address, but thankfully I2P has an address book and several easy ways to tell people about your website.
<li>Pick a name for your website (<i>something</i>.i2p), using lower-case.
You may wish to check first in your own router's <ahref="http://127.0.0.1:7657/susidns/addressbook?book=router&filter=none">address book</a> to see if your name is already taken.
Enter the new name for your website on the <ahref="http://127.0.0.1:7657/i2ptunnel/edit?tunnel=3">Hidden Service Configuration page</a> where it says "Website name".
This will replace the default "mysite.i2p".
Also, if you would like your I2P Webserver tunnel to be automatically started when you start I2P, check the "Auto Start" box.
Your website will now start every time you start your router.
<li>Highlight the entire "Local destination" key on the <ahref="http://127.0.0.1:7657/i2ptunnel/edit?tunnel=3">Hidden Service Configuration page</a>. and copy it for later pasting.
Make sure you copy the whole thing - it's over 500 characters.
<p>Now it's time to add your website to an I2P address book hosted by a site such as <ahref="http://stats.i2p/ "target="_blank">stats.i2p</a> or <ahref="http://no.i2p/"target="_blank">no.i2p</a>.
That is, you must enter your website name and key into a web interface on one or more of these sites.
Here is <ahref="http://stats.i2p/i2p/addkey.html"target="_blank">the key entry form</a> at stats.i2p.
You will need your <b>Authentication String</b> for the next step, this can be found on the <b>Registration Authentication</b> page which is linked to on the Hidden Service configuration page.
Copy the entire authentication string and paste it on the key entry page.
Enter an optional name.
Describe your site briefly, this step is recommended.
If your site is a HTTP service, leave the checkbox selected - if not unselect it.
Read through the Terms of Service carefully.
Click the "Submit" button at the bottom of the page.
Since many routers periodically get address book updates from these sites, within several hours others will be able to find your website by simply typing <i>something</i>.i2p into their browser.</p>
<p>Speaking of address book updates, this would be a good time to add some more addressbooks to your own subscription list.
Go to your <ahref="http://127.0.0.1:7657/susidns/subscriptions">Subscriptions Configuration page</a> and add one or more for an automatically updated list of new hosts:
<p>Some people check website lists such as <ahref="http://identiguy.i2p/"target="_blank">Identiguy's eepsite status list</a> or <ahref="http://no.i2p/browse/"target="_blank">no.i2p's active host list</a> for new eepsites, so your site may start getting some traffic.
There are plenty of other ways to tell people. Here are a few ideas:
<p>Note that some sites recommend pasting in that really long destination key.
You can if you want, but if you have successfully posted your key at an add-key service, tested it using a jump service, and waited 24 hours for the address book update to propagate to others, that shouldn't be necessary.</p>
<p>This site (and the I2P router console) is running on the <ahref="https://en.wikipedia.org/wiki/Jetty_(web_server)"target="_blank">Jetty webserver</a>, but you may wish to use a different webserver to host your content.
To maintain anonymity, be sure that your webserver is configured to only allow connections from localhost (127.0.0.1), and check the documentation to ensure your webserver isn't advertising details that may compromise your anonymity.
<p>To configure your webserver for use on I2P, you may either use the existing webserver tunnel and <ahref="http://127.0.0.1:7657/configclients">disable the default webserver</a> from running, or create a new HTTP Server tunnel in the <ahref="http://127.0.0.1:7657/i2ptunnelmgr">Hidden Services Manager</a>.
Ensure that the listening port configured for the webserver (7658 by default) is also configured in the Hidden Services webserver settings.
For example, if your webserver is listening by default on address 127.0.0.1 port 80, you'd need to also ensure that the Target port in the Hidden Service Manager settings page for the service is also configured to port 80.
Please carry out some research into securing your web server prior to placing it online.
There are plenty of guides online, for example if you search for "nginx security hardening guide" you will find a number of guides that have good recommendations.
We will point out one major issue with the <b>Apache</b> web server:
The <code>mod_status</code> and <code>mod_info</code> Apache modules are known to be enabled by default on some operating systems, these expose various forms of internal data which can lead to serious compromise of anonymity when used on an anonymous network like I2P.
Removing the lines from your Apache configuration file where these modules are loaded is the easiest way to prevent these issues.
This page, the project website and the router console need translations!
Please help the project grow by <ahref="http://i2p-projekt.i2p/getinvolved.html"target="_blank"> getting involved</a> or <ahref="http://i2p-projekt.i2p/en/get-involved/guides/new-translators"target="_blank">translating</a>.