Как установить tomcat на ubuntu

Обновлено: 05.07.2024

Tomcat, часто называемый Apache Tomcat, является одним из самых популярных приложений, предназначенных для выполнения сервлета Java и рендеринга JSP-страниц . Это приложение с открытым исходным кодом было выпущено Apache Software Foundation и одобрено многими разработчиками. В этом руководстве мы покажем вам, как происходит установка Tomcat в Ubuntu 18.04, и поможем настроить его для использования на вашем VPS!

Tomcat генерирует файлы JSP (сгенерированные сервером веб-страницы, подобные файлам PHP и ASP) в код Java, затем компилирует их в файлы .class, которые выполняет виртуальная машина Java. На сегодня Tomcat определенно является одним из наиболее используемых контейнеров сервлетов.

Преимущества Apache Tomcat

  • Tomcat – это быстрый и простой способ запуска ваших приложений в Ubuntu. Он обеспечивает быструю загрузку и помогает запустить сервер более эффективно
  • Tomcat содержит набор всеобъемлющих встроенных настроек, которые обеспечивают гибкость его использования
  • Tomcat – бесплатное приложение с открытым исходным кодом. Кастомизируйте его под свой проект непосредственно через код
  • Tomcat предлагает своим пользователям дополнительный уровень безопасности
  • Благодаря его стабильности, даже когда вы сталкиваетесь с проблемами в Tomcat, он не останавливает работу остальной части сервера

Установка Tomcat в Ubuntu

В этом руководстве вы узнаете, как происходит установка Tomcat 9 в Ubuntu 18.04, а также как настроить его для использования. Информация в этом руководстве также актуальна для Ubuntu 16.04 и других дистрибутивов на его основе.

Прежде чем начать, настройте на своём сервере пользователя без полномочий root с привилегиями sudo. Не забудьте получить доступ к вашему серверу по SSH . Ознакомьтесь с нашим руководством по PuTTY , если у вас возникли проблемы.

Шаг 1: Установите Java

Перед установкой Tomcat в Ubuntu нам нужно установить Java для выполнения кода веб-приложения Java. OpenJDK – разработка Java по умолчанию в Ubuntu 18.04. Установка Java не займёт много времени. Просто следуйте приведенным ниже командам:

Установите пакет OpenJDK , выполнив:

Теперь, когда JDK установлен в вашей системе, вы можете создать пользователя tomcat, выполнив следующий шаг.

Шаг 2. Создание Пользователя Tomcat

В целях безопасности не следует использовать Tomcat без уникального пользователя. Это облегчит установку Tomcat в Ubuntu. Создайте новую группу Tomcat, которая будет запускать сервис:

Следующая процедура – создание нового пользователя tomcat. Создайте пользователей группы Tomcat с домашним каталогом opt/tomcat для запуска сервиса:

Шаг 3: Установка Tomcat в Ubuntu

Лучший способ установить Tomcat 9 в Ubuntu – загрузить последний бинарный пакет со страницы загрузок Tomcat 9 и настроить его вручную. Если в момент загрузки будет доступна другая версия, не 9.0.17, используйте последнюю стабильную версию. Просто скопируйте ссылку на основной файл tar.gz (англ) в разделе Binary Distributions.

Теперь перейдите в каталог /tmp на вашем сервере, чтобы загрузить элементы, которые вам не понадобятся после извлечения содержимого Tomcat:

Для загрузки по скопированной ссылке (с сайта Tomcat) используйте следующую команду curl :

Шаг 4: Обновите Разрешения

Теперь, когда вы завершили установку Tomcat в Ubuntu, вам нужно настроить пользователя, чтобы у него был полный доступ к установке Tomcat. Этот пользователь должен иметь доступ к каталогу. Для этого выполните следующие команды по порядку:

Теперь передайте группе Tomcat право владения всем каталогом установки с помощью команды chgrp:

Затем вам нужно предоставить пользователю Tomcat доступ к каталогу conf, чтобы он мог просматривать его содержимое и выполнять доступ к самому каталогу:

