温馨提示×

centos weblogic安全设置有哪些要点

小樊
45
2025-10-01 01:28:56
栏目: 智能运维

CentOS环境下WebLogic Server安全设置要点

一、CentOS系统级安全基础

  1. 用户与口令强化

    • 禁用不必要的超级用户账户(如通过passwd -l <用户名>锁定admlp等默认账户),删除无用账户;
    • 强化系统口令策略:修改/etc/login.defs设置PASS_MIN_LEN 10(口令最小长度),要求包含大小写字母、数字和特殊字符;使用chattr +i命令锁定/etc/passwd/etc/shadow等口令文件,防止未授权修改;
    • 限制su命令使用:编辑/etc/pam.d/su文件,仅允许wheel组用户切换至root(如auth required pam_wheel.so use_uid);
    • 禁用Ctrl+Alt+Delete重启组合键:编辑/etc/inittab文件,注释ca::ctrlaltdel:/sbin/shutdown -t3 -r now行;
    • 避免登录显示系统信息:编辑/etc/issue文件,移除内核版本、操作系统名称等敏感内容。
  2. 防火墙配置

    • 开放必要端口:使用firewall-cmd --permanent --add-port=7001/tcp(WebLogic默认管理端口)、--add-port=7002/tcp(SSL默认端口)等命令开放WebLogic服务端口;开放SSH(22端口)用于远程管理;
    • 设置严格访问控制:通过firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port port="7001" protocol="tcp" accept'限制仅内网IP可访问WebLogic端口;
    • 重载防火墙规则:执行firewall-cmd --reload使配置生效。

二、WebLogic Server核心安全配置

  1. 安装与基础安全设置

    • 最小化安装:禁用WebLogic示例应用(如examples域),避免暴露敏感代码;禁止使用默认管理员账号weblogic,创建强密码管理员账号(如admin_domain);
    • 更改默认端口:修改WebLogic默认HTTP端口(7001)为非标准端口(如8081),降低端口扫描攻击风险;
    • 目录列表限制:在weblogic.properties文件中设置weblogic.httpd.indexDirectories=false,禁止未指定默认页面时的目录列表访问;
    • 运行模式调整:将WebLogic域运行模式设置为“生产模式”(通过管理控制台Environment > Servers > Server Name > Configuration > General修改),关闭自动部署功能(Auto Deploy设为false),减少未授权部署风险;
    • 进程权限控制:以非root用户(如之前创建的weblogic用户)运行WebLogic进程,避免进程提权攻击。
  2. 认证与权限管理

    • 认证提供者配置:优先使用外部LDAP服务器(如Oracle Internet Directory、Active Directory)作为认证源(通过管理控制台Security Realms > myrealm > Providers > Authentication添加LDAP认证提供者),替代嵌入式LDAP(DefaultAuthenticator),提升用户身份管理的集中性和安全性;若使用嵌入式LDAP,需设置强密码并限制访问权限;
    • 用户与组管理:在LDAP或嵌入式LDAP中创建专用用户组(如weblogic_adminsweblogic_users),将用户分配至对应组;通过管理控制台Security Realms > myrealm > Roles and Policies配置角色映射(如将Admin角色授予weblogic_admins组),实现细粒度权限控制;
    • 身份断言支持:配置Token-based身份断言(如SAML Identity AsserterLDAP X509 Identity Asserter),支持单点登录(SSO)场景,提升用户认证便捷性与安全性(需配合信任的Identity Provider使用)。
  3. SSL/TLS加密配置

    • 密钥库与信任库设置:生成WebLogic身份密钥库(identity.keystore,存储服务器私钥与证书)和信任库(trust.keystore,存储受信任的CA证书);可通过keytool命令生成(如keytool -genkey -alias weblogic -keyalg RSA -keystore identity.keystore -keysize 2048),或导入第三方证书(如Verisign、Entrust);
    • SSL端口配置:通过管理控制台Environment > Servers > Server Name > Configuration > SSL设置SSL监听端口(默认7002),指定身份密钥库路径、密码及信任库信息;
    • SSL模式选择:生产环境推荐使用双向SSL(Two-Way SSL),要求客户端提供有效证书(Two Way Client Cert Behavior设为Client Certs Requested),验证客户端身份;若仅需服务器认证,可使用单向SSL(One-Way SSL)Client Certs Requested设为Not Requested);
    • 高级优化:启用主机名验证(Hostname Verification设为StrictBEA Hostname Verifier),防止SSL中间人攻击;设置导出密钥使用次数(如Exportable Key Usage Count设为1),限制密钥重复使用次数,提升加密安全性。
  4. 审计与日志监控

    • 启用安全审计:通过管理控制台Security Realms > myrealm > Providers > Auditing添加审计提供者(如DefaultAuditor),配置审计级别(如LowMediumHigh),记录用户登录、权限变更、资源访问等操作;
    • 日志配置:开启WebLogic Server日志(Environment > Servers > Server Name > Configuration > Logging),设置日志级别为INFODEBUG,记录用户操作详情(包括账号、时间、IP地址、操作结果);定期归档日志文件(如使用logrotate工具),防止日志被篡改或删除;
    • 实时监控:使用WebLogic管理控制台Monitoring > Logs或第三方工具(如ELK Stack、Splunk)实时分析日志,及时发现异常行为(如频繁登录失败、未授权访问)。
  5. 网络与服务优化

    • 限制套接字数量:通过修改config/config.xml文件中的<socket-maximum-connections>参数,限制WebLogic Server最大打开套接字数(如设为10000),防止拒绝服务攻击(DoS);
    • 关闭不必要的服务:禁用WebLogic Server中未使用的服务(如FTP、Telnet、SNMP),通过管理控制台Environment > Servers > Server Name > Configuration > Services关闭对应服务;
    • 错误页面定制:通过管理控制台Environment > Servers > Server Name > Configuration > Error Pages设置自定义错误页面(如404、500页面),避免暴露服务器内部信息(如堆栈跟踪、系统路径)。

三、持续维护与更新

  • 定期更新补丁:关注Oracle官方安全公告(如My Oracle Support文档),及时下载并安装WebLogic Server和CentOS系统的安全补丁,修复已知漏洞;
  • 备份配置文件:定期备份WebLogic域配置文件(如config/config.xmlsecurity目录)、系统关键配置(如/etc/passwd/etc/shadow),防止配置丢失或被篡改;
  • 应急响应计划:制定安全事件应急响应流程(如入侵检测、漏洞修复、数据恢复),定期进行安全演练,提升应对安全事件的能力。

0