公司里有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]
相关推荐
linux系统下的ssh免密码登录机制原理及范例
Linux配置ssh免密码登录调试文档,对配置hadoop有帮助
配置linux ssh免密码登录,第一行生成密钥,第二行是要对哪台机器免密码ssh登录就配置成哪一台,这里root@hadoop00,root是用户名,hadoop00是主机名
1.使用包管理器安装openssh: ...将.ssh目录中的id_rsa.pub这个文件拷贝到要登录的服务器的.ssh目录中,然以再运行以下命令来将公钥导入到.ssh/authorized_key文件中 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorize
主要是讲Linux系统如何做到SSH免密码登录
ssh免密码;ssh免密码;ssh免密码;ssh免密码;ssh免密码;
Linux 安装及SSH免密码设置,有图 有文档。可以参考下。
linux-ssh免密码登陆
在不使用密码情况下对linux服务器进行ssh登陆
主要介绍了Linux下实现SSH免密码登录和实现秘钥的管理、分发、部署SHELL脚本分享,本文先是讲解了SSH免密码登录的创建过程,然后给出了可以分发、部署密钥的Shell脚本,需要的朋友可以参考下
linux下怎样设置ssh无密码登录.docx
非常详细的hadoop集群搭建教程,包含SSH免密码登录,基本上按照教程上一步一步操作就能搭建成功,非常适合大数据初学者使用
Linux服务器安全:SSH如何防破解.docx
主要介绍了linux远程登录ssh免密码配置方法,需要的朋友可以参考下
忘记Linux密码,修改密码方法,忘记Linux密码,修改密码方法
WINSCP 可创建密钥交互SSH免密码登录
本脚本采取嵌入式编写,使用expect+shell,自动检测安装expect模块 #使用方法:./script.sh filename # ip列表中第一列为IP,第二列为IP对应的用户密码。...一个脚本搞定全部SSH免密码登录多台服务器
expect配置单向ssh免密码登录
在Linux的各个虚拟集中实现ssh进行远程登录,设置各个虚拟机之间的免密码登录。