Apache Tomcat na CentOS: namestitev, systemd in varne privzete nastavitve
Datum objave:
Osveženo:
Tehnični članki > Apache Tomcat na CentOS: namestitev, systemd in varne privzete nastavitve
Status in varna uporaba 2026
Sklep: Izberite podprto družino Tomcat in kompatibilno JDK najprej, nato pa jo zaženite kot namenski uporabnik, ki ni login, pod pregledano sistemsko enoto. Ohranite konfiguracijo in razporejene programe ločeno od nespremenljivih binarij, in izpostavite le arhitekturo konektorja, ki jo potrebujete.
Kaj se boš naučil?
- Kako se Java združljivost, namestitveni vir, identiteta storitev, lastništvo datoteke, dnevniki, in zagonski vrstni red ujemajo.
- Zakaj fiksne zapuščine in GC zastave ne bi smeli kopirati brez meritev.
- Kako razlikovati prvoten paket CentOS 7 od trenutne podprte uporabe.
Za koga je to? Linux administratorji vzdržujejo ali selijo Tomcat storitev.
Kontekst za leto 2026: Hoja skozi spodaj odraža starejši CentOS 7/Tomcat paket in vključuje JVM možnosti, ki so lahko odstranjene ali neprimerne na trenutni Javi. Tomcat 7 je konec življenjske dobe; preveri uradno različico matrice, uporabi podprto podružnico in pred uporabo proizvodnje preveri točno servisno enoto in dovoljenja.
Varnostna opomba: Ukazi in konfiguracijski primeri v prvotnem članku niso bili ponovno predvajani v trenutnem proizvodnem okolju. Pred uporabo preveri podprte različice, varnostne kopije, nadzor dostopa in povratne korake v ločenem preskusnem okolju.
Glavni uradni viri
Pregled.
To je postopek začetne konfiguracije, ki je potreben za namestitev in zagon Tomcata v sistemu CentOS. Informacije temeljijo na predpostavki, da se uporablja sistem CentOS7.
Oglejte si informacije o povezavi z Apachejem in spremembi namembnega kraja izpisa dnevnika.
Različice so naslednje.
| Različica sistema CentOS | 7.6 (1810) |
|---|---|
| Različica Apache | 2.4.6 |
| Različica Tomcat | 7.0.76 |
| Različica Java. | OpenJDK 1.8.0_272 64bit |
Kazalo vsebine
1. namestitev
V tem razdelku je opisana konfiguracija Tomcata od namestitve do zagona.
1-1. Namestitev programa Tomcat
Namestitev programa Tomcat opravite z ukazom yum. Delo opravite kot uporabnik root.
[username@hostname ~]$ su -
[root@hostname ~]# yum -y install tomcat
2. osnovna nastavitev
V tem razdelku je opisana konfiguracija Tomcata od namestitve do zagona. "/usr/share/tomcat" ustvari yum, kot je bilo opisano prej. Tu boste našli bližnjice, kot so mape za konfiguracijske datoteke itd., ki jih lahko spreminjate.
2-1. Nastavitve poti Tomcat
Z drugimi besedami, v sistemu Windows je to postopek za nastavljanje okoljskih spremenljivk.
To ni potrebno, če datoteka tomcat.conf vsebuje nastavitev "CATALINA_HOME="/usr/share/tomcat"". Preverite '/usr/share/tomcat/conf/tomcat.conf'.
Če "CATALINA_HOME="/usr/share/tomcat"" manjka, ga dodajte z naslednjim postopkom.
[root@hostname ~]# vi /etc/profile
Na koncu dodajte naslednje.
CATALINA_HOME=/usr/share/tomcat
export CATALINA_HOME
S tem je specifikacija spremenljivk okolja Tomcat končana.
Za zagon programa Tomcat so potrebne tudi nastavitve Java, zato če nastavitve poti Java še niso bile opravljene, si oglejte naslednje nastavitve.
Namestitev Jave v sistemu CentOS in nastavitev poti
Namestite ga lahko tudi z ukazom 'yum install java-1.8.0-openjdk'.
2-2. preverjanje zagonskega pasu
Preverite, ali se Tomcat zažene.
Če Tomcat namestite z yumom, ni html za domačo stran Tomcat, zato najprej namestite html.
[root@hostname ~]# yum -y install tomcat-webapps
Nato aktivirajte požarni zid. Privzeta številka vrat za Tomcat je 8080, zato odprite vrata 8080.
[root@hostname ~]# firewall-cmd --permanent --zone=public --add-port=8080/tcp
[root@hostname ~]# firewall-cmd --reload
[root@hostname ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eth0
sources:
services: dhcpv6-client http https ssh
ports: 8080/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
Če piše "vrata: 8080/tcp", je vse v redu. Zagon programa Tomcat.
[root@hostname ~]# tomcat start
Dostopno prek brskalnika. V mojem primeru je naslov IP strežnika 192.168.50.10, zato dostopam do "http://192.168.50.10:8080/". V redu je, če se prikaže naslednja stran
Ker je bil zagon uspešno potrjen, se Tomcat ustavi.
[root@hostname ~]# tomcat stop
2-3. Nastavitve povezave Apache in Tomcat Opomba: Ko sta Apache in Tomcat povezana.
To nastavitev uporabite, kadar naj Apache in Tomcat delujeta skupaj. Tomcat lahko deluje tudi kot samostojen spletni strežnik, Apache pa ponuja module in lahko učinkoviteje streže statično vsebino.
Za navodila za namestitev Apacheja glejte spodaj.
Začetna konfiguracija je potrebna od namestitve Apacheja v sistemu CentOS do zagona.
Spodaj je opisan postopek za spreminjanje konfiguracije na strani Apache. To je konfiguracija za posredovanje zahtev, ki prihajajo v Apache, Tomcatu. Opis predvideva, da je konfiguracijska datoteka Apache pod '/etc/httpd/'.
[root@hostname ~]# vi /etc/httpd/conf/httpd.conf
Na konec datoteke "httpd.conf" dodajte naslednjo izjavo.
<Location / >
ProxyPass ajp://localhost:8009/
Order allow,deny
Allow from all
</Location>
Najprej omogočite naslednje module, če še niso dejavni (odstranite znak za komentar #).
•LoadModule proxy_module modules/mod_proxy.so
•LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
Zaženite Apache (če je že zagnan, ga ponovno zaženite) in Tomcat.
[root@hostname ~]# apachectl stop
[root@hostname ~]# apachectl start
[root@hostname ~]# tomcat start
Dostopno prek brskalnika. V mojem primeru je naslov IP strežnika 192.168.50.10, zato dostopam do "http://192.168.50.10/".
V redu je, če se prikaže naslednja stran
Ker je bil zagon uspešno potrjen, se Tomcat ustavi.
[root@hostname ~]# tomcat stop
V diagramu so prikazani naslednji dostopi.
Mimogrede, prejšnji korak je bil dostopen na naslednji način.
2-4. Konfiguracija dnevnikov java heap in gc.
Java heap je pomnilnik Java, dnevniki gc pa so dnevniki o pomnilniku Java. Java za obdelavo uporablja določeno količino pomnilnika, ki je nastavljena kot kupa. Oba sta nastavljena kot možnosti v ukazu za zagon programa Java. To je nastavljeno v datoteki "tomcat.conf".
[root@hostname ~]# vi /usr/share/tomcat/conf/tomcat.conf
Na koncu tega poglavja so dodane naslednje informacije.
CATALINA_OPTS="-server -XX:MaxMetaspaceSize=256m -XX:MetaspaceSize=256m -Xmx256m -Xms256m -Xloggc:/var/log/tomcat/gc.log -XX:+PrintGCDetails"
Zagnite Tomcat in zaženite ukaz ps, da vidite nastavljene vrednosti (-server -XX:MaxMetaspaceSize=256m -XX:MetaspaceSize=256m -Xmx256m -Xms256m -Xloggc:/var/log/tomcat/gc.log -XX:+PrintGCDetails), je v redu.
[root@hostname ~]# tomcat start
[root@hostname ~]# ps aux | grep java
/usr/lib/jvm/jre/bin/java -Djavax.sql.DataSource.Factory=org.apache.commons.dbcp.BasicDataSourceFactory -server -XX:MaxMetaspaceSize=256m -XX:MetaspaceSize=256m -Xmx256m -Xms256m -Xloggc:/var/log/tomcat/gc.log -XX:+PrintGCDetails -classpath /usr/share/tomcat/bin/bootstrap.jar:/usr/share/tomcat/bin/tomcat-juli.jar:/usr/share/java/commons-daemon.jar -Dcatalina.base=/usr/share/tomcat -Dcatalina.home=/usr/share/tomcat -Djava.endorsed.dirs= -Djava.io.tmpdir=/var/cache/tomcat/temp -Djava.util.logging.config.file=/usr/share/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager org.apache.catalina.startup.Bootstrap start
Zgornja konfiguracija zažene Tomcat z 256M pomnilnika. Nad 256 M je nastavitev nastavljena tako, da ne uporablja pomnilnika.
Kar zadeva dnevnik gc, je nastavljen tako, da ustvari dnevniško datoteko pod "/var/log/tomcat/" z "gc.log".
Ustvarjanje imenika "/var/log/tomcat/" poteka v naslednjih korakih.
2-5. Spreminjanje nastavitev beleženja
Ustvarite imenik dnevnika in spremenite izhodno pot dnevnika za Tomcat. Nastavitve, povezane z beleženjem, najdete v datotekah '/usr/share/tomcat/conf/logging.properties' in '/usr/share/tomcat/conf/server.xml'.
Spodaj je ustvarjanje imenika.
[root@hostname ~]# mkdir /var/log/tomcat
[root@hostname ~]# chmod 755 /var/log/tomcat
Ustvarite imenik in nastavite dovoljenja na 755. (Tomcat lahko piše dnevnike, drugi uporabniki pa imajo samo dovoljenja za branje)
Nato spremenite "logging.properties".
[root@hostname ~]# vi /usr/share/tomcat/conf/logging.properties
Spremeni se na naslednji način.
1catalina.org.apache.juli.FileHandler.level = FINE
1catalina.org.apache.juli.FileHandler.directory = /var/log/tomcat
1catalina.org.apache.juli.FileHandler.prefix = catalina.
2localhost.org.apache.juli.FileHandler.level = FINE
2localhost.org.apache.juli.FileHandler.directory = /var/log/tomcat
2localhost.org.apache.juli.FileHandler.prefix = localhost.
3manager.org.apache.juli.FileHandler.level = FINE
3manager.org.apache.juli.FileHandler.directory = /var/log/tomcat
3manager.org.apache.juli.FileHandler.prefix = manager.
4host-manager.org.apache.juli.FileHandler.level = FINE
4host-manager.org.apache.juli.FileHandler.directory = /var/log/tomcat
4host-manager.org.apache.juli.FileHandler.prefix = host-manager.
Nato spremenite datoteko 'server.xml'.
[root@hostname ~]# vi /usr/share/tomcat/conf/server.xml
Spremeni se na naslednji način.
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/var/log/tomcat"
prefix="localhost_access" suffix=".txt"
pattern="combined" />
2-6. Nastavitev samodejnega zagona
Čeprav to ni obvezno, je težko zagnati strežnik ob vsakem ponovnem zagonu, zato je vnesena nastavitev, da se Tomcat samodejno zažene ob zagonu strežnika. Upoštevajte, da ta postopek velja za sistem CentOS7, če uporabljate kaj drugega kot sistem CentOS7, boste morali za to uporabiti ukaz Service.
[root@hostname ~]# systemctl enable tomcat
[root@hostname ~]# systemctl is-enabled tomcat
enabled
[root@hostname ~]# systemctl list-unit-files --type=service | grep tomcat
tomcat.service enabled
[root@hostname ~]# systemctl daemon-reload
2-7. Nastavitve prenosa pošte
To je nepotrebna nastavitev, če za pošiljanje e-poštnih sporočil ne uporabljate programa Tomcat. Če postopek pošiljanja e-pošte izvajate v Javi, glejte konfiguracijo.
Najprej dodajte JAR datoteka. Naslednji JAR datoteka postavite pod lib tomcat (/usr/share/tomcat/lib/) in uskladite dovoljenja z drugimi libami.
•javax.activation-1.2.0.jar
•javax.mail.jar
Spremeni 'context.xml'.
[root@hostname ~]# vi /usr/share/tomcat/conf/context.xml
Na konec kontekst.xml dodajte naslednje.
<Context>
<Resource name="mail/Session" auth="Container"
type="javax.mail.Session"
/>
</Context>
3. povzetek
Opisali smo začetno konfiguracijo, ki je potrebna ob namestitvi programa Tomcat.
Tomcat do neke mere deluje s privzetimi nastavitvami, če pa ga želite dejansko prilagoditi, je pozneje koristno nastaviti nastavitve izhodnega cilja dnevnika in ukaze za samodejni zagon.
Upamo, da je bila razlaga koristna.