Сделайте пользователя Tomcat владельцем веб-приложений, а также каталогов work, temp и logs:

Шаг 5: Создайте Файл Модуля systemd

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

Затем вставьте следующую конфигурацию:

Сохраните и закройте файл после выполнения приведённых выше команд.

Затем уведомите систему о том, что вы создали новый файл, введя в командной строке следующую команду:

Следующие команды позволят вам выполнить сервис Tomcat:

Шаг 6: Настройте Брандмауэр

Важно настроить брандмауэр таким образом, чтобы сервис получал запросы. Tomcat использует порт 8080 для приёма обычных запросов. Разрешите трафик на этот порт с помощью UFW (англ) :

Шаг 7. Настройка Интерфейса Веб-управления Tomcat

Следуйте приведённой ниже команде, чтобы добавить логин для пользователя Tomcat, и отредактировать файл tomcat-users.xml :

Теперь определите пользователя, который может иметь доступ к файлам, а также добавьте имя пользователя и пароли:

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

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

Чтобы перезапустить сервис Tomcat и просмотреть эффекты:

Шаг 8: Доступ к Онлайн-интерфейсу

Убедитесь, что вы ввели учётные данные в файл tomcat-users.xml .

Для управления нашими приложениями Java мы используем Web Application Manager. С его помощью вы можете начать, остановить, перезагрузить, развернуть и отменить развёртывание всех приложений. А внизу страницы вы найдёте данные о вашем сервере.

На странице Virtual Host Manager вы также можете добавить новые виртуальные хосты, которые отвечают вашему приложению.

Итоги

Ubuntu поддерживает Tomcat 6 и последнюю версию – Tomcat 9, которая включает новые функции, позволяющие пользователям свободно работать над приложением.

Установка Tomcat, описанная в этом руководстве, является функциональной, но полностью незашифрованной, поэтому другие пользователи браузера могут посмотреть или изменить информацию, пароли и другие конфиденциальные данные. Единственный способ решить эту проблему – зашифровать ваши соединения с помощью SSL .

Ольга уже около пяти лет работает менеджером в сфере IT. Написание технических заданий и инструкций — одна из её главных обязанностей. Её хобби — узнавать что-то новое и создавать интересные и полезные статьи о современных технологиях, веб-разработке, языках программирования и многом другом.

В этом руководстве описывается, как установить и настроить Tomcat 9 в Ubuntu 20.04.

Установка Java

Tomcat 9 требует, чтобы в системе была установлена Java SE 8 или новее. Мы установим OpenJDK 11 , реализацию платформы Java с открытым исходным кодом.

Выполните следующие команды от имени пользователя root или пользователя с привилегиями sudo или пользователя root, чтобы обновить индекс пакетов и установить пакет OpenJDK 11 JDK:

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

Результат должен выглядеть примерно так:

Создание системного пользователя

Запуск Tomcat от имени пользователя root представляет угрозу безопасности. Мы создадим нового системного пользователя и группу с домашним каталогом /opt/tomcat которые будут запускать службу Tomcat. Для этого введите следующую команду:

Скачивание Tomcat

Бинарный дистрибутив Tomcat доступен для загрузки со страницы загрузок Tomcat .

На момент написания последней версией Tomcat является 9.0.35 . Прежде чем перейти к следующему шагу, проверьте страницу загрузки Tomcat 9, чтобы узнать, доступна ли более новая версия.

Используйте wget чтобы загрузить zip-файл Tomcat в каталог /tmp :

После завершения загрузки извлеките tar-файл в каталог /opt/tomcat :

Tomcat регулярно обновляется исправлениями безопасности и новыми функциями. Чтобы иметь больший контроль над версиями и обновлениями, мы создадим символическую ссылку под названием latest , которая указывает на каталог установки Tomcat:

Позже, при обновлении Tomcat, распакуйте новую версию и измените символическую ссылку, чтобы она указывала на нее.

