TLS for Tor Browser on GNU/Linux
TLS Positive and Negative Overrides
Tor Browser for GNU/Linux can be used with Namecoin for TLS positive and negative overrides; this allows certificates for .bit domains that match the blockchain to be used without errors, and prevents malicious or compromised public CA’s from issuing certificates for .bit domains. Instructions:
- Install ncdns.
- Download and extract certdehydrate-dane-rest-api and ncp11 from the Beta Downloads page.
-
Create a text file called
certdehydrate_dane_rest_api.confin the same directory wherecertdehydrate-dane-rest-apiis, and fill it with the following contents (if ncdns is listening on a different IP or port, change the following accordingly):[certdehydrate-dane-rest-api] nameserver="127.0.0.1" port="5391" - Run
certdehydrate-dane-rest-api. - If you want to test certdehydrate-dane-rest-api, try visiting
http://127.0.0.1:8080/lookup?domain=ca-test.bitin a web browser. You should see a certificate. If you instead get an error or an empty page, something is wrong. - Make sure Tor Browser is installed.
- Make sure Tor Browser is already configured to use Namecoin for Tor name resolution.
- Make sure Tor Browser is shut down.
- In Tor Browser’s
Browserfolder, renamelibnssckbi.sotolibnssckbi-namecoin-target.so. - Copy
libncp11.soto Tor Browser’sBrowserfolder. - In Tor Browser’s
Browserfolder, renamelibncp11.sotolibnssckbi.so.
You can now visit in Tor Browser a .bit website that supports TLS, e.g. the ncp11 test page. The website should load in Tor Browser without errors. Note that only CA trust anchors are accepted; end-entity trust anchors are not accepted. This means that some older .bit domains will have their certificates rejected in Tor Browser. We are working on contacting the affected .bit domain owners to ask them to upgrade their setup.
Strict Transport Security
Tor Browser for GNU/Linux can be used with Namecoin for Strict Transport Security; this improves security against sslstrip-style attacks by forcing HTTPS to be used for .bit domains that support HTTPS. Instructions:
- Install ncdns.
- Download and extract the DNSSEC-HSTS Native Component from the Beta Downloads page.
-
Install the DNSSEC-HSTS Native Component like this (substitute your Tor Browser directory):
sudo mkdir -p tor-browser_en-US/Browser/TorBrowser/Data/Browser/.mozilla/native-messaging-hosts/ sudo cp ./org.namecoin.dnssec_hsts.json tor-browser_en-US/Browser/TorBrowser/Data/Browser/.mozilla/native-messaging-hosts/ sudo cp ./dnssec_hsts /usr/bin/ - Go to
about:configin Tor Browser. - Search for
xpinstall.signatures.required. - If the
Valuecolumn saystrue, double-click it to turn it tofalse. - Close the
about:configtab in Tor Browser. - Restart Tor Browser.
- Download the DNSSEC-HSTS WebExtensions Component from the Beta Downloads page.
- Open the DNSSEC-HSTS
.xpifile in Tor Browser, and accept the extension installation dialog.
.bit domains that support HTTPS will now automatically redirect from HTTP to HTTPS in Tor Browser.