Giunsa ang Pag-install sa Apache Tomcat 9 sa Debian 10


Ang Apache Tomcat usa ka libre, hamtong, lig-on, ug sikat nga web application server software nga gigamit sa pag-alagad sa Java-based nga mga aplikasyon. Kini usa ka open-source nga pagpatuman sa Java Servlet, JavaServer Pages (JSP), Java Expression Language ug Java WebSocket nga mga teknolohiya, nga gimugna sa Apache Software Foundation (ASF).

Kini nga panudlo maggiya kanimo sa proseso sa pag-install ug pag-configure sa pinakabag-o nga pagpagawas sa Tomcat 9 sa imong Debian 10 Linux server.

Sa dili ka pa magsugod niini nga panudlo, siguroha nga ikaw adunay usa ka non-root user account nga adunay sudo nga mga pribilehiyo sa imong server. Kung dili, mahimo nimong i-set up ang usa gamit ang among giya Giunsa Paghimo usa ka Bag-ong Sudo User sa Ubuntu/Debian.

Lakang 1: I-install ang Java sa Debian 10

Aron ma-install ang pinakabag-o nga pagpagawas sa Tomcat 9 sa imong Debian 10 server, kinahanglan nimo nga ma-install ang Java sa server aron mahimo nimo nga ma-execute ang Java web application code.

Una, i-update ang system software package index gamit ang apt command sama sa gipakita.

$ sudo apt update

Dayon i-install ang Java Development Kit nga pakete gamit ang apt command.

$ sudo apt install default-jdk

Kung kompleto na ang pag-instalar sa Java, susiha ang bersyon sa Java nga na-install sa sistema gamit ang mosunod nga sugo.

$ java -version

Lakang 2: I-install ang Tomcat sa Debian 10

Alang sa mga katuyoan sa seguridad, ang Tomcat kinahanglan nga i-install ug ipatuman sa dili pribilihiyo nga tiggamit (ie dili gamut). Maghimo kami usa ka bag-ong grupo sa tomcat ug user nga magpadagan sa serbisyo sa Tomcat ubos sa /opt/tomcat nga direktoryo (pag-install sa Tomcat).

$ sudo mkdir /opt/tomcat
$ sudo groupadd tomcat
$ sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat

Kung na-set up na namo ang tomcat user, karon i-download ang pinakabag-o nga bersyon sa Tomcat 9 (ie 9.0.30) gikan sa curl command-line tool aron ma-download ang tarball ug makuha ang archive sa /opt/tomcat directory.

$ curl -O http://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.30/bin/apache-tomcat-9.0.30.tar.gz
$ sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1

Sunod, i-assign ang mga permiso sa tomcat user nga adunay access sa Tomcat installation /opt/tomcat directory.

$ cd /opt/tomcat
$ sudo chgrp -R tomcat /opt/tomcat
$ sudo chmod -R g+r conf
$ sudo chmod g+x conf
$ sudo chown -R tomcat webapps/ work/ temp/ logs/

Lakang 3: Paghimo og Tomcat systemd Service File

Maghimo kami og bag-ong systemd service file aron pagdumala ug pagpadagan sa Tomcat isip usa ka serbisyo ubos sa systemd. Aron makamugna ug service file, kinahanglan nimong masayran kung asa na-install ang Java, kay gitawag kini nga JAVA_HOME gamit ang mosunod nga sugo.

$ sudo update-java-alternatives -l

Gikan sa ibabaw nga output, ang among JAVA_HOME mao ang:

/usr/lib/jvm/java-1.11.0-openjdk-amd64

Kung nahibal-an na namo ang among JAVA_HOME, mahimo namo ang systemd service file nga gitawag og tomcat.service sa /etc/systemd/system directory pinaagi sa pagpadagan.

$ sudo nano /etc/systemd/system/tomcat.service

Idikit ang mosunod nga mga sulod sa imong tomcat.service file.

[Unit]
Description=Apache Tomcat Web Application Container
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

Sunod, i-reload ang systemd aron magamit ang bag-ong mga pagbag-o, aron mahibal-an niini ang bahin sa among tomcat.service file.

$ sudo systemctl daemon-reload

Sa kataposan, mahimo nimong sugdan ug pamatud-an ang kahimtang sa serbisyo sa Tomcat pinaagi sa pagpadagan sa mosunod nga mga sugo.

$ sudo systemctl start tomcat
$ systemctl status tomcat
$ systemctl enable tomcat

Lakang 4: I-enable ang Login para sa Tomcat Manager ug Host Manager

Aron ma-access ang manager-gui ug admin-gui web apps nga kauban sa Tomcat, kinahanglan namong palihokon ang pag-login sa among Tomcat server pinaagi sa pag-edit sa tomcat-users.xml file sama sa gipakita.

$ sudo nano /opt/tomcat/conf/tomcat-users.xml

Idugang ang mosunod nga configuration sulod sa tags, nga adunay hustong username ug password sama sa gipakita.

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

Ang configuration sa ibabaw nagpasabot nga idugang ang admin-gui ug manager-gui nga mga tahas sa usa ka user nga ginganlan og \admin nga adunay password nga \tecmint123.

Lakang 5: I-enable ang Remote Login sa Tomcat Manager ug Host Manager

Alang sa mga hinungdan sa seguridad, ang pag-access sa Tomcat Manager ug Host Manager nga mga app gi-lock sa localhost (ang server diin kini gi-deploy), pinaagi sa default.

Bisan pa, mahimo nimong ma-enable ang hilit nga pag-access gikan sa usa ka piho nga IP address o bisan unsang host o network sa Tomcat Manager ug Host Manager nga mga app sama sa gipatin-aw sa ubos.

Alang sa Tomcat Manager app, i-type ang:

$ sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml

Alang sa Host Manager app, i-type ang:

$ sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml

Sa sulod, ikomento ang pagdili sa IP address aron tugutan ang pag-access gikan sa bisan unsang network.

<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" />-->
</Context>

Sa laing paagi, i-enable ang remote access gikan sa imong kaugalingong IP address 192.168.0.103 o gikan sa network (192.168.0.0) pinaagi sa pagdugang sa IP address sa listahan.

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

I-save ang mga file, ug i-restart ang serbisyo sa Tomcat aron mapadayon ang among mga pagbag-o.

$ sudo systemctl restart tomcat

Lakang 6: Pag-access sa Tomcat Web Interface

Aron ma-access ang Tomcat web interface gikan sa bisan unsang browser, kinahanglan nimo nga ablihan ang 8080 port aron tugutan ang trapiko sa serbisyo sa Tomcat sa firewall pinaagi sa pag-type.

$ sudo ufw allow 8080

Karon i-access ang Tomcat web management interface pinaagi sa pag-adto sa domain name sa imong server o IP address nga gisundan sa port 8080 sa imong browser.

http://server_domain_or_IP:8080

Atong ma-access ang Manager App sa ubos nga URL, kinahanglan nimo nga mosulod sa mga kredensyal sa account.

http://server_domain_or_IP:8080/manager/html

Atong ma-access ang Host Manager sa ubos nga URL, kinahanglan nimo nga mosulod sa mga kredensyal sa account.

http://server_domain_or_IP:8080/host-manager/html/

Kana lang! Kompleto na ang imong pag-install sa Tomcat, karon mahimo nimong i-deploy ug ipadagan ang mga aplikasyon sa web sa Java. Kung naa kay pangutana o hunahuna nga ipaambit, kontaka kami pinaagi sa comment form sa ubos.