Созданный ранее системный пользователь должен иметь доступ к каталогу установки tomcat. Измените владельца каталога на пользователя и группу tomcat:

Сценарии оболочки внутри каталога bin Tomcat должны быть исполняемыми :

Эти сценарии используются для запуска, остановки и управления экземпляром Tomcat.

Создание файла модуля SystemD

Вместо использования сценариев оболочки для запуска и остановки сервера Tomcat мы настроим его на работу как службу.

Откройте текстовый редактор и создайте tomcat.service модуля tomcat.service каталоге /etc/systemd/system/ :

Вставьте следующую конфигурацию:

Измените переменную JAVA_HOME если путь к вашей установке Java отличается.

Сохраните и закройте файл и уведомите systemd о существовании нового файла модуля:

Включите и запустите службу Tomcat:

Проверить статус услуги:

Результат должен показать, что сервер Tomcat включен и работает:

Вы можете запускать, останавливать и перезапускать Tomcat так же, как и любую другую службу systemd:

Настройка межсетевого экрана

Если ваш сервер защищен брандмауэром, и вы хотите получить доступ к Tomcat извне вашей локальной сети, вам необходимо открыть порт 8080 .

Используйте следующую команду, чтобы открыть нужный порт:

Как правило, при запуске Tomcat в производственной среде следует использовать балансировщик нагрузки или обратный прокси-сервер . Рекомендуется разрешить доступ к порту 8080 только из вашей внутренней сети.

Настройка веб-интерфейса управления Tomcat

На этом этапе вы должны иметь доступ к Tomcat через веб-браузер через порт 8080 . Интерфейс веб-управления недоступен, потому что мы еще не создали пользователя.

Пользователи и роли Tomcat определены в tomcat-users.xml . Этот файл представляет собой шаблон с комментариями и примерами, показывающими, как создать пользователя или роль.

В этом примере мы создадим пользователя с ролями «admin-gui» и «manager-gui». Роль «admin-gui» позволяет пользователю получить доступ к URL-адресу /host-manager/html а также создавать, удалять и иным образом управлять виртуальными хостами. Роль «manager-gui» позволяет пользователю развертывать и отменять развертывание веб-приложений без необходимости перезапуска всего контейнера через интерфейс /host-manager/html .

Откройте файл tomcat-users.xml и создайте нового пользователя, как показано ниже:

Убедитесь, что вы изменили имя пользователя и пароль на более безопасные.

По умолчанию веб-интерфейс управления Tomcat настроен так, чтобы разрешать доступ к приложениям Manager и Host Manager только с локального хоста. Чтобы получить доступ к веб-интерфейсу с удаленного IP-адреса, вам необходимо снять эти ограничения. Это может иметь различные последствия для безопасности и не рекомендуется для производственных систем.

Чтобы разрешить доступ к веб-интерфейсу из любого места, откройте следующие два файла и закомментируйте или удалите строки, выделенные желтым цветом.

Для приложения Manager:

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

Если вы хотите получить доступ к веб-интерфейсу только с определенного IP-адреса, вместо комментирования блоков добавьте свой общедоступный IP-адрес в список.

Допустим, ваш публичный IP-адрес 41.41.41.41 и вы хотите разрешить доступ только с этого IP- 41.41.41.41 :

Список разрешенных IP-адресов представляет собой список, разделенный вертикальной чертой | . Вы можете добавить отдельные IP-адреса или использовать регулярные выражения.

После этого перезапустите службу Tomcat, чтобы изменения вступили в силу:

Проверьте установку Tomcat

Если установка прошла успешно, должен появиться экран, подобный следующему:

Выводы

Мы показали вам, как установить Tomcat 9.0 на CentOS 8 и как получить доступ к интерфейсу управления Tomcat.

Для получения дополнительной информации об Apache Tomcat посетите официальную страницу документации .

Если вы столкнулись с проблемой или хотите оставить отзыв, оставьте комментарий ниже.

