آموزش نصب Tomcat 9 در اوبونتو 20.04 Ubuntu
Apache Tomcat یک وب سرور اوپن سورس است. این یکی از محبوب ترین گزینه ها برای ساختن وب سایت ها و برنامه های مبتنی بر جاوا است. Tomcat بسیار سبک ، قابل استفاده و دارای افزودنی های زیادی است. در این آموزش نصب Tomcat 9 در اوبونتو 20.04 Ubuntu توضیح داده شده است.
نصب جاوا
Tomcat 9 برای نصب بر روی سیستم نیاز به Java SE 8 یا بالاتر دارد. ما OpenJDK 11 ، اجرای منبع باز Platforma Java را نصب خواهیم کرد .
دستورالعمل های زیر را به عنوان root یا کاربر با امتیازات sudo انجام دهید تا فهرست بسته ها را به روز کنید و بسته OpenJDK 11 JDK را نصب کنید:
sudo apt update
sudo apt install openjdk-11-jdk
پس از اتمام نصب ، با بررسی نسخه جاوا آن را تأیید کنید:
java -version
خروجی باید چیزی شبیه به این باشد:
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)
ایجاد یک کاربر سیستم
اجرای Tomcat در کاربر root یک خطر امنیتی است. ما یک کاربر سیستم جدید و گروه با دایرکتوری هوم/opt/tomcat
ایجاد خواهیم کرد که سرویس Tomcat را اجرا کند. برای این کار دستور زیر را وارد کنید:
sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat
دانلود Tomcat
توزیع باینری Tomcat برای دانلود از صفحه بارگیری Tomcat در دسترس است .
در زمان نوشتن ، آخرین نسخه Tomcat 9.0.35
است. قبل از ادامه مرحله بعدی ، صفحه بارگیری Tomcat 9 را بررسی کنید تا اگر نسخه جدیدتری در دسترس باشد آن را دانلود کنید.
از wget
جهت دانلود فایل فشرده tomcat به دایرکتوری /tmp
استفاده کنید:
VERSION=9.0.35
wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v${VERSION}/bin/apache-tomcat-${VERSION}.tar.gz -P /tmp
پس از اتمام بارگیری ، فایل tar را در دایرکتوری/opt/tomcat
اکسترکت کنید:
sudo tar -xf /tmp/apache-tomcat-${VERSION}.tar.gz -C /opt/tomcat/
Tomcat به طور مرتب با پچ های امنیتی و ویژگی های جدید به روز می شود. برای کنترل بیشتر نسخه ها و به روزرسانی ها ، ما پیوند سمبولیکی به نام latest
ایجاد می کنیم:
sudo ln -s /opt/tomcat/apache-tomcat-${VERSION} /opt/tomcat/latest
کاربر سیستمی که قبلاً ایجاد شده است باید به فهرست نصب Tomcat دسترسی داشته باشد. مالکیت دایرکتوری را به کاربر و گروه tomcat تغییر دهید:
sudo chown -R tomcat: /opt/tomcat
اسکریپت های شل در داخل فهرست Tomcat bin
باید قابل اجرا باشند :
sudo sh -c 'chmod +x /opt/tomcat/latest/bin/*.sh'
از این اسکریپت ها برای شروع ، متوقف کردن و در غیر این صورت مدیریت نمونه Tomcat استفاده می شود.
یک راز بزرگ درمورد 90 % هاستینگ های ایرانی، اورسل کردن بیش از حد است که باعث افت کیفیت سرورها میشود.
وان سرور با ارائه دسترسی های مختلف این امکان را به شما خواهد داد که تمامی منابع سرورتان را مدیریت و بررسی کنید و همچنین با ارائه گارانتی 100% برگشت وجه ریسک خرید شما را به %0 کاهش میدهد.
ایجاد فایل واحد SystemD
به جای استفاده از اسکریپت های شل برای شروع و متوقف کردن سرور Tomcat ، ما آن را تنظیم می کنیم تا به عنوان یک سرویس اجرا شود.
ویرایشگر متن خود را باز کرده و یک فایل واحدtomcat.service
در فهرست /etc/systemd/system/
ایجاد کنید:
sudo nano /etc/systemd/system/tomcat.service
پیکربندی زیر را جایگذاری کنید
[Unit]
Description=Tomcat 9 servlet container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom -Djava.awt.headless=true"
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
[Install]
WantedBy=multi-user.target
پرونده را ذخیره و بسته و به سیستم اطلاع دهید که یک فایل واحد جدید وجود دارد:
sudo systemctl daemon-reload
سرویس Tomcat را فعال کرده و شروع کنید:
sudo systemctl enable --now tomcat
وضعیت سرویس را بررسی کنید:
sudo systemctl status tomcat
خروجی باید نشان دهد که سرور Tomcat فعال و در حال اجرا است:
● tomcat.service - Tomcat 9 servlet container
Loaded: loaded (/etc/systemd/system/tomcat.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2020-05-25 17:58:37 UTC; 4s ago
Process: 5342 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS)
Main PID: 5362 (java)
...
می توانید Tomcat را مانند سایر سرویس های سیستم شده دیگر شروع ، متوقف کرده و مجدداً راه اندازی کنید:
sudo systemctl start tomcat
sudo systemctl stop tomcat
sudo systemctl restart tomcat
پیکربندی فایروال
اگر سرور شما توسط فایروال محافظت می شود و می خواهید از خارج از شبکه محلی خود به Tomcat دسترسی پیدا کنید ، باید پورت را باز کنید 8080
.
برای باز کردن پورت لازم از دستور زیر استفاده کنید:
sudo ufw allow 8080/tcp
پیکربندی رابط مدیریت وب Tomcat
در این مرحله باید با یک مرورگر وب در پورت 8080 به Tomcat دسترسی پیدا کنید . رابط مدیریت وب در دسترس نیست زیرا ما هنوز کاربر را ایجاد نکرده ایم.
کاربران و نقش های Tomcat در پروندهtomcat-users.xml
تعریف شده اند . این پرونده الگویی است با نظرات و مثالهایی که نحوه ایجاد کاربر یا نقش را نشان می دهد.
در این مثال ، کاربرانی با نقشهای “admin-gui” و “manager-gui” ایجاد خواهیم کرد. نقش “admin-gui” به کاربر اجازه می دهد تا به /host-manager/html
URL دسترسی پیدا کند و میزبان های مجازی را ایجاد ، حذف و در غیر این صورت مدیریت کند. نقش “manager-gui” به کاربر اجازه می دهد تا بدون نیاز به راه اندازی مجدد کل کانتینر از طریق رابط /host-manager/html
، برنامه وب را مستقر و توسعه دهد .
مطابق شکل زیر پروندهtomcat-users.xml
را باز کرده و یک کاربر جدید ایجاد کنید:
sudo nano /opt/tomcat/latest/conf/tomcat-users.xml
<tomcat-users>
<!--
Comments
-->
<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="admin" password="admin_password" roles="admin-gui,manager-gui"/>
</tomcat-users>
در ادامه…
نام کاربری و رمز عبور را به چیزی امن تغییر دهید.
به طور پیش فرض ، رابط مدیریت وب Tomcat پیکربندی شده است که اجازه دسترسی به برنامه های Manager و Host Manager را فقط از طریق لوکال دهد. برای دسترسی به رابط وب از IP از راه دور ، باید این محدودیت ها را حذف کنید. این ممکن است پیامدهای امنیتی مختلفی داشته باشد و برای سیستم های تولید توصیه نمی شود.
برای فعال کردن دسترسی به رابط وب ، از هر مکان، دو پرونده زیر را باز کرده و خطوط هایلایت را حذف کنید.
برای برنامه Manager:
sudo nano /opt/tomcat/latest/webapps/manager/META-INF/context.xml
برای برنامه Host Manager:
sudo nano /opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" ></Context> <!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
اگر می خواهید فقط از یک IP خاص به رابط وب دسترسی پیدا کنید ، IP خود را به لیست اضافه کنید.
بیایید بگوییم IP شما 41.41.41.41
است و می خواهید فقط از آن IP دسترسی داشته باشید:
<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|41.41.41.41" />
</Context>
لیست آدرس های IP مجاز لیستی است که با نوار عمودی جدا شده است |
.
پس از اتمام ، سرویس Tomcat را ری استارت کنید تا تغییرات تا اعمال شود:
sudo systemctl restart tomcat
نصب Tomcat 9 در اوبونتو 20.04 Ubuntu
مرورگر خود را باز کرده و تایپ کنید: http://<your_domain_or_IP_address>:8080
با فرض اینکه نصب موفقیت آمیز باشد ، باید صفحه شبیه به موارد زیر ظاهر شود:
مدیر برنامه وب Tomcat از لینک زیر در دسترس است http://<your_domain_or_IP_address>:8080/manager/html
:.
مدیر میزبان مجازی Tomcat از لینک زیر در دسترس است: http://<your_domain_or_IP_address>:8080/host-manager/html
نتیجه گیری
ما به شما آموزش نصب Tomcat 9 در اوبونتو 20.04 Ubuntu و نحوه دسترسی به رابط مدیریت Tomcat را برای شما نشان دادیم.
برای کسب اطلاعات بیشتر در مورد Apache Tomcat ، به صفحه رسمی اسناد مراجعه کنید .
لطفا جهت بهبهود کیفیت آموزش های ارسالی، نظرات خود را از طریق کامنت و درج ستاره ارسال کنید
VERSION=9.0.35
wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v${VERSION}/bin/apache-tomcat-${VERSION}.tar.gz -P /tmp
خطا میده not found!
سلام
دوست گرامی شما باید بجای ${VERSION} ورژن موجود یا مورد نیازتون رو جایگزین کنید. از این لینک میتونید نوع ورژن موجود رو ببینید:
https://downloads.apache.org/tomcat/tomcat-9/