Apache Tomcat (neboli Tomcat Server) je open-source Java servlet kontejner vyvinutý Apache Software Foundation.
Tomcat implementuje Java Servlet, JavaServer Pages (JSP), Java EL a WebSocket a poskytuje prostředí webového serveru HTTP „čisté Java“ pro spouštění kódů Java.
Zde je příspěvek o tom, jak nainstalovat Apache Tomcat na Ubuntu 20.04 / Ubuntu 18.04.
Předpoklady
Aktualizujte index úložiště.
aktualizace sudo apt
Nainstalujte Javu
Tomcat vyžaduje instalaci Java JDK v počítači. Můžete nainstalovat Oracle JDK nebo OpenJDK.
Pro toto demo jdu s OpenJDK.
sudo apt install -y openjdk-11-jdk
Jakmile je Java nainstalována, můžete ověřit verzi Java pomocí následujícího příkazu.
verze Java
Výstup:
verze openjdk "11.0.7" 2020-04-14 Runtime prostředí OpenJDK (sestavení 11.0.7+10-post-Ubuntu-3ubuntu1)OpenJDK 64bitový server VM (sestavení 11.0.7+10-post-3ub1ubuntu , smíšený režim)
Účet služby Tomcat
Pro nejlepší praxi by Tomcat nikdy neměl být spuštěn jako privilegovaný uživatel (root). Vytvořte tedy uživatele s nízkým oprávněním pro provozování služby Tomcat.
sudo groupadd tomcatsudo mkdir /opt/tomcatsudo useradd -g tomcat -d /opt/tomcat -s /usr/sbin/nologin tomcat
Stáhnout Tomcat
Balíček Apache Tomcat si můžete stáhnout z oficiálních stránek.
NEBO
V terminálu použijte curl
příkaz ke stažení Apache Tomcat.
### Apache Tomcat 10.x curl https://downloads.apache.org/tomcat/tomcat-10/v10.0.4/bin/apache-tomcat-10.0.4.tar.gz -o apache-tomcat-10.0.4.tar.gz ### Apache Tomcat 9.x curl https://downloads.apache.org/tomcat/tomcat-9/v9.0.44/bin/apache-tomcat-9.0.44.tar.gz -o apache-tomcat-9.0.44.tar.gz
Rozbalte kocoura do požadovaného adresáře (/opt/tomcat).
sudo tar -zxvf apache-tomcat-*.tar.gzsudo mv apache-tomcat-*/* /opt/tomcat/
Změňte vlastnictví adresáře, aby uživatel kocourků mohl do něj zapisovat soubory.
sudo chown -R tomcat:tomcat /opt/tomcat/
Nastavit Tomcat
Zde používáme systemd ke spuštění služby Tomcat. Soubor systemd služby Tomcat vyžaduje umístění Java. Spusťte tedy níže uvedený příkaz a zobrazí se seznam verzí Java dostupných ve vašem systému.
sudo update-java-alternatives -l
Výstup:
java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd6
V současné době mám v systému Java 11.
Vytvořte soubor služby tomcat systemd. Zelené závisí na prostředí, proto je podle toho změňte.
sudo nano /etc/systemd/system/tomcat.service
Přidejte níže uvedené informace do souboru služby Tomcat systemd.
[Unit]Description=Apache Tomcat 9.x Web Application ContainerWants=network.targetAfter=network.target[Service]Type=forkingEnvironment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk -amd64/ Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pidEnvironment=CATALINA_HOME=/opt/tomcatEnvironment='CATALINA_OPTS=-Xms512M -Xmx1G -Djava.net.preferIPv4Stack=true'Environment='JAVA_lessaOPTS='JAVA_lessaOPTS=true'ExecStart=/opt/tomcat/bin/startup.shExecStop=/opt/tomcat/bin/shutdown.shSuccessExitStatus=143User=tomcatGroup=tomcatUMask=0007RestartSec=10Restart=always[Install]WantedBy=multi-us>Znovu načtěte démona systemd.
sudo systemctl daemon-reloadSpusťte Tomcat
Chcete-li spustit službu Tomcat; spustit:
sudo systemctl spustit tomcatZkontrolujte stav Tomcatu, spusťte:
sudo systemctl status tomcatPovolte automatické spouštění služby Tomcat při spouštění systému:
sudo systemctl povolit kocourVe výchozím nastavení běží Apache Tomcat na portu 8080. Pomocí příkazu netstat zkontrolujte stav naslouchání služby Tomcat.
sudo netstat -antup | grep 8080Výstup:
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1611/javaČTĚTE: Příkaz netstat nebyl na Ubuntu nalezen – Rychlá oprava
Konfigurace webového uživatelského rozhraní Apache Tomcat
Tomcat přichází s webovým správcem a správcem hostitele pro správu Tomcatu. Host Manager i Web Manager jsou chráněny heslem a pro přístup vyžaduje uživatelské jméno a heslo.
Vytvořte uživatele s rolemi manager-gui a admin-gui, abyste měli přístup ke správci webových aplikací a správci hostitele. Tyto dvě role jsou definovány v souboru tomcat-users.xml.
sudo nano /opt/tomcat/conf/tomcat-users.xmlUmístěte následující dva řádky (definice role a uživatele) těsně nad poslední řádek.
rolename="admin-gui,manager-gui"/>Z bezpečnostních důvodů jsou Web Manager a Host Manager přístupné pouze z localhost, tj. ze samotného serveru.
Chcete-li získat přístup k webovým a hostitelským manažerům ze vzdáleného systému, budete muset přidat zdrojovou síť do seznamu povolených. Chcete-li to provést, upravte dva níže uvedené soubory.
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xmlsudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xmlAktualizujte níže uvedený řádek ve výše uvedených souborech se zdrojovou IP adresou, ze které přistupujete ke správci webu a hostitele.
.* umožní všem sítím mít přístup k oběma správcům.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|.*" />NEBO
Můžete také povolit pouze část vaší sítě. Například:Chcete-li povolit pouze síť 192.168.0.0/24, můžete použít níže uvedené hodnoty.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.*" />Restartujte službu Tomcat.
sudo systemctl restart tomcatPřístup k Tomcatu
Otevřete prohlížeč a přejděte na níže uvedenou adresu URL.
http://ip.add.re.ss:8080Získáte výchozí stránku Tomcatu, což potvrzuje, že Apache Tomcat je úspěšně nainstalován.
Klikněte na aplikaci Správce pro přístup k Web Manageru (vyžadováno přihlášení):Uživatelské jméno :admin , Heslo :heslo.
Pomocí webového správce můžete nasadit novou aplikaci, nasadit aplikaci v určeném kontextu, spustit, zastavit, znovu načíst a zrušit nasazení aplikace.
Můžete také zkontrolovat stav serveru.
Klikněte na Správce hostitele pro přístup ke správci hostitelů Tomcat (vyžadováno přihlášení):Uživatelské jméno :admin , Heslo :heslo.
Zde můžete spravovat virtuální hostitele Tomcat.
Závěr
To je vše. Doufám, že jste se naučili, jak nainstalovat Apache Tomcat na Ubuntu 20.04 / Ubuntu 18.04. Nyní jste připraveni na svou první webovou aplikaci. Jako bezpečnostní doporučení zvažte implementaci SSL/TLS pro Tomcat
Jak nainstalovat Elasticsearch, Logstash a Kibana (ELK Stack) na Ubuntu 18.04 / Ubuntu 16.04 Jak nainstalovat Zabbix 5.0/4.0 na Ubuntu 18.04 / Ubuntu 16.04Ubuntu