Как установить Apache Tomcat 9 в Debian 10?

Tomcat

Apache Tomcat — это бесплатное, надежное и популярное программное обеспечение сервера веб-приложений, которое используется для обслуживания приложений на основе Java. Это реализация Java Servlet, JavaServer Pages (JSP), Java Expression Language и Java WebSocket с открытым исходным кодом, разработанная Apache Software Foundation (ASF).

Из этой статьи вы узнаете, как установить и настроить последнюю версию Tomcat 9 на вашем сервере Debian 10 Linux.

Перед началом работы с этой статьей убедитесь, что у вас на сервере создана учетная запись пользователя без полномочий root, только с правами sudo. Если нет, вы можете настроить права, используя нашу статью «Как создать нового пользователя Sudo в Ubuntu?».

 

Шаг 1. Установка Java в Debian 10

Чтобы установить последний выпуск Tomcat 9 на свой сервер Debian 10, на нем должна быть установлена ​​Java, чтобы можно было выполнять код веб-приложения Java.

Сначала обновите список пакетов в репозитории программного обеспечения с помощью команды apt, как показано ниже:

$ sudo apt update

 

Apt-Update-Debian-10

 

 

Затем установите пакет Java Development Kit с помощью команды apt:

$ sudo apt install default-jdk

 

Install-Java-on-Debian-10

 

 

После завершения установки проверьте версию Java, установленную в системе, с помощью следующей команды:

$ java -version

 

Check-Java-Version-in-Debian-10

 

 

Шаг 2: Установка Tomcat в Debian 10

В целях безопасности должен быть установлен Tomcat и выполнен вход непривилегированным пользователем (т.е. не root). Мы создадим новую группу tomcat и пользователя для запуска службы Tomcat в каталоге /opt/tomcat:

$ sudo mkdir /opt/tomcat
$ sudo groupadd tomcat
$ sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat

 

Create-Tomcat-User

 

 

После того, как мы настроили пользователя tomcat, загрузите последнюю версию Tomcat 9 (т.е. 9.0.30 на момент написания статьи) со страницы загрузки Tomcat 9 или используйте следующий инструмент командной строки curl, чтобы загрузить архив и извлечь его содержимое в каталог /opt/tomcat:

$ curl -O http://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.30/bin/apache-tomcat-9.0.30.tar.gz
$ sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1

 

Download-Tomcat-in-Debian-10

 

Затем назначьте разрешения пользователю tomcat для доступа к каталогу установки Tomcat /opt/tomcat:

$ cd /opt/tomcat
$ sudo chgrp -R tomcat /opt/tomcat
$ sudo chmod -R g+r conf
$ sudo chmod g+x conf
$ sudo chown -R tomcat webapps/ work/ temp/ logs/

 

Set-Permissions-to-Tomcat-User

 

 

Шаг 3: Создание служебного файла Tomcat systemd

Мы создадим новый файл службы systemd для управления и запуска Tomcat как службы под управлением systemd. Чтобы создать файл для данной службы, вы должны знать, где установлена ​​Java. Вы можете выполнить это, используя следующую команду:

$ sudo update-java-alternatives -l

 

Find-Java-Home-Installation

 

 

Исходя из вышеприведенного вывода, наш каталог JAVA_HOME находится в директории:

/usr/lib/jvm/java-1.11.0-openjdk-amd64

 

Как только мы узнаем нашу директорию для JAVA_HOME, мы можем запустить файл службы systemd с именем tomcat.service в каталоге /etc/systemd/system:

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

 

Вставьте следующее содержимое в файл tomcat.service:

