How to install apache tomcat 10 on linux mint 20 / linux mint 19

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

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

Откройте текстовый редактор и создайте модуля каталоге :

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

/etc/systemd/system/tomcat.service

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

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

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

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

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

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

Скачать Tomcat

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

Перейдите в каталог и загрузите zip-файл с помощью следующей команды wget :

После завершения загрузки распакуйте файл и переместите его в каталог :

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

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

Пользователь tomcat, которого мы ранее настроили, должен иметь доступ к каталогу tomcat, поэтому мы изменим владельца каталога на пользователя и группу tomcat:

Сделайте скрипты внутри каталога исполняемыми, выполнив следующую команду :

Stop Apache Tomcat

To sop the Apache Tomcat, use the same catalina.sh script with stop parameter as shown below.

$ $CATALINA_HOME/bin/catalina.sh stop
Using CATALINA_BASE:   /home/tomcat/apache-tomcat-9.0.0.M21
Using CATALINA_HOME:   /home/tomcat/apache-tomcat-9.0.0.M21
Using CATALINA_TMPDIR: /home/tomcat/apache-tomcat-9.0.0.M21/temp
Using JRE_HOME:        /
Using CLASSPATH:       /home/tomcat/apache-tomcat-9.0.0.M21/bin/bootstrap.jar:/home/tomcat/apache-tomcat-9.0.0.M21/bin/tomcat-juli.jar

After “catalina.sh stop”, you will not see any java tomcat process running in the background as shown below.

$ ps -ef | grep -i tomcat
root      3412  2045  0 17:27 pts/0    00:00:00 su - tomcat
tomcat    3413  3412  0 17:27 pts/0    00:00:00 -bash
tomcat    3592  3413  0 17:42 pts/0    00:00:00 ps -ef
tomcat    3593  3413  0 17:42 pts/0    00:00:00 grep --color=auto -i tomcat

Instead of using the catalina.sh script, you can also use the shutdown.sh script as shown below. This does the same thing.

$  $CATALINA_HOME/bin/shutdown.sh

The following is the output from catalina.out log file which shows that the tomcat server is properly shutdown without any issues. All of these lines start with a timestamp at the beginning, which is not shown here.

INFO  org.apache.catalina.core.StandardServer.await A valid shutdown command was received via the shutdown port. Stopping the Server instance.
INFO  org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler 
INFO  org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler 
INFO  org.apache.catalina.core.StandardService.stopInternal Stopping service 
INFO  org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler 
INFO  org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler 
INFO  org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler 
INFO  org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler 

Step 5: Create a systemd Service File

We want to be able to run Tomcat as a service, so we will set up systemd service file.

Tomcat needs to know where Java is installed. This path is commonly referred to as “JAVA_HOME”. The easiest way to look up that location is by running this command:

The correct variable can be constructed by taking the output from the last column (highlighted in red) and appending to the end. Given the example above, the correct for this server would be:

Your may be different.

With this piece of information, we can create the systemd service file. Open a file called in the directory by typing:

Paste the following contents into your service file. Modify the value of if necessary to match the value you found on your system. You may also want to modify the memory allocation settings that are specified in :

/etc/systemd/system/tomcat.service

When you are finished, save and close the file.

Next, reload the systemd daemon so that it knows about our service file:

Start the Tomcat service by typing:

Double check that it started without errors by typing:

Примеры использования.

Выполнить MTR для домена

MTR работает в двух режимах, графический режим (X11) и текстовом режиме на основе (Ncurses). По умолчанию, команда mtr работает в режиме X11.

$ mtr linux-notes.org

mtr linux-notes.org

Запуск в текстовом режиме -curses

Используйте опцию «-curses» чтобы работать с mtr в терминальном режиме.

$ mtr --curses linux-notes.org

Исключить Обратный DNS с помощью «-no-DNS»

MTR находит имя хоста каждого маршрутизатора / узла с помощью обратного просмотра DNS. Если вы хотите, чтобы избежать выполнение обратного поиска DNS, используйте «-no-DNS» вариант.

