温馨提示×

Ubuntu Tomcat配置有哪些要点

小樊
45
2025-12-19 01:17:35
栏目: 智能运维

Ubuntu 上 Tomcat 配置要点

一 安装与运行方式

  • 选择安装路径
    • 包管理安装:使用 APT 安装系统自带的 tomcat9/tomcat9-admin,配置集中、易维护,适合生产。
    • 手动安装:从 Apache Tomcat 官网下载压缩包,解压到 /opt 等目录,灵活可控,便于多版本并存与升级。
  • 基础命令
    • 包管理:sudo systemctl start|stop|restart|status tomcat9
    • 手动:在 $CATALINA_HOME/bin 下执行 startup.sh / shutdown.sh
  • 验证
    • 访问 http://服务器IP:8080,出现欢迎页即表示运行正常。

二 目录结构与配置文件

  • 包管理安装(APT)
    • 配置:/etc/tomcat9/(核心配置)、/etc/default/tomcat9(环境变量与 JVM 参数)
    • 应用:/var/lib/tomcat9/webapps/
    • 日志:/var/log/tomcat9/
  • 手动安装(压缩包)
    • 配置:$CATALINA_HOME/conf/server.xml$CATALINA_HOME/conf/tomcat-users.xml
    • 应用:$CATALINA_HOME/webapps/
    • 日志:$CATALINA_HOME/logs/
  • 关键配置项
    • server.xml:HTTP/HTTPS 连接器端口(默认 8080)、线程、SSL 等
    • tomcat-users.xml:管理界面用户与角色(manager-gui、admin-gui)
    • 环境变量:JAVA_HOMECATALINA_HOMECATALINA_BASEJAVA_OPTS/CATALINA_OPTS

三 服务管理与自启动

  • 包管理安装
    • 使用 systemd 管理:sudo systemctl enable --now tomcat9
    • 修改配置后执行:sudo systemctl daemon-reload
  • 手动安装
    • 建议创建 systemd 服务单元(/etc/systemd/system/tomcat.service),示例关键项:
      • Type=forking,ExecStart=$CATALINA_HOME/bin/startup.sh,ExecStop=$CATALINA_HOME/bin/shutdown.sh
      • 设置运行用户(如 tomcat:tomcat)、环境变量(JAVA_HOME、CATALINA_HOME、CATALINA_BASE、JAVA_OPTS、CATALINA_OPTS)
      • 启用开机自启:sudo systemctl enable --now tomcat
  • 常用运维
    • 查看状态/日志:systemctl status tomcat;tail -f catalina.out

四 端口与防火墙

  • 修改端口
    • 编辑 server.xml 中的 Connector(HTTP 默认 8080;HTTPS 常用 8443),保存后重启服务。
  • 外部访问
    • 启用防火墙放行端口(以 ufw 为例):sudo ufw allow 8080/tcp;如需 HTTPS:sudo ufw allow 8443/tcp

五 JVM 内存与 HTTPS 及安全加固

  • JVM 内存与通用参数
    • /etc/default/tomcat9(APT)或 setenv.sh(手动)中设置:
      • JAVA_OPTS:如 -Djava.awt.headless=true-Djava.security.egd=file:/dev/./urandom
      • CATALINA_OPTS:如 -Xms512M -Xmx1024M -server -XX:+UseParallelGC
  • 启用 HTTPS
    • server.xml 配置 8443 连接器并启用 SSLEnabled=true,配置证书与密钥路径,重启生效。
  • 管理界面与用户
    • 安装管理组件(APT):sudo apt-get install tomcat9-admin
    • tomcat-users.xml 添加用户与角色(示例:manager-gui、admin-gui),注意强口令与最小权限。
  • 运行用户与权限
    • 建议创建专用系统用户 tomcat,将 $CATALINA_HOME 属主设为 tomcat:tomcat,必要时对 logs/、work/、temp/、webapps/ 赋予组写权限,避免以 root 运行。
  • 日志与合规
    • 若出现日志权限问题,可调整 umask(如在 catalina.sh 中设置 umask 0022)或修正日志目录权限,确保可写可读。

0