January 24, 2010

Firefox user certificates doesnt work in Linux

Its hard to find solutions for some specific problems and sometimes it needs many hours googling and trying various solutions till find the right one. I will post here issues and their solutions in hope to save your time, visitor! If this blog helps you - feel free to say thanks in comments. My English is rather poor but it doesn't matter. :) Poehali!
Yesterday my Linux box updates nss lib to 3.12.5 version. And at the same time I need to register on Russian payment system - Webmoney. Registration generates user certificate and install it in a browser. Everything works fine and in Firefox's certman (Edit - Preferences - Advanced - Encryption - View certificates) under "Your certificates" appears "WebMoney Transfer" certificate. The next step should be to sign in with authorization by this certificate which contain public and private keys. But I see only the next error screen after pressing Login button:
Secure Connection Failed
An error occurred during a connection to light.webmoney.ru.
* The page you are trying to view can not be shown because the authenticity of the received data could not be verified.
* Please contact the web site owners to inform them of this problem. Alternatively, use the command found in the help menu to report this broken site.
After couple hours finally I managed to solve this issue. It needs only setting the NSS_SSL_ENABLE_RENEGOTIATION environment variable to 1.
For example in front of command starting Firefox:

or place export NSS_SSL_ENABLE_RENEGOTIATION=1 in startup script or environment configuration file.

Hope it helps somebody!