Android

วิธีการติดตั้ง Tomcat 9 บน CentOS 7

Linux Tutorial | Tomcat9 installation in linux | How to install and Configure Apache Tomcat in Linux

Linux Tutorial | Tomcat9 installation in linux | How to install and Configure Apache Tomcat in Linux

สารบัญ:

Anonim

Tomcat เป็นการใช้งานแบบโอเพ่นซอร์สของ Java Servlet, JavaServer Pages, Java Expression Language และเทคโนโลยี Java WebSocket

บทช่วยสอนนี้ครอบคลุมขั้นตอนที่จำเป็นในการติดตั้ง Tomcat 9.0 บน CentOS 7

ข้อกำหนดเบื้องต้น

ผู้ใช้ที่คุณกำลังเข้าสู่ระบบต้องมีสิทธิ์ sudo เพื่อให้สามารถติดตั้งแพ็คเกจได้

ติดตั้ง OpenJDK

Tomcat 9 ต้องการ Java SE 8 หรือใหม่กว่า เราจะติดตั้ง OpenJDK การใช้งานโอเพ่นซอร์สของแพลตฟอร์ม Java ซึ่งเป็นการพัฒนา Java เริ่มต้นและรันไทม์ใน CentOS 7

ติดตั้ง Java โดยพิมพ์คำสั่งต่อไปนี้:

sudo yum install java-1.8.0-openjdk-devel

สร้างผู้ใช้ระบบ Tomcat

การใช้ Tomcat ในฐานะผู้ใช้รูทนั้นมีความเสี่ยงด้านความปลอดภัยและไม่ถือว่าเป็นแนวปฏิบัติที่เหมาะสม

เราจะสร้างผู้ใช้และกลุ่มระบบใหม่พร้อมโฮมไดเร็กตอรี่ /opt/tomcat ที่จะเรียกใช้บริการ Tomcat:

sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat

ดาวน์โหลด Tomcat

เราจะดาวน์โหลด Tomcat รุ่นล่าสุด 9.0.x จากหน้าดาวน์โหลด Tomcat

ในขณะที่เขียน Tomcat รุ่นล่าสุดคือ 9.0.27 ก่อนดำเนินการขั้นตอนต่อไปคุณควรตรวจสอบหน้าดาวน์โหลด Tomcat 9 เพื่อดูว่ามีเวอร์ชั่นใหม่กว่าหรือไม่

นำทางไปยังไดเร็กทอรี /tmp และดาวน์โหลดไฟล์ Tomcat zip โดยใช้คำสั่ง wget ต่อไปนี้:

cd /tmp wget

เมื่อการดาวน์โหลดเสร็จสิ้นให้แตกไฟล์ tar:

tar -xf apache-tomcat-9.0.27.tar.gz

ย้ายไฟล์ต้นฉบับ Tomcat ไปยังไดเร็กทอรี /opt/tomcat :

sudo mv apache-tomcat-9.0.27 /opt/tomcat/

Tomcat 9 อัพเดทบ่อยครั้ง หากต้องการควบคุมเวอร์ชันและอัปเดตเพิ่มเติมให้สร้างลิงก์สัญลักษณ์ชื่อ latest ที่ชี้ไปยังไดเรกทอรีการติดตั้ง Tomcat:

sudo ln -s /opt/tomcat/apache-tomcat-9.0.27 /opt/tomcat/latest

ผู้ใช้ tomcat ที่เราตั้งค่าไว้ก่อนหน้านี้จำเป็นต้องมีการเข้าถึงไดเรกทอรีการติดตั้ง tomcat

รันคำสั่งต่อไปนี้เพื่อเปลี่ยนความเป็นเจ้าของไดเรกทอรีเป็นผู้ใช้และกลุ่ม tomcat:

sudo chown -R tomcat: /opt/tomcat

สร้างสคริปต์ภายในไดเร็กทอรี bin สามารถเรียกทำงานได้โดยใช้คำสั่ง chmod ต่อไปนี้:

sudo sh -c 'chmod +x /opt/tomcat/latest/bin/*.sh'

สร้างไฟล์หน่วย systemd

ในการทำให้ Tomcat ทำงานเป็นบริการให้เปิดโปรแกรมแก้ไขข้อความของคุณและสร้างไฟล์หน่วย tomcat.service ในไดเร็กทอรี /etc/systemd/system/

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

วางเนื้อหาต่อไปนี้:

/etc/systemd/system/tomcat.service

Description=Tomcat 9 servlet container After=network.target Type=forking User=tomcat Group=tomcat Environment="JAVA_HOME=/usr/lib/jvm/jre" Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom" Environment="CATALINA_BASE=/opt/tomcat/latest" Environment="CATALINA_HOME=/opt/tomcat/latest" Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid" Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC" ExecStart=/opt/tomcat/latest/bin/startup.sh ExecStop=/opt/tomcat/latest/bin/shutdown.sh WantedBy=multi-user.target

