CentOS 上配置 WebLogic 安全策略
一 操作系统与网络加固
- 创建专用系统账号与目录权限:使用非 root 账号运行 WebLogic,避免权限过高;将域目录属主设为该账号,仅授予必要权限。示例:
groupadd weblogic、useradd -g weblogic weblogic、chown -R weblogic:weblogic /u01/domains。
- 防火墙最小暴露面:仅开放必要端口(管理端口、应用端口、节点管理器端口按需),其余默认拒绝。示例:
firewall-cmd --zone=public --add-port=7001/tcp --permanent && firewall-cmd --reload。
- 禁用不必要服务与功能:如未使用 NFS 则收紧
/etc/exports;限制 root 直连与特权命令使用;必要时启用 SELinux 并设为 enforcing。
- 系统登录安全:禁止 root SSH 登录、启用密钥认证、设置登录超时(如
TMOUT=300)、限制 su 使用组。
以上措施能显著降低操作系统层面的攻击面,为 WebLogic 安全策略提供稳固底座。
二 WebLogic 身份与访问控制
- 运行模式与自动部署:将域设置为生产模式并关闭自动部署,减少被恶意上传与执行的风险。
- 强口令与账户锁定:在控制台设置口令最小长度(如至少8位)与复杂度,启用账户锁定(如连续失败10次锁定5分钟),防止暴力破解。
- 用户、组与角色:在 Security Realms > myrealm 中创建业务用户/组,基于角色实施细粒度授权;可通过控制台或 WLST 批量编排用户与权限。
- 会话与超时:配置控制台与应用的会话超时,及时回收空闲会话,降低会话劫持风险。
- 目录浏览与信息泄露:在应用的 weblogic.xml 中关闭目录列表(
<index-directory-enabled>false</index-directory-enabled>),避免暴露目录结构。
- 连接与资源控制:在服务器 Tuning 中设置 Maximum Open Sockets(如不超过1024),缓解资源耗尽与 DoS 风险。
上述配置覆盖身份鉴别、授权、会话与资源控制的关键环节,是生产环境的基本防线。
三 传输与应用层安全
- 启用 SSL/TLS:为管理通道与应用通道配置 HTTPS 监听,使用权威 CA 或企业 CA 签发的证书;在 WebLogic 中完成密钥库/信任库配置、监听端口启用与协议/套件约束。
- 传输与消息级安全选型:对外服务优先采用 Transport-Level Security(SSL/TLS) 保护通道机密性与完整性;若需端到端与细粒度控制,可叠加 Message-Level Security(签名/加密);仅做访问控制不足以保护传输中的数据。
- 禁用服务器标识泄露:关闭发送 Server 标头与版本号,减少指纹识别与针对性攻击面。
通过传输加密与应用层安全组合,可同时满足机密性、完整性与合规审计要求。
四 Java Security Manager 与最小权限策略
- 启用 Java Security Manager:在启动脚本中加入
-Djava.security.manager -Djava.security.policy=/path/weblogic.policy,以策略文件约束代码权限。
- 策略文件要点:以 WL_HOME/server/lib/weblogic.policy 为起点按需增删权限;若启用安全管理器但未指定策略文件,将使用 $JAVA_HOME/jre/lib/security/java.policy 的默认策略。
- 典型最小权限示例(需结合实际调整,避免过宽):
permission java.util.PropertyPermission "*", "read";
permission java.lang.RuntimePermission "*";
permission java.io.FilePermission "<<ALL FILES>>", "read,write";
permission javax.management.MBeanPermission "*", "*";
- 变更与补丁:应用补丁后若引入新代码或系统权限需求,需同步更新策略文件,确保启动与部署不受影响。
Java Security Manager 能在 JVM 层提供“默认拒绝”的沙箱能力,是纵深防御的重要一环。
五 审计日志与持续运维
- 启用审计与登录审计:在 Security Realms 启用审计 Provider,记录关键操作与登录成功/失败、时间、来源 IP 等,用于合规与溯源。
- 服务器与应用日志:在控制台为各 Server 配置访问与应用日志,集中采集并保留足够周期;对异常登录、权限变更、部署行为进行告警。
- 变更与补丁管理:定期更新 WebLogic 与 JDK 安全补丁,回归测试安全策略有效性;对防火墙、SSL/TLS 配置与策略文件变更执行变更评审与回滚预案。
持续审计与及时修补能快速发现异常并缩小暴露窗口,是安全策略长期有效的保障。