Installazione di Apache Tomcat 8.5 su CentOS 7
In questo tutorial andremo ad installare Apache Tomcat 8.5 su CentOS 7.
Consideriamo di partire da una macchina CentOS 7 preinstallata (leggere qui) ed aggiorniamo il sistema
yum update
installazione della open JDK versione 8
yum -y install java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64 vim
java -version
openjdk version “1.8.0_181”
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
configuriamo le variabili di ambiente per l’utente root (per semplicità) ed estrapoliamo il percorso della JRE
update-alternatives --config java
C’è 1 programma che fornisce ‘java’.
Selezione Comando
———————————————–
*+ 1 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el7_5.x86_64/jre/bin/java)
vim /etc/profile
in fondo al file aggiungiamo
export JAVA_HOME=”/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el7_5.x86_64/jre”
quindi aggiungiamo al sistema l’utente con cui girerà Tomcat, cioè tomcat
groupadd tomcat
useradd -M -s /bin/nologin -g tomcat -d /opt/tomcat tomcat
scarichiamo dal sito ufficiale il Tomcat
cd
yum install wget
wget http://apache.panu.it/tomcat/tomcat-8/v8.5.33/bin/apache-tomcat-8.5.33.tar.gz
tar -xvzf apache-tomcat-8.5.33.tar.gz
mv apache-tomcat-8.5.33/ apachetomcat/
mv apachetomcat/ /opt/
cd /opt/apachetomcat/
cambiamo i permessi e i responsabili dei file all’interno della cartella
chgrp -R tomcat /opt/apachetomcat/
sudo chmod -R g+r conf
sudo chmod g+x conf
chown -R tomcat webapps/ work/ temp/ logs/
creiamo il file su systemd che ci permetterà di avviare in automatico il tomcat
vim /etc/systemd/system/apachetomcat.service
[Unit]
Description=Apache Tomcat 8_5
After=syslog.target network.target[Service]
Type=forkingEnvironment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el7_5.x86_64/jre
Environment=CATALINA_PID=/opt/apachetomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/apachetomcat
Environment=CATALINA_BASE=/opt/apachetomcat
Environment=’CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC’
Environment=’JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom’ExecStart=/opt/apachetomcat/bin/startup.sh
ExecStop=/bin/kill -15 $MAINPIDUser=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always[Install]
WantedBy=multi-user.target
ricarichiamo i nuovi servizi creati ed avviamo il Tomcat
systemctl daemon-reload
systemctl start apachetomcat
systemctl enable apachetomcat
A questo punto possiamo accedere alla pagina web che gestisce il tomcat, attraverso il seguente url http://ip_server:8080
Per poter usufruire dei vantaggi della GUI dovremo modificare il seguente file di configurazione
vim /opt/apachetomcat/conf/tomcat-users.xml
aggiungendo, all’interno del tag <tomcat-users></tomcat-users>, la seguente riga
<user username=”admin” password=”password” roles=”manager-gui,admin-gui”/>
riavviamo il servizio di Tomcat con uno stop ed uno start (vedi i comandi lanciati in precedenza) e successivamente modifichiamo anche il seguente file
vim /opt/apachetomcat/webapps/host-manager/META-INF/context.xml
commentando le seguenti righe
<Context antiResourceLocking=”false” privileged=”true” >
<!–<Valve className=”org.apache.catalina.valves.RemoteAddrValve”
allow=”127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1″ />–>
<Manager sessionAttributeValueClassNameFilter=”java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap”/>
</Context>
a questo punto possiamo accedere dalla GUI all’Hostmanager con utente ‘admin’ e password ‘password’ per semplicità, anche se è consigliabile cambiarla. Avremo quindi