跳到正文

SSH 连接与基础加固

拿到新机器后的第一件事不是装软件,而是把 SSH 配好:密钥登录、关闭密码认证、限制来源。做完这三步,机器被暴力破解的风险会下降几个数量级。

20 分钟 难度:中等 7 个步骤更新于 2026-09-13

开始之前

  • 机器已开机
  • 知道服务器 IP 和 root 密码
  • 本机有终端(Windows 用 PowerShell 或 WSL)

操作步骤

  1. 第 1 步: 首次登录

    ssh root@你的服务器IP

    首次连接会提示确认主机指纹,输入 yes。然后输入 root 密码(输入时不会显示字符,这是正常的)。

    登录后先更新系统:

    apt update && apt upgrade -y
  2. 第 2 步: 生成本机密钥对

    在你自己的电脑上执行(不是服务器上):

    ssh-keygen -t ed25519 -C "your-name"

    一路回车即可。默认会生成 ~/.ssh/id_ed25519(私钥)和 ~/.ssh/id_ed25519.pub(公钥)。

    私钥永远不要传给任何人,也不要复制到服务器上。

  3. 第 3 步: 把公钥放到服务器

    ssh-copy-id root@你的服务器IP

    如果没有 ssh-copy-id(Windows 常见),手动复制公钥内容,在服务器上执行:

    mkdir -p ~/.ssh && chmod 700 ~/.ssh
    echo "你的公钥内容" >> ~/.ssh/authorized_keys
    chmod 600 ~/.ssh/authorized_keys
  4. 第 4 步: 验证密钥登录可用

    在关闭密码登录之前,先另开一个终端窗口,确认密钥登录确实能进:

    ssh root@你的服务器IP

    这一步不能跳。如果先关掉密码登录才发现密钥配错了,你就把自己锁在门外了(只能靠面板的 VNC 救回来)。

  5. 第 5 步: 关闭密码登录

    确认密钥登录可用后,编辑 /etc/ssh/sshd_config

    PasswordAuthentication no
    PermitRootLogin prohibit-password

    然后重启服务:

    systemctl restart ssh

    改完之后密码就没法登录了,暴力破解脚本会直接失效。

  6. 第 6 步: 配置防火墙

    apt install ufw -y
    ufw default deny incoming
    ufw default allow outgoing
    ufw allow 22/tcp
    ufw allow 80/tcp
    ufw allow 443/tcp
    ufw enable

    在开启防火墙之前,务必先放行 SSH 端口(22)。 顺序反了会把自己挡在外面。

    如果之后要跑其他服务,记得同步放行对应端口。

  7. 第 7 步: 可选:改 SSH 端口

    把 SSH 端口从 22 改到其他端口,能减少日志里的扫描噪音,但不构成实质安全提升——扫描器会扫全端口。

    真正的防护是密钥登录。改端口只是让日志干净一点,属于可选项。

常见问题与排查

常见故障的现象、原因与解决方法
现象 原因 处理方式
ssh-copy-id 命令不存在 Windows 的 OpenSSH 客户端默认不带这个工具 手动把公钥内容追加到服务器的 ~/.ssh/authorized_keys,并确认权限是 600
关闭密码登录后连不上了 密钥未正确配置,或者 authorized_keys 权限不对 用 KiwiVM 面板的 VNC 控制台进去,把 sshd_config 里的 PasswordAuthentication 改回 yes 临时恢复
开启防火墙后立刻断连 没有先放行 SSH 端口就执行了 ufw enable 通过 VNC 控制台进去执行 ufw allow 22/tcp。这是顺序错误,不是配置错误
authorized_keys 权限正确但仍然要求输密码 SELinux 或 home 目录权限问题(较少见于 Debian/Ubuntu) 检查 /root 或用户 home 目录权限,确保没有 group 或 other 写权限

常见问题

服务器 IP 突然访问不了了,怎么排查?

按先分层、再定位的顺序查,不要一上来就重装系统。第一步确认机器本身是否在运行:登录 KiwiVM 面板看状态,如果面板显示运行中但 SSH 连不上,用面板的 VNC 控制台进去看系统是否正常启动。第二步换网络环境测试,比如用手机流量或其他宽带,如果只有一个网络访问不了而其他正常,问题通常在本地网络或中间链路,不在服务器。第三步用面板提供的测试工具确认机房侧是否可达。第四步检查服务器上的防火墙规则,确认没有把自己挡在外面。都排除了之后,才考虑 IP 本身的问题。

需要一台机器来练手?

入门套餐折算月成本最低,30 天内可全额退款,适合用来把流程走通一遍。

本站含联盟链接。你通过这些链接购买,价格不变,我们会获得佣金。 详情