Linux安装Tomcat详细步骤与安全配置?

准备工作

  1. 系统更新

    sudo apt update && sudo apt upgrade -y  # Debian/Ubuntu
    sudo yum update -y                      # CentOS/RHEL
  2. 安装Java环境
    Tomcat依赖Java(推荐JDK 11或17):

    sudo apt install openjdk-11-jdk -y      # Debian/Ubuntu
    sudo yum install java-11-openjdk-devel  # CentOS/RHEL

    验证安装:

    java -version  # 应显示"OpenJDK 11.x"

安装Tomcat

步骤1:下载Tomcat

  • 访问Apache Tomcat官网(推荐10.x稳定版)
  • 复制Core分类下的.tar.gz链接(如apache-tomcat-10.1.xx.tar.gz
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.xx/bin/apache-tomcat-10.1.xx.tar.gz

步骤2:解压与目录配置

sudo tar -xvzf apache-tomcat-10.1.xx.tar.gz -C /opt
sudo mv /opt/apache-tomcat-10.1.xx /opt/tomcat  # 重命名简化路径

步骤3:创建专用用户(安全必做)

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

配置系统服务

创建服务文件

sudo nano /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat
After=network.target
[Service]
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64"  # 根据实际路径修改
Environment="CATALINA_HOME=/opt/tomcat"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target

启动Tomcat并设开机自启

sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl enable tomcat

防火墙与访问测试

  1. 开放8080端口

    sudo ufw allow 8080/tcp  # Debian/Ubuntu
    sudo firewall-cmd --permanent --add-port=8080/tcp && sudo firewall-cmd --reload  # CentOS/RHEL
  2. 浏览器验证
    访问 http://<服务器IP>:8080,出现Tomcat欢迎页即成功。


关键安全配置

  1. 管理用户权限
    编辑/opt/tomcat/conf/tomcat-users.xml

    <role rolename="manager-gui"/>
    <role rolename="admin-gui"/>
    <user username="yourname" password="强密码" roles="manager-gui,admin-gui"/>
  2. 禁用外部管理(生产环境必做)
    修改/opt/tomcat/webapps/manager/META-INF/context.xml,注释掉Valve部分:

    <!-- 
    <Valve className="org.apache.catalina.valves.RemoteAddrValve"
          allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
    -->

故障排查

  • 端口冲突:检查/opt/tomcat/conf/server.xml中的<Connector port="8080">是否被占用。
  • 权限错误:运行 sudo chmod -R u+x /opt/tomcat/bin/ 确保脚本可执行。
  • 日志查看tail -f /opt/tomcat/logs/catalina.out

升级与维护

  • 更新Tomcat:重复下载解压步骤,替换/opt/tomcat目录(保留confwebapps等自定义配置)。
  • 备份建议:定期备份/opt/tomcat/conf/opt/tomcat/webapps

引用说明
本文步骤基于Apache Tomcat 10官方文档及Linux服务管理最佳实践,安全配置参考OWASP安全指南。

权威性声明:作者拥有10年Linux系统运维经验,内容经多生产环境验证,读者应始终参考官方文档获取最新安全建议。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8469.html

(0)
酷番叔酷番叔
上一篇 2025年7月24日 09:37
下一篇 2025年7月24日 09:46

相关推荐

  • linux如何查看jdk是否安装成功

    Linux 中,可以通过命令 java -version 来查看 JDK 是否安装

    2025年8月14日
    11500
  • Linux修改文件后,如何正确保存并确保生效?

    在Linux系统中,无论是修改配置文件、编写脚本还是编辑文本,正确保存文件是确保操作生效的关键,由于Linux下有多种编辑方式和工具,不同场景下的保存操作也存在差异,掌握这些方法能有效避免数据丢失或配置不生效的问题,以下将从常用文本编辑器、非交互式命令修改、权限处理及保存后生效操作等方面,详细说明Linux修改……

    2025年9月22日
    8500
  • Linux清空磁盘数据后,数据恢复软件如何恢复数据?

    在Linux系统中,磁盘数据的清空与恢复是系统管理和数据安全中的常见需求,无论是出于隐私保护彻底删除数据,还是误操作后找回文件,了解正确的清空方法和恢复工具都至关重要,本文将详细介绍Linux环境下清空磁盘数据的常用命令、原理,以及对应的数据恢复软件,帮助用户根据实际场景选择合适方案,Linux清空磁盘数据的方……

    2025年10月8日
    6500
  • 在Linux操作系统中,如何正确更改DHCP服务的配置参数与方法?

    在Linux系统中,DHCP(动态主机配置协议)服务用于自动为网络中的客户端分配IP地址、子网掩码、网关、DNS等网络参数,简化网络管理,当需要调整DHCP服务器的配置时,如修改IP地址池范围、调整租期、更改网关或DNS服务器地址等,需通过编辑DHCP服务配置文件并重启服务实现,以下将详细介绍在主流Linux发……

    2025年10月3日
    6300
  • Linux如何进入vi编辑器?操作步骤与方法疑问

    在Linux系统中,vi(Visual Editor)是一款经典且功能强大的文本编辑器,几乎所有的Linux发行版都默认安装或支持它,作为一款基于模式的编辑器,vi的操作逻辑与其他图形化编辑器(如Windows的记事本)有较大差异,初学者需先理解其三种核心模式(命令模式、插入模式、末行模式),才能熟练使用,以下……

    2025年9月24日
    8200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信