Kif Tinstalla Apache Tomcat 9 fuq Debian 10


Apache Tomcat huwa softwer ta' server ta' applikazzjonijiet tal-web b'xejn, matur, robust u popolari li jintuża biex iservi applikazzjonijiet ibbażati fuq Java. Hija implimentazzjoni open-source tal-Java Servlet, JavaServer Pages (JSP), Java Expression Language u Java WebSocket teknoloġiji, żviluppati mill-Apache Software Foundation (ASF).

Dan it-tutorja ser jimxik permezz tal-proċess tal-installazzjoni u l-konfigurazzjoni tal-aħħar rilaxx ta 'Tomcat 9 fuq is-server Debian 10 Linux tiegħek.

Qabel ma tibda b'dan it-tutorja, kun żgur li għandek kont tal-utent mhux root bi privileġġi sudo fuq is-server tiegħek. Jekk le, tista 'twaqqaf waħda billi tuża l-gwida tagħna dwar Kif Oħloq Utent Sudo Ġdid fuq Ubuntu/Debian.

Pass 1: Installa Java fuq Debian 10

Biex tinstalla l-aħħar rilaxx ta' Tomcat 9 fuq is-server Debian 10 tiegħek, irid ikollok Java installat fuq is-server sabiex tkun tista' tesegwixxi l-kodiċi tal-applikazzjoni tal-web Java.

L-ewwel, aġġorna l-indiċi tal-pakkett tas-softwer tas-sistema billi tuża l-kmand apt kif muri.

$ sudo apt update

Imbagħad installa l-pakkett Java Development Kit billi tuża l-kmand apt.

$ sudo apt install default-jdk

Ladarba l-installazzjoni Java tkun kompluta, iċċekkja l-verżjoni ta 'Java installata fuq is-sistema billi tuża l-kmand li ġej.

$ java -version

Pass 2: Installa Tomcat f'Debian 10

Għal skopijiet ta’ sigurtà, Tomcat għandu jiġi installat u eżegwit minn utent mhux privileġġjat (jiġifieri mhux root). Se noħolqu grupp u utent tomcat ġodda biex imexxu s-servizz Tomcat taħt /opt/tomcat direttorju (installazzjoni Tomcat).

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

Ladarba waqqafna l-utent tomcat, issa niżżel l-aħħar verżjoni ta 'Tomcat 9 (jiġifieri 9.0.30) mill-għodda tal-linja tal-kmand curl biex tniżżel it-tarball u estratt l-arkivju fid-direttorju/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

Sussegwentement, assenja l-permessi lill-utent tomcat biex ikollu aċċess għad-direttorju tal-installazzjoni Tomcat /opt/tomcat.

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

Pass 3: Oħloq Tomcat Systemd Service File

Aħna se noħolqu fajl tas-servizz systemd ġdid biex jimmaniġġjaw u jmexxu Tomcat bħala servizz taħt systemd. Biex toħloq fajl tas-servizz, għandek tkun taf fejn huwa installat Java, peress li dan jissejjaħ JAVA_HOME billi tuża l-kmand li ġej.

$ sudo update-java-alternatives -l

Mill-output ta' hawn fuq, JAVA_HOME tagħna huwa:

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

Ladarba nkunu nafu l-JAVA_HOME tagħna, nistgħu noħolqu l-fajl tas-servizz systemd imsejjaħ tomcat.service fid-direttorju /etc/systemd/system billi nħaddmu.

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

Past il-kontenut li ġej fil-fajl tomcat.service tiegħek.

[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

Sussegwentement, ikkarga mill-ġdid is-systemd biex tapplika l-bidliet il-ġodda, sabiex ikun jaf dwar il-fajl tomcat.service tagħna.

$ sudo systemctl daemon-reload

Fl-aħħarnett, tista 'tibda u tivverifika l-istatus tas-servizz Tomcat billi tħaddem il-kmandi li ġejjin.

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

Pass 4: Ippermetti Login għal Tomcat Manager u Host Manager

Sabiex ikollok aċċess għall-applikazzjonijiet tal-web manager-gui u admin-gui li jiġu ma' Tomcat, irridu nippermettu l-login fis-server Tomcat tagħna billi neditjaw il-fajl tomcat-users.xml kif muri.

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

Żid il-konfigurazzjoni li ġejja fit-tags , bl-username u l-password korretti kif muri.

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

Il-konfigurazzjoni ta' hawn fuq timplika li żid ir-rwoli admin-gui u manager-gui ma' utent imsejjaħ \admin b'password ta' \tecmint123.

Pass 5: Ippermetti Login mill-bogħod għal Tomcat Manager u Host Manager

Għal raġunijiet ta' sigurtà, l-aċċess għall-apps tal-Maniġer ta' Tomcat u tal-Maniġer tal-Ospiti huwa msakkar fil-localhost (is-server fejn jiġi skjerat), b'mod awtomatiku.

Madankollu, tista 'tippermetti aċċess mill-bogħod minn indirizz IP speċifiku jew kwalunkwe host jew netwerk għall-apps ta' Tomcat Manager u Host Manager kif spjegat hawn taħt.

Għall-app Tomcat Manager, ittajpja:

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

Għall-app Host Manager, ittajpja:

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

Ġewwa, ikkummenta r-restrizzjoni tal-indirizz IP biex tippermetti aċċess minn kwalunkwe netwerk.

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

Inkella, ppermetti aċċess mill-bogħod mill-indirizz IP tiegħek stess 192.168.0.103 jew minn netwerk (192.168.0.0) billi żżid l-indirizz IP mal-lista.

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

Issejvja l-fajls, u erġa ibda s-servizz Tomcat biex iżżomm il-bidliet tagħna fis-seħħ.

$ sudo systemctl restart tomcat

Pass 6: Aċċessa għall-Interface tal-Web Tomcat

Biex taċċessa interface tal-web Tomcat minn kwalunkwe browser, trid tiftaħ il-port 8080 biex tippermetti t-traffiku lejn is-servizz Tomcat fuq il-firewall billi ttajpja.

$ sudo ufw allow 8080

Issa aċċess għall-interface tal-ġestjoni tal-web Tomcat billi tmur għall-isem tad-dominju jew l-indirizz IP tas-server tiegħek segwit mill-port 8080 fil-browser tiegħek.

http://server_domain_or_IP:8080

Ejja naċċessaw l-App tal-Maniġer fil-URL ta' hawn taħt, ser ikollok bżonn iddaħħal il-kredenzjali tal-kont.

http://server_domain_or_IP:8080/manager/html

Ejja naċċessaw il-Maniġer tal-Ospitanti fil-URL ta' hawn taħt, ser ikollok bżonn iddaħħal il-kredenzjali tal-kont.

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

Dak kollox! L-installazzjoni Tomcat tiegħek hija kompluta, issa tista' tuża u tħaddem applikazzjonijiet tal-web Java. Jekk għandek xi mistoqsijiet jew ħsibijiet x'taqsam, ikkuntattjana permezz tal-formola tal-kummenti hawn taħt.