GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Apache Tomcat 9.0 / 8.5 unter CentOS 6 / RHEL 6

Apache Tomcat ist ein Open-Source-Webserver und Servlet-Container, der von der Apache Software Foundation (ASF) entwickelt wurde.

Tomcat implementiert das Java-Servlet und die JavaServer Pages (JSP)-Spezifikationen von Oracle und stellt eine „reine Java“-HTTP-Webserverumgebung zum Ausführen der Java-Codes bereit.

Apache Tomcat enthält Tools zur Konfiguration und Verwaltung, kann aber auch durch Bearbeiten von XML-Konfigurationsdateien konfiguriert werden.

Hier ist die Schritt-für-Schritt-Anleitung zur Installation von Apache Tomcat 9.0 / 8.5 auf CentOS 6 / RHEL 6.

Voraussetzungen

Installieren Sie Java

Für Tomcat muss eine stabile Version von Java 8 oder höher auf Ihrem Computer installiert sein. Sie können entweder Oracle JDK oder OpenJDK auf Ihrem Computer installieren.

Hier verwende ich OpenJDK.

yum install -y java-1.8.0 wget

Sie können Java auch überprüfen, indem Sie den folgenden Befehl ausführen.

java -version

Ausgabe:

openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

Erstellen Sie ein Dienstkonto

Als Best Practice sollte Tomcat niemals als privilegierter Benutzer (Root) ausgeführt werden. Erstellen Sie also einen Benutzer mit geringen Rechten zum Ausführen des Tomcat-Dienstes.

useradd -d /opt/tomcat  tomcat

Installieren Sie Apache Tomcat

Apache Tomcat herunterladen

Laden Sie Apache Tomcat von der offiziellen Website herunter.

### Apache Tomcat 9.0 ###

wget https://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.22/bin/apache-tomcat-9.0.22.tar.gz

### Apache Tomcat 8.5 ###

wget https://www-us.apache.org/dist/tomcat/tomcat-8/v8.5.43/bin/apache-tomcat-8.5.43.tar.gz

Apache Tomcat einrichten

Extrahieren Sie den Kater in die gewünschte Datei (/opt/tomcat ) Verzeichnis.

tar -zxvf apache-tomcat-*.tar.gz