$ mtr --curses --no-DNS linux-notes.org

Использовать mtr в режиме отчета с помощью «-report»

$ mtr --no-DNS --report linux-notes.org

Установка mtr в Unix/Linux завершена.

Установка Apache Tomcat

Скачиваем последнюю версию с сайта http://tomcat.apache.org/. Я скачал tar.gz-архив. Binary distributions/Core/tar.gz. На момент написания статьи последней версией был apache-tomcat-8.0.24. Остаток статьи будет писаться для неё. Вам нужно будет заменить все вхождения этой версии на свою версию. Закачиваем его на наш сервер с помощью PuTTY PSCP:

pscp.exe apache-tomcat-8.0.24.tar.gz root@<IP_сервера>:/root

1 pscp.exe apache-tomcat-8.0.24.tar.gz root@<IP_сервера>:/root

Сервер запросит пароль. Вводим его и ждём окончания отдачи файла.

Заходим на сервер по SSH. В каталоге /root лежит наш файл apache-tomcat-8.0.24.tar.gz. Распаковываем его и перемещаем в /opt:

tar xzvf apache-tomcat-8.0.24.tar.gz
mv apache-tomcat-8.0.24 /opt/apache-tomcat-8.0.24

1
2

tar xzvf apache-tomcat-8.0.24.tar.gz
mv apache-tomcat-8.0.24 /opt/apache-tomcat-8.0.24

Теперь на сервере в каталоге /opt у нас два каталога:

drwxr-xr-x 9 root root 4096 июля 1 21:22 apache-tomcat-8.0.24
drwxr-xr-x 8 uucp 143 4096 июня 9 05:37 jdk1.8.0_51

1
2

drwxr-xr-x  9 root root 4096 июля   1 21:22 apache-tomcat-8.0.24
drwxr-xr-x  8 uucp  143 4096 июня   9 05:37 jdk1.8.0_51

Установка Java

Нам нужно скачать Java. Скачиваем последнюю версию на сайте Oracle http://www.oracle.com/technetwork/java/javase/downloads/index.html

Нам нужно скачать Server JRE. Соглашаемся с лицензией и скачиваем server-jre-…-x64.tar.gz. На момент написания этой статьи последней версией бала Java 8u51. Остальную статью будут писать для этой версии. Вам нужно будет все эти вхождения заменить на ту версию, которая будет у вас.

Теперь нужно загрузить его на сервер. Для этого используем PuTTY PSCP:

pscp.exe server-jre-8u51-linux-x64.tar.gz root@<IP_сервера>:/root

1 pscp.exe server-jre-8u51-linux-x64.tar.gz root@<IP_сервера>:/root

Сервер запросит пароль. Вводим его и ждём окончания отдачи файла.

Заходим на сервер по SSH. В каталоге /root лежит наш файл server-jre-8u51-linux-x64.tar.gz. Нам нужно его распаковать и поместить в /opt/jre-8u51:

tar xzvf server-jre-8u51-linux-x64.tar.gz
mv jdk1.8.0_51 /opt/jdk1.8.0_51

1
2

tar xzvf server-jre-8u51-linux-x64.tar.gz
mv jdk1.8.0_51 /opt/jdk1.8.0_51

Более подробное описание команды распаковки здесь: Как распаковать tar gz файл.
Проверяем:

/opt/jdk1.8.0_51/bin/java -version

1 /opt/jdk1.8.0_51/bin/java -version

Prerequisites

Our first task is to make sure our system is updated.Since we are going to install Tomcat on CentOS 8, we will run the following commands.

Next, we need to verify whether Java is already installed.

But If we do not have Java installed, we will receive the output in the ScreenShot below.

Install Java

Moving forward, let’s install Java.Apache Tomcat will not work properly if Java is not present on the system.Additionally, we need to ensure that we are installing Java OpenJDK 11. Because it is open-source and a long term release, we will not run into any licensing issues. To accomplish this task, we will use the following command.

So next, we will verify the version of Java installed by running this command.

Step 8: Access the Web Interface

