Difference between revisions of "SSL"

From MIXXnet Wiki

(basboac)
m (Added note about hash incompatibility between 1.0.0 and prior versions.)
 
(33 intermediate revisions by 16 users not shown)
Line 1: Line 1:
zelract
 
bochirolroze
 
elttrocelt
 
errelch
 
zeldarsi
 
aldelacdels
 
olooloolot
 
acelalelace
 
oloror
 
pasaceltrba
 
acdroncnad
 
getcoorca
 
domcogetr
 
rolnoc4
 
acellidellim
 
eleltam
 
tazelo
 
 
'''Secure Sockets Layer''' ('''SSL''') is a cryptographic protocol which provides secure communication on the Internet.
 
'''Secure Sockets Layer''' ('''SSL''') is a cryptographic protocol which provides secure communication on the Internet.
  
==Connection Information==
+
==General Information==
Users may connect to [[MIXXnet]] using any server that supports SSL. The default port is 6697 unless listed otherwise.
+
Users may connect to the [[MIXXnet|MIXXnet IRC network]] using any server on the network. '''The default port is 6697 unless listed otherwise'''.
  
You may download a copy of the CA certificate MIXXnet uses [http://www.mixxnet.net/ca-cert.pem here]. This file can be imported into some clients which allows for a "trusted" connection. It is not necessary for you to do this, but the option is available to you.
 
 
On December 23, 2005, MIXXnet introduced a new round-robin address for SSL connectivity (irc.ssl.mixxnet.net). As of February 11, 2006, all servers in the irc.mixxnet.net round-robin have SSL support. The use of irc.ssl.mixxnet.net is obsolete and depreciated.
 
 
==Security Information==
 
 
When you use SSL, you are establishing a secure connection between you and the server. As of February 11, 2006, MIXXnet operates with full SSL support including client-to-server connections and server-to-server links.
 
When you use SSL, you are establishing a secure connection between you and the server. As of February 11, 2006, MIXXnet operates with full SSL support including client-to-server connections and server-to-server links.
  
==Servers==
+
Users may download a copy of the CA certificate MIXXnet uses which can be imported into some clients to allow for a "trusted" connection. It is not necessary for you to do this, but the option is available to you. More information about installing MIXXnet's CA certificate can be found [[#CA_Certificate|here]].
'''ALL''' MIXXnet servers support SSL from client-to-server and from server-to-server.
+
  
 
==User & Channel Information==
 
==User & Channel Information==
 
===Identification===
 
===Identification===
To check to see if a user is using SSL, you whois that user. A secured user's whois would look something like:
+
To check to see if a user is using SSL, simply whois that user. A secured user's whois would look something like:
  
Chris is chris@staff.mixxnet.net * Chris<br>
+
Chris is chris@staff.mixxnet.net * Chris
Chris using [[anjuna.il.us.mixxnet.net]] Anjunabeats MIXXnet IRC Server<br>
+
Chris using [[anjuna.il.us.mixxnet.net]] Anjunabeats MIXXnet IRC Server
'''Chris is using a Secure Connection'''<br>
+
'''Chris is using a Secure Connection'''
Chirs End of /WHOIS list.
+
Chirs End of /WHOIS list.
  
 
This means that the user "Chris" is using SSL on anjuna.il.us.mixxnet.net.
 
This means that the user "Chris" is using SSL on anjuna.il.us.mixxnet.net.
  
 
===Channel Protection===
 
===Channel Protection===
In a secure channel, all of the users must have SSL enabled for the channel to be secure. If one user isn't secure, then all the messages will go to that user unencrypted. '''SSL users and non-SSL users can co-exist on the same channel.''' If you wish to limit your channel to only people using SSL, you need to set the channel mode +z (/mode #channel +z). The +z mode prevents non-SSL users from joining the channel. If a non-SSL user does try to join, (s)he will see this message:
+
In a secure channel, all of the users must have SSL enabled for the channel to be secure. If one user isn't secure, then all the messages will go to that user unencrypted. '''SSL users and non-SSL users can co-exist on the same channel.''' If you wish to limit your channel to only people using SSL, you can set the channel mode +z (/mode #channel +z). The +z mode prevents non-SSL users from joining the channel. If a non-SSL user does try to join, (s)he will see this message:
 +
 
 +
<nowiki>#channel unable to join channel (not using secure connection)</nowiki>
 +
 
 +
==Client Setup==
 +
===XChat===
 +
To use SSL in [[XChat]], click '''XChat->Network List'''. Next, click on MIXXnet and '''Edit'''. Then select the two check boxes that say '''Use SSL for all servers on this network''' and '''Accept invalid SSL certificate''' as shown below.
 +
[[Image:ssl_setup_xchat.png|thumb|250px|Screenshot of X-Chat with SSL enabled.]]
 +
 
  
<nowiki>#channel unable to join channel (not using secure connection)</nowiki>
 
  
==Setup==
 
 
===mIRC===
 
===mIRC===
 
[[mIRC]] requires that you have the Windows version of OpenSSL installed on your system. You can download OpenSSL for Windows at [http://www.shininglightpro.com/products/Win32OpenSSL.html this website]. More information on how to install OpenSSL for Windows is beyond the scope of this document. To check if you've installed OpenSSL correctly, look for the '''SSL''' button in the '''mIRC Options''' window as shown below.
 
[[mIRC]] requires that you have the Windows version of OpenSSL installed on your system. You can download OpenSSL for Windows at [http://www.shininglightpro.com/products/Win32OpenSSL.html this website]. More information on how to install OpenSSL for Windows is beyond the scope of this document. To check if you've installed OpenSSL correctly, look for the '''SSL''' button in the '''mIRC Options''' window as shown below.
 
[[Image:ssl_setup_mirc.png|thumb|250px|Screenshot of mIRC with SSL enabled.]]
 
[[Image:ssl_setup_mirc.png|thumb|250px|Screenshot of mIRC with SSL enabled.]]
If you have SSL enabled, choose a server from the '''Servers''' section above. Type: /server servername.xx.xx.mixnet.net +port. The '+' sign is important because it tells mIRC to use SSL.
+
If you have SSL enabled, choose a server from the '''Servers''' section above. Type: /server servername.xx.xx.mixnet.net +6697. The '+' sign is important because it tells mIRC to use SSL.
  
When trying to connect to a SSL enabled server, you may be presented with a dialog that says the SSL certificate is invalid. As long as the certificate has not expired and the domian name matches, the certificate is OK. The reason you are seeing this dialog is because MIXXnet acts as its own certificate authority.
+
When trying to connect to a SSL enabled server, you may be presented with a dialog that says the SSL certificate is invalid. As long as the certificate has not expired and the domain name matches, the certificate is OK. The reason you are seeing this dialog is because MIXXnet acts as its own certificate authority.
  
===XChat===
+
===Irssi===
To use SSL in [[XChat]], click '''X-Chat->Server List...'''. Next, click on MIXXnet and '''Edit..''' ('''Note:''' you may not have MIXXnet on your server list. If you don't, you can just click '''Close''' and type: /server servername.x
+
The use of SSL in Irssi is ''very'' simple. All you need to do is type the following commands into the status window:<br>
172f
+
x.xx.mixnet.net +port). Then select the two check boxes that say, '''Us
+
16e2
+
e SSL for all servers on this network''' and '''Accept invalid SSL certificate''' as shown below.
+
[[Image:ssl_setup_xchat.png|thumb|250px|Screenshot of X-Chat with SSL enabled.]]
+
 
+
===irssi===
+
The use of SSL in [[irssi]] is ''very'' simple. All you need to do is type the following commands into the status window:<br>
+
 
/set use_ssl on<br>
 
/set use_ssl on<br>
 
/set ssl_verify on<br>
 
/set ssl_verify on<br>
Line 72: Line 47:
  
 
===Other Clients===
 
===Other Clients===
Other clients that support SSL include BitchX.
+
Other clients that support SSL include [http://www.bitchx.org BitchX], [http://weechat.flashtux.org/ WeeChat], [http://www.kvirc.de/ KVirc], [http://pidgin.im Pidgin], [http://colloquy.info/ Colloquy], [http://www.opera.com Opera], [http://www.ircle.com/ Ircle], and [http://www.snak.com/ Snak] to name a few.
  
 +
==CA Certificate==
 +
If you would like to install MIXXnet's CA certificate for use in your IRC client to establish a trusted connection and avoid having to accept an "invalid" SSL certificate, please follow the steps below.
  
 +
===Windows===
 +
For clients that use OpenSSL (XChat, mIRC), download MIXXnet's [http://mixxnet.net/mixxnet.crt CA Certificate] to your computer and move it to the following directory (creating the directory structure if it does not already exist): '''C:\usr\local\ssl\certs\'''
 +
 +
When mixxnet.crt is in that directory, rename it to the following (the ".0" at the end is required):  '''8a4e52fb.0'''
 +
 +
'''NOTE:''' If you are using the SilvereX Windows build of XChat 2.8.6-1 or 2.8.6-2, the path is different due to a bug. The correct path is:  '''C:\some\openssl\dir\ssl\certs\8a4e52fb.0'''
 +
 +
===Mac OS X===
 +
Download MIXXnet's [http://mixxnet.net/mixxnet.crt CA Certificate] and rename it from mixxnet.crt to '''8a4e52fb.0'''. Then move that file to '''/System/Library/OpenSSL/certs/'''
 +
 +
===Linux/BSD===
 +
Download and move MIXXnet's [http://mixxnet.net/mixxnet.crt CA Certificate] to the path where OpenSSL is configured to look for trusted certificates. This directory varies by Linux distribution or BSD version, however common paths include: /etc/ssl/certs/, /usr/local/openssl/certs/, /usr/share/ssl/certs/, and /usr/local/ssl/certs/.
 +
 +
Once the CA cert is moved to that directory, make a symlink with the cert's fingerprint and ".0" appended at the end so that OpenSSL can properly detect the certificate:
 +
 +
ln -s mixxnet.crt 8a4e52fb.0
 +
 +
Tip: The filename above was derived from the command: $ openssl x509 -in mixxnet.crt -noout -hash
 +
Note: The hashes used above were calculated with OpenSSL 1.0.0a. Prior versions use a different scheme to calculate the hash. If you use a version that is less than 1.0.0, try using the filename '''6730e552.0''' instead.
  
 
==External Links==
 
==External Links==
 +
*[http://en.wikipedia.org/wiki/Transport_Layer_Security SSL Wikipedia Page]
 
*[http://www.openssl.org/ OpenSSL Website]
 
*[http://www.openssl.org/ OpenSSL Website]
*[http://www.bodhost.com/web-hosting/index.php/2007/09/01/difference-between-shared-ssl-and-dedicated-ssl/ Using SSL as a Option]
 
 
*[http://www.mirc.co.uk/ssl.html Using SSL with mIRC]
 
*[http://www.mirc.co.uk/ssl.html Using SSL with mIRC]
*[http://irssi.org irssi Website]
 
*[http://www.bitchx.org BitchX Website]
 
*[http://en.wikipedia.org/wiki/Transport_Layer_Security SSL Wikipedia Page]
 
  
 
[[Category:Services]]
 
[[Category:Services]]

Latest revision as of 17:13, 21 October 2010

Secure Sockets Layer (SSL) is a cryptographic protocol which provides secure communication on the Internet.

General Information

Users may connect to the MIXXnet IRC network using any server on the network. The default port is 6697 unless listed otherwise.

When you use SSL, you are establishing a secure connection between you and the server. As of February 11, 2006, MIXXnet operates with full SSL support including client-to-server connections and server-to-server links.

Users may download a copy of the CA certificate MIXXnet uses which can be imported into some clients to allow for a "trusted" connection. It is not necessary for you to do this, but the option is available to you. More information about installing MIXXnet's CA certificate can be found here.

User & Channel Information

Identification

To check to see if a user is using SSL, simply whois that user. A secured user's whois would look something like:

Chris is chris@staff.mixxnet.net * Chris
Chris using anjuna.il.us.mixxnet.net Anjunabeats MIXXnet IRC Server
Chris is using a Secure Connection
Chirs End of /WHOIS list.

This means that the user "Chris" is using SSL on anjuna.il.us.mixxnet.net.

Channel Protection

In a secure channel, all of the users must have SSL enabled for the channel to be secure. If one user isn't secure, then all the messages will go to that user unencrypted. SSL users and non-SSL users can co-exist on the same channel. If you wish to limit your channel to only people using SSL, you can set the channel mode +z (/mode #channel +z). The +z mode prevents non-SSL users from joining the channel. If a non-SSL user does try to join, (s)he will see this message:

#channel unable to join channel (not using secure connection)

Client Setup

XChat

To use SSL in XChat, click XChat->Network List. Next, click on MIXXnet and Edit. Then select the two check boxes that say Use SSL for all servers on this network and Accept invalid SSL certificate as shown below.

Screenshot of X-Chat with SSL enabled.


mIRC

mIRC requires that you have the Windows version of OpenSSL installed on your system. You can download OpenSSL for Windows at this website. More information on how to install OpenSSL for Windows is beyond the scope of this document. To check if you've installed OpenSSL correctly, look for the SSL button in the mIRC Options window as shown below.

Screenshot of mIRC with SSL enabled.

If you have SSL enabled, choose a server from the Servers section above. Type: /server servername.xx.xx.mixnet.net +6697. The '+' sign is important because it tells mIRC to use SSL.

When trying to connect to a SSL enabled server, you may be presented with a dialog that says the SSL certificate is invalid. As long as the certificate has not expired and the domain name matches, the certificate is OK. The reason you are seeing this dialog is because MIXXnet acts as its own certificate authority.

Irssi

The use of SSL in Irssi is very simple. All you need to do is type the following commands into the status window:
/set use_ssl on
/set ssl_verify on
/save
After you have done these, you need to pass the -ssl flag to /connect when connecting to an SSL enabled server. For example:
/connect -ssl anjuna.il.us.mixxnet.net 6697

Other Clients

Other clients that support SSL include BitchX, WeeChat, KVirc, Pidgin, Colloquy, Opera, Ircle, and Snak to name a few.

CA Certificate

If you would like to install MIXXnet's CA certificate for use in your IRC client to establish a trusted connection and avoid having to accept an "invalid" SSL certificate, please follow the steps below.

Windows

For clients that use OpenSSL (XChat, mIRC), download MIXXnet's CA Certificate to your computer and move it to the following directory (creating the directory structure if it does not already exist): C:\usr\local\ssl\certs\

When mixxnet.crt is in that directory, rename it to the following (the ".0" at the end is required): 8a4e52fb.0

NOTE: If you are using the SilvereX Windows build of XChat 2.8.6-1 or 2.8.6-2, the path is different due to a bug. The correct path is: C:\some\openssl\dir\ssl\certs\8a4e52fb.0

Mac OS X

Download MIXXnet's CA Certificate and rename it from mixxnet.crt to 8a4e52fb.0. Then move that file to /System/Library/OpenSSL/certs/

Linux/BSD

Download and move MIXXnet's CA Certificate to the path where OpenSSL is configured to look for trusted certificates. This directory varies by Linux distribution or BSD version, however common paths include: /etc/ssl/certs/, /usr/local/openssl/certs/, /usr/share/ssl/certs/, and /usr/local/ssl/certs/.

Once the CA cert is moved to that directory, make a symlink with the cert's fingerprint and ".0" appended at the end so that OpenSSL can properly detect the certificate:

ln -s mixxnet.crt 8a4e52fb.0

Tip: The filename above was derived from the command: $ openssl x509 -in mixxnet.crt -noout -hash Note: The hashes used above were calculated with OpenSSL 1.0.0a. Prior versions use a different scheme to calculate the hash. If you use a version that is less than 1.0.0, try using the filename 6730e552.0 instead.

External Links