mv apache-tomcat-*/* /opt/tomcat/

chown -R tomcat:tomcat /opt/tomcat/

Init-Skript erstellen

Apache Tomcat kann mit dem mitgelieferten Skript manuell gestartet und gestoppt werden. Aber hier werden wir das Init-Skript verwenden, um damit umzugehen.

vi /etc/init.d/tomcat9

Verwenden Sie die folgenden Informationen.

        
#!/bin/bash
# chkconfig: 2345 95 20
# description: This application was developed by me and is tested on this server
# processname: my_app
#
# Tomcat 8 start/stop/status init.d script
# Initially forked from: https://gist.github.com/valotas/1000094
# @author: Miglen Evlogiev <[email protected]>
#
# Release updates:
# Updated method for gathering pid of the current proccess
# Added usage of CATALINA_BASE
# Added coloring and additional status
# Added check for existence of the tomcat user
# Added termination proccess
 
#Location of JAVA_HOME (bin files)
export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk.x86_64/
 
#Add Java binary files to PATH
export PATH=$JAVA_HOME/bin:$PATH
 
#CATALINA_HOME is the location of the bin files of Tomcat  
export CATALINA_HOME=/opt/tomcat/
 
#CATALINA_BASE is the location of the configuration files of this instance of Tomcat
export CATALINA_BASE=/opt/tomcat/
 
#TOMCAT_USER is the default user of tomcat
export TOMCAT_USER=tomcat
 
#TOMCAT_USAGE is the message if this script is called without any options
TOMCAT_USAGE="Usage: $0 {\e[00;32mstart\e[00m|\e[00;31mstop\e[00m|\e[00;31mkill\e[00m|\e[00;32mstatus\e[00m|\e[00;31mrestart\e[00m}"
 
#SHUTDOWN_WAIT is wait time in seconds for java proccess to stop
SHUTDOWN_WAIT=20
 
tomcat_pid() {
        echo `ps -fe | grep $CATALINA_BASE | grep -v grep | tr -s " "|cut -d" " -f2`
}
 
start() {
  pid=$(tomcat_pid)
  if [ -n "$pid" ]
  then
    echo -e "\e[00;31mTomcat is already running (pid: $pid)\e[00m"
  else
    # Start tomcat
    echo -e "\e[00;32mStarting tomcat\e[00m"
    #ulimit -n 100000
    #umask 007
    #/bin/su -p -s /bin/sh $TOMCAT_USER
        if [ `user_exists $TOMCAT_USER` = "1" ]
        then
                /bin/su $TOMCAT_USER -c $CATALINA_HOME/bin/startup.sh
        else
                sh $CATALINA_HOME/bin/startup.sh
        fi
        status
  fi
  return 0
}
 
status(){
          pid=$(tomcat_pid)
          if [ -n "$pid" ]; then echo -e "\e[00;32mTomcat is running with pid: $pid\e[00m"
          else echo -e "\e[00;31mTomcat is not running\e[00m"
          fi
}

terminate() {
	echo -e "\e[00;31mTerminating Tomcat\e[00m"
	kill -9 $(tomcat_pid)
}

stop() {
  pid=$(tomcat_pid)
  if [ -n "$pid" ]
  then
    echo -e "\e[00;31mStoping Tomcat\e[00m"
    #/bin/su -p -s /bin/sh $TOMCAT_USER
        sh $CATALINA_HOME/bin/shutdown.sh
 
    let kwait=$SHUTDOWN_WAIT
    count=0;
    until [ `ps -p $pid | grep -c $pid` = '0' ] || [ $count -gt $kwait ]
    do
      echo -n -e "\n\e[00;31mwaiting for processes to exit\e[00m";
      sleep 1
      let count=$count+1;
    done
 
    if [ $count -gt $kwait ]; then
      echo -n -e "\n\e[00;31mkilling processes didn't stop after $SHUTDOWN_WAIT seconds\e[00m"
      terminate
    fi
  else
    echo -e "\e[00;31mTomcat is not running\e[00m"
  fi
 
  return 0
}
 
user_exists(){
        if id -u $1 >/dev/null 2>&1; then
        echo "1"
        else
                echo "0"
        fi
}
 
case $1 in
	start)
	  start
	;;
	stop)  
	  stop
	;;
	restart)
	  stop
	  start
	;;
	status)
		status
	;;
	kill)
		terminate
	;;		
	*)
		echo -e $TOMCAT_USAGE
	;;
esac    
exit 0

Kredit :Timothy Hutz.

Setzen Sie das Skript auf ausführbar.

chmod +x /etc/init.d/tomcat9

Apache Tomcat starten

Starten Sie den Dienst.

service tomcat9 start

Sie können überprüfen, ob der Dienst läuft, standardmäßig läuft Tomcat auf Port Nr. 8080

netstat -antup | grep 8080

Ausgabe:

tcp        0      0 :::8080                     :::*                        LISTEN      1526/java

Aktivieren Sie den Tomcat-Dienst so, dass er beim Systemstart automatisch gestartet wird.

chkconfig --add tomcat9

chkconfig tomcat9 on

Firewall

Anfragen der Tomcat-Webanwendung durch die Firewall zulassen.

iptables -I INPUT -p tcp -m tcp --dport 8080 -j ACCEPT

/etc/init.d/iptables save

Apache Tomcat Web-UI konfigurieren

Tomcat kann über den Web-Manager und den virtuellen Host-Manager verwaltet werden. Sowohl der Web-Manager als auch der Host-Manager sind passwortgeschützt und erfordern einen Benutzernamen und ein Passwort für den Zugriff.

Der Benutzer mit manager-gui und admin-gui Rolle haben Zugriff auf Web Application Manager bzw. Host-Manager. Diese Benutzer und Rollen sind in tomcat-users.xml definiert.

vi /opt/tomcat/conf/tomcat-users.xml

Platzieren Sie die folgenden beiden Zeilen direkt über der letzten Zeile.

<role rolename="admin-gui,manager-gui"/>
<user username="admin" password="tomcat" roles="manager-gui,admin-gui"/>

Aus Sicherheitsgründen sind Web Manager und Host Manager nur vom localhost aus zugänglich, d. h. vom Server selbst.

Um vom Remote-System aus auf Web- und Host-Manager zugreifen zu können, müssen Sie Ihr Quellnetzwerk zur Zulassungsliste hinzufügen. Bearbeiten Sie dazu die beiden folgenden Dateien.

### Web Manager ###

vi /opt/tomcat/webapps/manager/META-INF/context.xml

### Host Manager ###

vi /opt/tomcat/webapps/host-manager/META-INF/context.xml

Aktualisieren Sie die untere Zeile in den obigen Dateien mit der Quell-IP, von der aus Sie auf den Web- und Host-Manager zugreifen. .* ermöglicht jedem den Zugriff auf beide Manager.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|.*" />

ODER

Sie können auch nur einen Teil Ihres Netzwerks zulassen. Beispiel:Um nur das Netzwerk 192.168.1.0/24 zuzulassen, können Sie die folgenden Werte verwenden.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.1.*" />

Starten Sie den Tomcat-Dienst neu.

service tomcat9 restart

Greifen Sie auf Apache Tomcat zu

Öffnen Sie den Webbrowser und zeigen Sie auf

http://ip.add.re.ss:8080

Sie würden die Tomcat-Standardseite erhalten.

Web Manager:– Anmeldung erforderlich. Benutzername:admin, Passwort:tomcat.

Hier können Sie eine neue Anwendung bereitstellen, eine neue Anwendung in einem bestimmten Kontext bereitstellen, die aktiven oder inaktiven Anwendungen auflisten und die Webanwendungen starten und stoppen.

Außerdem können Sie den Serverstatus überprüfen .

Host-Manager:– Anmeldung erforderlich. Benutzername:admin, Passwort:tomcat.

Hier können Sie mit virtuellen Hosts von Tomcat umgehen.

Schlussfolgerung

Das ist alles. Ich hoffe, Sie haben gelernt, wie man Tomcat 9 auf CentOS 6 / RHEL 6 installiert. Sie können jetzt Ihre erste Webanwendung bereitstellen. Ziehen Sie als Sicherheitsempfehlung die Implementierung von SSL/TLS für Tomcat in Betracht


Cent OS
  1. So installieren Sie Apache Tomcat unter Linux RHEL 8 / CentOS 8

  2. So installieren Sie Apache Maven CentOS 7 / RHEL 7

  3. So installieren Sie Apache Tomcat 8 unter CentOS

  4. So installieren Sie Apache Tomcat unter CentOS 7

  5. Wie installiere ich Tomcat 7 auf Centos?

So installieren Sie Apache Maven CentOS 8 / RHEL 8

So installieren Sie Apache Solr 8.9 auf CentOS/RHEL 8

So installieren Sie Apache Solr unter CentOS &RHEL 8

So installieren Sie Apache Tomcat unter CentOS 8

So installieren Sie Apache Kafka in CentOS/RHEL 7

So installieren Sie Apache Tomcat 9 auf CentOS 7