VPS如何禁用密码登录?_详细步骤与常见问题解答
如何安全地禁止VPS密码登录?
| 操作步骤 | 主要内容 | 相关工具 |
|---|---|---|
| 生成SSH密钥对 | 在本地计算机创建公钥和私钥 | ssh-keygen命令 |
| 上传公钥到VPS | 将公钥添加到服务器的授权文件中 | ssh-copy-id命令或手动上传 |
| 配置SSH服务 | 修改sshd_config文件禁用密码登录 | vi/vim编辑器 |
| 重启SSH服务 | 使配置生效 | systemctl命令 |
2025沈阳SEO公司深度测评_本地化利器:金花站长工具沈阳专版(检测同城竞争对手外链)
# VPS如何禁用密码登录?_详细步骤与常见问题解答
## 主要操作步骤
| 步骤 | 操作内容 | 所需工具 |
|---|---|---|
| 1 | 生成SSH密钥对 | ssh-keygen命令 |
| 2 | 上传公钥到服务器 | ssh-copy-id命令 |
| 3 | 配置SSH服务参数 | 文本编辑器 |
| 4 | 重启SSH服务 | 系统服务管理命令 |
## 详细操作流程
### 步骤一:生成SSH密钥对
**操作说明**:在本地计算机上生成RSA密钥对,包括公钥和私钥。
**使用工具提示**:使用终端或命令行工具执行ssh-keygen命令。
```bash
# 生成4096位的RSA密钥对
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
# 系统会提示以下信息:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
```
### 步骤二:上传公钥到VPS
**操作说明**:将生成的公钥上传到VPS的授权密钥文件中。
**使用工具提示**:使用ssh-copy-id命令或手动上传。
```bash
# 使用ssh-copy-id自动上传
ssh-copy-id -i ~/.ssh/id_rsa.pub username@your_server_ip
# 或者手动操作:
# 1. 在服务器上创建.ssh目录(如果不存在)
mkdir -p ~/.ssh
# 2. 设置正确的目录权限
chmod 700 ~/.ssh
# 3. 将公钥内容添加到authorized_keys文件
echo "ssh-rsa AAAA..." >> ~/.ssh/authorized_keys
# 4. 设置正确的文件权限
chmod 600 ~/.ssh/authorized_keys
```
### 步骤三:配置SSH服务参数
**操作说明**:修改SSH服务的配置文件,禁用密码登录并启用密钥认证。
**使用工具提示**:使用vi、vim或nano等文本编辑器。
```bash
# 编辑SSH配置文件
sudo vi /etc/ssh/sshd_config
# 需要修改的关键参数:
PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin without-password
```
### 步骤四:重启SSH服务
**操作说明**:重新启动SSH服务使配置生效。
**使用工具提示**:使用systemctl或service命令。
```bash
# CentOS 7/8, Ubuntu 16.04+
sudo systemctl restart sshd
# CentOS 6
sudo service sshd restart
```
2025杭州高端会所流量密码!3大SEO优化技巧让客源暴涨200%
## 常见问题及解决方案
| 问题 | 原因 | 解决方案 |
|---|---|---|
| SSH连接被拒绝,无法登录 | 密钥文件权限设置不正确 | 检查.ssh目录权限为700,authorized_keys文件权限为600 |
| 修改配置后无法连接VPS | 配置文件语法错误或参数设置错误 | 保持一个活跃的SSH连接,逐步测试配置 |
| 公钥认证失败 | 服务器未正确识别公钥 | 确认公钥已正确添加到authorized_keys文件 |
| 忘记设置密钥密码 | 生成密钥时未设置密码 | 重新生成密钥对并设置密码 |
| 主机密钥验证失败 | 服务器密钥发生变化 | 使用ssh-keygen -R命令删除旧密钥记录 |
完成以上步骤后,你的VPS将只允许通过SSH密钥进行登录,大大提高了服务器的安全性。在进行最终配置前,建议先测试密钥登录是否正常工作,确保不会因为配置错误而失去对服务器的访问权限。
发表评论