(no commit message)
[wiki.git] / enabling_client_certificate_auth_in_chrome.html
1 <p>So, you want to run Chrome (or Chromium), but you're annoyed by the lack of
2 client certificate authentication on Linux.  Turns out, this is relatively easy
3 to solve, there's just no UI for it as of yet.  (As of 11/13/2009.)  (Note: I'm doing this running the daily build from the chromium-daily ppa on Launchpad - if you're running Debian or Ubuntu, you can add "deb http://ppa.launchpad.net/chromium-daily/ppa/ubuntu karmic main" to your
4 /etc/apt/sources.list if you want to run this.  It may work on the official
5 Google build as well, I'm not sure.)</p>
6
7 <p>You want to use the instructions at
8 <a href="http://code.google.com/p/chromium/wiki/LinuxCertManagement">Google's page on LinuxCertManagement</a> to install the <a href="http://ist.mit.edu/services/certificates/mitca">MIT CA</a>.  You may also want the <a href="http://ca.csail.mit.edu/cacert">CSAIL CA</a> (specifically, the Master CA).  If you're
9 running Debian or Ubuntu, the short version of that LinuxCertManagement page is
10 to install libnss3-tools, then run "certutil -d sql:$HOME/.pki/nssdb -A -t
11 "C,," -n <certificate nickname> -i <certificate filename>" for both the MIT CA
12 and (if you want it) the CSAIL CA.</p>
13
14 <p>The easiest way to install a client cert in the nss database is simply to
15 install it on Firefox; at that point, it should be in the list of certificates
16 you get when you run "certutil -d sql:$HOME/.pki/nssdb -L".  If not, go back to
17 the LinuxCertManagement page and do it manually.</p>
18
19 Here's the last key to the puzzle: by default, Chrome on Linux runs without SSL
20 client cert auth.  So run it with the --auto-ssl-client-auth flag.  You'll
21 probably want to edit both Preferred Applications and the Main Menu entry (I'm assuming you run Gnome here; if not, there may be other things you want to edit) to
22 reflect this, so links you click on outside of Chrome open this way.  (Gnome Do
23 and similar pull their data from Main Menu, among other places.)  Once you've
24 done this, you can check your work with
25 <a href="https://scripts-cert.mit.edu/~geofft/demo/detect.php">this demo page</a>.  If everything is
26 working, it should welcome you by name, and tell you that a certificate for
27 your username is installed.