از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش نصب Tomcat 9 در CentOS 8
سرفصلهای مطلب
Apache Tomcat یک پیادهسازی منبع باز از Java Servlet، JavaServer Pages، Java Expression Language و Java WebSocket است. امروزه یکی از پرکاربردترین برنامه ها و سرورهای وب در جهان است. استفاده از Tomcat ساده است و دارای یک اکوسیستم قوی از افزونه ها است.
این آموزش روش نصب Tomcat 9.0 را بر روی CentOS 8 توضیح می دهد.
نصب جاوا
Tomcat 9 به Java SE 8 یا جدیدتر نیاز دارد. ما OpenJDK 11 را نصب خواهیم کرد، پیادهسازی منبع باز پلتفرم جاوا.
برای نصب جاوا دستور زیر را به عنوان روت یا کاربر با امتیازات sudo اجرا کنید:
sudo dnf install java-11-openjdk-devel
پس از اتمام نصب، آن را با بررسی نسخه جاوا تأیید کنید:
java -version
خروجی باید چیزی شبیه به این باشد:
openjdk version "11.0.5" 2019-10-15 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.5+10-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, mixed mode, sharing)
ایجاد یک کاربر سیستم
اجرای Tomcat تحت کاربر root یک خطر امنیتی است. ما یک کاربر و گروه سیستم جدید با فهرست اصلی ایجاد خواهیم کرد /opt/tomcat
که سرویس تامکت را اجرا خواهد کرد. برای انجام این کار، دستور زیر را وارد کنید:
sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat
دانلود Tomcat
توزیع دودویی Tomcat برای دانلود از سایت موجود است دانلودهای Tomcat page
.
در زمان نوشتن، آخرین نسخه تامکت است 9.0.30
. قبل از ادامه مرحله بعدی، دانلود Tomcat 9 را بررسی کنید page برای دیدن اینکه آیا نسخه جدیدتری موجود است یا خیر.
دانلود فایل فشرده Tomcat با wget
به /tmp
فهرست راهنما:
VERSION=9.0.30
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
، که به دایرکتوری نصب Tomcat اشاره می کند:
sudo ln -s /opt/tomcat/apache-tomcat-${VERSION} /opt/tomcat/latest
کاربر سیستمی که قبلا ایجاد شده است، باید به دایرکتوری نصب تامکت دسترسی داشته باشد. تغییر مالکیت دایرکتوری به کاربر و گروه تامکت:
sudo chown -R tomcat: /opt/tomcat
اسکریپت های پوسته را در داخل بسازید bin
دایرکتوری قابل اجرا:
sudo sh -c 'chmod +x /opt/tomcat/latest/bin/*.sh'
این اسکریپت ها برای شروع و توقف تامکت استفاده می شوند.
ایجاد یک فایل Systemd Unit
بهجای راهاندازی و توقف دستی سرور Tomcat، آن را بهعنوان یک سرویس اجرا میکنیم. ویرایشگر متن خود را باز کنید و a ایجاد کنید 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/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
[Install]
WantedBy=multi-user.target
ذخیره کنید و فایل را ببندید.
به systemd اطلاع دهید که یک فایل سرویس جدید وجود دارد، با تایپ کردن:
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: disabled)
Active: active (running) since Wed 2020-01-15 20:38:07 UTC; 30s ago
Process: 3957 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS)
...
پیکربندی فایروال
اگر سرور شما توسط فایروال محافظت می شود و می خواهید از خارج از شبکه محلی به رابط تامکت دسترسی پیدا کنید، باید پورت را باز کنید. 8080
.
برای باز کردن پورت لازم از دستورات زیر استفاده کنید:
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
sudo firewall-cmd --reload
8080
فقط از شبکه داخلی شماپیکربندی رابط مدیریت وب تامکت
در این مرحله، باید بتوانید با یک مرورگر وب در پورت به تامکت دسترسی داشته باشید 8080
. رابط مدیریت وب در دسترس نیست زیرا ما هنوز کاربری ایجاد نکرده ایم.
کاربران Tomcat و نقش ها در تعریف شده اند tomcat-users.xml
فایل.
اگر فایل را باز کنید، متوجه خواهید شد که با نظرات و مثال هایی پر شده است که روش پیکربندی فایل را توضیح می دهد.
sudo nano /opt/tomcat/latest/conf/tomcat-users.xml
برای ایجاد یک کاربر جدید که می تواند به رابط وب تامکت (manager-gui و admin-gui) دسترسی داشته باشد، فایل را مطابق شکل زیر ویرایش کنید. مطمئن شوید که نام کاربری و رمز عبور را به چیزی امن تر تغییر داده اید:
<tomcat-users>
<!--
Comments
-->
<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="admin" password="admin_password" roles="admin-gui,manager-gui"/>
</tomcat-users>
به طور پیشفرض رابط مدیریت وب تامکت به گونهای پیکربندی شده است که فقط از طریق localhost.
اگر نیاز به دسترسی به رابط وب از هر جایی دارید، فایل های زیر را باز کنید و نظر بدهید یا خطوط برجسته شده با رنگ زرد را حذف کنید:
<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>
<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>
لطفاً توجه داشته باشید، اجازه دسترسی از هر نقطه توصیه نمی شود زیرا این یک خطر امنیتی است.
اگر می خواهید فقط از یک 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>
<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 مجاز، لیستی است که با نوار عمودی از هم جدا شده است |
. میتوانید آدرسهای IP منفرد را اضافه کنید یا از عبارات منظم استفاده کنید.
پس از اتمام، سرویس Tomcat را مجدداً راه اندازی کنید تا تغییرات اعمال شوند:
sudo systemctl restart tomcat
تست نصب
مرورگر خود را باز کنید و تایپ کنید: http://<your_domain_or_IP_address>:8080
پس از نصب موفقیت آمیز، صفحه ای مشابه تصویر زیر ظاهر می شود:
داشبورد مدیر برنامه وب تامکت به شما امکان می دهد برنامه های خود را استقرار، بازگشایی، شروع، توقف و بارگذاری مجدد کنید. در دسترس است در: http://<your_domain_or_IP_address>:8080/manager/html
.
تامکت مجازی host داشبورد مدیر به شما امکان می دهد هاست مجازی Tomcat را ایجاد، حذف و مدیریت کنید. در دسترس است در: http://<your_domain_or_IP_address>:8080/host-manager/html
.
نتیجه
ما به شما نشان دادیم که چگونه Tomcat 9.0 را روی CentOS 8 نصب کنید و چگونه به رابط مدیریت Tomcat دسترسی پیدا کنید.
برای اطلاعات بیشتر در مورد آپاچی تامکت، به سایت رسمی مراجعه کنید مستندات page
.
اگر مشکلی دارید یا بازخوردی دارید، در زیر نظر دهید.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-27 09:52:14