Программное обеспечение Apache Tomcat — это HTTP-сервер на базе Java, который может запускать такие технологии Java, как Java Servlet, JavaServer Pages (JSP) и Java Expression Language. Расширенные встроенные возможности настройки, высокая гибкость и впечатляющая стабильность делают это программное обеспечение весьма востребованным и популярным выбором среди разработчиков по всему миру. Давайте посмотрим, что выделяет Apache Tomcat среди конкурентов:
-
Открытый исходный код
Apache Tomcat — это приложение с открытым исходным кодом. Это означает, что любой желающий может скачать, установить и использовать приложение бесплатно.
-
Легковесность
Легковесность считается дополнительным преимуществом при загрузке и повторном развертывании по сравнению с конкурентами.
-
Гибкость
Встроенная возможность настройки позволяет пользователю адаптировать приложение по своему вкусу в соответствии со своими некоторыми потребностями и требованиями проекта.
-
Повышенная безопасность
Приложения Tomcat также предлагают повышенный уровень безопасности.
С момента его первого релиза в 1998 году Apache Software Foundation внесла невероятные изменения. В результате последний релиз стал более стабильным, чем когда-либо прежде. В этом руководстве вы узнаете, как установить Apache Tomcat 9 на Ubuntu 20.04.
Предварительные требования
Прежде чем приступить к установке Apache Tomcat в вашей системе Ubuntu, убедитесь, что у вас есть следующее:
- Сервер Ubuntu — вы можете выполнить шаги по настройке сервера из нашего руководства.
- Пользователь без прав root с sudo привилегиями, настроенными на вашем сервере.
Теперь все готово. Далее следуйте приведенным ниже шагам, чтобы установить Apache Tomcat на Ubuntu 20.04
Шаг 1 — Установка Java
Сначала проверьте, установлена ли уже Java в вашей системе, с помощью команды:
|
1 |
java -version |
Если Java не установлена в вашей системе, вам необходимо установить ее для запуска приложений на базе Java. Вы можете установить Java Development Kit с помощью следующей команды:
|
1 |
sudo apt install default-jre |
После завершения установки проверьте ее с помощью команды:
|
1 |
java -version |
После завершения установки пришло время создать учетную запись пользователя tomcat. В целях безопасности рекомендуется запускать Tomcat с правами пользователя без прав root. Помните, что если какие-либо скрипты страниц имеют права root, вы можете легко полностью изменить файлы на жестком диске с помощью этих скриптов. Далее мы создадим нового пользователя и группу, которые будут запускать службы Tomcat.
Шаг 2 – Создание & настройка пользователя Tomcat
Мы создадим нового пользователя и группу, которые будут использовать все службы Tomcat. Мы назовем новую группу tomcat с помощью следующей команды:
|
1 |
sudo groupadd tomcat |
После создания имени группы мы создадим нового пользователя tomcat и затем добавим этого пользователя в группу tomcat:
- Создайте нового tomcat пользователя.
- Добавьте пользователя в tomcat группу.
При добавлении пользователя в группу tomcat, убедитесь, что это конфиденциально, чтобы никто не мог получить доступ к вашей учетной записи tomcat. Из соображений безопасности сохраните пользователя в домашнем каталоге, куда мы собираемся установить tomcat ( /opt/tomcat) и добавьте оболочку /bin/false:
|
1 |
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat |
После завершения настройки учетной записи давайте перейдем к установке Tomcat:
Шаг 3 – Установка Tomcat
Мы собираемся установить Tomcat с Tomcat’s официального сайта. Чтобы использовать весь его потенциал, скачайте последнюю версию. Чтобы обновиться до самой стабильной доступной версии, перейдите в раздел Binary Distributions, прокрутите вниз до списка Core и скопируйте ссылку на “tar.gz”. После этого измените каталог на /tmp:
|
1 |
cd /tmp |
Затем с помощью команды curl скачайте Tomcat с официального сайта, как указано выше:
|
1 |
sudo curl -O https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.60/bin/apache-tomcat-9.0.60.tar.gz |
Давайте установим Tomcat в каталог /opt/tomcat. После создания каталога распакуйте архив с помощью следующей команды:
|
1 2 |
sudo mkdir /opt/tomcat sudo tar xzvf apache-tomcat-9.0.60.tar.gz -C /opt/tomcat --strip-components=1 |
Шаг 4 – Обновление прав доступа
После установки Tomcat в вашей системе вам необходимо настроить права доступа для вновь созданного tomcat пользователя. Используйте следующую команду, чтобы перейти в каталог, куда мы распаковали установку Tomcat:
|
1 |
cd /opt/tomcat |
Затем предоставьте группе tomcat права владения на весь каталог установки:
|
1 2 3 |
sudo chgrp -R tomcat /opt/tomcat sudo chmod -R g+r conf sudo chmod g+x conf |
После этого сделайте пользователя tomcat владельцем каталогов webapps, work, temp, и logs :
|
1 |
sudo chown -R tomcat webapps/ work/ temp/ logs |
После настройки всех необходимых прав доступа следующим шагом является создание файла службы systemd для управления процессом Tomcat и запуска Tomcat в качестве службы.
Шаг 5 – Создание файла юнита systemd
Хотя мы закончили установку Java, Tomcat должен знать, где установлена Java. Чтобы узнать место установки Java, выполните следующую команду:
|
1 |
sudo update-java-alternatives -l |
Вывод должен выглядеть следующим образом:
Выделенная часть — это JAVA_Home, как показано ниже:
|
1 |
/usr/lib/jvm/java-1.11.0-openjdk-amd64 |
Далее мы создадим файл службы systemd. Откройте файл с именем tomcat.service из каталога /etc/systemd/system с помощью следующей команды:
|
1 |
sudo nano /etc/systemd/system/tomcat.service |
Используйте редактор VI для редактирования файла и измените JAVA_Home на ваше расположение JAVA_Home:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
[Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd6 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 |
После добавления JAVA_Home, сохраните и закройте файл. Затем перезагрузите демон systemd, чтобы он узнал о нашем файле службы:
|
1 |
sudo systemctl daemon-reload |
Затем запустите службу Tomcat с помощью следующей команды:
|
1 |
sudo systemctl start tomcat |
Шаг 6 – Настройка брандмауэра
После создания файла юнита systemd пришло время настроить брандмауэры. Настройки брандмауэра необходимы для разрешения наших запросов и доступа к службе Tomcat. Если вы правильно следовали руководству, то наверняка у вас уже включен брандмауэр ufw.
Tomcat использует порт 8080 для приема обычных запросов. Разрешите трафик на этот порт с помощью команды:
|
1 |
sudo ufw allow 8080 |
Измененный брандмауэр позволяет вам получить доступ к стандартной приветственной странице по IP-адресу, за которым следует :8080. Вы можете открыть ее в веб-браузере, перейдя по IP-адресу, как показано ниже:
|
1 |
http://server_domain_or_IP:8080 |
|
1 |
sudo ufw allow 8080 |
Шаг 7 — Настройка веб-интерфейса управления Tomcat
Чтобы использовать веб-приложение менеджера, поставляемое с Tomcat, нам нужно добавить учетные данные для входа на наш сервер Tomcat. Мы можем сделать это, отредактировав файл tomcat-users.xml, как показано ниже:
|
1 |
sudo nano /opt/tomcat/conf/tomcat-users.xml |
Tomcat поставляется с веб-приложениями, которые позволяют пользователю получить доступ к manager-gui и admin-gui. Вы можете определить пользователя между тегами tomcat-users, как показано ниже:
|
1 2 3 |
<tomcat-users . . .> <user username="admin" password="password" roles="manager-gui,admin-gui"/> </tomcat-users> |
После завершения сохраните и закройте файл.
Все последние версии Tomcat ограничивают доступ к приложениям Manager и Host Manager только подключениями, исходящими с самого сервера. Чтобы изменить эти ограничения по IP-адресам, откройте соответствующие файлы context.xml. Для доступа к приложению Manager используйте команду:
|
1 |
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml |
Затем для доступа к приложению Host Manager используйте команду:
|
1 |
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml |
В зависимости от ваших потребностей вы можете разрешать или запрещать подключения. Вы можете закомментировать ограничения по IP-адресам, чтобы разрешить подключения отовсюду. В противном случае вы можете добавить свой публичный IP-адрес в список, чтобы разрешить подключения, исходящие с вашего IP-адреса:
|
1 2 3 4 |
<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> |
После завершения сохраните и закройте файлы. Чтобы изменения вступили в силу, перезапустите службу Tomcat с помощью следующей команды:
|
1 |
sudo systemctl restart tomcat |
Шаг 8 — Доступ к веб-интерфейсу
После создания пользователя Tomcat мы можем получить доступ к веб-интерфейсу управления. Вы можете получить доступ к интерфейсу, перейдя по доменному имени или IP-адресу сервера с указанием порта 8080:
|
1 |
http://server_domain_or_IP:8080 |
При переходе по этому URL-адресу вы увидите страницу, показанную ниже:
Вы можете получить доступ к веб-приложениям Tomcat, используя учетные данные, которые вы добавили в файл tomcat-users.xml. Для доступа к приложению Manager используйте ссылку:
|
1 |
http://server_domain_or_IP:8080/manager/html |
При переходе по этому URL-адресу вы увидите страницу, показанную ниже:
Для доступа к приложению Host Manager используйте ссылку:
|
1 |
http://server_domain_or_IP:8080/host-manager/html |
При переходе по этому URL-адресу вы увидите страницу, показанную ниже:
Заключение
Установка Tomcat завершена. Теперь вы можете свободно развертывать собственные веб-приложения на Java. Вы заметите, что работа с Apache Tomcat происходит гораздо быстрее при загрузке и повторном развертывании по сравнению с альтернативными решениями. Однако он не подходит для работы со статическими страницами.
Дополнительные ресурсы по использованию серверов на базе Apache можно найти в нашем блоге:
- Руководство по расширению mod_proxy: использование Apache в качестве обратного прокси-сервера
- Мир веб-серверов: Apache против Nginx
- Настройка виртуальных хостов Apache на Ubuntu 20.04
- Установка веб-сервера Apache на CentOS 7
Приятной работы!














Комментарии
Комментариев пока нет. Будьте первым.