安全加固
SSH 连接与基础加固
拿到新机器后的第一件事不是装软件,而是把 SSH 配好:密钥登录、关闭密码认证、限制来源。做完这三步,机器被暴力破解的风险会下降几个数量级。
开始之前
- 机器已开机
- 知道服务器 IP 和 root 密码
- 本机有终端(Windows 用 PowerShell 或 WSL)
操作步骤
-
第 1 步: 首次登录
ssh root@你的服务器IP首次连接会提示确认主机指纹,输入
yes。然后输入 root 密码(输入时不会显示字符,这是正常的)。登录后先更新系统:
apt update && apt upgrade -y -
第 2 步: 生成本机密钥对
在你自己的电脑上执行(不是服务器上):
ssh-keygen -t ed25519 -C "your-name"一路回车即可。默认会生成
~/.ssh/id_ed25519(私钥)和~/.ssh/id_ed25519.pub(公钥)。私钥永远不要传给任何人,也不要复制到服务器上。
-
第 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 步: 验证密钥登录可用
在关闭密码登录之前,先另开一个终端窗口,确认密钥登录确实能进:
ssh root@你的服务器IP这一步不能跳。如果先关掉密码登录才发现密钥配错了,你就把自己锁在门外了(只能靠面板的 VNC 救回来)。
-
第 5 步: 关闭密码登录
确认密钥登录可用后,编辑
/etc/ssh/sshd_config:PasswordAuthentication no PermitRootLogin prohibit-password然后重启服务:
systemctl restart ssh改完之后密码就没法登录了,暴力破解脚本会直接失效。
-
第 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 步: 可选:改 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 本身的问题。
本站含联盟链接。你通过这些链接购买,价格不变,我们会获得佣金。 详情