Apache Tomcat — это веб-сервер и контейнер сервлетов, используемый для обслуживания приложений Java. Tomcat представляет собой реализацию технологий Java Servlet и JavaServer Pages с открытым исходным кодом, разработанную Apache Software Foundation. В настоящем руководстве описывается базовая установка и определенные моменты конфигурации последней версии Tomcat 9 на сервере Ubuntu 18.04.

Предварительные требования

Прежде чем начать изучение настоящего обучающего руководства, необходимо настроить на сервере стандартного пользователя без прав root и с привилегиями sudo . Вы можете узнать, как это сделать, из нашего руководства по начальной настройке сервера Ubuntu 16.04.

Шаг 1 — Установка Java

Tomcat требуется наличие на сервере Java, чтобы выполнять любой код веб-приложения Java. Мы можем удовлетворить это требование, установив OpenJDK с помощью apt.

Во-первых, обновите индекс пакетов apt:

Затем установите пакет для разработки Java с помощью apt:

Теперь, когда Java установлена, мы можем создать пользователя tomcat , который будет использоваться для запуска службы Tomcat.

Шаг 2 — Создание пользователя Tomcat

По соображениям безопасности Tomcat необходимо запускать с помощью пользователя без привилегий (т. е. без прав root). Мы создадим нового пользователя с группой, который будет запускать службу Tomcat.

Во-первых, создайте новую группу tomcat :

Далее создайте нового пользователя tomcat . Мы сделаем этого пользователя участником группы tomcat с домашней директорией /opt/tomcat (куда мы будем устанавливать Tomcat) и с оболочкой в /bin/false (чтобы никто не мог войти в учетную запись):

Теперь, когда наш пользователь tomcat настроен, мы загрузим и установим Tomcat.

Шаг 3 — Установка Tomcat

Лучшим способом установки Tomcat 9 является загрузка последней бинарной версии, а затем ее ручная настройка.

Найдите последнюю версию Tomcat 9 на странице загрузки Tomcat 9. На момент написания номер последней версии — 9.0.10, но вы должны использовать более позднюю стабильную версию, если такая будет доступна. Перейдите в раздел Binary Distributions (Бинарные дистрибутивы), а затем в списке Core скопируйте ссылку на файл tar.gz. В большинстве браузеров вы можете сделать это, нажав правой кнопкой мыши по ссылке и выбрав Скопировать адрес ссылки или похожий вариант.

Далее перейдите к директории /tmp на сервере. Эта директория отлично подходит для загрузки кратковременных элементов, таких как tar-архив (тарбол) Tomcat, который нам не потребуется после извлечения содержимого Tomcat:

Используйте curl для загрузки ссылки, скопированной на веб-сайте Tomcat:

Мы установим Tomcat в директорию /opt/tomcat . Создайте директорию, а затем извлеките туда архив с помощью этих команд:

Далее мы сможем настроить соответствующие разрешения пользователя для нашей установки.

Шаг 4 — Обновление разрешений

Пользователю tomcat , которого мы настроили, требуется доступ к установке Tomcat. Сейчас мы добавим нужные настройки.

Перейдите в директорию, куда мы распаковали установку Tomcat:

Предоставьте группе tomcat права владения для всей директории установки:

Далее предоставьте группе tomcat доступ для чтения для директории conf и всего ее содержимого, а также доступ execute для самой директории:

Сделайте пользователя tomcat владельцем директорий webapps , work , temp и logs :

Теперь, когда соответствующие разрешения настроены, мы сможем создать служебный файл systemd для управления процессом Tomcat.

Шаг 5 — Создание служебного файла systemd

Мы должны иметь возможность запустить Tomcat в качестве службы, поэтому мы настроим служебный файл systemd.

Tomcat должен знать, где установлена Java. Обычно этот путь называют JAVA_HOME. Самым простым способом поиска расположения является использование этой команды:

