思路
(比如我的电脑是MY,我想免密码登录Remote)
- 在MY的机器生成一个rsa公钥
- 在Remote的
~/.ssh/authorized_keys
文件中添加MY的rsa公钥 - 在MY上使用ssh登录Remote,测试是否添加成功
本机生成rsa秘钥:
在本机上生成rsa密钥对
ssh-keygen -t rsa
一路回车后就会在~/.ssh/
目录下生成私钥文件:id_rsa
与公钥文件:id_rsa.pub
,复制id_rsa.pub的内容,这里的内容需要加入到远程电脑中
可选参数:
- -t 可选加密方法,有:dsa | ecdsa | ed25519 | rsa
- -f 可以指定输出的文件名,默认生成的文件名为id_rsa
如果需要多套rsa秘钥的话,可以使用-f 参数
手动指定输出的文件名,如ssh-keygen -t rsa -f id_rsa_2
,如果不指定,再次生成的公钥与私钥会覆盖掉之前创建的文件
在远程主机中添加公钥
在远程主机中使用命令:
vi ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
在打开的文件中另起一行,添加进入之前id_rsa.pub的内容,就可以了
使用本机MY测试登录远程主机Remote
在本地使用ssh登录远程主机:
ssh 远程主机的用户名@远程主机ip
应该可以直接连接上了