当前位置:首页 > 问答 > 正文

Java部署 服务器搭建:如何在CentOS上成功搭建Java Web服务器?

🌐 CentOS上部署Java Web服务器全攻略:从零到上线手把手教学

(信息来源:2025年8月最新技术文档)

📌 场景引入:小白的紧急任务

"叮——" 凌晨2点,你被钉钉消息炸醒。
「明天客户要验收项目,Java后端必须部署到生产服务器!」
你看着笔记本上跑得好好的Spring Boot应用,再看看空荡荡的服务器列表——
CentOS 8系统、JDK、Tomcat、防火墙... 一连串问号在头顶旋转。
别慌!这篇教程带你用🔥最火配置+🛡️企业级安全策略,30分钟搞定Java Web服务器搭建!

🛠️ 第一步:选对系统,避开大坑

⚠️ 警惕!CentOS 8已停服

根据2025年5月腾讯云公告,CentOS 8在2024年6月30日已结束维护
🔧 替代方案推荐

  • 💼 企业级首选:Rocky Linux 9.3(原CentOS团队维护,100%兼容RHEL)
  • 🌐 云服务器优化:Alibaba Cloud Linux 3(阿里云深度定制,5年免费支持)
  • 🆓 开源爱好者:Ubuntu 24.04 LTS(Debian系,容器友好)

快速安装命令(以Rocky Linux为例):

# 配置国内镜像源加速
sudo sed -i 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/CentOS-*
sudo sed -i 's|#baseurl=http://mirror.centos.org|baseurl=https://mirrors.aliyun.com|g' /etc/yum.repos.d/CentOS-*
# 更新系统并安装基础工具
sudo dnf update -y
sudo dnf install -y vim wget curl

🚀 第二步:安装JDK 21(LTS长期支持版)

📅 2025年8月最新动态

Oracle官方确认:JDK 21为LTS版本,提供至少8年技术更新
🔗 下载地址JDK 21.0.8 LTS

企业级部署脚本

Java部署 服务器搭建:如何在CentOS上成功搭建Java Web服务器?

# 下载JDK并解压
wget https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz
sudo tar -zxvf jdk-21_linux-x64_bin.tar.gz -C /usr/local/
# 配置环境变量
echo 'export JAVA_HOME=/usr/local/jdk-21
export PATH=$JAVA_HOME/bin:$PATH' | sudo tee /etc/profile.d/java.sh > /dev/null
source /etc/profile
# 验证安装
java -version

🔥 第三步:部署Tomcat 10.1.x(Jakarta EE规范)

⚠️ 重要提示

Tomcat 10+已切换至Jakarta EE 10规范,旧版Java EE应用需转换!
🛠️ 自动转换工具

Java部署 服务器搭建:如何在CentOS上成功搭建Java Web服务器?

# 下载迁移工具
wget https://downloads.apache.org/tomcat/tomcat-10/v10.1.44/bin/apache-tomcat-10.1.44.tar.gz
tar -zxvf apache-tomcat-10.1.44.tar.gz
cd apache-tomcat-10.1.44/bin
# 执行Java EE转Jakarta EE
./javaee-to-jakartaee-converter.sh /path/to/your/webapp.war

服务化配置

# 创建系统服务
sudo cp /opt/tomcat/apache-tomcat-10.1.44/bin/catalina.sh /etc/init.d/tomcat
sudo sed -i 's|# chkconfig:|# chkconfig: 2345 80 20|g' /etc/init.d/tomcat
sudo systemctl daemon-reload
# 启动服务
sudo systemctl start tomcat
sudo systemctl enable tomcat

🔒 第四步:企业级安全加固

🛡️ 2025年安全最佳实践(参考MITRE ATT&CK框架)

防火墙配置
# 开放80/443端口,关闭其他端口
sudo firewall-cmd --permanent --add-service={http,https}
sudo firewall-cmd --permanent --remove-service={ssh,mysql}  # 关闭默认服务
sudo firewall-cmd --reload
SSH硬核防护
# 修改SSH端口为高位数(如65022)
sudo sed -i 's|#Port 22|Port 65022|g' /etc/ssh/sshd_config
# 禁用root登录和密码认证
sudo sed -i 's|#PermitRootLogin yes|PermitRootLogin no|g' /etc/ssh/sshd_config
sudo sed -i 's|#PasswordAuthentication yes|PasswordAuthentication no|g' /etc/ssh/sshd_config
sudo systemctl restart sshd
部署Fail2Ban防暴力破解
sudo dnf install -y fail2ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo sed -i 's|bantime = 600|bantime = 86400|g' /etc/fail2ban/jail.local  # 封禁24小时
sudo systemctl start fail2ban
sudo systemctl enable fail2ban

🚨 第五步:部署你的Java应用

打包WAR文件

Maven项目执行:

mvn clean package -DskipTests
上传并部署
# 上传WAR到Tomcat的webapps目录
scp target/your-app.war root@服务器IP:/opt/tomcat/webapps/
# 验证部署
curl http://localhost:8080/your-app/

✅ 最终验证

访问 http://服务器IP:8080/your-app/,看到熟悉的首页?
恭喜!你的Java Web服务器已成功上线!🎉

关键步骤清单

  1. 🛑 弃用CentOS 8,改用Rocky Linux/Alibaba Cloud Linux
  2. 🔧 安装JDK 21 LTS,配置环境变量
  3. 📦 部署Tomcat 10.1.x,处理Java EE兼容性
  4. 🔒 实施防火墙+SSH硬化+Fail2Ban三重防护
  5. 🚀 发布WAR包并验证访问

最后提醒:定期执行 sudo dnf update -y 更新补丁,让服务器永葆青春!💪

Java部署 服务器搭建:如何在CentOS上成功搭建Java Web服务器?

发表评论