Ubuntu还是CentOS?如何选择最佳操作系统版本?

Apache Tomcat 是一款开源的轻量级 Web 应用服务器,广泛用于部署 Java Servlet 和 JSP 项目,在 Linux 系统上部署 Tomcat 可提供稳定高效的运行环境,本文将详细讲解部署流程,涵盖环境准备、安装配置、安全优化及故障排查,确保您快速搭建生产级服务。

  • 硬件:至少 1GB 内存,2GB 磁盘空间。
  • 权限:使用 sudo 权限的账户。
  1. 安装 Java
    Tomcat 依赖 Java 环境,推荐安装 OpenJDK 11:

    sudo apt update && sudo apt install openjdk-11-jdk  # Ubuntu
    # CentOS: sudo yum install java-11-openjdk-devel
    java -version  # 验证安装,输出版本信息即成功

安装 Tomcat

  1. 下载 Tomcat
    访问 Apache Tomcat 官网(确保链接权威性),选择 Tomcat 10.x(稳定版),复制 Binary Distributions → Core 的 tar.gz 链接。

    wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.24/bin/apache-tomcat-10.1.24.tar.gz
  2. 解压与目录配置

    sudo tar -xzvf apache-tomcat-*.tar.gz -C /opt  # 解压到/opt目录
    sudo mv /opt/apache-tomcat-10.1.24 /opt/tomcat  # 重命名为tomcat
  3. 创建专用用户(安全必选)

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

配置与启动

  1. 设置环境变量
    编辑 ~/.bashrc/etc/profile

    export CATALINA_HOME=/opt/tomcat
    export PATH=$PATH:$CATALINA_HOME/bin

    生效配置:source ~/.bashrc

  2. 启动 Tomcat 并测试

    sudo -u tomcat $CATALINA_HOME/bin/startup.sh  # 以tomcat用户启动
    • 访问测试:浏览器输入 http://<服务器IP>:8080,出现 Tomcat 欢迎页即成功。
    • 停止服务:$CATALINA_HOME/bin/shutdown.sh

高级配置

  1. 设为系统服务(开机自启)
    创建服务文件 /etc/systemd/system/tomcat.service

    [Unit]
    Description=Apache Tomcat
    After=network.target
    [Service]
    User=tomcat
    Group=tomcat
    Environment="CATALINA_HOME=/opt/tomcat"
    ExecStart=/opt/tomcat/bin/catalina.sh run
    ExecStop=/opt/tomcat/bin/shutdown.sh
    Restart=on-failure
    [Install]
    WantedBy=multi-user.target

    启用服务:

    sudo systemctl daemon-reload
    sudo systemctl start tomcat
    sudo systemctl enable tomcat
  2. 修改默认端口(可选)
    编辑 /opt/tomcat/conf/server.xml,找到 Connector port="8080",修改端口(如 808080)。

  3. 防火墙放行端口

    sudo ufw allow 8080/tcp  # Ubuntu
    # CentOS: sudo firewall-cmd --permanent --add-port=8080/tcp && firewall-cmd --reload

安全加固

  1. 管理后台安全

    • 删除默认用户:注释 /opt/tomcat/conf/tomcat-users.xml 中的示例账户。
    • 自定义强密码账户:
      <user username="admin" password="YourStrongPassword!" roles="manager-gui,admin-gui"/>
  2. 禁用未用功能
    删除 /opt/tomcat/webapps 下的默认应用(如 docsexamples),减少攻击面。

  3. 定期更新
    通过 Apache 官网 关注安全公告,及时升级版本。


常见问题解决

  • 端口冲突
    使用 netstat -tuln | grep 8080 检查占用,修改 server.xml 中的端口。
  • 权限错误
    确保 /opt/tomcat 所属用户为 tomcat,执行 sudo chmod -R u+x /opt/tomcat/bin
  • 无法访问管理页面
    检查 manager-gui 角色是否分配,或 IP 限制(配置 Contextallow 属性)。

通过上述步骤,您已在 Linux 上完成 Tomcat 的标准化部署与安全加固,建议结合 Nginx 反向代理提升性能,并定期备份 confwebapps 目录,实践时请严格遵循官方文档,确保生产环境稳定性。

引用说明

  • Apache Tomcat 官方文档:https://tomcat.apache.org/tomcat-10.1-doc/
  • OpenJDK 安装指南:https://openjdk.org/install/
  • Linux 系统服务配置:https://www.freedesktop.org/software/systemd/man/systemd.service.html

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

(0)
酷番叔酷番叔
上一篇 2025年7月25日 07:17
下一篇 2025年7月25日 07:34

相关推荐

  • 如何查看和修改Linux文件夹权限?

    在Linux系统中,文件夹权限是保障系统安全和数据访问控制的核心机制,通过设置权限可以决定不同用户对文件夹的读取、写入和执行权限,本文将详细介绍Linux文件夹权限的基础概念、查看方法、修改命令及注意事项,帮助用户全面掌握权限管理操作,Linux文件夹权限基础Linux文件夹权限分为三类,分别对应不同用户身份……

    2025年9月13日
    7600
  • Linux中如何删除同一用户组的多个文件?

    在Linux系统中,文件和目录的访问权限管理是系统安全的核心之一,而用户组(Group)作为权限管理的基础单元,常用于批量管理具有相同访问需求的文件,当需要删除同一用户组的文件时,需结合文件属性查询、批量筛选及安全删除操作,确保操作精准且避免误删,本文将详细讲解Linux中删除同一group文件的完整流程、关键……

    2025年8月25日
    6900
  • Linux中如何修改hostname主机名?

    在Linux系统中,hostname(主机名)是用于标识网络中设备的唯一名称,它不仅方便用户识别和管理服务器,还在网络通信、日志记录等服务中起到关键作用,正确修改hostname需要区分临时修改和永久修改,并根据不同的Linux发行版调整操作步骤,同时需注意与hosts文件的关联配置,避免导致网络解析异常,ho……

    2025年10月1日
    7700
  • Linux内存寻址的核心机制与实现流程是怎样的?

    Linux系统的寻址机制是其内存管理的核心,通过虚拟内存技术实现了对物理内存的高效、安全调度,这一过程涉及物理地址、虚拟地址、内存管理单元(MMU)以及页表等多个关键组件的协同工作,下面将从基础概念到具体实现逐步解析Linux的寻址原理,物理地址与虚拟地址:寻址的基础物理地址是内存硬件的实际地址,由内存控制器直……

    2025年9月16日
    8100
  • Linux VPS如何登录?新手入门详细步骤与操作技巧全攻略

    登录Linux VPS(虚拟专用服务器)是进行服务器管理的基础操作,通常通过SSH(Secure Shell)协议实现安全远程连接,本文将详细介绍登录Linux VPS的完整流程、不同场景下的操作方法、安全配置建议及常见问题排查,帮助用户顺利完成连接并保障服务器安全,登录前的准备工作在尝试登录Linux VPS……

    2025年9月27日
    7100

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信