November 15, 2007
Getting SSL Support in Python 2.5.1
You'll know if you need ssl support compiled into your python installation if
you get the following exception message:
AttributeError: 'module' object has
no attribute 'ssl'
In order to make that go away so you can continue happily slinging python
code, you'll need to first make sure you have OpenSSL installed. By default it
is installed from source at:
If that directory doesn't exist, then grab the source package.
Do the standard:
tar zxf openssl-0.9.8g.tar.gz cd openssl-0.9.8g ./config make make install
Then grab the python sources for
Python-2.5.1.tgz && cd Python-2.5.1
Then you need to edit the Modules/Setup.dist:
204:# Socket module helper for SSL support; you must comment out the other 205:# socket line above, and possibly edit the SSL variable: 206:SSL=/usr/local/ssl 207:_ssl _ssl.c \ 208: -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \ 209: -L$(SSL)/lib -lssl -lcrypto</pre>
If you installed OpenSSL in the default locations you can just uncomment lines 206-209, then:
./configure make make install</pre>
Then verify your installation with:
python /usr/local/lib/python2.5/test/test_socket_ssl.py test_rude_shutdown ... test_basic ... test_timeout ...