新买的搬瓦工 VPS 可以通过 SSH 远程管理。新开通的搬瓦工 VPS 默认使用 22 端口和 root 密码登录,VPS 的 IP 地址和 SSH 端口可以在后台 KiwiVM 面板首页确认。
这种登录方式操作简单,不过 VPS 一旦接入公网,22 端口就可能会不断的收到自动扫描和密码登录尝试。为了减少这类无用连接,同时提高 SSH 登录安全性,我们可以完成下面三项设置:
- 把默认的
22端口换成其他端口; - 使用 SSH 密钥登录 VPS;
- 密钥测试成功后,关闭 SSH 密码登录。
本站这次使用 35678 作为示例端口。大家在操作时可以换成其他没有被占用的端口,后面的命令也要填写相同的端口。
一、修改搬瓦工 SSH 配置前的准备工作
修改 SSH 配置最怕的不是命令输错,而是设置还没有测试,就把原来的连接窗口关掉。
因此,开始前先记住下面两点:
- 已经登录 VPS 的 SSH 窗口要一直保留;
- 密钥没有测试成功前,不能关闭密码登录。
原来的 SSH 窗口相当于一个备用入口。如果新端口无法连接、密钥配置失败或者 SSH 文件写错,我们还可以通过旧窗口恢复配置。
搬瓦工 KiwiVM 面板还提供 Root shell – interactive。这个功能不通过 SSH 端口连接,即使 SSH 设置出了问题,也可以进入 VPS 修改配置。
不过,Root shell – interactive 只是备用入口。正常操作时,仍然要做到改一步、测试一步。
确认当前 SSH 可以登录
修改 SSH 配置前,先使用默认端口登录一次,确认当前连接没有问题。
打开搬瓦工后台,进入 KiwiVM 面板,在首页找到 VPS IP 地址和 SSH 端口。新开通的搬瓦工 VPS 默认使用 22 端口。如果已经忘记 root 密码,可以先在后台 KiwiVM 面板中重新设置。
在本地电脑打开 PowerShell、Windows Terminal、macOS 终端或 Linux 终端,然后输入:
ssh root@你的IP -p 22
例如 VPS 的 IP 地址是 192.0.2.88,连接命令就是:
ssh root@192.0.2.88 -p 22
第一次连接这台 VPS 时,终端会显示服务器指纹确认提示。确认 IP 地址没有输错,然后输入:
yes
接着输入 VPS 的 root 密码。输入密码时,终端不会显示星号或其他字符,这是正常情况,输入完成后按回车即可。

