TLS: enabling SSL and TLS encryption

Here we will see how to install OpenSSL and TLS to be able to encrypt communication between
Tkabber and your server using the old SSL method or the new TLS if your server supports it.

  1. Install OpenSSL

    • from source

      wget http://www.openssl.org/source/openssl-0.9.7d.tar.gz
      tar -xzvf openssl-0.9.7d.tar.gz
      cd openssl-0.9.7d
      ./config
      make
      make test
      make install

    • using apt

      apt-get install openssl libssl-dev

  2. Install TLS for Tcl

    • from source

      Download it:

      wget http://unc.dl.sourceforge.net/sourceforge/tls/tls1.5.0-src.tar.gz
      tar -xzvf tls1.5.0-src.tar.gz
      cd tls1.5

      Now configure the compilation:

      • default
        ./configure
      • on Debian unstable
        ./configure --with-tcl=/usr/lib/tcl8.4/ --with-tclinclude=/usr/include/tcl8.4/ --with-ssl-dir=/usr/
      • on Debian Woody
        ./configure --with-tcl=/usr/lib/tcl8.3/ --with-tclinclude=/usr/include/tcl8.3/ --with-ssl-dir=/usr/

      Compile and install it:

      make
      make install

    • official binary on Linux x86

      Download it:

      wget http://belnet.dl.sourceforge.net/sourceforge/tls/tls1.5.0-linux-x86.tar.gz
      tar -xzvf tls1.5.0-linux-x86.tar.gz

      Now copy the files:

      cp -r tls1.5 /usr/lib
      mv /usr/lib/tls1.5/libtls1.50.so /usr/lib/

    • using apt on Debian unstable

      apt-get install tcltls

    Check it's installed:

    tclsh
    % package require tls
    1.50
    % exit

  3. Configure Tkabber

    When Tkabber is able to load TLS it shows a new tab on the Login Window.
    Check the SSL option to use SSL or STARTTLS to use the new TLS system if your server suports it.

    You will probably want to configure Tkabber permanently to use SSL or TLS always.
    There are two methods:

    • Open Tkabber, open the Customize window, section 'Login', check the '::::loginconf(usessl):' option.
    • In your $HOME/.tkabber/config.tcl put this:

      hook::add finload_hook {
        set ::loginconf(usessl) 1
      }

Syndicate content