Now that we have create a user, we can access the web management interface again in a web browser. Once again, you can get to the correct interface by entering your server’s domain name or IP address followed on port 8080 in your browser:

The page you see should be the same one you were given when you tested earlier:

Let’s take a look at the Manager App, accessible via the link or . You will need to enter the account credentials that you added to the file. Afterwards, you should see a page that looks like this:

The Web Application Manager is used to manage your Java applications. You can Start, Stop, Reload, Deploy, and Undeploy here. You can also run some diagnostics on your apps (i.e. find memory leaks). Lastly, information about your server is available at the very bottom of this page.

Now let’s take a look at the Host Manager, accessible via the link or :

From the Virtual Host Manager page, you can add virtual hosts to serve your applications from.

Step 6: Adjust the Firewall and Test the Tomcat Server

Now that the Tomcat service is started, we can test to make sure the default page is available.

Before we do that, we need to adjust the firewall to allow our requests to get to the service. If you followed the prerequisites, you will have a firewall enabled currently.

Tomcat uses port to accept conventional requests. Allow traffic to that port by typing:

With the firewall modified, you can access the default splash page by going to your domain or IP address followed by in a web browser:

You will see the default Tomcat splash page, in addition to other information. However, if you click the links for the Manager App, for instance, you will be denied access. We can configure that access next.

If you were able to successfully accessed Tomcat, now is a good time to enable the service file so that Tomcat automatically starts at boot:

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

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

Этот файл содержит инструкции по настройке, которые можно удалить, если они не нужны.

Теперь нужно добавить пользователя, который будет иметь доступ к поставляемым с Tomcat интерфейсам: manager-gui и admin-gui. Для этого можно использовать приведённый ниже код (но укажите более надёжное имя и пароль пользователя):

Сохраните и закройте файл tomcat-users.xml. Чтобы обновить настойки, перезапустите сервис Tomcat.

Доступ к веб-интерфейсу

Теперь сервер Tomcat запущен. Откройте в браузере веб-интерфейс управления. http://server_IP_address:8080

На экране появится страница с сообщением:

Также на этой странице есть ссылки на веб-приложения админа, для которых ранее была создана учётная запись администратора.

Этот менеджер веб-приложений нужен для управления приложениями Java. Он позволяет запускать, перезапускать, останавливать и сворачивать приложения. Кроме того, он может выполнять диагностику приложений (к примеру, обнаруживать утечки памяти). В конце этой страницы содержится информация о сервере.

Теперь откройте Host Manager:

Страница Virtual Host Manager нужна для управления виртуальными хостами; она позволяет добавлять виртуальные хосты для развёртывания приложений.

Готово! Теперь сервер Tomcat полностью готов к обслуживанию приложений Java.

Apache TomcatApache Tomcat 8JavaOpenJDK 7TomcatUpstart

How to Install Tomcat on Linux?

Now that we understand what Tomcat does, and have covered the prerequisites, it is time to install Tomcat on our system. To do so, you need to follow the following steps.

Setting up a Tomcat User

It is not advisable to run Tomcat under a root account. Hence we need to create a new user where we run the Tomcat server on our system. We will use the following command to create our new user.

sudo useradd -r -m -U -d /opt/tomcat -s /bin/false tomcat

As you can see, we grouped our new system user with the directory /opt/Tomcat. This will be used to run the Tomcat service on our system.

Downloading the Tomcat package

Now that we have created a new user for our Tomcat server and switched to it. We need to download the Tomcat package to install Tomcat on Linux. 

Let’s use the wget command to download the Tomcat package from their official website.

wget -c https://downloads.apache.org/tomcat/tomcat-9/v9.0.34/bin/apache-tomcat-9.0.34.tar.gz

Install Tomcat on Linux

Once the tar archive is downloaded on our system, we need to untar the archive on our system. This can be done as follows using the tar command as shown below.

sudo tar xf apache-tomcat-9.0.34.tar.gz -C /opt/tomcat

Using this command, we have extracted the contents of the tar package in /opt/Tomcat. To make updating Tomcat easy, we create a symbolic link that will point to the installation directory of Tomcat.

