一、生成SSH密钥对
在本地计算机生成密钥对是配置SSH登录的第一步。根据操作系统选择以下方法:
Linux/macOS系统
- 打开终端执行命令
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
- 按提示设置密钥存储路径(默认~/.ssh)和密码短语
Windows系统
- 使用Xshell工具:通过菜单栏“工具-新建密钥生成向导”创建RSA密钥
- 使用PuTTYgen:选择RSA算法并生成4096位密钥
二、上传公钥至云服务器
完成密钥生成后,需将公钥部署到目标服务器:
- 手动上传:通过SFTP工具将
id_rsa.pub
上传至~/.ssh/
目录 - 命令行传输:执行
ssh-copy-id -i ~/.ssh/id_rsa.pub user@host
自动配置
需确保服务器端.ssh
目录权限为700,authorized_keys
文件权限为600
三、配置SSH服务参数
通过修改SSH配置文件提升安全性:
- 使用
vi /etc/ssh/sshd_config
编辑配置文件 - 设置关键参数:
PubkeyAuthentication yes
PasswordAuthentication no
- 执行
systemctl restart sshd
重启服务使配置生效
四、验证密钥登录
完成配置后测试密钥登录:
ssh -i ~/.ssh/id_rsa user@server_ip
成功登录后建议:
- 保留现有连接窗口测试密码登录是否禁用
- 检查安全日志
/var/log/secure
确认登录记录
通过密钥对认证可显著提升云服务器安全性,建议配合防火墙策略限制SSH端口访问。定期轮换密钥并妥善保管私钥文件,避免使用默认端口22以防范暴力破解攻击