บันทึกและปิดไฟล์

แจ้ง systemd ที่เราสร้างไฟล์หน่วยใหม่โดยพิมพ์:

sudo systemctl daemon-reload

เปิดใช้งานและเริ่มบริการ Tomcat:

sudo systemctl enable tomcat sudo systemctl start tomcat

ตรวจสอบสถานะบริการด้วยคำสั่งต่อไปนี้:

sudo systemctl status tomcat

● tomcat.service - Tomcat 9 servlet container Loaded: loaded (/etc/systemd/system/tomcat.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2018-11-15 20:47:50 UTC; 4s ago Process: 1759 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS) Main PID: 1767 (java) CGroup: /system.slice/tomcat.service

ปรับไฟร์วอลล์

หากเซิร์ฟเวอร์ของคุณได้รับการป้องกันโดยไฟร์วอลล์และคุณต้องการเข้าถึงอินเตอร์เฟส Tomcat จากภายนอกเครือข่ายท้องถิ่นคุณจะต้องเปิดพอร์ต 8080

ใช้คำสั่งต่อไปนี้เพื่อเปิดพอร์ตที่จำเป็น:

sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp sudo firewall-cmd --reload ในกรณีส่วนใหญ่เมื่อรัน Tomcat ในสภาพแวดล้อมการใช้งานจริงคุณจะใช้ load balancer หรือ reverse proxy เป็นวิธีปฏิบัติที่ดีที่สุดในการอนุญาตให้เข้าถึงพอร์ต 8080 เฉพาะเครือข่ายภายในของคุณ

กำหนดค่า Tomcat Web Management Interface

ณ จุดนี้ Tomcat ได้รับการติดตั้งแล้วและเราสามารถเข้าถึงได้ด้วยเว็บเบราว์เซอร์ที่พอร์ต 8080 แต่เราไม่สามารถเข้าถึงอินเตอร์เฟสการจัดการเว็บได้เนื่องจากเรายังไม่ได้สร้างผู้ใช้

ผู้ใช้ Tomcat และบทบาทของพวกเขาถูกกำหนดในไฟล์ tomcat-users.xml

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

ในการเพิ่มผู้ใช้ใหม่ที่จะสามารถเข้าถึงเว็บอินเตอร์เฟส tomcat (manager-gui และ admin-gui) คุณต้องกำหนดผู้ใช้ในไฟล์ tomcat-users.xml ดังที่แสดงด้านล่าง ตรวจสอบให้แน่ใจว่าคุณเปลี่ยนชื่อผู้ใช้และรหัสผ่านเป็นสิ่งที่ปลอดภัยยิ่งขึ้น:

/opt/tomcat/latest/conf/tomcat-users.xml

โดยค่าเริ่มต้นอินเตอร์เฟสการจัดการเว็บ Tomcat ถูกกำหนดค่าให้อนุญาตการเข้าถึงจาก localhost เท่านั้น หากคุณต้องการเข้าถึงเว็บอินเตอร์เฟสจาก IP ระยะไกลหรือจากที่ใดก็ตามที่ไม่แนะนำเนื่องจากเป็นความเสี่ยงด้านความปลอดภัยคุณสามารถเปิดไฟล์ต่อไปนี้และทำการเปลี่ยนแปลงต่อไปนี้

/opt/tomcat/latest/webapps/manager/META-INF/context.xml

/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

/opt/tomcat/latest/webapps/manager/META-INF/context.xml

/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

รายการที่อยู่ IP ที่อนุญาตคือรายการที่คั่นด้วยแถบแนวตั้ง | . คุณสามารถเพิ่มที่อยู่ IP เดียวหรือใช้นิพจน์ทั่วไป

เริ่มบริการ Tomcat ใหม่เพื่อให้การเปลี่ยนแปลงมีผล:

sudo systemctl restart tomcat

ทดสอบการติดตั้ง

เปิดเบราว์เซอร์ของคุณและพิมพ์: http://:8080 http://:8080

เมื่อการติดตั้งสำเร็จหน้าจอที่คล้ายกับข้อความต่อไปนี้ควรปรากฏขึ้น:

ข้อสรุป

คุณได้ติดตั้ง Tomcat 9.0 บนระบบ CentOS 7 ของคุณสำเร็จแล้วและเรียนรู้วิธีเข้าถึงอินเตอร์เฟสการจัดการ Tomcat ตอนนี้คุณสามารถเยี่ยมชมเอกสาร Apache Apache Tomcat 9.0 และเรียนรู้เพิ่มเติมเกี่ยวกับคุณสมบัติ Apache Tomcat

java tomcat centos