Ваш путь JAVA_HOME — это вывод из последнего столбца (выделено красным). Учитывая приведенный выше пример, для этого сервера правильное значение JAVA_HOME будет выглядеть таким образом:

Ваш путь JAVA_HOME может отличаться.

Получив эту информацию, мы сможем создать служебный файл systemd. Откройте файл tomcat.service в директории /etc/systemd/system с помощью следующей команды:

Добавьте следующее содержимое в служебный файл. Измените значение JAVA_HOME , если потребуется, согласно значению, которое вы используете в вашей системе. Также вы можете изменить параметры распределения памяти, указанные в CATALINA_OPTS :

После завершения редактирования сохраните и закройте файл.

Далее перезагрузите демон systemd, чтобы он знал о существовании вашего служебного файла:

Запустите службу Tomcat с помощью следующей команды:

Дополнительно проверьте, что служба запущена без ошибок, выполнив следующую команду:

Шаг 6 — Настройка брандмауэра и тестирование сервера Tomcat

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

Перед этим нам нужно настроить брандмауэр, чтобы разрешить доступ к службе для наших запросов. Если вы выполнили предварительные требования, у вас должен быть включен брандмауэр ufw .

Tomcat использует порт 8080 для принятия обычных запросов. Разрешите прием трафика для этого порта с помощью следующей команды:

После изменения брандмауэра вы можете получить доступ к начальной странице по умолчанию, перейдя к вашему домену или IP-адресу с :8080 в браузере.

Вы увидите начальную страницу Tomcat по умолчанию в дополнение к другой информации. Однако, если вы воспользуетесь ссылками на диспетчер приложения, например, вам будет отказано в доступе. Мы можем настроить этот доступ далее.

Если вы смогли успешно получить доступ к Tomcat, сейчас лучшее время для активации служебного файла, чтобы Tomcat автоматически запускался при загрузке:

Шаг 7 — Настройка веб-интерфейса управления Tomcat

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

Вы должны будете добавить пользователя, который может получить доступ к manager-gui и admin-gui (веб-приложения, которые поставляются вместе с Tomcat). Вы можете сделать это, определив пользователя, аналогичного приведенному ниже примеру, между тегами tomcat-users . Обязательно измените имя пользователя и пароль на более безопасные:

Сохраните файл и закройте его после завершения.

По умолчанию новые версии Tomcat ограничивают доступ к приложениям диспетчера и диспетчера хостов для подключений с самого сервера. Поскольку мы выполняем установку на удаленном компьютере, вы, вероятно, захотите удалить или изменить это ограничение. Чтобы изменить подобные ограничения IP-адреса, откройте соответствующие файлы context.xml .

Для приложения диспетчера введите:

Для приложения диспетчера хостов введите:

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

Сохраните файл и закройте после завершения.

Чтобы изменения вступили в силу, перезапустите службу Tomcat:

Шаг 8 — Доступ к веб-интерфейсу

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

root Tomcat

Веб-приложение диспетчера Tomcat

Веб-приложение диспетчера используется для управления приложениями Java. Здесь вы можете запустить, остановить, перезагрузить, развернуть и отменить развертывание. Также вы можете запустить инструменты диагностики для ваших приложений (например, найти утечки памяти). Информация о вашем сервере доступна в самом низу страницы.

Виртуальный диспетчер хостов Tomcat

На странице диспетчера виртуальных хостов вы можете добавить виртуальные хосты для обслуживания ваших приложений.

Заключение

Ваша установка Tomcat завершена! Теперь вы можете развернуть ваши собственные веб-приложения Java!

В настоящее время ваша установка Tomcat работает, но абсолютно не имеет шифрования. Это означает, что все данные, включая чувствительную информацию, например пароли, отправляются в текстовой форме и могут быть кем-либо перехвачены и прочитаны в Интернете. Чтобы предотвратить это, мы настоятельно рекомендуем шифровать ваши соединения с помощью SSL. Вы можете узнать, как реализовать шифрование ваших подключений в Tomcat в этом руководстве (примечание: в настоящем руководстве описано шифрование Tomcat 8 в Ubuntu 16.04).


