插件窝 干货文章 命令行操作Linux服务器:确保安全的最佳做法

命令行操作Linux服务器:确保安全的最佳做法

sudo bash SSH 使用 620    来源:    2025-04-12

命令行操作Linux服务器的安全最佳实践

1. 身份验证安全

SSH密钥认证

  • 禁用密码登录,使用SSH密钥对认证:

    sudo sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
    sudo systemctl restart sshd
    
  • 使用强密钥(至少4096位RSA或Ed25519):

    ssh-keygen -t ed25519 -a 100  # 或 ssh-keygen -t rsa -b 4096
    

多因素认证

  • 配置Google Authenticator: bash sudo apt install libpam-google-authenticator google-authenticator # 然后在/etc/pam.d/sshd添加: auth required pam_google_authenticator.so

2. 访问控制

最小权限原则

  • 使用sudo而非直接root登录:

    sudo visudo
    # 添加:username ALL=(ALL:ALL) ALL
    
  • 限制sudo命令范围(如仅允许特定命令):

    username ALL=(ALL) NOPASSWD: /usr/bin/apt update, /usr/bin/apt upgrade
    

防火墙配置

  • 使用UFW或firewalld: bash sudo ufw allow ssh sudo ufw enable

3. 会话安全

SSH配置加固

  • 修改默认端口并限制访问:

    sudo sed -i 's/#Port 22/Port 2222/' /etc/ssh/sshd_config
    sudo ufw allow 2222/tcp
    
  • 限制root登录和用户访问:

    echo "PermitRootLogin no" | sudo tee -a /etc/ssh/sshd_config
    echo "AllowUsers username" | sudo tee -a /etc/ssh/sshd_config
    

会话超时

  • 设置闲置超时: bash echo "export TMOUT=300" | sudo tee -a /etc/profile # 300秒=5分钟

4. 操作审计

日志记录

  • 启用详细日志:

    echo "LogLevel VERBOSE" | sudo tee -a /etc/ssh/sshd_config
    
  • 安装并配置auditd:

    sudo apt install auditd
    sudo auditctl -a always,exit -F arch=b64 -S execve
    

命令历史

  • 保留完整历史记录: bash echo 'export HISTTIMEFORMAT="%F %T "' >> ~/.bashrc echo 'export HISTSIZE=10000' >> ~/.bashrc echo 'export HISTFILESIZE=10000' >> ~/.bashrc

5. 安全工具

入侵检测

  • 安装AIDE(高级入侵检测环境): bash sudo apt install aide sudo aideinit sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db

定期检查

  • 设置cron作业进行安全检查: bash (crontab -l ; echo "0 3 * * * /usr/bin/aide --check") | crontab -

6. 应急措施

断开连接

  • 快速终止所有SSH会话: bash sudo pkill -u username sshd

锁定账户

  • 紧急锁定账户: bash sudo passwd -l username

7. 最佳实践

  1. 永远不要在生产环境直接使用root账户
  2. 使用tmuxscreen保持会话,避免网络中断导致操作中断
  3. 敏感操作前创建快照或备份
  4. 使用--dry-run参数测试破坏性命令
  5. 遵循"三思而后敲回车"原则

通过实施这些措施,您可以显著提高通过命令行操作Linux服务器时的安全性,降低被入侵或误操作的风险。