免密ssh登录配置
免密ssh登录配置
-
检查是否已存在公私钥对
在mac上打开terminal。更改目录到~/.ssh目录。list当前目录可以看到所有公私钥文件。拥有.pub结尾的文件是公钥文件,无.pub的是私钥文件。
cd ~/.ssh
更换目录到 ~/.ssh
ls
-
生成公私钥对(可选步骤)
这部适用于上一步list观察之后当前文件夹不存在公私钥对的情况。
ssh-keygen
根据交互,输入你想要的名字(默认id_rsa)
然后是passphrase
,设置为空即可。这样就生成了一对公私钥
这时候当前目录下会多了一对公私钥对。 -
上传公钥到服务器
这一步从本地将公钥文件上传到服务器指定目录。
ssh-copy-id -i [公钥文件] user@host
user是你的ssh的用户,host是服务器地址,这时候还要输入密码。
例子:ssh-copy-id -i id_rsa.pub root@111.111.111.111
-
ssh-add(mac的坑点)
好一般别的系统(普通的Linux服务器)到第三步就可以免密登陆了,但是mac并不这样。还要调用ssh-add。
ssh-add -K [你的私钥文件,就是那个不加.pub结尾的文件]
例如,ssh-add -K id_rsa
中途需要输入证书的密码。
按照这四个步骤执行就可以免秘登陆远程的linux服务器了。注意以上所有命令都是在本地机子执行。第三步用到了上传工具ssh-copy-id,这个工具直接讲公钥上传到了服务器,所以简化了使用ssh连接服务器,再在服务器上注册公钥这个步骤。