Showing posts with label SSL. Show all posts
Showing posts with label SSL. Show all posts

Friday, December 7, 2012

OpenERP SSL Connection


One of the main feautres of an enterprise system is security. To provide a secure connection between OpenERP web and users's browser you can enable SSL (https protocol). The following steps do this:

1- sudo su -

2- Install Apache web server and enable SSL module:

apt-get install apache2
apt-get install libapache2-mod-gnutls
apt-get install libapache2-mod-python
apt-get install libapache2-mod-wsgi
apt-get install libapache2-modxsltsudo /etc/init.d/apache2 restart
a2enmod headers
a2enmod proxy
a2enmod proxy_connect
a2enmod proxy_ftp
a2enmod proxy_http
a2enmod ssl
a2ensite default-ssl
/etc/init.d/apache2 restart

3- Generating a key pair and X509 certificate file:

this could be done with OpenSSL command or some other packages like XCA or TinyCA.
I will explain this step in another post. For now just install XCA.

apt-get install xca

4- Edit Apache config file for SSL:

vi /etc/apache2/sites-available/default-ssl

4-1 make sure that SSL engine is on.

SSLEngine on

4-2 add the path of private key file and certificate file.

SSLCertificateFile $PATH_TO_CERTIFICATE_FILE
SSLCertificateKeyFile $PATH_TO_PRIVATE_KEY_FILE

4-3 add the following lines before ending VirtualHost tag.

<Proxy "*">
AddDefaultCharset off
order deny,allow
allow from all
</Proxy>
ProxyRequests Off
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/
RequestHeader set "X-Forwarded-Proto" "https"
SetEnv proxy-nokeepalive 1


4-4 restart Apache server

/etc/init.d/apache2 restart

5- open OpenERP config file, it is usually in your home folder, named
.openerp_serverrc (it is hidden) and enable proxy mode.

proxy_mode = True

6- start OpenERP server and point your browser to:

https://localhost



These steps has been tested on Ubuntu 10.04 but should work with little or no changes on other versions of Ubuntu.