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 error13如何解决?

    Linux error13通常指“Permission denied”(权限被拒绝)错误,是用户在操作Linux系统时最常遇到的权限问题之一,该错误可能出现在文件访问、命令执行、服务启动等多种场景下,核心原因是当前用户对目标资源(文件、目录、设备等)缺乏足够的操作权限,解决error13需要从权限管理、安全上下……

    2025年9月9日
    7800
  • linux下如何重启网络连接网络连接不上

    Linux 中,可先尝试用 sudo systemctl restart NetworkManager 重启网络服务,若不行再检查网络配置

    2025年8月15日
    8900
  • 2022年4月13日发生了什么大事?

    在Linux系统中,时间戳(Timestamp)是记录时间的常见方式,通常表示自1970年1月1日00:00:00 UTC(协调世界时) 起经过的秒数(或毫秒/纳秒),以下是详细的操作指南和原理说明:时间戳转人类可读日期基本转换(秒级时间戳)date -d @时间戳示例:date -d @1650000000……

    2025年6月17日
    12400
  • Linux如何查看TCP连接状态?

    在Linux系统中,监控和管理TCP连接是网络运维和故障排查的核心技能之一,TCP作为传输层最重要的协议之一,其连接状态直接反映了网络服务的健康度、性能瓶颈以及潜在的安全风险,本文将详细介绍Linux系统中查看TCP连接的多种方法,包括传统工具netstat、现代高效工具ss、进程级查看工具lsof以及内核接口……

    2025年9月19日
    7600
  • 在linux如何关机

    Linux中,可使用命令“sudo shutdown -h now”来关机,sudo

    2025年8月10日
    7500

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信