配置LINUX 双机信任无密码访问机制

简介:


首先了解一下加密技术,加密技术通常通过所谓的一对公钥(public keys  private keys)进行加密与解密当SSH服务器主机启动后,主机会产生一个公钥,而客户在与服务器进行连接时,可以通过客户自行产生的密钥连接服务器而客户端在与服务器进行连接时,可以通过随机产生的密钥来连接服务器,也可以通过服务器提供的私钥来进行连接,这与连接时候加密版本有关,当数据由Server端传送到client时,这些数据先经过的公钥(public key)进行加密,所以在传输过程中这些数据是加密的,等这些经过公钥(public key)加密后,就可以通过所谓的私钥进行解秘。SSH有两种

版本的连接模式

SSH version 1

每台机器都可以使用RSA加密方式产生的一个1024位的RSA Key,这个RSA的加密方法来产生公钥与钥方法,version 1 的整个连接简单加密步骤如下:

1.每次SSH daemon(sshd)启动是时都产生一个768位的公钥(或server key)并放在Server

2.若有的客户请求连接,server会将这个公钥穿给客户,Client通过对比本身的RSA加密方法来确认这个公钥

3.Client接收这个768位的server key 之后 client自己会产生一个256位的私钥(host key,并且以加密方式将server key host key凑成完整的key

并把这传给server

4.之后进行连接就以这个1024位的key进行数据的传递

5.clinet端的256位是随机产生的,所以你本次连接于下次连接使用的Key是不一样的。

SSH version 2

version 1 不同的是,version 2 中将不产生server key,所以,当client端连接到Server端是,两者通过Diffie-Hellman的密钥交换产生一个共享key,之后两者通过类似Blowfish的算法进行同步加密操作

了解完基本的原理以后我们来做不用密码即可以登陆的ssh用户

我们可以把client产生的key复制到server中这样,以后client登陆server时,

由于两者ssh要连接信号传递中就已经对比过key,因此可以直接进入数据传  输  接口而不用密码访问。

1.首先在client上建立public Keyprivate key,需要使用ssh-keygen命令

[root@localhost .ssh]# ssh-keygen   –trsa

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):<---enter

Enter same passphrase again:<---enter

Your identification has been saved in /root/.ssh/id_rsa.

Your public key has been saved in /root/.ssh/id_rsa.pub.

The key fingerprint is:

e8:8a:5e:ae:c7:13:45:d0:81:cd:3f:e6:1e:f8:88:5aroot@localhost.localdomain

2.然后将Private Key 放在client上的宿主目录,一般放在/root/.ssh/目录中

并修改权限为user可读

3最后,将Public Key 放在任何一个你想登陆主机server中的某user的宿主目录

下的.ssh/子目录人证文件中即可。

4现在192.168.0.6client 想连接到192.168.0.8上用ssh-keygen –trsa产生key

(-t参数是使用和种密码)这时在我的/root/.ssh/里边产生了三个文件分别是公钥

(id_rsa.pub)与私钥(id_rsa)另外要注意的就是id_rsa文件权限他必须是-rw------否则回不安全,id_rsa.pub就是公钥,把这个放到server目录上去用命令

[wds@localhost .ssh]#sftp id_rsa.pub root@192.168.0.8

[wds@localhost .ssh]#passwd

[wds@localhost .ssh]#put id_rsa.pub

[root@localhost .ssh]#uploading id_rsa.pub to /root/.ssh/

[root@localhost .ssh]#exit

然后到服务器上去192.168.0.8

[root@localhost .ssh]# ssh –lroot 192.168.0.8

[root@localhost .ssh]# cd /root/.ssh/

[root@localhost .ssh]#more id_rsa.pub >> authorized_keys 这样就可以了

[root@localhost .ssh]#

返回client192.168.0.6

[root@localhost .ssh]# exit

[root@localhost .ssh]# ssh 192.168.0.8

这样无需要密码直接登陆到服务器上了





      本文转自天真花语  51CTO博客,原文链接:http://blog.51cto.com/caibird/659561,如需转载请自行联系原作者




相关文章
|
3天前
|
Ubuntu Linux 编译器
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
|
3天前
|
存储 Linux C语言
Linux:冯·诺依曼结构 & OS管理机制
Linux:冯·诺依曼结构 & OS管理机制
9 0
|
1天前
|
Linux 数据库
linux守护进程介绍 | Linux的热拔插UDEV机制
linux守护进程介绍 | Linux的热拔插UDEV机制
linux守护进程介绍 | Linux的热拔插UDEV机制
|
3天前
|
网络协议 Shell Linux
LabVIEW 在NI Linux实时设备上访问Shell
LabVIEW 在NI Linux实时设备上访问Shell
|
3天前
|
安全 Linux 调度
xenomai+linux双内核下的时钟管理机制
clock是操作系统正常运行的发动机,系统利用时钟中断维持系统时间、促使任务调度,以保证所有进程共享CPU资源;可以说,“时钟中断”是整个操作系统的脉搏。那你是否好奇xenomai cobalt内核和Linux内核双内核共存的情况下,时间子系统是如何工作的?一个硬件时钟如何为两个操作系统提供服务的?本文将揭开xenomai双核系统时间机制
11 0
xenomai+linux双内核下的时钟管理机制
|
5天前
|
Unix Shell Linux
在 Linux 上把 Vim 配置为默认编辑器
在 Linux 上把 Vim 配置为默认编辑器
|
6天前
|
存储 Web App开发 Ubuntu
整理16款适用于较旧低配置电脑的最佳Linux发行版
在本指南中,趣云笔记(https://www.ecscoupon.com/)介绍了一些最好的Linux发行版,你可以将它们安装在旧PC上并为其注入新的活力。
24 0
|
6天前
|
Linux 数据安全/隐私保护
Linux 读写权限的配置
Linux 读写权限的配置
11 0
|
6天前
|
关系型数据库 MySQL Linux
Linux 文件访问权限说明
Linux 文件访问权限说明
11 0
|
7天前
|
关系型数据库 MySQL Linux
Linux CentOs7 安装Mysql(5.7和8.0版本)密码修改 超详细教程
Linux CentOs7 安装Mysql(5.7和8.0版本)密码修改 超详细教程