公司里有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
-----------------------------------------------------------------------------------------------------
另外,鄙人遇到过这样的情况:当~/.ssh的档案目录的(SELinux)security context与预期不符时亦无法实现远程免密码登录,解决办法是"恢復档案目录的预设的security context" —— 命令:restorecon -R -v .ssh
相关推荐
在不使用密码情况下对linux服务器进行ssh登陆
ssh免密码;ssh免密码;ssh免密码;ssh免密码;ssh免密码;
linux系统下的ssh免密码登录机制原理及范例
Linux配置ssh免密码登录调试文档,对配置hadoop有帮助
linux-ssh免密码登陆
非常详细的hadoop集群搭建教程,包含SSH免密码登录,基本上按照教程上一步一步操作就能搭建成功,非常适合大数据初学者使用
主要是讲Linux系统如何做到SSH免密码登录
配置linux ssh免密码登录,第一行生成密钥,第二行是要对哪台机器免密码ssh登录就配置成哪一台,这里root@hadoop00,root是用户名,hadoop00是主机名
WINSCP 可创建密钥交互SSH免密码登录
expect配置单向ssh免密码登录
CentOS 6.5之SSH免密码登录配置.docx 自己亲自试验,按文档安装
本脚本采取嵌入式编写,使用expect+shell,自动检测安装expect模块 #使用方法:./script.sh filename # ip列表中第一列为IP,第二列为IP对应的用户密码。...一个脚本搞定全部SSH免密码登录多台服务器
之前采用上述步骤生成公钥后,将公钥拷贝到server端,但是始终连接不上,步骤都没有问题,后来发现,在secureCRT软件中,没有将ssh-rsa显示全,采用双屏显示器拉长才显示全(这个问题找了一晚上,真悲催!...
在Linux的各个虚拟集中实现ssh进行远程登录,设置各个虚拟机之间的免密码登录。
主要介绍了Hadoop SSH免密码登录以及失败解决方案的相关资料,需要的朋友可以参考下
这个文档详细讲解了如何实现本机与远端服务器的面密码登陆,以及在设置中遇到一些常见的问题。。例如,反复按照步骤设置后仍无法实现免密码登陆时的解决方案
一键配置集群各节点ssh免密码登录 首先确保每个节点已经安装了expect ,确保服务器/root/script路径存在 修改每个节点ssh配置 vi /etc/ssh/ssh_config ------------------------------- # StrictHostKeyChecking ...
VMware中建立centos系统,两个centos系统实现免密码登陆,源码截图,亲自实现。
主要给大家介绍了关于centos配置ssh免密码登录后仍要输入密码的解决方法,需要的朋友可以参考下
公司的版本服务器使用了GIT,每次pull/push都要提示输入密码,比较烦。而且由于网络速率比较慢,等好一段时间才能输密码。为了避免输入密码,折腾了好久。