在 Linux 上配置 Node.js 的步骤如下:
使用 NodeSource 二进制分发库
- 更新系统包:确保系统包是最新的。
- 安装 NodeSource 库:选择并安装特定版本的 Node.js。例如,安装 Node.js 14.x 的命令如下:
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
- 验证安装:使用以下命令验证 Node.js 和 npm 是否安装成功:
node -v
npm -v
使用 nvm(Node Version Manager)
- 安装 nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
- 加载 nvm:将以下内容添加到
~/.bashrc
, ~/.zshrc
或 ~/.profile
文件中,然后重新加载配置文件:
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
- 安装 Node.js:使用 nvm 安装特定版本的 Node.js:
nvm install 14
- 使用特定版本:切换到安装的版本:
nvm use 14
安全配置建议
- 验证和清理用户输入:使用库如 DOMPurify、express-validator 和 XSS-filters 自动化验证过程,防止 XSS、SQL 注入和命令注入攻击。
- 实施强身份验证和授权:使用 bcrypt 或 scrypt 等安全密码哈希算法,实施多重身份验证 (MFA) 和单点登录 (SSO),限制失败的登录尝试。
- 保持依赖关系更新和安全:定期使用
npm audit
和 npm outdated
检查并更新依赖项,使用 Snyk 等工具监控依赖项的安全性。
- 确保安全反序列化:实施完整性和用户身份验证检查,清理反序列化数据,使用 jsonwebtoken 等库安全地处理 JSON Web Token。
- 避免暴露太多的错误:使用 catch 子句包裹路由,返回通用错误消息,使用 Bunyan 等日志库安全地记录错误消息。
- 设置日志记录和监控:使用 Bunyan 和 Toobusy-js 等模块实现日志记录,与监控工具如 New Relic 或 Datadog 集成。
- 以非 Root 权限运行 Node.js:创建一个具有最低权限的新用户来运行 Node.js 进程。
以上步骤和建议可以帮助你在 Linux 上安全地配置 Node.js,并确保你的应用程序具有良好的安全性能。