随笔 - 277  文章 - 35  评论 - 868 

公司里有N台服务器需要经常登录,每次ssh的时候都要输入密码实在太不爽了,今天有空一口气全部改为公钥/私钥认证,登录再也不用任何密码了。

实现步骤:

1.在你的自己的机器下面使用ssh-keygen命令来实现创建公钥

使用 ssh-keygen -t rsa 来创建密钥,程序会问你存放的目录,如果不需要修改,直接回车两次即可

点击查看原图

2.将你~/.ssh目录中的id_rsa.pub这个文件拷贝到你要登录的服务器的~/.ssh目录中,然后再运行以下命令来将公钥导入到~/.ssh/authorized_keys这个文件中

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys,注意是管道符是 >>

另外要注意请务必要将服务器上

~/.ssh权限设置为700

~/.ssh/authorized_keys的权限设置为600

这是linux的安全要求,如果权限不对,自动登录将不会生效

完毕之后,退出服务器的登录,再使用ssh登录,你就会发现服务器不会再向你询问密码了.

补充:

有读者提出拷贝公钥文件到服务器上这个过程可以用ssh-copy-id命令来完成,下面是命令使用列表

默认用法:

ssh-copy-id user@server  

自定义用法:

ssh-copy-id -i 公钥文件路径 user@server

ssh-copy-id -p 服务器SSH服务端口 user@server

 

转自:http://be-evil.org/linux-ssh-login-without-using-password.html

posted on 2016-07-27 15:57 WNFK 阅读(...) 评论(...) 编辑 收藏