linux

Node.js在Linux上如何安全配置

小樊
36
2025-08-07 10:21:49
栏目: 编程语言

以下是Node.js在Linux上的安全配置要点:

  1. 系统权限管理

    • 使用非root用户运行Node.js应用,通过adduser创建专用用户并配置sudo权限。
    • 限制文件目录权限,日志文件仅允许应用用户读写,使用chmod 640设置权限。
  2. 依赖与版本控制

    • nvm管理Node.js版本,避免全局安装模块时的权限问题。
    • 定期通过npm auditnpm outdated检查依赖漏洞,更新至安全版本。
  3. 网络安全配置

    • 启用HTTPS,使用Let’s Encrypt生成SSL证书,配置https模块加密传输。
    • 配置防火墙(如firewalld/ufw)仅开放必要端口(如80、443),关闭默认未使用端口。
    • 限制应用访问IP,通过中间件过滤非法请求源。
  4. 应用层安全加固

    • 输入验证:使用express-validator等库过滤用户输入,防止SQL注入、XSS攻击。
    • 安全HTTP头:通过Helmet中间件设置X-Frame-OptionsContent-Security-Policy等。
    • 禁用危险模块:避免使用eval(),限制对敏感核心模块的访问。
  5. 日志与监控

    • 日志文件按天轮转,保留14天,使用logrotate工具管理,权限设为640
    • 监控异常日志,通过pm2等工具记录应用运行状态,及时发现入侵迹象。
  6. 系统级安全增强

    • 启用SELinux限制应用权限,配置httpd_can_network_connect策略(如需网络访问)。
    • 定期备份应用数据和配置文件,存储至安全路径。

参考来源:[1,2,3,4,5,6,7,8,9,10,11]

0
看了该问题的人还看了