前言
Tomcat是一个流行的Java Servlet容器,用于开发和部署Java Web应用程序。本文将介绍如何在CentOS操作系统上安装与移除Tomcat,并提供了逐步说明以及相关命令。读者需要具备一定的Linux基础知识,如使用命令行工具等。
安装前置条件
在开始安装Tomcat之前,请确保您已满足以下条件:
- 已经使用root用户登录到您的CentOS
- 您已经安装了JDK8或更高版本。如果您没有安装Java,可以参考我们的另一篇《2023年度Linux系统安装与移除JDK保姆级教程》
步骤一:下载Tomcat
首先,我们需要去官网上下载 Tomcat 的二进制文件。
您可以使用如下命令:
wget https://archive.apache.org/dist/tomcat/tomcat-7/v7.0.78/bin/apache-tomcat-7.0.78.tar.gz
或者使用我给的压缩包使用SecureFX传输到虚拟机指定目录中
123网盘点击直达
步骤二:解压安装包
下载完毕后,使用以下命令解压 Tomcat:
tar -zxvf apache-tomcat-7.0.78.tar.gz -C /usr/local
具体而言:
-
tar
命令是 Linux/Unix 下的打包工具,用于将多个文件或目录打包成一个文件; -
-zxvf
是 tar 命令的选项,其中-z
表示使用 gzip 压缩格式,-x
表示解压缩,-v
表示显示详细信息,-f
指定要操作的文件; -
apache-tomcat-7.0.78.tar.gz
是要解压缩的文件名; -
-C /usr/local
表示将解压缩后的内容放在/usr/local
目录下。
因此,这个命令会将 apache-tomcat-7.0.78.tar.gz
解压缩为一个 apache-tomcat-7.0.78
目录,并将该目录中的所有文件和子目录解压缩到 /usr/local/apache-tomcat-7.0.78
目录下。
步骤三:启动Tomcat
现在我们已经成功安装了 Tomcat。要启动Tomcat,请先进入Tomcat的bin目录,然后运行 startup.sh
脚本:
cd /usr/local/apache-tomcat-7.0.78/bin
./startup.sh
这两条命令的作用是启动 Apache Tomcat 服务器。具体而言:
-
cd /usr/local/apache-tomcat-7.0.78/bin
进入 Apache Tomcat 服务器的 bin 目录,其中cd
命令是 Linux/Unix 下的切换目录命令; -
./startup.sh
启动 Apache Tomcat 服务器,其中./
表示当前目录下,.sh
表示 Shell 脚本文件。
此时Tomcat将开始启动。您可以使用以下命令检查Tomcat是否正在运行:
ps -ef | grep tomcat
如果您看到以下输出,就说明Tomcat正在运行:
root 2622 1 1 21:41 pts/0 00:00:05 /usr/local/jdk1.8/bin/java -Djava.util.logging.config.file=/usr/local/apache-tomcat-7.0.78/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.endorsed.dirs=/usr/local/apache-tomcat-7.0.78/endorsed -classpath /usr/local/apache-tomcat-7.0.78/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.78/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/apache-tomcat-7.0.78 -Dcatalina.home=/usr/local/apache-tomcat-7.0.78 -Djava.io.tmpdir=/usr/local/apache-tomcat-7.0.78/temp org.apache.catalina.startup.Bootstrap start
root 2664 1034 0 21:48 pts/0 00:00:00 grep --color=auto tomcat
如果 Tomcat 进程没有运行,则不会输出任何信息。
步骤四:开启防火墙端口
默认情况下,Tomcat使用8080端口。在Linux系统中,默认情况下防火墙是开启的并且对所有端口关闭访问权限。如果您想要能够从远程计算机通过浏览器访问Tomcat的默认页面,就需要在防火墙中开通Tomcat监听的端口(即8080端口)。
您可以使用如下命令来打开Tomcat的端口:
firewall-cmd --zone=public --add-port=8080/tcp --permanent
这将在防火墙中永久添加对8080端口的允许访问规则,以便您可以通过浏览器访问Tomcat的默认页面。然后,使用以下命令重新加载防火墙规则,使新的规则生效:
firewall-cmd --reload
现在,您就可以在浏览器中输入服务器的 IP 地址和 Tomcat 默认的端口号 8080 来访问Tomcat的默认页面了:
http://your_server_ip:8080/
在某些 Linux 系统中,防火墙配置可能是通过 /etc/sysconfig/iptables
文件进行的。因此,您可以通过编辑该文件来达到类似于上述命令的效果,即添加允许外部计算机访问当前机器上的 Tomcat 服务器的规则。
具体而言,您可以通过以下步骤实现:
- 打开
/etc/sysconfig/iptables
文件并编辑它:
vi /etc/sysconfig/iptables
- 在文件中添加相应的规则,例如:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
这条规则表示允许访问 8080 端口的 TCP 连接。请注意,具体的规则可能因系统版本和配置而异。
- 保存并退出文件。
- 重新启动 iptables 服务以使更改生效:
systemctl restart iptables.service
完成上述操作后,外部计算机应该能够通过访问当前机器的 IP 地址和端口号(例如 http://192.168.1.2:8080
)来访问运行在当前机器上的 Tomcat 服务器了。
我要在liunx使用tomcat服务,就要在防火墙中开通tomcat的默认端口,让他能通过防火墙;
打个比喻:将防火墙想象成一个居民小区的门卫,而开启端口就相当于将小区门卫允许进入的人员类型进行了扩大。例如,原本只允许小区的住户和访客进入,现在开启了某个端口,相当于允许外部的快递员或者送水工人进入小区。但是,这需要在保证小区安全的前提下进行,比如要求快递员或送水工人出示身份证明并进行登记等措施来确保小区的安全性。同样地,在开启端口时,需要进行相应的安全措施,如限制IP地址范围、设置访问密码等,以确保服务器的安全性;
我的理解是开个端口就能通过,那么我直接关闭防火墙,这样什么都能通过了,tomcat也就能通过,但是每次开机都要关闭防火墙,那么我直接开机自动关闭防火墙再次使用启动tomcat服务的命令也能达到使用Tomcat服务的效果通过浏览器访问Tomcat的默认页面。
实操后确实能达到这种效果
防火墙的命令这里就不演示了;想了解的可以看一下之前我写的《Linux Centos7防火墙详解》
然而,直接关掉防火墙或任意开放端口,则等同于撤职小区的门卫,
确实可以通过关闭防火墙的方式来使Tomcat服务能够通过浏览器访问。但是这么做存在很大的安全隐患,因为开启防火墙可以保护未经授权的访问进入您的系统,而关闭防火墙则意味着您放弃了这种保护,从而为攻击者提供了攻击您的服务器的机会。
在实际生产环境中,一般是开启防火墙,只对外开放特定的端口。
因此,我建议您可以掌握这种方法但是不要采用关闭防火墙的方式来使用Tomcat服务。
查看Tomcat日志
- 进入Tomcat日志目录。
cd /usr/local/tomcat/logs/
- 查看catalina.out文件的内容。
tail -f catalina.out
移除tomcat
查看 Tomcat 进程。
ps -ef | grep tomcat
使用 kill
命令杀死进程
kill -9 端口号
再次查看 Tomcat 进程
发现该服务已经停止,且 8080 端口无法访问。
删除之前解压缩的 Tomcat 文件。
rm -rf 文件路径
文章到此结束🕵️♂️🕵️♂️🕵️♂️