Jinsi ya Kufunga Apache Tomcat 9 kwenye Debian 10


Apache Tomcat ni programu isiyolipishwa, iliyokomaa, thabiti, na maarufu ya seva ya programu ambayo hutumiwa kutumikia programu zinazotegemea Java. Ni utekelezaji wa chanzo huria wa Java Servlet, Kurasa za JavaServer (JSP), Lugha ya Maonyesho ya Java na teknolojia za Java WebSocket, zilizotengenezwa na Apache Software Foundation (ASF).

Mafunzo haya yatakuelekeza katika mchakato wa kusakinisha na kusanidi toleo jipya zaidi la Tomcat 9 kwenye seva yako ya Debian 10 Linux.

Kabla ya kuanza na mafunzo haya, hakikisha kuwa una akaunti ya mtumiaji isiyo na mizizi na marupurupu ya sudo kwenye seva yako. Ikiwa sivyo, unaweza kusanidi moja kwa kutumia mwongozo wetu juu ya Jinsi ya Kuunda Mtumiaji Mpya wa Sudo kwenye Ubuntu/Debian.

Hatua ya 1: Sakinisha Java kwenye Debian 10

Ili kusakinisha toleo jipya zaidi la Tomcat 9 kwenye seva yako ya Debian 10, ni lazima uwe na Java iliyosakinishwa kwenye seva ili uweze kutekeleza msimbo wa programu ya wavuti ya Java.

Kwanza, sasisha faharisi ya kifurushi cha programu ya mfumo kwa kutumia apt amri kama inavyoonyeshwa.

$ sudo apt update

Kisha usakinishe kifurushi cha Java Development Kit kwa kutumia apt amri.

$ sudo apt install default-jdk

Mara tu usakinishaji wa Java ukamilika, angalia toleo la Java iliyosanikishwa kwenye mfumo kwa kutumia amri ifuatayo.

$ java -version

Hatua ya 2: Sakinisha Tomcat kwenye Debian 10

Kwa madhumuni ya usalama, Tomcat inapaswa kusakinishwa na kutekelezwa na mtumiaji asiye na haki (yaani sio mzizi). Tutaunda kikundi kipya cha tomcat na mtumiaji ili kuendesha huduma ya Tomcat chini ya saraka ya /opt/tomcat (usakinishaji wa Tomcat).

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

Mara tu tunaposanidi mtumiaji wa tomcat, sasa pakua toleo la hivi karibuni la Tomcat 9 (yaani 9.0.30) kutoka kwa zana ya safu ya amri ya curl ili kupakua tarball na kutoa kumbukumbu kwenye saraka ya /opt/tomcat.

$ 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

Ifuatayo, toa ruhusa kwa mtumiaji wa tomcat kupata ufikiaji wa usakinishaji wa Tomcat /opt/tomcat saraka.

$ 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/

Hatua ya 3: Unda Faili ya Huduma ya Mfumo wa Tomcat

Tutaunda faili mpya ya huduma ya mfumo ili kudhibiti na kuendesha Tomcat kama huduma chini ya systemd. Ili kuunda faili ya huduma, unapaswa kujua mahali Java imesakinishwa, kama hii inajulikana kama JAVA_HOME kwa kutumia amri ifuatayo.

$ sudo update-java-alternatives -l

Kutoka kwa matokeo hapo juu, JAVA_HOME yetu ni:

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

Baada ya kujua JAVA_HOME yetu, tunaweza kuunda faili ya huduma ya mfumo iitwayo tomcat.service katika saraka ya /etc/systemd/system kwa kuendesha.

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

Bandika maudhui yafuatayo kwenye faili yako ya tomcat.service.

[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

Kisha, pakia upya systemd ili kutumia mabadiliko mapya, ili ijue kuhusu faili yetu ya tomcat.service.

$ sudo systemctl daemon-reload

Hatimaye, unaweza kuanza na kuthibitisha hali ya huduma ya Tomcat kwa kutekeleza amri zifuatazo.

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

Hatua ya 4: Washa Ingia kwa Kidhibiti cha Tomcat na Kidhibiti Mwenyeji

Ili kufikia programu za wavuti za meneja-gui na admin-gui zinazokuja na Tomcat, lazima tuwezeshe kuingia kwenye seva yetu ya Tomcat kwa kuhariri faili ya tomcat-users.xml kama inavyoonyeshwa.

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

Ongeza usanidi ufuatao ndani ya lebo za , na jina la mtumiaji na nenosiri sahihi kama inavyoonyeshwa.

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

Usanidi ulio hapo juu unamaanisha kuwa ongeza majukumu ya admin-gui na manager-gui kwa mtumiaji anayeitwa \admin kwa nenosiri la \tecmint123.

Hatua ya 5: Washa Kuingia kwa Mbali kwa Kidhibiti cha Tomcat na Kidhibiti Mwenyeji

Kwa sababu za kiusalama, ufikiaji wa Kidhibiti cha Tomcat na programu za Kisimamizi cha Mwenyeji umefungwa kwa mwenyeji (seva ambapo inatumwa), kwa chaguo-msingi.

Hata hivyo, unaweza kuwezesha ufikiaji wa mbali kutoka kwa anwani mahususi ya IP au seva pangishi au mtandao hadi kwa Kidhibiti cha Tomcat na programu za Kisimamizi cha Seva kama ilivyoelezwa hapa chini.

Kwa programu ya Kidhibiti cha Tomcat, chapa:

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

Kwa programu ya Msimamizi wa Jeshi, chapa:

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

Ndani, toa maoni kuhusu kizuizi cha anwani ya IP ili kuruhusu ufikiaji kutoka kwa mtandao wowote.

<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>

Vinginevyo, washa ufikiaji wa mbali kutoka kwa anwani yako ya IP 192.168.0.103 au kutoka kwa mtandao (192.168.0.0) kwa kuongeza anwani ya IP kwenye orodha.

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.*" />-->

Hifadhi faili, na uanze upya huduma ya Tomcat ili mabadiliko yetu yaendelee kutumika.

$ sudo systemctl restart tomcat

Hatua ya 6: Fikia Kiolesura cha Wavuti cha Tomcat

Ili kufikia kiolesura cha wavuti cha Tomcat kutoka kwa kivinjari chochote, unahitaji kufungua mlango wa 8080 ili kuruhusu trafiki kwa huduma ya Tomcat kwenye ngome kwa kuandika.

$ sudo ufw allow 8080

Sasa fikia kiolesura cha usimamizi wa wavuti cha Tomcat kwa kwenda kwa jina la kikoa la seva yako au anwani ya IP ikifuatiwa na port 8080 kwenye kivinjari chako.

http://server_domain_or_IP:8080

Hebu tufikie Programu ya Kidhibiti kwenye URL iliyo hapa chini, utahitaji kuingiza kitambulisho cha akaunti.

http://server_domain_or_IP:8080/manager/html

Hebu tufikie Kidhibiti cha Seva kwenye URL iliyo hapa chini, utahitaji kuingiza kitambulisho cha akaunti.

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

Ni hayo tu! Usakinishaji wako wa Tomcat umekamilika, sasa unaweza kupeleka na kuendesha programu za wavuti za Java. Ikiwa una maswali au maoni yoyote ya kushiriki, wasiliana nasi kupitia fomu ya maoni hapa chini.