本机:192.168.1.228
要免密码登陆的远程主机:192.168.1.229
本机和远程用户目录下创建目录
mkdir .ssh
chmod 700 .ssh
本机创建密钥
ssh-keygen -t rsa
在远程主机的可信任列表(~/.ssh/authorized_keys)中将本机公钥(~/.ssh/id_rsa.pub )内容填进去即可:
本机测试是否可以免密码执行:
ssh 192.168.1.229 date
#########################################################################
深入一点点:
从表面上简单的理解一下登录的过程,
首先 ssh-keygen -t rsa 命令生成了一个密钥和一个公钥, 而且密钥可以设置自己的密码
可以把密钥理解成一把钥匙, 公钥理解成这把钥匙对应的锁头,
把锁头(公钥)放到想要控制的server上, 锁住server, 只有拥有钥匙(密钥)的人, 才能打开锁头, 进入server并控制
而对于拥有这把钥匙的人, 必需得知道钥匙本身的密码,才能使用这把钥匙 (除非这把钥匙没设置密码), 这样就可以防止钥匙被了配了(私钥被人复制)
当然, 这种例子只是方便理解罢了,
拥有root密码的人当然是不会被锁住的, 而且不一定只有一把锁(公钥), 但如果任何一把锁, 被人用其对应的钥匙(私钥)打开了, server就可以被那个人控制了
所以说, 只要你曾经知道server的root密码, 并将有root身份的公钥放到上面, 就可以用这个公钥对应的私钥"打开" server, 再以root的身分登录, 即使现在root密码已经更改!
如果想控制n个机器, 那就需要n对钥匙(密钥和公钥), ssh-keygen 命令可以随意更改钥匙对的名字, 比如:
[root@wwy .ssh]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa_192.168.102.12
......
这样私钥和公钥的名字分别就是:
id_rsa_192.168.102.12 和 id_rsa_192.168.102.12.pub
然后将 id_rsa_192.168.102.12.pub 文件的内容, 追加到sever的 ~/.ssh/authorized_keys2 文件中,
最后, 在本地用ssh命令的 -i 参数指定本地密钥, 并登录:
# ssh -i /root/.ssh/id_rsa_192.168.102.12 192.168.102.12
如果密钥设置了密码, 就用密钥的密码登录, 没设密码, 就直接登录进去了
scp也是一样的
如:
scp -i /root/.ssh/id_rsa ./xxx 192.168.102.158:/home/wwy/bak
相关推荐
配置linux ssh免密码登录,第一行生成密钥,第二行是要对哪台机器免密码ssh登录就配置成哪一台,这里root@hadoop00,root是用户名,hadoop00是主机名
linux系统下的ssh免密码登录机制原理及范例
Linux配置ssh免密码登录调试文档,对配置hadoop有帮助
主要是讲Linux系统如何做到SSH免密码登录
linux-ssh免密码登陆
在Linux的各个虚拟集中实现ssh进行远程登录,设置各个虚拟机之间的免密码登录。
主要介绍了Linux下实现SSH免密码登录和实现秘钥的管理、分发、部署SHELL脚本分享,本文先是讲解了SSH免密码登录的创建过程,然后给出了可以分发、部署密钥的Shell脚本,需要的朋友可以参考下
在不使用密码情况下对linux服务器进行ssh登陆
VMware中建立centos系统,两个centos系统实现免密码登陆,源码截图,亲自实现。
假设有 A、 B 两台 Linux 服务器,我们希望能够从其中一台服务器通过 SSH 免密码登录到另一台服务器。 两台服务器的信息如下: 主机名 IP地址 免密码登录用户名 server1 192.168.12.11 guest1 server2 192...
针对两台服务器下的postgres数据库之间,实现无密码互相登录
1.使用包管理器安装openssh: ...将.ssh目录中的id_rsa.pub这个文件拷贝到要登录的服务器的.ssh目录中,然以再运行以下命令来将公钥导入到.ssh/authorized_key文件中 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorize
linux如何配置双机SSH信任然后双向免密码登陆.docx
公司刚上几台Linux,现在要把主机之间都能远程ssh免密码登陆。 二、原理 很简单,使用ssh-keygen 在主机A上生成private和public密钥,将生成的public密钥拷贝到远程机器主机B上后,就可以使用ssh命令无需密码登录到...
1、首先在本机安装openssh-server和openssh-client. 命令:sudo apt-get install openssh-server openssh-client 2、在检查当前的目录下有没有.ssh这个文件,没有... 您可能感兴趣的文章:Linux下SSH免密码登录配置详解
Linux制作RSA KEY并配置SSH客户端或服务器免密码访问
配置分两部分:一是对登录机的配置,二是对被登录机的配置,其中登录机为客户端,被登录机为服务端,也就是解决客户端到服务端的无密码登录问题。下述涉及到的命令,可以直接拷贝到Linux终端上执行,已全部验证通过...