sudo ln -s /opt/tomcat/apache-tomcat-9.0.34 /opt/tomcat/updated

Now, if you wish to install Tomcat on Linux with a newer version in future, simply unpack the new archive and change the symbolic link so that it points to the new version.

Now we need to provide the user Tomcat with access for the Tomcat installation directory. We would use the chown command to change the directory ownership.

sudo chown -R tomcat: /opt/tomcat/*

Finally, we will use the chmod command to provide all executable flags to all scripts within the bin directory.

sudo sh -c 'chmod +x /opt/tomcat/updated/bin/*.sh'

Don’t forget to make sure that the “tomcat” user and group has read and write access to all the files and folders within the /opt/tomcat/updated folder like below.


Permissions Tomcat

See how both the user and group for the directories is tomcat and tomcat.

Configuring the Tomcat service

Once you install Tomcat on Linux, you need to configure it before you can start using it. First, we need to create a systemd unit file to be able to run Tomcat as a service. We need to create a new unit file for this. We will open a new file named tomcat.service in the directory /etc/systemd/system using nano or your preferred editor.

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

Now enter the following in your file and save it. Note that you need to update the value of JAVA_HOME if your Java installation directory is not the same as given below.


Description=Apache Tomcat Web Application Container
After=network.target


Type=forking

Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
Environment="CATALINA_PID=/opt/tomcat/updated/temp/tomcat.pid"
Environment="CATALINA_HOME=/opt/tomcat/updated/"
Environment="CATALINA_BASE=/opt/tomcat/updated/"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
Environment="JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom"

ExecStart=/opt/tomcat/updated/bin/startup.sh
ExecStop=/opt/tomcat/updated/bin/shutdown.sh

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always


WantedBy=multi-user.target

Now we reload the daemon to update the system about the new file.

sudo systemctl daemon-reload

We use the following command to start the Tomcat service on our system.

sudo systemctl start tomcat

We will use the systemctl command to check the status of our Tomcat service. If the output looks like this, you were successful to install Tomcat on Linux.

Systemctl Tomcat Running

Now we can enable the Tomcat service to run on startup using this command.

sudo systemctl enable tomcat

After you install Tomcat on Linux, you need to allow it to use the 8080 port through the firewall to be able to communicate outside your local network.

sudo ufw allow 8080/tcp


Firewall Rules Tomcat

Verifying our installation

Once we install Tomcat on Linux, we need to verify our installation. To do so, simply enter the following in your browser.

http://<YourIPAddress>:8080

If your installation and configuration were successful, you should see this page.

Tomcat Running

Step 6 – Create a Tomcat Systemd Unit File

Tomcat provides bash scripts to start, stop service. But, to make it simpl, create a startup script to manage Tomcat as systemd service. Let’s create a tomcat.service file with the following content:

Description=Tomcat
After=network.target


Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh


WantedBy=multi-user.target

Reload the systemd daemon service to load newly create files.

Now, start the Tomcat application for the first time.

Next, enable the tomcat service to auto-start for subsequent system boots. This is more important for the production deployments.

As of now, the tomcat application is running on your system. You can verify the service status by executing the command as below. Make sure the status is showing ““.

● tomcat.service - Tomcat
     Loaded: loaded (/etc/systemd/system/tomcat.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2021-03-17 10:56:39 IST; 3h 45min ago
    Process: 481049 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
   Main PID: 481056 (java)
      Tasks: 29 (limit: 4539)
     Memory: 264.2M
     CGroup: /system.slice/tomcat.service
             └─481056 /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Djava.util.logging.config.file>

Mar 17 10:56:39 tecadmin-ubuntu2004 systemd: Starting Tomcat...
Mar 17 10:56:39 tecadmin-ubuntu2004 startup.sh: Tomcat started.
Mar 17 10:56:39 tecadmin-ubuntu2004 systemd: Started Tomcat.

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

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

Пользователи Tomcat и их роли определены в .

Если вы откроете файл, вы заметите, что он заполнен комментариями и примерами, описывающими, как настроить файл.

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

/opt/tomcat/latest/conf/tomcat-users.xml

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

Если вам нужно получить доступ к веб-интерфейсу из любого места, откройте следующие файлы и прокомментируйте или удалите строки, выделенные желтым:

/opt/tomcat/latest/webapps/manager/META-INF/context.xml

/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

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

/opt/tomcat/latest/webapps/manager/META-INF/context.xml

/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

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

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

Пробный запуск Apache Tomcat

Переходим в каталог /opt/apache-tomcat-8.0.24/bin. Пробуем запустить:

sh startup.sh

1 sh startup.sh

В консоли должно выйти что-то вроде вот этого:

Using CATALINA_BASE: /opt/apache-tomcat-8.0.24
Using CATALINA_HOME: /opt/apache-tomcat-8.0.24
Using CATALINA_TMPDIR: /opt/apache-tomcat-8.0.24/temp
Using JRE_HOME: /opt/jdk1.8.0_51
Using CLASSPATH: /opt/apache-tomcat-8.0.24/bin/bootstrap.jar:/opt/apache-tomcat-8.0.24/bin/tomcat-juli.jar
Tomcat started.

1
2
3
4
5
6

Using CATALINA_BASE:   /opt/apache-tomcat-8.0.24
Using CATALINA_HOME:   /opt/apache-tomcat-8.0.24
Using CATALINA_TMPDIR: /opt/apache-tomcat-8.0.24/temp
Using JRE_HOME:        /opt/jdk1.8.0_51
Using CLASSPATH:       /opt/apache-tomcat-8.0.24/bin/bootstrap.jar:/opt/apache-tomcat-8.0.24/bin/tomcat-juli.jar
Tomcat started.

Теперь попробуйте зайти браузером с вашего личного компьютера по адресу http://<IP_сервера>:8080. Если вы всё сделали правильно, то вы должны увидеть страницу с надписью «If you’re seeing this, you’ve successfully installed Tomcat. Congratulations!» и кучу ссылок на документацию, примеры и прочее.

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

Итак. Мы установили Tomcat. Останавливаем его с консоли сервера:

sh shutdown.sh

1 sh shutdown.sh

Протестируйте сервис Apache Tomcat 9

Во-первых, давайте проверим, какой порт прослушивает служба Apache Tomcat 9. Для этого выполните приведенную ниже команду.

Как показано ниже, служба Apache Tomcat 9 прослушивает порт 8080. Вы можете увидеть это по имени программы “java.”


Проверьте порт прослушивания службы Apache Tomcat

По умолчанию Apache Tomcat использует порт 8080 из-за возможности того, что веб-сервер уже работает на порту 80. Соответственно порт 80 занят.

В этом руководстве мы используем порт прослушивания который установлен по умолчанию 8080.

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

Теперь откройте веб-браузер и введите ваш сервер:8080. Например, 192.168.16.8:8080.

Вы должны увидеть домашнюю страницу Tomcat, она показана на рисунке ниже.


Домашняя страница Tomcat по умолчанию

Step 5 – Enable Remote Tomcat Access

The default Tomcat manager and host-manager applications are accessible for localhost only. To allow access to these pages from the remote system, you need to modify the following configuration files.

You can either allow specific remote system or allow all. Edit the file for manager and host manager application:

Comment out the section added for IP address restriction to allow connections from anywhere.

<Context antiResourceLocking="false" privileged="true" >
  <CookieProcessor className="org.apache.tomcat.util.http.Rfc6265CookieProcessor"
                   sameSiteCookies="strict" />
   <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> 
  ...
</Context>

Similarly edit for host manager application in text editor:

Comment out the same section to allow connections from anywhere.

<Context antiResourceLocking="false" privileged="true" >
  <CookieProcessor className="org.apache.tomcat.util.http.Rfc6265CookieProcessor"
                   sameSiteCookies="strict" />
  <!--<Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
  ...
</Context>

Save all files and close it.

Startup Apache Tomcat

To start Apache tomcat, we’ll use the script called catalina.sh that is located in the bin directory of CATALINA_HOME.

So, execute catalina.sh start as shown below to start Apache tomcat on your system.

$ $CATALINA_HOME/bin/catalina.sh start

Use grep command to verify whether the tomcat java process is started and running in the background as shown below.

$ ps -ef | grep -i tomcat
root      3412  2045  0 17:27 pts/0    00:00:00 su - tomcat
tomcat    3413  3412  0 17:27 pts/0    00:00:00 -bash
tomcat    3463     1  1 17:30 pts/0    00:00:02 //bin/java -Djava.util.logging.config.file=/home/tomcat/apache-tomcat-9.0.0.M21/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -classpath /home/tomcat/apache-tomcat-9.0.0.M21/bin/bootstrap.jar:/home/tomcat/apache-tomcat-9.0.0.M21/bin/tomcat-juli.jar -Dcatalina.base=/home/tomcat/apache-tomcat-9.0.0.M21 -Dcatalina.home=/home/tomcat/apache-tomcat-9.0.0.M21 -Djava.io.tmpdir=/home/tomcat/apache-tomcat-9.0.0.M21/temp org.apache.catalina.startup.Bootstrap start

Note: If it didn’t start, then you might have to set the JAVA_HOME location properly as shown below.

Подготовка к установке

Для работы веб-сервера нам необходимы Java и пользователь, под которым будет работать Tomcat.

Установка JAVA

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

apt-get install default-jdk

* будет установлена последняя версия, максимально совместимая с используемой версией операционной системы Ubuntu.

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

update-alternatives —config java

… и выбираем в списке соответствующий вариант.

Проверяем используемую версию java:

java -version

Мы должны увидеть что-то на подобие:

openjdk version «14.0.2» 2020-07-14
OpenJDK Runtime Environment (build 14.0.2+12-Ubuntu-120.04)
OpenJDK 64-Bit Server VM (build 14.0.2+12-Ubuntu-120.04, mixed mode, sharing)

Java установлен.

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

Создаем пользователя командой:

useradd tomcat -U -s /bin/false -d /opt/tomcat -m

* в итоге будет создан пользователь tomcat со следующими опциями:

  • -U — также будет создана группа с таким же именем, что и пользователь.
  • -s /bin/false — запрещает пользователю интерактивный вход в систему.
  • -d /opt/tomcat — указывает путь до домашней директории пользователя.
  • -m — сразу создает домашнюю директорию пользователю.

Можно приступать к установке веб-сервера Apache Tomcat.

Prerequisites

Install Java

Tomcat requires Java JDK to be installed on the machine. You can either install Oracle JDK or OpenJDK.

For this demo, I am going with OpenJDK.

sudo apt update

sudo apt install -y openjdk-11-jdk

Once Java is installed, you can verify the Java version by using the following command.

java -version

Output:

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 Service Account

For best practice, Tomcat should never be run as a privileged user (root). So, create a low-privilege user for running the Tomcat service.

sudo groupadd tomcat

sudo mkdir /opt/tomcat

sudo useradd -g tomcat -d /opt/tomcat -s /usr/sbin/nologin tomcat

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

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

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

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

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

/opt/tomcat/latest/conf/tomcat-users.xml

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

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

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

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

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

context.xml

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

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

context.xml

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

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

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

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

Пользователи Tomcat и их роли определены в .

Если вы откроете файл, вы заметите, что он заполнен комментариями и примерами, описывающими, как настроить файл:

Мы определим нового пользователя в , как показано ниже. У пользователя будет доступ к веб-интерфейсу Tomcat (manager-gui и admin-gui). Обязательно измените имя пользователя и пароль на более безопасные:

/opt/tomcat/latest/conf/tomcat-users.xml

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

Если вам нужно получить доступ к веб-интерфейсу из любого места, откройте следующие файлы и прокомментируйте или удалите строки, выделенные желтым:

/opt/tomcat/latest/webapps/manager/META-INF/context.xml

/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

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

/opt/tomcat/latest/webapps/manager/META-INF/context.xml

/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

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

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

6: Работа с веб-интерфейсом Tomcat

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

Это откроет домашнюю страницу Tomcat по умолчанию, содержащую сообщение «It works!» и некоторую дополнительную информацию о сервере.

Помимо прочей информации на странице можно найти ссылки на ранее установленные пакеты (раздел 3):

  • tomcat7-docs: онлайн-документация Tomcat; доступна по http://ip_адрес:8080/docs/
  • tomcat7-examples: образцы и примеры Tomcat 7 Servlet и JSP. Этот инструмент позволяет просмотреть примеры веб-приложений (а также посмотреть на их исходный код), чтобы получить общее представление о том, как они работают. Ссылка доступа: http://ip_адрес:8080/examples/
  • tomcat7-admin (manager-webapp): Tomcat Web Application Manager, менеджер веб-приложений Tomcat; он позволяет управлять Java-приложениями.
  • tomcat7-admin (host-manager): Tomcat Virtual Host Manager, менеджер виртуальных хостов Tomcat.

Как видите, этот менеджер способен значительно простить работу с приложениями Java. Он позволяет запустить, отключить, перезапустить, развернуть и свернуть приложение (смотрите столбец Commands), а также выполнить диагностику приложений (то есть, обнаружить утечки памяти). Кроме того, в самом низу этой страницы можно найти информацию о сервере.

Теперь откройте Tomcat Virtual Host Manager при помощи http://ip_адрес:8080/host-manager/html/.

Данный менеджер позволяет добавлять виртуальные хосты для обслуживания веб-приложений.

Готово! Установка сервера приложений Tomcat завершена; можно приступать к развертыванию веб-приложений.

Apache TomcatApache Tomcat 7JavaJava Development KitLinuxOpenJDKUbuntuUbuntu 14.04VPS

Configuration Settings

Here are a couple of useful configuration settings for Tomcat. 

Add Users

So we may need to add new users or an admin user. We can accomplish this by going to the Tomcat conf folder and modifying these settings.

Note: We can open the file through vi or vim or by utilizing the file manager and opening the file using a text editor. 

Finally, use :wq to save the file.

Changing Ports

So At times, you may wish to run Tomcat on an alternate port. To accomplish this, we can modify the connector port setting in the server.xml file.These are the steps to take.

In addition to In the server.xml file or from within a text editor, we can modify the “Connector port” line, changing it from port 8080 to 80 or any other port number we choose.

Доступ к Managing Tomcat

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

  • Server Status
  • Manager App
  • Host Manager

По умолчанию, доступ закрыт в данные разделы. Пошагово, настроим доступ в каждый из них.

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

Создаем пользователя, под которым мы будем авторизовываться в системе.

Открываем файл:

vi /opt/tomcat/conf/tomcat-users.xml

Внутрь раздела tomcat-users добавим:

   …
   <role rolename=»admin-gui»/>
   <role rolename=»manager-gui»/>
   <user username=»admin» password=»password» roles=»admin-gui,manager-gui»/>
</tomcat-users>

* в данном примере мы создадим пользователя admin с паролем password и ролями admin-gui, manager-gui.

Перезапускаем tomcat:

systemctl restart tomcat

Server Status и Manager App

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

Открываем файл:

vi /opt/tomcat/webapps/manager/META-INF/context.xml

Находим строку:

         allow=»127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1″ />

… и добавляем IP-адрес компьютера, с которого будем подключаться, например:

         allow=»127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.1.15″ />

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

Пробуем зайти на стартовую страницу и перейти в раздел Server Status:

Браузер запросит логин и пароль — вводим созданные ранее данные (admin и password). Мы должны увидеть статистику.

Теперь переходим в раздел Manager App:

Мы должны увидеть раздел «Управление веб-приложениями Tomcat».

Host-Manager

В данном разделе можно управлять виртуальными серверами.

Открываем файл:

vi /opt/tomcat/webapps/host-manager/META-INF/context.xml

Находим строку:

         allow=»127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1″ />

… и добавляем IP-адрес компьютера, с которого будем подключаться, например:

         allow=»127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.1.15″ />

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

Пробуем зайти на стартовую страницу и перейти в раздел Host Manager:

Мы должны увидеть раздел «Управление виртуальными серверами Tomcat».

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: