要向远程服务器添加SSH密钥,你需要将你的本地公钥添加到远程服务器的授权列表中。
添加SSH密钥到远程服务器:
-
生成SSH密钥:如果你还没有生成SSH密钥,可以使用以下命令生成:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
这会生成一对SSH密钥:私钥(通常保存在
~/.ssh/id_rsa
)和公钥(保存在~/.ssh/id_rsa.pub
)。 -
查看你的公钥:你可以使用以下命令来查看公钥内容:
cat ~/.ssh/id_rsa.pub
复制公钥的内容(以
ssh-rsa
开头)。 -
登录远程服务器:使用SSH登录到远程服务器。
-
添加公钥到授权列表:在远程服务器上,打开
~/.ssh/authorized_keys
文件(如果不存在则创建),将你本地公钥的内容粘贴到这个文件中。vi ~/.ssh/authorized_keys
粘贴你本地公钥的内容到这个文件中,并保存文件。
-
设置权限:确保
~/.ssh
文件夹权限设置正确。运行以下命令:chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
这会保证只有你才能读取私钥,且授权列表文件设置了正确的权限。
-
退出远程服务器:完成后,退出服务器并尝试使用新的SSH密钥连接。
exit
现在你已经将本地生成的SSH公钥添加到了远程服务器的授权列表中。使用新的SSH密钥尝试连接远程仓库,应该不会再出现权限拒绝的问题了。