/etc/systemd/system/tomcat.service
[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

 

 

Затем перезагрузите systemd, чтобы применить новые изменения, прописанные в файле tomcat.service:

$ sudo systemctl daemon-reload

 

Наконец, вы можете запустить и проверить состояние службы Tomcat, выполнив следующие команды:

$ sudo systemctl start tomcat
$ systemctl status tomcat
$ systemctl enable tomcat

 

Verify-Tomcat-Status

 

Шаг 4. Настройка входа в систему для Tomcat Manager и Host Manager.

Чтобы получить доступ к веб-приложениям manager-gui и admin-gui, которые поставляются с Tomcat, мы должны разрешить вход на наш сервер Tomcat, отредактировав файл tomcat-users.xml, как показано ниже:

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

 

Добавьте следующую конфигурацию в теги <tomcat-users>, указав правильное имя пользователя и пароль:

tomcat-users.xml
<role rolename="admin-gui,manager-gui"/>
<user username="admin" password="password" roles="admin-gui,manager-gui"/>

 

Enable-Tomcat-Web-Apps-Login

 

 

Приведенная выше конфигурация подразумевает добавление ролей admin-gui и manager-gui пользователю с именем «admin» с паролем «password».

 

 

Шаг 5. Включение удаленного входа в Tomcat Manager и Host Manager

В целях безопасности доступ к приложениям Tomcat Manager и Host Manager по умолчанию заблокирован на локальном узле (сервере, на котором он развернут).

Однако вы можете включить удаленный доступ с определенного IP-адреса или любого хоста или сети к приложениям Tomcat Manager и Host Manager.

Для приложения Tomcat Manager введите:

$ sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml

 

Для приложения Host Manager введите:

$ sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml

 

Внутри файла закомментируйте ограничение 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" />-->
</Context>

 

Configure-Tomcat-Remote-Login

 

 

Также можно включить удаленный доступ с вашего собственного IP-адреса 192.168.0.103 или из сети (192.168.0.0), добавив необходимый IP-адрес в список:

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.103" />-->
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.*" />-->

 

Сохраните файлы и перезапустите службу Tomcat, чтобы изменения вступили в силу:

$ sudo systemctl restart tomcat

 

Шаг 6. Доступ к веб-интерфейсу Tomcat

Чтобы получить доступ к веб-интерфейсу Tomcat из любого браузера, необходимо открыть порт 8080, чтобы разрешить трафик к службе Tomcat на брандмауэре:

$ sudo ufw allow 8080

 

Теперь откройте веб-интерфейс управления Tomcat, перейдя по доменному имени или IP-адресу вашего сервера, а затем в своем браузере через порт 8080:

http://server_domain_or_IP:8080

 

Tomcat-Running-in-Debian

 

 

Давайте перейдем к приложению Manager по указанному ниже URL-адресу, вам нужно будет ввести учетные данные учетной записи:

http://server_domain_or_IP:8080/manager/html

 

Tomcat-Web-Application-Manager

 

 

Давайте перейдем к Host Manager по указанному ниже URL-адресу, вам также необходимо будет ввести учетные данные учетной записи:

http://server_domain_or_IP:8080/host-manager/html/

 

Tomcat-Virtual-Host-Manager

 

 

Это все! Ваша установка Tomcat завершена, теперь вы можете развертывать и запускать веб-приложения Java. Если у вас есть какие-либо вопросы или мысли, которыми вы можете поделиться, свяжитесь с нами через форму комментариев ниже.

 

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасности,  полный курс по кибербезопасностикурсы DevNet (программируемые сети) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco и Linux с трудоустройством!

Спешите подать заявку! Осталось пару мест. Группы стартуют 22 июля, а следующая 19 августа, 23 сентября, 21 октября, 25 ноября, 16 декабря, 20 января, 24 февраля.
Что Вы получите?
  • Поможем стать экспертом в сетевом администрировании и получить международные сертификаты Cisco CCNA Routing & Switching или Linux LPI.
  • Предлагаем проверенную программу и учебник экспертов из Cisco Networking Academy и Linux Professional Institute, сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и сделать карьеру. 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проводим вечерние онлайн-лекции на нашей платформе или обучайтесь очно на базе Киевского офиса.
  • Спросим у вас об удобном времени для практик и подстроимся: понимаем, что времени учиться мало.
  • Если хотите индивидуальный график — обсудим и осуществим.
  • Выставим четкие дедлайны для самоорганизации. Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
А еще поможем Вам:
  • отредактировать резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроим на работу в Cisco по программе Cisco Incubator, New Graduate и Experienced. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco CCNA Routing & Switching и Linux LPI, подайте заявку или получите бесплатную консультацию.
Tomcat

Больше похожих постов

1 комментарий. Оставить новый

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения

Самое читаемое
Меню