Thursday, 16 July 2020

 How Tomcat Server Setup In Linux Environment 



Software Version used in this post were as follows:
Tomcat v9.08, Ubuntu 18.04 and Java JDK

Step 1  Install Java
Step 2 Create Tomcat User
Step 3 Install Tomcat
Step 4 Configure Tomcat
Step 5 Manage Credentials
Step 6 Start Tomcat
Step-7   URL for tomcat steps: https://www.digitalocean.com/community/tutorials/how-to-install-apache-tomcat-8-on-ubuntu-16-04

STEP 1 : INSTALLING JAVA
If Java JDK is not available install it.

First, update the package index
1. $ sudo apt update

Then install Java JDK
2. $ sudo apt install default-jdk

==================================================================
Here we used these link for different-2 version of Data
apt install default-jre
apt install openjdk-11-jre-headless
apt install openjdk-8-jre-headless
apt install openjdk-9-jre-headless
sudo apt install openjdk-8-jdk
sudo apt install openjdk-11-jdk

For more detail of Java Version Please follow these Link:
https://www.digitalocean.com/community/tutorials/how-to-install-java-with-apt-on-ubuntu-18-04
==================================================================

Now You can check Java Version by following cmd.
3. $ java -version


STEP 2 : CREATE TOMCAT USER
1. Create new tomcat group
$ sudo groupadd tomcat

2. Create tomcat user with a home directory where we can install tomcat(/opt/tomcat)

( sudo useradd -s /bin/false -g groupname -d directory location)

2. $ sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat

 
                                           OR
  • Create new tomcat group

  $ sudo groupadd tomcat

2. $ sudo mkdir /opt/tomcat

3. $ sudo useradd -s /bin/false -d /opt/tomcat tomcat 
                            or
 $ sudo useradd -r -m -U -d /opt/tomcat -s /bin/false tomcat/
                            or
 useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat


STEP 3 : INSTALL TOMCAT

1. If you want to make directory then use:
$ sudo mkdir /opt/tomcat

2. Download:
$ wget 
https://www.apache.org/dist/tomcat/tomcat-9/v9.0.20/bin/apache-tomcat-9.0.20.tar.gz 

3. Extaract:
$ sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1 

                                                 or
1. Download
$ wget wget https://www.apache.org/dist/tomcat/tomcat-9/v9.0.20/bin/apache-tomcat-9.0.20.tar.gz -P /tmp

2. Extract:
sudo tar xf /tmp/apache-tomcat-9*.tar.gz -C /opt/tomcat

STEP 4 :Update Permissions TOMCAT
$ cd /opt/tomcat/tomcat1
$  sudo chgrp -R tomcat /opt/tomcat/tomcat1
$ sudo chmod -R g+r conf
$sudo chmod g+x conf
$ sudo chown -R tomcat webapps/ work/ temp/ logs/

Create Systemd Services Tomacat:
$ sudo update-java-alternatives –l
copy the location:   /usr/lib/jvm/java-1.11.0-openjdk-amd64

Used this cmd for creatae Tomcat service:
$ sudo nano /etc/systemd/system/tomcat1.service

Copy bellow cmd & put it into tomcat1.service
================================================================
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/jre
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
================================================================
save the file through CTRL+X
================================================================
After continue with below cmd:
$ sudo systemctl daemon-reload  (Any change you need to execute this cmd)
$ sudo systemctl start tomcat1
$ sudo systemctl status tomcat1
$ sudo ufw allow 8080
   $ sudo systemctl enable tomcat

STEP 5 : MANAGE CREDENTIALS

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

Copy bellow cmd & put it into tomcat-users.xml
================================================================
<tomcat-users xmlns="http://tomcat.apache.org/xml"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
              version="1.0">

<role rolename="manager-gui"/>
<role rolename="admin-gui"/>      if you use admin gui then you can’t open manager gui.<user username="bildemo" password="bildemo@123" roles="manager-script,manager-gui,manager-jmx"/>

<user username="bildemo" password="bildemo@123" roles="manager-gui,manager-script,manager-jmx"/>

<user username="bildemo" password="bildemo@123" roles="admin-script"/>

<user username="bildemo" password="bildemo@123" roles="admin-gui"/>


</tomcat-users>
================================================================
save and close
================================================================
 In every change in file u must run with following cmd:
$ sudo systemctl restart tomcat

================================================================
Edit  server.xml file for define tomcat port:
$ sudo nano /opt/tomcat/tomcat1/conf/server.xml

1. <Server port="7005" shutdown="SHUTDOWN">

2.  <Connector port="7070" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="7443" />
3.  <Connector port="7009" protocol="AJP/1.3" redirectPort="7443" />
================================================================
================================================================
Service Command:

1. Run the following command to stop Apache Tomcat:

$ sudo service tomcat1 stop

2. Run the following command to restart Apache Tomcat:

$ sudo service tomcat1 start

  • Run the following command to status Apache Tomcat:

      $ sudo service tomcat1 status
==================================================================
How to manager & host managaer login in tomacat,here Need to Comment some line example below with path:

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

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

example:

<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" />
-->
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

Tomcat step 7 URL: https://www.digitalocean.com/community/tutorials/how-to-install-apache-tomcat-8-on-ubuntu-16-04




No comments:

Post a Comment