博客 / Others/ VPS 基础安全加固指南:修改 SSH 端口与禁用 Root 登录

VPS 基础安全加固指南:修改 SSH 端口与禁用 Root 登录

VPS 基础安全加固指南:修改 SSH 端口与禁用 Root 登录

VPS 基本安全设置:修改 SSH 端口与禁用 Root 登录

在配置 VPS 时,修改默认的 SSH 端口并禁用 Root 用户的直接登录是两项基础且重要的安全措施。这可以有效减少自动化脚本的扫描和暴力破解攻击。

重要提示:在进行 SSH 端口修改前,请务必确保已正确配置系统防火墙(如 firewalld、iptables 或 ufw),开放新的 SSH 端口,并允许当前连接会话的 IP 地址。操作失误可能导致无法远程连接服务器。

一、修改 SSH 默认端口

SSH 服务的配置文件通常位于 /etc/ssh/sshd_config。请按以下步骤操作:

  1. 使用文本编辑器(如 vim 或 nano)打开配置文件:
    sudo vi /etc/ssh/sshd_config
  2. 找到包含 #Port 22 的行(通常在文件前部)。删除行首的注释符号 #,并将端口号 22 修改为一个在 1024 到 65535 之间、且未被系统其他服务占用的端口(例如 22222)。修改后应为:
    Port 22222
  3. 保存并退出编辑器(在 vim 中按 Esc 键后输入 :wq 并回车)。

替代方法(使用 sed 命令): 如果默认配置中 Port 22 被注释,你也可以使用以下命令在第 17 行后直接插入新端口配置(请根据实际行号调整):

sudo sed -i '17a Port 22222' /etc/ssh/sshd_config

二、重启 SSH 服务使配置生效

修改配置后,必须重启 SSH 服务。根据你的 Linux 发行版,使用对应的命令:

  • CentOS 7 / RHEL 7 / Fedora 及更新版本:
    sudo systemctl restart sshd
  • CentOS 6 / RHEL 6 及旧版本:
    sudo service sshd restart
  • Debian / Ubuntu 系统:
    sudo systemctl restart ssh

    sudo service ssh restart

验证: 重启后,请务必使用新端口(例如 ssh -p 22222 user@your_server_ip)测试连接,确认成功后再关闭原有会话。

三、禁用 Root 用户直接登录并创建普通用户

允许 Root 用户直接通过 SSH 登录是高风险行为。建议创建一个具有 sudo 权限的普通用户,然后禁用 Root 登录。

  1. 创建新用户(例如 xiaohost):
    sudo adduser xiaohost

    根据提示设置密码并填写用户信息(非必填项可直接回车跳过)。

  2. 为新用户授予 sudo 权限(以 Debian/Ubuntu 为例):
    sudo usermod -aG sudo xiaohost

    对于 CentOS/RHEL/Fedora,通常是将用户加入 wheel 组:

    sudo usermod -aG wheel xiaohost
  3. 禁用 Root 登录: 再次编辑 SSH 配置文件 /etc/ssh/sshd_config。找到 PermitRootLogin 一行,将其修改为:
    PermitRootLogin no

    如果该行被注释,请删除注释符号 #

  4. 重启 SSH 服务: 使用上文对应你系统的命令重启 SSH 服务。

注意: 禁用 Root 登录后,你将无法使用 SFTP 客户端直接以 Root 身份上传文件。所有需要 Root 权限的操作,请先以普通用户登录,然后使用 sudo 命令提权,或通过 SFTP 登录普通用户账户,再将文件移动到需要权限的目录。

四、补充安全建议

  • 使用密钥认证: 彻底禁用密码登录,改用 SSH 密钥对进行认证,安全性更高。
  • 配置 Fail2ban: 安装并配置 Fail2ban 工具,自动封禁多次尝试失败登录的 IP 地址。
  • 保持系统更新: 定期运行 sudo apt update && sudo apt upgrade(Debian/Ubuntu)或 sudo yum update(CentOS/RHEL)以安装安全补丁。

完成以上设置后,你的 VPS 基础安全防护将得到显著提升。

发表评论

您的邮箱不会公开。必填项已用 * 标注。