CentOS 5.5 – Install Tomcat 6

FrançaisLinuxTutorials

Paramètres de configuration
Manager : admin / adminPassword
Admin : manager / managerPassword

Pré-requis
CentOS 5.5 – Install Java 6

Installation Tomcat 6
Allons dans le répertoire de téléchargement et récupérons tomcat (si ce miroir ne répond pas trouvez-en un autre 🙂 ) :

cd ~
wget -c http://mirror.ovh.net/ftp.apache.org/dist/tomcat/tomcat-6/v6.0.29/bin/apache-tomcat-6.0.29.tar.gz

Décompression de tomcat dans /usr/local/ et création des liens symbolique pour simplifier les changements de versions plus tard :

cd /usr/local/
tar zxvf /downloads/apache-tomcat-6.0.29.tar.gz
mv apache-tomcat-6.0.29 tomcat-6.0.29
ln -s tomcat-6.0.29/ tomcat

Création de l’utilisateur qui contrôlera le processus :

groupadd tomcat
useradd -g tomcat tomcat

Affectation des droits :

chown tomcat:tomcat /usr/local/tomcat
chown -R tomcat:tomcat /usr/local/tomcat-6.0.29

Création d’un lanceur pour tomcat :

cat > /etc/init.d/tomcat << "EOF"
#!/bin/bash
# chkconfig: 3 21 91
#
# Tomcat
#
# description: Start up the Tomcat servlet engine.

# Source function library.
. /etc/init.d/functions


RETVAL=$?
TOMCATHOME="/usr/local/tomcat"

case "$1" in
  start)
    if &#91; -f $TOMCATHOME/bin/startup.sh &#93;;
      then
      echo $"Starting Tomcat"
      /bin/su - tomcat -c $TOMCATHOME/bin/startup.sh
    fi
  ;;

  stop)
    if &#91; -f $TOMCATHOME/bin/shutdown.sh &#93;;
      then
      TOMCAT_PID=<code>ps -ef | grep java | grep tomcat | awk '{print $2}'</code>
      echo $"Stopping Tomcat with PID=$TOMCAT_PID"
      /bin/su - tomcat -c $TOMCATHOME/bin/shutdown.sh
      sleep 15s
      kill $TOMCAT_PID
    fi
  ;;

  *)
    echo $"Usage: $0 {start|stop}"
    exit 1
  ;;
esac

exit $RETVAL
EOF

On rend ce fichier exécutable :

chmod a+x /etc/init.d/tomcat

On met à jour le fichier des user de tomcat (le fichier par défaut n’est pas top) :

cat > /usr/local/tomcat/conf/tomcat-users.xml << "EOF"
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="manager"/>
  <role rolename="admin"/>
  <user username="admin" password="adminPassword" roles="admin,manager"/>
  <user username="manager" password="managerPassword" roles="manager"/>
</tomcat-users>
EOF

Affectation des répertoires à l’utilisateur tomcat :

chown tomcat:tomcat /usr/local/tomcat
chown -R tomcat:tomcat /usr/local/tomcat-6.0.29</pre>

Sauvegarde du fichier de configuration original :

mv /usr/local/tomcat/conf/server.xml /usr/local/tomcat/conf/server.xml.ORIG

Création d’un fichier de configuration qui est prêt à fonctionner en mode connecteur avec Apache :

cat > /usr/local/tomcat/conf/server.xml << "EOF"
<?xml version='1.0' encoding='utf-8'?>
<Server port="8005" shutdown="SHUTDOWN">

  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JasperListener" />
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

  <GlobalNamingResources>
    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />
  </GlobalNamingResources>

  <Service name="Catalina">

    <!--Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8" /-->
    <!--Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" /-->

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8" />

    <Engine name="Catalina" defaultHost="localhost">

      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
             resourceName="UserDatabase"/>

        <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">

      </Host>
    </Engine>
  </Service>
</Server>
EOF

Pour faire fonctionner Tomcat en standelone il suffit de décommenter la ligne suivante :

<!--Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8" /-->

On arrête tomcat (au cas ou il à été démarré) :

chmod 700 /etc/init.d/tomcat
/etc/init.d/tomcat stop

On permet à Tomcat de se lancer au démarrage du serveur (et de se couper à l’arrêt du serveur)

/sbin/chkconfig --level 3 tomcat on
/sbin/chkconfig --level 06 tomcat off

Ajoutons à la fin de /etc/profile des choses (CATALINA_HOME) :

cat >> /etc/profile << "EOF"

CATALINA_HOME=/usr/local/tomcat
export CATALINA_HOME

EOF
&#91;/shell&#93;
On lance tomcat :
&#91;shell&#93;
/etc/init.d/tomcat start
&#91;/shell&#93;
On regarde si <strong>Server started</strong> s'affiche à la fin du fichier de log :
[shell]
tail -f /usr/local/tomcat/logs/catalina.out

Ctrl + c pour sortir du tail.

Le firewall
N’oublions pas de régler le firewall histoire qu’il autorise les connexions sur notre serveur tomcat :

iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
iptables -A INPUT -p tcp --dport 8009 -j ACCEPT
/sbin/service iptables save

Pour aller plus loin
CentOS 5.5 – Install Apache 2
CentOS 5.5 – Install JK connector – Apache 2 / Tomcat 6

@musez-vous bien !

Previous
CentOS 5.5 – Install JK connector – Apache 2 / Tomcat 6
Next
CentOS 5.5 – Install PostgresSQL 9

Leave a comment

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload the CAPTCHA.