frame

Sveiki apsilankę!

Jei forume lankaisi pirmą kartą, kviečiame registruotis ir prisijungti prie diskusijų.

Prisijungti Registruotis

Apache Tomcat 9 diegimas Ubuntu 18.04 aplinkoje

iv_vytenisgiv_vytenisg Super Moderator
edited 2018 rugpjūčio 20 Į Kitos aplikacijos
attachment.php?attachmentid=381&stc=1&d=1534772549

Apache Tomcat - web serveris ir servlet konteineris, kuris suteikia galimybę naudotis Java aplikacijomis.Tomcat yra atvirojo kodo programinė įranga išleista Apache Software Foundation organizacijos.

Šioje pamokoje pateiksime instrukciją, kaip įsideigti ir susikonfigūruoti Tomcat 9 naudojant Ubuntu 18.04 operacinę sistemą KVM serveryje.


Preliminarūs reikalavimai:

- Virtualiai dedikuotas KVM serveris naudojantis mūsų parengtą Ubuntu 18.04 operacinę sistemą;
- Papildomas ne root naudotojas. Kaip susikurti papildomą naudotoją ir priskirti jam sudo teises rasite šiuo adresu.


1. Java diegimas

Visų pirma atnaujinkite sistemą:
sudo apt update

Ir tada galite įdiegti Java Development Kit paketą:
sudo apt install default-jdk


2. Tomcat naudotojo sukūrimas:

Dėl papildomo saugumo rekomenduojame paleisti Tomcat su neprivilegijuotu naudotoju. Tam sukursime naują naudotojų grupę, kuri paleis Tomcat paslaugą. Visų pirma sukurkite tomcat grupę:
sudo groupadd tomcat

Tada sukuriame tomcat naudotoją, kuris bus tomcat grupės narys su pagrindinę direktoriją /opt/tomcat (direktoriją, kurioje diegsime Tomcat) ir /bin/false karkasu (taigi niekas kitas negalės prisijungti į šią paskyrą):
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat


3. Tomcat diegimas

Diegimui naudosime naujausią šiuo metu esančią Tomcat 9 versiją (9.0.10). Prieš diegiant siūlome patikrinti, kokia versija esamuoju laiku yra naujausia šiuo adresu.

Visų pirma atsidarome /tmp katalogą serveryje. Tai yra tinkama direktorija failų, tokių kaip Tomcat, parsisiuntimui. Paleiskite komendą:
cd /tmp

Ir atlikite failo parsisiuntimą (naudojamas URL adresas skirsis priklausomai nuo diegiamos versijos):
curl -O http://mirror.cc.columbia.edu/pub/software/apache/tomcat/tomcat-9/v9.0.10/bin/apache-tomcat-9.0.10.tar.gz

Įdiegiame Tomcat į /opt/tomcat direktoriją. Sukurkite direktoriją, kurioje bus laikomi Tomcat duomenys:
sudo mkdir /opt/tomcat
sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1


4. Teisių atnaujinimas

Naudotojas tomcat turi turėti prieigą prie Tomcat diegimo. Tam atsidarykite direktoriją:
cd /opt/tomcat

Ir suteikite tomcat grupes teises visai diegimo direktorijai:
sudo chgrp -R tomcat /opt/tomcat

Tada suteikite tomcat grupei teisę skaityti conf direktorijas ir prieigą prie viso turinio:
sudo chmod -R g+r conf
sudo chmod g+x conf

tomcat naudotojui priskirkite kūrėjo teises webapps, work, temp, ir logs direktorijoms:
sudo chown -R tomcat webapps/ work/ temp/ logs/


5. systemd tarnybos faile sukūrimas:

Kadangi Tomcat bus paleidžiama, kaip tarnyba, nustatykime systemd failą. Tomcat turi žinoti, kur yra įdiegta Java. Šis kelias kreipia į "JAVA_HOME". Lengviausias būdas peržiūrėti konkrečią vietą serveryje yra šios komandos paleidimas:
sudo update-java-alternatives -l
Atsakymas:
java-1.11.0-openjdk-amd64       1081       /usr/lib/jvm/java-1.11.0-openjdk-amd64