В этом кратком руководстве показано, как получить Apache Tomcat 9 series на Ubuntu 16.04 | 18.04 LTS системы.

Для тех, кто не знает, что такое Tomcat, ниже представлен обзор.

Tomcat лучше всего работает при рендеринге веб-страниц, включая кодирование страницы сервера Java и сервлет Java. Эти языки по-прежнему требуются для некоторых других протоколов, используемых разработчиками Java.

Когда вы будете готовы установить Tomcat, выполните следующие действия:

Шаг 1. Установите OpenJDK

Tomcat требует установки Java JDK для работы. Вы можете установить Oracle Java JDK или его альтернативу с открытым исходным кодом под названием OpenJDK.

В этом руководстве мы собираемся установить OpenJDK, и установить его в Ubuntu довольно просто.

Просто запустите следующие команды, чтобы установить OpenJDK:

Теперь, когда Java установлена, мы можем загрузить и создать пользователя tomcat , который будет использоваться для запуска службы Tomcat.

Шаг 2. Создайте учетную запись службы Tomcat

Вы захотите запустить Tomcat как собственный пользователь без прав root. Вы должны создать нового пользователя и группу, которые будут запускать службу Tomcat.

Для этого выполните команды ниже

Сначала создайте новую группу tomcat под названием tomcat. Системы Linux обычно создают группы на основе имени учетной записи ..

sudo groupadd tomcat

Затем создайте нового пользователя tomcat с именем tomcat и сделайте пользователя членом указанной выше группы tomcat.

Для этого выполните команды ниже

sudo useradd -s /bin/false -g tomcat -d /opt/ tomcat tomcat

Теперь, когда наш пользователь tomcat настроен, давайте загрузим и установим пакет Tomcat ..

Шаг 3. Загрузите пакеты Tomcat

После установки OpenJDK и создания учетной записи службы для Tomcat выполните приведенные ниже команды, чтобы загрузить Tomcat версии 9.

Вы можете получить последнюю информацию по ссылке ниже:

Для этого выполните следующие команды:

Затем предоставьте пользователю tomcat контроль над всем каталогом и сделайте все сценарии в папке исполняемыми:

Когда вы закончите, перейдите ниже к созданию службы Tomcat…

Шаг 4. Настройте службу Tomcat

Теперь, когда пакет извлечен, выполните команды, чтобы открыть файл конфигурации Tomcat для его пользователя по умолчанию.

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

Затем создайте учетную запись с паролем для пользователя и сохраните, скопировав и вставив следующие строки в файл .. непосредственно перед </tomcat-users>

Сохраните файл и выйдите ..

Затем выполните приведенные ниже команды, чтобы создать учетную запись сервера для Tomcat.

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

затем скопируйте и вставьте строки ниже в файл и сохраните

Сохранить и выйти.

После этого выполните приведенные ниже команды, чтобы перезагрузить профили systemd и включить службу tomcat.

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

sudo systemctl status tomcat.service

Вы должны получить такой же экран, как показано ниже;

Теперь откройте свой браузер и перейдите к IP-адресу локального сервера или имени хоста.

и вы должны увидеть страницу Tomcat по умолчанию ..


Щелкните приложение «Менеджер», чтобы войти на внутреннюю страницу


По умолчанию Tomcat ограничивает доступ к приложениям Manager и Host Manager только подключениями к локальному серверу.

Если вы хотите получить доступ к серверу Tomcat удаленно, вы захотите внести в белый список разрешенный удаленный IP-адрес… Чтобы изменить ограничения IP-адреса для них, откройте соответствующие файлы context.xml .

Для приложения 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-адреса, чтобы разрешить соединения из любого места. В качестве альтернативы, если вы хотите разрешить доступ только к соединениям, исходящим с вашего собственного IP-адреса, вы можете добавить свой общедоступный IP-адрес в список:

Читайте также: