Apache Tomcat 是一个开源 Web 服务器,带有用于发布基于 Java 的 Web 应用程序的 Servlet 容器。 Tomcat 是由 Apache 软件基金会支持下的开放开发者社区开发和维护的。截至目前,Tomcat 10 是可在开发和生产环境中安装的最新稳定版本。要了解有关 Apache Tomcat 的更多信息,请访问 apache 的官方网站http://tomcat.apache.org/.
本教程将帮助您如何在 Debian 11 和 Debian 10 Buster Linux 系统上安装 Apache Tomcat 10。
先决条件
具有 sudo 特权帐户 shell 访问权限的正在运行的 Debian 10 系统。
您可以从以下位置获得更便宜的实例数字海洋托管。
第 1 步 – 安装 Java
Tomcat 10 需要在系统上安装 JRE 8 或更高版本。如果您的系统没有安装JRE,请使用以下命令安装OpenJDK以满足要求。
sudo apt update
sudo apt install default-jdk -y
检查当前活动的 Java 版本:
java -version
openjdk 11.0.9.1 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2)
OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode, sharing)
第 2 步 – 创建 Tomcat 用户
最好有一个专门的用户帐户来运行 Tomcat 服务器。创建一个名为“tomcat”的新用户,建议出于安全目的主要用于生产部署。
要创建新帐户,请输入:
sudo useradd -m -d /opt/tomcat -U -s /bin/false tomcat
上面的命令将创建一个名为“的用户和组”tomcat
” 在你的系统中。
步骤 3 – 在 Debian 10 上安装 Tomcat
Apache Tomcat 开发团队会不定期发布最新版本的 Tomcat。因此,最好检查从以下位置下载最新的 Tomcat 版本:官方下载服务器。使用以下命令下载 Tomcat 10。
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.27/bin/apache-tomcat-10.0.27.tar.gz
下载存档文件后,将文件解压到 tomcat 主目录 /opt/tomcat 下,并跳过父文件夹。
sudo tar xzvf apache-tomcat-10*tar.gz -C /opt/tomcat --strip-components=1
接下来,设置适当的文件权限。
sudo chown -R tomcat:tomcat /opt/tomcat/
sudo chmod -R u+x /opt/tomcat/bin
现在,您的系统上已安装了最新的 Tomcat 应用程序。
步骤 4 – 创建 Tomcat 用户
现在,使用用户帐户配置您的 tomcat 以保护管理/经理页面的访问。为此,请编辑conf/tomcat-users.xml在编辑器中创建文件并将以下代码粘贴到 标记中。我们建议使用高安全密码更改以下配置中的密码。
sudo nano /opt/tomcat/conf/tomcat-users.xml
添加以下值。确保更改管理员和经理访问的密码。
<!-- user manager can access only manager section -->
<role rolename="manager-gui" />
<user username="manager" password="_SECRET_PASSWORD_" roles="manager-gui" />
<!-- user admin can access manager and admin section both -->
<role rolename="admin-gui" />
<user username="admin" password="_SECRET_PASSWORD_" roles="manager-gui,admin-gui" />
保存文件并关闭。
第 5 步 – 启用远程 Tomcat 访问
默认 Tomcat 管理器和主机管理器应用程序只能由本地主机访问。要允许从远程系统访问这些页面,您需要修改以下配置文件。
您可以允许特定远程系统或允许所有远程系统。编辑context.xml
管理器和主机管理器应用程序的文件:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
注释掉为 IP 地址限制添加的部分,以允许从任何地方进行连接。
<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>
另外,编辑主机管理器接口的 context.xml 并注释与上面类似的部分。
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
保存所有文件并关闭它们。
步骤 6 – 创建 Tomcat Systemd 单元文件
Tomcat提供了bash脚本来启动、停止服务。但是,为了简单起见,创建一个启动脚本来将 Tomcat 作为 systemd 服务进行管理。让我们创建一个包含以下内容的 tomcat.service 文件:
sudo nano /etc/systemd/system/tomcat.service
[Unit]
Description=Tomcat
After=network.target
[Service]
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
[Install]
WantedBy=multi-user.target
重新加载 systemd 守护程序服务以加载新创建的文件。
sudo systemctl daemon-reload
现在,首次启动 Tomcat 应用程序。
sudo systemctl start tomcat.service
接下来,启用 tomcat 服务自动启动以供后续系统启动。这对于生产部署更为重要。
sudo systemctl enable tomcat.service
到目前为止,tomcat 应用程序正在您的系统上运行。您可以通过执行以下命令来验证服务状态。确保状态显示“active (running)
“.
sudo systemctl status tomcat.service
就是这样。您已在 Debian 系统上成功配置 Tomcat 10。
第 7 步 – 访问 Tomcat Web 界面
默认 Tomcat 服务器在端口 8080 上运行。当您在系统上配置 Tomcat 时,您可以从系统访问 Web 界面。您可以通过在浏览器中输入服务器的IP地址或指向该服务器的域名,然后输入端口8080来访问tomcat界面:
Change tecadmin.local
与您的服务器 IP 或域或本地主机。
http://tecadmin.local:8080/
您将看到如下页面:
Tomcat Manager App 是与 Tomcat 服务器应用程序打包在一起的 Web 应用程序。 Manager 界面为我们提供了管理已部署的 Web 应用程序所需的基本功能。
Click Manager App
按钮主页或直接输入/manager
在主 Tomcat 服务器的浏览器 url 中访问它。
http://tecadmin.local:8080/manager/
Tomcat Host Manager App 是另一个与 Tomcat 服务器应用程序打包在一起的 Web 应用程序。用于在 Tomcat 服务中创建/删除虚拟主机。虚拟主机允许您在单个服务器上定义多个主机名。
Click Host Manager
按钮主页或直接输入/host-manager
主 Tomcat 服务器中的 url 来访问它。
http://tecadmin.local:8080/host-manager/
结论
恭喜,您在 Debian 系统上拥有了正在运行的 Tomcat 服务器。您可以使用 tomcat 服务器部署基于 Java 的应用程序。
您可能还需要创建Tomcat 中的虚拟主机或使用以下方法保护您的 Tomcat 应用程序让我们加密 SSL 证书.