Taigi pilnas kelias yra /usr/lib/jvm/java-1.11.0-openjdk-amd64 (Jūsų kelias gali skirtis). Su šia informacija mes galime sukurti systemd tarnybos failą. Atsidarykite failą tomcat.service direktorijoje /etc/systemd/system:
sudo nano /etc/systemd/system/tomcat.service

Ir įkelkite nurodytą tekstą:
[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

Išsaugokite ir uždarykite failą.

Perkraukite systemd daemon'ą, kad sistema žinotų apie naują tarnybą:
sudo systemctl daemon-reload

Ir paleiskite komandą:
sudo systemctl status tomcat


6. Tomcat testavimas

Testavimui atlikti atsidarykite adresą:
http://jūsų_serverio_ip:8080

Jeigu Jums bus sėkmingai pateikiamas Tomcat puslapis, galite įvesti Tomcat automatinio paleidimo po perkrovimo komandą:
sudo systemctl enable tomcat

7. Tomcat administravimo per naršyklę sąsajos konfigūravimas:

Tam, kad galėtume naudotis konfigūravimo per internetinį adresą, turime pridėti prisijungimo galimybę Tomcat serveryje. Tai atliksime pakoregavę tomcat-users.xml failą:
sudo nano /opt/tomcat/conf/tomcat-users.xml

Jums reikia pridėti naudotoją, kuris galės naudoti manager-gui ir admin-gui. Galite nurodyti tą patį naudotoją, kurį sukūrėte anksčiau. Nurodykite naudotoją ir saugų slaptažodį:
<tomcat-users . . .>
    <user username="naudotojas" password="slaptažodis" roles="manager-gui,admin-gui"/>
</tomcat-users>

Išsaugokite ir uždarykite failą.

Pagal nutylėjimą Tomcat draudžia prisijungimą prie "Manager" ir Host Manager" skilčių jungiantis ne tiesiogiai iš serverio. Kadangi turėsite poreikį pasiekti šias skiltis ne tiesiogiai iš serverio, galite nurodyti IP adresą, kuriam bus duota prieiga:

"Manager app"skilčiai koreguokite šį failą:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml

"Host Manager" koregavimui naudokite šį failą:
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml

Nurodykite IP adresą ties "allow" eilute:
<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>

Išsaugokite ir išėję iš failo perkraukite Tomcat tarnybą:
sudo systemctl restart tomcat


8. Veiksmai internetinėje sąsajoje:

Kadangi jau turite susikūrę naudotoją, kuris galės pasiekti konfigūraciją, atsidarykite Tomcat adresu:
http://jūsų_serverio_ip:8080

Jums bus patiekiamas toks vaizdas:

attachment.php?attachmentid=378&stc=1&d=1534771856

Pasirinkus "Manager app" arba "Host Manager" Jums reikės įvesti savo naudotojo duomenis, kuriuos nurodėte tomcat-users.xml faile. Tada Jums bus pateikiamas toks puslapis:

attachment.php?attachmentid=379&stc=1&d=1534772069

"Manager app" yra naudojama Java aplikacijų valdymui. Gali startuoti, sustabdyti, perkraukti ir pan. Taip pat galite paleisti diagnostika (pavyzdžiui: atminties praradimo aptikimams). Informaciją apie serverį rasite puslapio apačioje.

"Host Manager" skiltyje galite pridėti virtualias mašinas aplikacijų veikimui. "Host Manager langas atrodo taip:

attachment.php?attachmentid=380&stc=1&d=1534772344


9. Apibendrinimas

Tomcat diegimas sėkmingai baigtas!

Jūsų Tomcat yra užbaigta, tačiau nešifruojama. Tai reiškia, kad visi duomenys gali būti skaitomi trečiųjų šalių. Todėl rekomenduojame apsaugoti pasiekiamumą su SSL sertifkatu.
Norėdami palikti komentarą, turite prisijungti arba registruokis.