ssh两台机器建立信任关系无密码登陆

在建立信任关系之前先看看基于公钥、私钥的加密和认证.

私钥签名过程

消息-->[私钥]-->签名-->[公钥]-->认证
私钥数字签名,公钥验证
  1. Alice生成公钥和私钥,并将公钥发送给Bob。
  2. Alice用自己的私钥生成签名,也就是加密。
  3. Alice将签名的信息发送给Bob。
  4. Bob用Alice的公钥进行解密,验证签名真伪。

公钥加密过程

消息-->[公钥]-->签名后的消息-->私钥-->解密后的消息
公钥加密,私钥解密
    1. Bob生成自己的公钥和私钥,并将公钥发送给Alice。
    2. Alice用Bob的公钥对信息进行加密。
    3. Alice将加密后的信息发送给Bob。
    4. Bob用他的私钥进行解密,得到Alice发送的信息。

建立主机之间的信任关系

了解了上面公钥和私钥的知识,现在我们来在两个主机之间建立信任关系,

ssh-keygen -t rsa #执行完之后会在家目录下的.ssh文件夹下生成id_rsa、id_rsa.pub两个文件,后者是公钥。

scp .ssh/id_rsa.pub  user1@192.168.1.101:/home/user1/

(

将生成的id_rsa.pub文件复制到B服务器上(注意文件的位置为/root/.ssh,如果是其他用户应该是/home/user/.ssh,即为当前用户的主目录)

)

在另一台机器上

cd /home/user1

cat id_rsa.pub >> .ssh/authorized_keys

chmod 700 ~/.ssh

chmod 600 ~/.ssh/authorized_keys

测试是否成功:

ssh [email protected]

如果指定端口加-p 端口号。

退出终端,输入exit即可。

时间: 2024-10-14 19:04:46

ssh两台机器建立信任关系无密码登陆的相关文章

Linux两台机器简历信任

cd ~/.ssh ssh-keygen  -t  rsa scp ./id_rsa.pub [email protected]:/root/.ssh/authorized_keys

ssh免密码登陆 - 服务器建立信任关系

假设机器A,B,C,要建立A为主,可以免密码直接ssh进入B,C.操作如下: 假设只用用户yimr建立信任,则使用yimr用户登陆主机A,执行如下操作: 产生公钥和私钥 ssh-keygen -t rsa 然后,在/home/用户/.ssh目录下,产生id_rsa, id_rsa.pub文件 将公钥复制到BC节点 scp .ssh/id_rsa.pub B:/home/用户名/.ssh/A.pub 进入BC节点,将公钥放在authorized_keys文件中 cat .ssh/A.pub >>

两个不同的林根域之间如何建立信任关系

标签:张兆森 步骤:DC的IP地址:192.168.1.1 (DC1) 域名为:benet.com 2.另一个林根域的IP地址:192.168.1.2 (DC2) DNS不要指向主DC了,因为这里跟主DC没有关系了, 3.安装DC 4.创建转发器 5.建立信任关系 实验步骤: 1.安装DC,选择在新林中新建域树 2.这里输入新域的域名 3.林功能选择最高. 4.这里就一直选择下一步,直到出现这 个提示,这里选择是 5.还是一直选择是,直到出现这里, 输入密码,这的密码是你误删DC上的数据, 还原

Linux SSH , SCP 建立信任关系(免密传输)

最近有个需求,Jenkins需要将war传输到各个项目节点中,所以需要远程执行各个节点的shell脚本.但是中间有个输入密码的过程,在自动化部署中是行不通的,故需要增加免密登录.具体如下: 如果想在 A 这太机器上可以不需要密码就 ssh 到 B . C 两台机器上,可以采用如下的方法: ( 1 ) 在 A 机器上: ssh-keygen -t rsa 期间要求输入的,直接回车 这个命令将为 A 上的用户生成其密钥对,询问其保存路径时直接回车采用默认路径,当提示要为生成的密钥输入passphra

linux建立信任关系

(1).切换到需要建立信任关系的用户(2).执行命令:ssh-keygen  -d,然后一直回车.该命令会在用户home目录下生成一个隐藏的.ssh目录.目录里面有两个文件:id_dsa.id_dsa.pub这两个是密钥文件,id_dsa是密钥,id_dsa.pub是公钥(3).在.ssh目录下建立文件:authorized_keys(4).在主机vm2上面执行步骤1~3(5).将vm1主机的id_dsa.pub文件内容追加到vm2主机的authorized_keys(6).将vm2主机的id_

Linux CentOS7 两台机器之间免输入密码相互登录(密钥对认证)

Linux CentOS7 两台机器之间免输入密码相互登录(密钥对认证) 两台机器为: 主机名:fxq-1,IP:192.168.42.181 主机名:fxq-2, IP:192.168.42.182 w命令可以查看当前登录用户的信息 [[email protected] ~]# w  23:59:42 up 12 min,  1 user,  load average: 0.00, 0.07, 0.11USER     TTY      FROM             [email prot

解决Error"基础连接已经关闭: 未能为SSL/TLS 安全通道建立信任关系

今天写程序的时候调用到一个第三方的DLL文件,本机调试一切都正常,但是程序不是到服务器以后一直提示一个BUG:"基础连接已经关闭: 未能为SSL/TLS 安全通道建立信任关系". 后来把DLL文件进行反编译,发现是在获得请求的时候出错了. 引用 WebResponse response = WebRequest.Create("https://--").GetResponse(); 于是在服务器上用浏览器打开上面的地址,发现会弹出一个确认证书的窗口,看来是证书问题.

[转]两台linux建立GRE隧道

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://333234.blog.51cto.com/323234/931805 1.拓扑图: 备注:因为应用原因,需要在linux2上添加一个公网地址,并且在中间路由设备不受控制的情况下,Linux1能访问到linux2上面的公网地址. 2.基本接口配置: linux1:192.168.10.1/24 linux2:192.168.20.2/24 R1: interface FastEt

两台机器之间移动数据库的最简单

在两台机器之间移动数据库的最简单(尽管不是最快)的方法是在数据库所在的机器上运行下面的命令: shell> mysqladmin -h 'other_hostname' create db_name shell> mysqldump --opt db_name | mysql -h 'other_hostname' db_name 如果你想要从远程机器通过慢速网络复制数据库,可以使用: shell> mysqladmin create db_name shell> mysqldum