1. 生成本地 SSH 密钥对
在本地机器上生成 SSH 密钥对。打开终端或命令提示符,运行以下命令:
ssh-keygen -t rsa -b 4096
如下图询问保存路径,手动选择
如下图询问密码,如果要 vscode 免密登录则不能设置密码
2. 将公钥添加到远程服务器
将生成的公钥 (id_rsa.pub) 添加到远程服务器的 ~/.ssh/authorized_keys 文件中。可以使用以下命令:
ssh-copy-id -i ~/.ssh/id_rsa.pub username@remote_host
如果 ssh-copy-id 命令不可用,可以手动将公钥内容复制到远程服务器的 ~/.ssh/authorized_keys 文件中。
将文件复制到 ~/.ssh 中, 然后使用如下命令追加
cat ./.ssh/id_rsa.pub >> ./.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
- cat /path/to/id_rsa.pub >> ~/.ssh/authorized_keys:将公钥内容追加到 authorized_keys 文件。
chmod 600 ~/.ssh/authorized_keys:确保文件权限为 600,只有当前用户可以读写。
确保 ~/.ssh 和 ~/.ssh/authorized_keys 的权限正确:
chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
配置 ssh 允许密钥认证
编辑 SSH 配置文件
vim /etc/ssh/sshd_config
确保远程服务器的 SSH 配置文件 /etc/ssh/sshd_config 中启用了密钥认证:
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
重启 SSH
sudo systemctl restart ssh
评论 (0)