linux机器间建立SSH信任关系

linux机器间建立SSH信任关系

 

ssh信任关系,是指一台服务器上的一个用户信任客户端的一个用户,允许这个用户不输入密码登录,另一个说法叫做public_key_auth。实际上就是证书信任。 

 

实际步骤

步骤

DSA

RSA

1在机器a上,

在用户home目录下生成一个隐藏的.ssh目录。

目录里面有两个文件:

id_<X>sa、id_<X>sa.pub

ssh-keygen  -d,然后一直回车

 

将会在~/.ssh目录下生成两个文件,id_dsa、id_dsa.pub,分别是私钥和公钥。注意id_dsa文件的权限必须是600或644

ssh-keygen -t rsa,然后一直回车 

 

将会在~/.ssh目录下生成两个文件,id_rsa和id_rsa.pub,分别是私钥和公钥。注意id_rsa文件的权限必须是600或644。 

2在机器b上,authorized_keys文件加上机器a上的id_<X>sa.pub文件内容.

到服务器用户的~/.ssh目录下,创建一个文件authorized_keys2(如果已经有了,直接编辑),把id_dsa.pub里的内容(只有一行文本)加到文件里面保存。 

到服务器用户的~/.ssh目录下,创建一个文件authorized_keys(如果已经有了,直接编辑);

把机器a中id_rsa.pub里的内容(只有一行文本)加到机器b中authorized_keys文件里面保存。 

3在机器b上,/etc/hosts或者/etc/hosts.allow加上a的IP地址.

 

 

4那么机器a可以SSH访问机器b.

ssh username@remotehost

ssh username@b

ssh username@b

5.在机器a上,authorized_keys文件加上机器b上的id_<X>sa.pub文件内容.

到服务器用户的~/.ssh目录下,创建一个文件authorized_keys2(如果已经有了,直接编辑),把id_dsa.pub里的内容(只有一行文本)加到文件里面保存。 

到服务器用户的~/.ssh目录下,创建一个文件authorized_keys(如果已经有了,直接编辑),把id_rsa.pub里的内容(只有一行文本)加到文件里面保存。

6.在机器a上,/etc/hosts或者/etc/hosts.allow加上b的IP地址.

 

 

7在两个Linux之间建立信任关系,互相访问不用输入密码

ssh username@a

ssh username@b

ssh username@a

ssh username@b


  注释: authorized_keys 不能自动生成的话,就自己手工copy一份公共秘钥文件的形式.

注意事项:

   成功之后用ssh或者scp命令都不用输入密码【建立后第一次访问可能要确认一次】,如果不成功可能原因如下:

 

    1、.ssh目录以及目录内文件权限不正确

 

    .ssh目录权限为700,目录内文件权限为644 (600也可以)

 

2、复制公钥文件id_dsa.pub的时候复制了多余的字符,比如空格或者换行,所以我上面演示的例子用了一种看起来比较麻烦但算是安全的做法.

 

 

 

参考文献:

http://www.2cto.com/os/201211/165977.html

http://www.cnblogs.com/xianfish/archive/2010/04/01/1702536.html 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值