我们因为工作需要,可能在本地包含多个公私钥对,且每个公私钥对在生成时,指定的邮箱也不相同,所以我们在登录一些机器时,会指定不同的公钥文件,但是,有时候就算我们指定了正确的公钥文件,服务端仍提示要求输入密码,这很烦人,使用ssh -vv查看会提示公钥文件invalid format。 这时候可能需要通过ssh-add 命令,把指定公私钥对加入ssh-agent系统管理范围。
ssh-add ~/.ssh/id_bwh
一般来说,生成公钥登录机器的方法如下:
ssh-keygen -t ed25519 -C '18355559312@163.com' -f id_bwh
-f 为文件名
ssh-copy-id -p 29137 -i ~/.ssh/id_bwh root@74.120.171.120
然后,将公钥拷贝至目标机器
最后,指定公钥文件登录
ssh -vv -p 29137 -i ~/.ssh/id_bwh.pub root@74.120.171.120
其中-vv 可以看到ssh登录过程中的详细报错