Magazine Internet

Installation de Liferay sous GNU/Linux

Publié le 13 novembre 2008 par Nicolargo

Le but est d’installer le portail Liferay sous un système GNU/Linux. La distribution retenue est une Ubuntu Server 8.10 mais la parocédure suivante devrait être valable pour d’autres systèmes Linux et BSD aux locations des fichiers de configurations près.

Liferay - Liferay Portal.jpg

Installation du système d’exploitation GNU/Linux

Je suis partie sur une installation standard en mode texte. Les modules serveurs à installer sont les suivants:

  • Serveur SSH (pour l’administration à distance)
  • Java (JRE) 1.6 ou supérieure (installé par défaut sous Ubuntu)

Une fois le serveur installé, on peut entrer dans le vif du sujet avec l’installation de Liferay. Pour la suite de ce billet, je me suis basé sur le livre “Portal Administrator’s Guide” disponible au format PDF en anglais PDF (ici pour la version 5.1).

Installation de Liferay

On commence par récupérer la dernière version de Liferay sur le site officiel. Dans notre cas, il faut récupérer l’archive nommé “Bundled with Tomcat 6.0″. Cette version inclue Liferay + Apache + Tomcat 6.0 + BD interne.

cd /usr/src

wget http://heanet.dl.sourceforge.net/sourceforge/lportal/liferay-portal-tomcat-6.0-5.1.2.zip

cd /usr/local

unzip /usr/src/liferay-portal-tomcat-6.0-5.1.2.zip

L’ensemble des fichiers se trouvent donc dans le répertoire /usr/local/liferay-portal-tomcat-6.0-5.1.2. Nous allons créer un lien symbolique vers le répertoire /usr/local/liferay afin de simplifier les choses et facilité les prochaines migrations.

ln -s liferay-portal-tomcat-6.0-5.1.2 liferay

Premier lancement de Liferay

On peut alors lancer Liferay, pour cela on utilise la séquence suivante:

cd /usr/local/liferay

./bin/startup.sh & tail -f ./logs/catalina.out

Si tout est ok, vous devriez voir s’afficher la page (http://adresseipduserveur:8080):

liferay.com - Welcome.jpg

Vous pouvez utiliser le login/password suivant:

Login: [email protected]

Password: test

Pour une rapide introduction des fonctions de Liferay, vous pouvez lire ce billet.

Si vous souhaitez arrêter Liferay, il faut utiliser les commandes suivantes:

cd /usr/local/liferay

./bin/shutdown.sh

Automatiser le lancement de Liferay

Si vous souhaitez lancer Liferay sur le port découte Web standard (TCP port 80), il faut d’abord être sûr qu’un autre serveur Web ne tourne pas. Par exemple pour empêcher Apache de se lancer au démarrage d’un système GNU/Linux Ubuntu, il faut saisir les commandes:

apache2ctl stop

update-rc.d -f apache2 remove

update-rc.d apache2 stop 80 0 1 2 3 4 5 6 .

Configurer Liferay pour écouter sur le port TCP/80. Il faut éditer le fichier /usr/local/liferay/conf/server.xml et changer toutes les occurences 8080 par 80.

Plusieurs solutions sont alors possibles pour automatiser le lancement du bundle Liferay lors du démarrage du système GNU/Linux Ubuntu. Personnellement, je modifie le fichier /etc/rc.local pour lui ajouter la ligne suivante:

export JAVA_HOME=/usr/lib/jvm/default-java & PATH=$JAVA_HOME/bin:$PATH & cd /usr/local/liferay/bin & ./startup.sh

Il ne reste plus qu’a relancer notre serveur Liferay:

./bin/shutdown.sh

./bin/startup.sh

Puis à vérifier que le serveur Tomcat répond bien aux requêtes HTTP sur le port 80: http://adresseipduserveur

Sécuriser les connections

A ce stade de l’installation, vous devriez disposer d’un serveur Liferay opérationnel répondant aux requêtes HTTP arrivant sur son port TCP/80. C’est déjà bien mais on peut mieux faire. Par exemple en sécurisant la connexion client serveur dans un tunnel SSL (HTTPs).

Pour cela, nous allons configurer le serveur Tomcat pour répondre seulement aux requêtes HTTPs et rediriger les requêtes HTTP vers HTTPs. Pour cet exemple, nous utiliserons un certificat que nous allons généré nous même (le navigateur Web va sûrement râler la première fois que vous allez accéder à votre portail), pour un serveur en production, il faudra utiliser un certificat généré par une autorité compétente (par exemple chez VeriSign).

Génération de la clés SSL

Nous allons générer une clés qui sera stocké dans le répertoire /usr/local/liferay/webapps/keystore.key:

/usr/lib/jvm/default-java/bin/keytool -genkey -alias tomcat -keyalg RSA -keystore /usr/local/liferay/webapps/keystore.key

Je vous laisse répondre aux questions que keytool va vous poser (bien noter votremotdepasse).

Configuration du serveur Tomcat 6 pour la prise en compte du SSL

Il faut éditer le fichier ./conf/server.xml et remplacer la bonne section SSL (qui doit être commenté par défaut) par:

<Connector port=”443″

maxThreads=”150″ minSpareThreads=”25″ maxSpareThreads=”75″

enableLookups=”false” disableUploadTimeout=”true”

acceptCount=”100″ debug=”0″ scheme=”https” secure=”true”

clientAuth=”false” sslProtocol=”TLS”

keystoreFile=”/usr/local/liferay/webapps/keystore.key”

keystorePass=”votremotdepasse” />

Configuration du serveur Liferay pour la prise en compte du SSL

On ajoute la section suivante au fichier ./conf/web.xml (avant le tag </web-app>):

<security-constraint>

<web-resource-collection>

<web-resource-name>securedapp</web-resource-name>

<url-pattern>/*</url-pattern>

</web-resource-collection>

<user-data-constraint>

<transport-guarantee>CONFIDENTIAL</transport-guarantee>

</user-data-constraint>

</security-constraint>

Il ne reste plus qu’a relancer notre serveur Liferay:

./bin/shutdown.sh

./bin/startup.sh

Puis à vérifier que le serveur Tomcat répond bien aux requêtes HTTPs: https://adresseipduserveur

Conclusion

Votre portail Liferay est maintenant opérationnel, il ne reste plus qu’a le configurer pour qu’il répondre à vos besoins. Pour celà, je vous laisse lire ce PDF (en Anglais), qui est le “quick start guide” du protail.


Retour à La Une de Logo Paperblog

A propos de l’auteur


Nicolargo 417 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Dossier Paperblog

Magazine