通过 PowerShell 使用默认 22 端口成功登录搬瓦工 VPS
成功进入 VPS 后,不要关闭当前 SSH 窗口。后面修改端口和密钥时,如果新设置出现问题,还可以通过这个窗口恢复配置。
二、修改搬瓦工 SSH 默认端口
更换 SSH 端口的目的主要是为了避开针对 22 端口的大量自动扫描,它不能代替密钥登录,所以改完端口后,我们还要继续完成后面的密钥设置。
如果您只准备修改 SSH 端口,不需要继续配置密钥登录,也可以参考:搬瓦工 VPS 怎样修改默认端口,里面单独整理了端口修改和连接测试步骤。
1. 备份原来的 SSH 配置
在改文件前,先保存一份原始配置:
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup
备份文件的位置是:
/etc/ssh/sshd_config.backup
后面如果配置写错,可以用这个文件进行恢复。
2. 确认 35678 端口没有被使用
执行:
ss -lnt | grep ':35678 '
如果没有返回内容,说明目前没有程序监听 35678。
如果命令显示了监听信息,就不要使用这个端口,我们可以再换一个端口重新检查。
3. 在 sshd_config 中填写新端口
打开 SSH 配置文件:
vi /etc/ssh/sshd_config
找到:
#Port 22
部分系统显示的是:
Port 22
把它改成:
Port 35678
使用 vi 修改文件时,可以按下面的顺序操作:
- 按
i开始输入; - 修改端口数字;
- 按
Esc结束输入; - 输入
:wq; - 按回车保存并退出。
4. 防火墙开启时放行新端口
如果 VPS 没有开启系统防火墙,可以跳过这一部分。
Ubuntu 和 Debian 可以执行:
ufw status
显示下面的结果,说明 UFW 正在运行:
Status: active
放行 35678:
ufw allow 35678/tcp
CentOS、AlmaLinux 和 Rocky Linux 可以检查 firewalld:
firewall-cmd --state
如果结果是 running,执行:
firewall-cmd --permanent --add-port=35678/tcp
firewall-cmd --reload
使用 SELinux 的系统还需要检查当前状态:
getenforce
如果显示 Enforcing,执行:
semanage port -a -t ssh_port_t -p tcp 35678
系统找不到 semanage 时,先安装相关工具:
dnf install policycoreutils-python-utils -y
安装完成后,再运行前面的端口命令。
5. 让新的 SSH 配置生效
先检查配置文件有没有格式错误:
sshd -t
如果没有返回任何内容,说明配置格式没有问题。
接着重载 SSH 服务:
systemctl reload sshd 2>/dev/null || systemctl reload ssh
如果 sshd -t 返回错误,不要继续重载服务。可以根据提示修改,也可以先恢复备份:
cp /etc/ssh/sshd_config.backup /etc/ssh/sshd_config
6. 不要关旧窗口,先测试新端口
重新打开一个本地终端,使用 35678 端口连接:
ssh root@你的IP -p 35678
能够输入 root 密码并进入 VPS,说明新的端口已经生效。
从现在开始,SSH、SFTP、备份程序和其他远程连接工具,都要填写 35678。
确认新端口没有问题后,如果防火墙中曾经单独放行 22,可以删除旧规则。
UFW:
ufw delete allow 22/tcp
firewalld:
firewall-cmd --permanent --remove-port=22/tcp
firewall-cmd --reload
这一步不能提前执行,必须先用新窗口登录成功,再处理旧端口规则。
三、在本地电脑生成 SSH 密钥
端口修改完成后,接下来把登录方式从 root 密码换成 SSH 密钥。
SSH 密钥包括两个文件:
id_ed25519是私钥,只能保存在自己的电脑中;id_ed25519.pub是公钥,需要添加到 VPS。
私钥和公钥是一套配对文件,服务器保存公钥,本地电脑保存私钥,两边能够对应时才允许登录。
下面的生成命令要在自己的电脑上运行,不是在搬瓦工 VPS 中运行。
执行:
ssh-keygen -t ed25519 -C "bwh-vps-key"
当出现文件保存位置时,按回车使用默认位置。
随后系统会询问是否给私钥设置口令。本站建议设置一个自己能记住的口令,这样私钥文件即使被其他人拿到,也不能马上用于登录。
不准备设置口令时,可以连续按回车跳过,但私钥文件一定要保存好。
Windows 默认保存位置:
C:\Users\你的用户名\.ssh\
macOS 和 Linux 默认保存位置:
~/.ssh/
其中,没有 .pub 后缀的是私钥,不能上传到服务器、网站或者在线面板。
四、把 SSH 公钥添加到搬瓦工 VPS
公钥可以使用工具自动写入,也可以复制后手动添加。
1. 使用 ssh-copy-id 添加公钥
macOS 和 Linux 用户可以在本地电脑执行:
ssh-copy-id -p 35678 root@你的IP
根据提示输入一次 root 密码。完成后,公钥会写入 VPS 的 authorized_keys 文件。
2. 没有 ssh-copy-id 时手动添加
Windows PowerShell 用户可以读取公钥:
Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub
macOS 和 Linux 用户执行:
cat ~/.ssh/id_ed25519.pub
复制输出的整行内容,Ed25519 公钥一般以 ssh-ed25519 开头。
然后回到搬瓦工 VPS,执行:
mkdir -p /root/.ssh
chmod 700 /root/.ssh
vi /root/.ssh/authorized_keys
按 i 进入输入状态,把公钥粘贴进去。
一条公钥只能占一行,不能漏掉字符,也不能拆开。粘贴完成后,按 Esc,输入 :wq,再按回车保存。
最后设置文件权限:
chmod 600 /root/.ssh/authorized_keys
SSH 密钥无法使用时,目录和文件权限是需要优先检查的地方:
/root/.ssh使用700;authorized_keys使用600。
3. 确认现在使用的是密钥登录
保留之前的 SSH 窗口,再新开一个终端:
ssh root@你的IP -p 35678
给私钥设置过口令时,终端可能要求输入私钥口令。
只要没有再要求输入 VPS 的 root 密码,而且可以进入系统,就说明密钥已经生效。
在没有测试成功前,不要进入下一步。
五、关闭搬瓦工 SSH 密码登录
确认 SSH 密钥可以登录后,才可以关闭密码登录。
打开配置文件:
vi /etc/ssh/sshd_config
确认下面四项存在,并填写成以下内容:
PubkeyAuthentication yes
PasswordAuthentication no
KbdInteractiveAuthentication no
PermitRootLogin prohibit-password
这些设置分别表示:
PubkeyAuthentication yes:允许使用 SSH 密钥;PasswordAuthentication no:不再接受普通密码登录;KbdInteractiveAuthentication no:关闭键盘交互认证;PermitRootLogin prohibit-password:root 只能使用密钥登录。
保存文件后检查格式:
sshd -t
没有错误,再重载 SSH:
systemctl reload sshd 2>/dev/null || systemctl reload ssh
重新打开一个终端,测试密钥登录:
ssh root@你的IP -p 35678
能够使用密钥进入 VPS,说明密钥登录正常。
接着执行下面的命令,确认密码登录已经关闭:
sshd -T | grep -E 'passwordauthentication|kbdinteractiveauthentication|permitrootlogin'
输出结果中应包含:
passwordauthentication no
kbdinteractiveauthentication no
permitrootlogin without-password
部分系统可能把最后一项显示为 prohibit-password,两种写法在这里的作用相同。确认这些设置已经生效后,搬瓦工 SSH 密码登录就关闭了。
完成 SSH 设置后,如果还想继续配置 UFW 防火墙和 Fail2ban,可以参考:搬瓦工 VPS 安全加固教程,继续限制端口访问并拦截重复登录尝试。
六、KiwiVM SSH Keys 有什么用
搬瓦工后台的 KiwiVM 面板提供 SSH Keys 管理功能,可以把自己的公钥提前保存到搬瓦工账户中。
这里添加的是:
id_ed25519.pub
不能添加私钥 id_ed25519。
当公钥保存在搬瓦工 KiwiVM 面板后,重装 VPS 系统时,可以选择把这个公钥写入新系统。对于经常重装系统的网友来说,这样可以少做一次手动添加公钥的操作。
重装完成后,仍然需要先测试密钥登录,确认可以进入系统后,再关闭密码登录。
七、SSH 设置错误后的恢复方法
修改 SSH 端口或关闭密码登录后,如果新端口无法连接、密钥登录失败,先不要重装 VPS。
进入搬瓦工 KiwiVM 面板,在左侧菜单点击 Root shell – interactive。打开网页终端后,可以继续执行命令检查和恢复 SSH 配置。
如果无法确定是端口、密码、密钥还是 SSH 服务造成的,可以先参考:搬瓦工 SSH 连接不上的原因及解决方法,按照连接提示和报错信息逐项排查。
1. 新端口无法连接
先执行下面的命令,检查 SSH 配置文件有没有写错:
sshd -t
如果命令显示错误,需要先根据提示修改 /etc/ssh/sshd_config。如果没有任何输出,再检查 SSH 是否正在监听 35678 端口:
ss -lntp | grep 35678
如果没有返回内容,说明 SSH 还没有监听这个端口。
继续检查 SSH 服务状态:
systemctl status sshd --no-pager
systemctl status ssh --no-pager
还要确认系统防火墙已经放行 35678。如果使用了 UFW、firewalld 或 SELinux,也要检查对应的端口规则。
如果 VPS 可以正常 Ping 通,但 SSH 一直无法连接,可以参考:搬瓦工 VPS 能 Ping 通但是 SSH 连接不上的解决办法,进一步检查 SSH 服务、端口监听和防火墙规则。
2. 密钥登录提示 Permission denied
出现 Permission denied 时,先重新设置 SSH 目录和公钥文件权限:
chmod 700 /root/.ssh
chmod 600 /root/.ssh/authorized_keys
然后打开公钥文件:
vi /root/.ssh/authorized_keys
确认公钥内容完整,一条公钥只能占一行,不能漏掉字符,也不能被拆成多行。
3. 关闭密码后无法登录
如果密钥还没有配置成功,就关闭了密码登录,可以通过 Root shell – interactive 打开 SSH 配置文件:
vi /etc/ssh/sshd_config
找到下面这一项:
PasswordAuthentication no
临时改回:
PasswordAuthentication yes
保存后执行:
sshd -t
systemctl reload sshd 2>/dev/null || systemctl reload ssh
确认密码登录已经恢复后,再检查私钥、公钥、文件权限和 SSH 配置。等密钥可以正常登录,再重新关闭密码登录。
4. 恢复修改前的 SSH 配置
如果不确定哪里写错了,可以先恢复前面备份的配置文件:
cp /etc/ssh/sshd_config.backup /etc/ssh/sshd_config
sshd -t
systemctl reload sshd 2>/dev/null || systemctl reload ssh
执行 sshd -t 时没有报错,说明备份配置可以继续使用。恢复完成后,再使用原来的 SSH 端口和登录方式连接 VPS。
八、搬瓦工 SSH 设置常见问题
下面补充几个设置过程中容易遇到的问题。
1. 搬瓦工 SSH 默认端口是多少?
新开通的搬瓦工 VPS 默认 SSH 端口是 22。VPS 的 IP 地址和当前 SSH 端口可以在 KiwiVM 面板首页确认。如果忘记了 root 密码,需要通过后台 KiwiVM 面板重新设置,面板首页不会显示原密码。
2. 只修改 SSH 端口可以吗?
修改端口只能减少针对 22 的自动扫描,不能阻止密码泄露带来的风险。
如果准备长期使用 VPS,建议同时配置密钥并关闭密码登录。
3. 端口数字越大,安全性越高吗?
不是。
只要端口没有被其他程序占用,并且防火墙已经放行,就可以作为新的 SSH 端口,安全性的重点仍然是密钥登录和私钥保管。
4. 换了端口后,连接软件要不要修改?
需要修改。
使用 SSH 端口的程序都要填写 35678,包括 SFTP 软件、自动备份脚本、监控工具和部署程序。
5. 多台电脑能否使用密钥登录?
可以让每台电脑分别生成一套密钥,再把不同的公钥添加到 authorized_keys。
一台电脑对应一行公钥,某台电脑不再使用时,只删除它对应的公钥,不会影响其他设备。
6. 修改配置后为什么没有生效?
可以执行下面两条命令:
sshd -t
sshd -T | grep -E 'port|passwordauthentication|kbdinteractiveauthentication|pubkeyauthentication|permitrootlogin'
第一条检查配置文件格式,第二条显示 SSH 当前使用的配置。
如果显示结果与设置内容不同,还要检查:
/etc/ssh/sshd_config.d/
这个目录中可能存在其他 SSH 配置文件。
九、总结
搬瓦工 SSH 安全设置要按照顺序操作,每完成一步都要先测试,确认没有问题后再继续。
正确的操作顺序是:
- 保留当前已经登录的 SSH 窗口;
- 备份
sshd_config配置文件; - 把默认的
22端口改成35678; - 打开新的终端窗口,测试新端口能否登录;
- 在本地电脑生成 SSH 密钥;
- 把公钥添加到搬瓦工 VPS;
- 确认 SSH 密钥可以正常登录;
- 最后关闭 SSH 密码登录。
如果修改后无法连接,可以进入 KiwiVM 面板,打开 Root shell – interactive 检查和恢复 SSH 配置。操作时不要提前关闭原来的 SSH 窗口,这样即使新端口或密钥设置出错,也还有机会改回来。
- 入门:KVM 常规套餐价格较低,适合预算有限、建站测试或轻量使用。
- 推荐:CN2 GIA-E 套餐机房选择更多,线路表现更适合大陆访问用户。
- 高端:香港、日本大阪等套餐价格更高,适合对延迟、机房位置或线路有具体要求的用户。
| 套餐 | CPU | 内存 | 硬盘 | 流量 | 带宽 | 机房 | 价格 | 购买 |
|---|---|---|---|---|---|---|---|---|
| KVM (最便宜) | 2核 | 1GB | 20GB | 1TB | 1Gbps | DC2 AO DC8 ZNET | $49.99/年 最便宜 | 购买 |
| 3核 | 2GB | 40GB | 2TB | 1Gbps | $52.99/半年 $99.99/年 | 购买 | ||
| CN2 GIA-E 最推荐 | 2核 | 1GB | 20GB | 1TB | 2.5Gbps | DC6 CN2 GIA-E DC9 CN2 GIA 软银 JPOS_1 荷兰 EUNL_9 圣何塞 CN2 GIA 加拿大 CN2 GIA | $49.99/季度 $169.99/年 | 购买 |
| 3核 | 2GB | 40GB | 2TB | 2.5Gbps | $89.99/季度 $299.99/年 | 购买 | ||
| SLA (SLA 保障) | 2核 独享 | 1GB | 20GB | 1TB | 2.5Gbps | 美国 DC5 SLA 99.99% 在线率 每两周免费换IP一次 | $65.89/季 $239.99/年 | 购买 |
| 3核 独享 | 2GB | 40GB | 2TB | 2.5Gbps | $116.99/季 $399.99/年 | 购买 | ||
| 香港(HKHK_8) 高端首选 | 2核 | 2GB | 40GB | 0.5TB | 1Gbps | 中国香港 日本东京 日本大阪 新加坡 | $89.99/月 $899.99/年 | 购买 |
| 4核 | 4GB | 80GB | 1TB | 1Gbps | $155.99/月 $1559.99/年 | 购买 | ||
| 大阪(JPOS_6) (高性价比) | 2核 | 2GB | 40GB | 0.5TB | 1.5Gbps | 日本大阪 | $49.99/月 $499.99/年 | 购买 |
| 4核 | 4GB | 80GB | 1TB | 1.5Gbps | $86.99/月 $869.99/年 | 购买 |

搬瓦工