{"id":3419,"date":"2019-06-27T11:07:04","date_gmt":"2019-06-27T08:07:04","guid":{"rendered":"https:\/\/kifarunix.com\/?p=3419"},"modified":"2024-03-11T22:55:25","modified_gmt":"2024-03-11T19:55:25","slug":"install-apache-tomcat-9-on-debian-10-debian-9","status":"publish","type":"post","link":"https:\/\/kifarunix.com\/install-apache-tomcat-9-on-debian-10-debian-9\/","title":{"rendered":"Install Apache Tomcat 9 on Debian 10\/Debian 9"},"content":{"rendered":"\n<p>This guide demonstrates how to install Apache Tomcat 9 on Debian 10\/Debian 9. <a aria-label=\"Apache Tomcat (opens in a new tab)\" href=\"http:\/\/tomcat.apache.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Apache Tomcat<\/a> is an opensource java based HTTP web server that implements &nbsp;the Java Servlet, JavaServer Pages, Java Expression Language and Java WebSocket technologies.<\/p>\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><h2>Table of Contents<\/h2><nav><ul><li><a href=\"#installing-apache-tomcat-9-on-debian-10-debian-9\">Installing Apache Tomcat 9 on Debian 10\/Debian 9<\/a><ul><li><a href=\"#update-your-system-packages\">Update your system packages<\/a><\/li><li><a href=\"#install-java\">Install Java<\/a><\/li><li><a href=\"#download-and-install-apache-tomcat-9\">Download and Install Apache Tomcat 9<\/a><\/li><li><a href=\"#configure-apache-tomcat-9-environment-variables\">Configure Apache Tomcat 9 Environment Variables<\/a><\/li><li><a href=\"#create-tomcat-system-user\">Create Tomcat System User<\/a><\/li><li><a href=\"#configure-tomcat-web-management-accounts\">Configure Tomcat Web Management Accounts<\/a><\/li><li><a href=\"#running-tomcat-9\">Running Tomcat 9<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"installing-apache-tomcat-9-on-debian-10-debian-9\">Installing Apache Tomcat 9 on Debian 10\/Debian 9<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"update-your-system-packages\">Update your system packages<\/h3>\n\n\n\n<p>Run the commands below to update and upgrade your system packages.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>apt update\napt upgrade<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"install-java\">Install Java<\/h3>\n\n\n\n<p>Apache Tomcat 9 requires Java 8 or later.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>java -version\njava version \"11.0.3\" 2019-04-16 LTS\nJava(TM) SE Runtime Environment 18.9 (build 11.0.3+12-LTS)\nJava HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.3+12-LTS, mixed mode)<\/code><\/pre>\n\n\n\n<p>If you need to install other versions of Java, see the links below;<\/p>\n\n\n\n<p><a href=\"https:\/\/kifarunix.com\/install-oracle-java-12-on-debian-10\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\">Install Oracle Java 12 on Debian 10<\/a><\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"https:\/\/kifarunix.com\/install-oracle-java-12-on-ubuntu-18-04-debian-9-8\/\" target=\"_blank\">Install Oracle Java 12 on Ubuntu 18.04\/Debian 9.8<\/a><\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"https:\/\/kifarunix.com\/install-java-11-on-debian-9-8-ubuntu-18-04\/\" target=\"_blank\">Install Java 11 on Debian 9.8\/Ubuntu 18.04<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"download-and-install-apache-tomcat-9\">Download and Install Apache Tomcat 9<\/h3>\n\n\n\n<p>Next, navigate to <a rel=\"noreferrer noopener\" aria-label=\"Apache Tomcat 9 downloads page (opens in a new tab)\" href=\"https:\/\/tomcat.apache.org\/download-90.cgi\" target=\"_blank\">Apache Tomcat 9 downloads page<\/a> and download Tomcat 9 archive. You can as well use <strong>wget<\/strong> command as in below;<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>wget https:\/\/www-us.apache.org\/dist\/tomcat\/tomcat-9\/v9.0.21\/bin\/apache-tomcat-9.0.21.tar.gz<\/code><\/pre>\n\n\n\n<p>Extract the Apache Tomcat 9 binary to <strong>\/opt\/tomcat9<\/strong> directory.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>mkdir \/opt\/tomcat9\ntar xzf apache-tomcat-9.0.21.tar.gz -C \/opt\/tomcat9 --strip-components=1<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"configure-apache-tomcat-9-environment-variables\">Configure Apache Tomcat 9 Environment Variables<\/h3>\n\n\n\n<p>Environment variables are used by the Tomcat startup scripts to prepare the command that starts Tomcat.<\/p>\n\n\n\n<p>To begin with, set the CATALINA_HOME environment variable to the above created Tomcat directory where the binary files exist.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>echo 'export CATALINA_HOME=\"\/opt\/tomcat9\"' &gt; \/etc\/profile.d\/tomcat9.sh<\/code><\/pre>\n\n\n\n<p>Also, you need to set JRE_HOME (JRE) or JAVA_HOME (JDK) environment variable for the Java version you have installed. You can find the path with <strong>update-java-alternatives<\/strong> command.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>update-java-alternatives -l\njava-1.11.0-openjdk-amd64      1111       \/usr\/lib\/jvm\/java-1.11.0-openjdk-amd64<\/code><\/pre>\n\n\n\n<p>Hence,<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>echo 'export JAVA_HOME=\"\/usr\/lib\/jvm\/java-1.11.0-openjdk-amd64\"' &gt;&gt; \/etc\/profile.d\/tomcat9.sh <\/code><\/pre>\n\n\n\n<p>Reload the environment variables set above.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>source \/etc\/profile.d\/tomcat9.sh<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"create-tomcat-system-user\">Create Tomcat System User<\/h3>\n\n\n\n<p>Just like any other web server, Apache Tomcat should not be run with a privileged user. Hence, create a system user for Apache Tomcat as follows;<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>useradd -r -d \/opt\/tomcat9\/ -s \/bin\/false tomcat<\/code><\/pre>\n\n\n\n<p>Next, you need to set the group ownership of Tomcat 9 directory to <strong>tomcat<\/strong>.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>chown -R :tomcat \/opt\/tomcat9\/<\/code><\/pre>\n\n\n\n<p>Assign <strong>tomcat<\/strong> group the read permissions on the Tomcat 9 configuration files directory.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>chmod -R g+r \/opt\/tomcat9\/conf<\/code><\/pre>\n\n\n\n<p>Next, assign the group ownership the execution permissions on the Tomcat 9 configuration files directory.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>chmod g+x \/opt\/tomcat9\/conf<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"configure-tomcat-web-management-accounts\">Configure Tomcat Web Management Accounts<\/h3>\n\n\n\n<p>Define a user for the web management of Tomcat 9 Admin\/Manager User interfaces. This can be done by editing the <strong>\/opt\/tomcat9\/conf\/tomcat-users.xml<\/strong> file and adding the line below between the <strong>&lt;\/tomcat-users&gt;<\/strong> tag.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>vim \/opt\/tomcat9\/conf\/tomcat-users.xml<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;tomcat-users&gt;\n...\n  &lt;role rolename=\"admin-gui\"\/&gt; \n  &lt;role rolename=\"manager-gui\"\/&gt;\n  &lt;user username=\"admin\" password=\"StrongP@SS\" roles=\"admin-gui,manager-gui\"\/&gt;\n&lt;\/tomcat-users&gt;<\/code><\/pre>\n\n\n\n<p>Configure Tomcat to allow remote connection to Manager and Host Manager apps. Hence, edit the configuration files below for Manager and Host Manager respectively and enter the IP addresses of the remote server you are accessing the Tomcat from. The IPs are separated by a pipe, <strong>|<\/strong>.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>vim \/opt\/tomcat9\/webapps\/manager\/META-INF\/context.xml<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>...\n&lt;Context antiResourceLocking=\"false\" privileged=\"true\" &gt;\n  &lt;Valve className=\"org.apache.catalina.valves.RemoteAddrValve\"\n          allow=\"127\\.\\d+\\.\\d+\\.\\d+|::1|0:0:0:0:0:0:0:1|192.168.43.96\" \/&gt;\n...<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>vim \/opt\/tomcat9\/webapps\/host-manager\/META-INF\/context.xml<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>...\n&lt;Context antiResourceLocking=\"false\" privileged=\"true\" &gt;\n  &lt;Valve className=\"org.apache.catalina.valves.RemoteAddrValve\"\n         allow=\"127\\.\\d+\\.\\d+\\.\\d+|::1|0:0:0:0:0:0:0:1|192.168.43.96\" \/&gt;\n...<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"running-tomcat-9\">Running Tomcat 9<\/h3>\n\n\n\n<p>Tomcat can be run by executing the startup script, <strong>\/opt\/tomcat9\/bin\/startup.sh<\/strong>. You need to open port 8080 on UFW.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>ufw allow 8080<\/code><\/pre>\n\n\n\n<p>Running Tomcat 9 startup script<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>\/opt\/tomcat9\/bin\/startup.sh<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>Using CATALINA_BASE:   \/opt\/tomcat9\nUsing CATALINA_HOME:   \/opt\/tomcat9\nUsing CATALINA_TMPDIR: \/opt\/tomcat9\/temp\nUsing JRE_HOME:        \/usr\/lib\/jvm\/java-1.11.0-openjdk-amd64\nUsing CLASSPATH:       \/opt\/tomcat9\/bin\/bootstrap.jar:\/opt\/tomcat9\/bin\/tomcat-juli.jar\nTomcat started.<\/code><\/pre>\n\n\n\n<p>You can now access your Tomcat 9 using the address, <strong>http:\/\/server-IP:8080<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/apachetomcat.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1011\" height=\"687\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/apachetomcat.png\" alt=\"install Apache Tomcat 9 on Debian 10\/Debian 9\" class=\"wp-image-3427\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/apachetomcat.png 1011w, https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/apachetomcat-768x522.png 768w\" sizes=\"(max-width: 1011px) 100vw, 1011px\" \/><\/a><\/figure>\n\n\n\n<p>To access the Tomcat Web Application Manager, click <strong>Manager App<\/strong>. You will be prompted to login. Supply the credentials you set above.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-manager-app.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1006\" height=\"576\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-manager-app.png\" alt=\"Access to Manager App\" class=\"wp-image-3428\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-manager-app.png 1006w, https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-manager-app-768x440.png 768w\" sizes=\"(max-width: 1006px) 100vw, 1006px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-web-app.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1345\" height=\"652\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-web-app.png\" alt=\"Tomcat 9 web application manager\" class=\"wp-image-3429\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-web-app.png 1345w, https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-web-app-768x372.png 768w\" sizes=\"(max-width: 1345px) 100vw, 1345px\" \/><\/a><\/figure>\n\n\n\n<p>To access Tomcat virtual host manager, click <strong>Host Manager.<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-virtual-host-manager.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1342\" height=\"641\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-virtual-host-manager.png\" alt=\"Tomcat virtual host manager\" class=\"wp-image-3430\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-virtual-host-manager.png 1342w, https:\/\/kifarunix.com\/wp-content\/uploads\/2019\/06\/tomcat-virtual-host-manager-768x367.png 768w\" sizes=\"(max-width: 1342px) 100vw, 1342px\" \/><\/a><\/figure>\n\n\n\n<p>You can check our other guides below;<\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"https:\/\/kifarunix.com\/install-manageengine-assetexplorer-on-ubuntu-18-04\/\" target=\"_blank\">Install ManageEngine AssetExplorer on Ubuntu 18.04<\/a><\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"https:\/\/kifarunix.com\/install-anydesk-on-ubuntu-18-04\/\" target=\"_blank\">Install AnyDesk on Ubuntu 18.04<\/a><\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"https:\/\/kifarunix.com\/install-prometheus-on-ubuntu-18-04\/\" target=\"_blank\">Install Prometheus on Ubuntu 18.04<\/a><\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"https:\/\/kifarunix.com\/install-openvas-9-with-postgresql-in-ubuntu-18-04\/\" target=\"_blank\">Install OpenVAS 9 with PostgreSQL in Ubuntu 18.04<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/kifarunix.com\/configure-sendmail-to-use-gmail-relay-on-ubuntu-18-04-debian-10-9\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\">Configure Sendmail to Use Gmail Relay on Ubuntu 18.04\/Debian 10\/9<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This guide demonstrates how to install Apache Tomcat 9 on Debian 10\/Debian 9. Apache Tomcat is an opensource java based HTTP web server that implements<\/p>\n","protected":false},"author":2,"featured_media":9831,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_lock_modified_date":false,"footnotes":""},"categories":[121,254,334,253],"tags":[1012,997,287,3899,1013,1014],"class_list":["post-3419","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-howtos","category-apache","category-tomcat","category-web-servers","tag-apache-tomcat","tag-debian-10","tag-debian-9","tag-install-apache-tomcat-debian-10","tag-tomcat","tag-tomcat-9","generate-columns","tablet-grid-50","mobile-grid-100","grid-parent","grid-50","resize-featured-image"],"_links":{"self":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/3419"}],"collection":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/comments?post=3419"}],"version-history":[{"count":8,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/3419\/revisions"}],"predecessor-version":[{"id":21156,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/3419\/revisions\/21156"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/media\/9831"}],"wp:attachment":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/media?parent=3419"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/categories?post=3419"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/tags?post=3419"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}