若依(RuoYi)后台管理系统部署后必做的5项安全加固检查避坑指南在企业级后台管理系统的实际部署中安全配置往往成为最容易被忽视的环节。若依(RuoYi)作为国内广泛使用的开源框架其默认配置存在多个需要立即处理的安全隐患。本文将聚焦五个关键风险点提供可立即执行的加固方案。1. 默认接口路径的访问控制部署完成后首先需要检查的是各类管理接口的暴露情况。许多企业遭遇安全事件的原因正是未对以下高危路径做访问限制/prod-api/druid/login.html- Druid监控面板/dev-api/druid/login.html- 开发环境监控入口/admin-api/druid- 常见管理接口前缀加固方案// 在Spring Security配置中添加路径拦截 http.authorizeRequests() .antMatchers(/druid/**).hasRole(ADMIN) .antMatchers(/prod-api/**).authenticated() .antMatchers(/dev-api/**).denyAll();注意同时修改application.yml中的druid.stat-view-servlet.enabled为false可彻底关闭监控面板2. Swagger文档的环境隔离开发阶段常用的Swagger UI接口会暴露完整的API结构和参数信息生产环境必须禁用# application-prod.yml spring: swagger: enabled: false对于必须保留文档的场景建议增加基础认证Bean public SecurityFilterChain swaggerFilterChain(HttpSecurity http) throws Exception { http.securityMatcher(/swagger*/**, /v3/api-docs/**) .authorizeHttpRequests(auth - auth.anyRequest().authenticated()) .httpBasic(withDefaults()); return http.build(); }3. 中间件安全配置Redis防护措施检查redis.conf关键配置项配置项安全值风险说明protected-modeyes禁止外部直接访问requirepass复杂密码避免未授权访问bind内网IP限制访问来源# 通过命令行快速验证 redis-cli -h 127.0.0.1 -a yourpassword --no-auth-warning CONFIG GET requirepassZookeeper加固在zoo.cfg中添加authProvider.1org.apache.zookeeper.server.auth.SASLAuthenticationProvider enforce.auth.enabledtrue enforce.auth.schemessasl4. Shiro密钥修改若依默认使用的rememberMe密钥存在反序列化风险必须立即更换// 在ShiroConfig中重写配置 Bean public RememberMeManager rememberMeManager() { CookieRememberMeManager manager new CookieRememberMeManager(); manager.setCipherKey(Base64.decode(新生成的32位随机密钥)); return manager; }生成新密钥的工具方法byte[] key new byte[32]; new SecureRandom().nextBytes(key); String encodedKey Base64.encodeToString(key);5. 认证体系强化密码策略实施在application.yml中配置ruoyi: password: minLength: 10 maxLength: 20 requireSpecialChar: true requireDigit: true requireUpper: true传输层防护强制HTTPS并启用HSTShttp.requiresChannel() .anyRequest().requiresSecure() .and() .headers() .httpStrictTransportSecurity() .maxAgeInSeconds(31536000) .includeSubDomains(true);登录接口增加图形验证码和限流PostMapping(/login) RateLimiter(value 5, key #username) public AjaxResult login( RequestParam String username, RequestParam String password, RequestParam String captcha) { // 验证逻辑 }持续监控与审计部署完成后建议建立定期检查机制接口扫描每月执行自动化测试nmap -sV --scripthttp-vuln* target_ip日志分析重点关注异常登录尝试SELECT * FROM sys_logininfor WHERE status 1 ORDER BY access_time DESC LIMIT 100;依赖检查保持组件更新dependency groupIdorg.apache.shiro/groupId artifactIdshiro-core/artifactId version1.11.0/version !-- 确保使用最新稳定版 -- /dependency实际运维中发现90%的安全事件都源于未及时修复的已知漏洞。建议将上述检查项纳入部署checklist新系统上线前必须全部验证通过。