ssh建立原理 及配置两台主机的远程连接实现免密登陆

一、SSH是什么?具体的实现有哪些?

SSH是一种协议标准

SSH是用在安全远程登录以及其它安全网络服务

二、SSH原理:
        SSH为Secure Shell的缩写,默认端口22,由IETF的网络小组(Network Working Group)所制定;SSH为建立在应用层基础上的安全协议。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。SSH仅仅是一协议标准,其具体的实现有很多,既有开源实现的OpenSSH,也有商业实现方案。使用范围最广泛的当然是开源实现OpenSSH。

三、SSH工作原理(即非对称加密)
在使用前,我们需要分析一个问题:为什么需要SSH?

SSH协议与telnet、ftp等协议主要的区别在于安全性。这就引出下一个问题:如何实现数据的安全呢?首先想到的实现方案肯定是对数据进行加密。加密的方式主要有两种:

对称加密(也称为密钥加密)
非对称加密(也称公钥加密)
对称加密原理:指加密解密使用同一套密钥。对称加密的加密强度高,很难破解。

但是在实际应用过程中不得不面临一个棘手的问题:如何安全的保存密钥呢?尤其是考虑到数量庞大的Client端,很难保证密钥不被泄露。一旦一个Client端的密钥被窃据,那么整个系统的安全性也就不复存在。为了解决这个问题,非对称加密应运而生。

四: 生成公钥和私钥的方法:
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
ssh-keygen是用于产生密钥的工具。其中参数:

-t:指定生成密钥的类型(rsa、dsa、ecdsa等);
-P:指定passphrase,用于确保私钥的安全;
-f:指定存放私钥的文件,公钥文件默认和私钥同目录,只是公钥的文件名是私钥的文件名加后缀.pub;
会在指定目录生成文件id_rsa和id_rsa.pub,其他文件是在使用过程中过生成,可以修改。其中:

id_rsa:存放私钥;
id_rsa.pub:存放公钥;
known_hosts:存放已认证的远程主机的公钥。连接其他服务端时,生成此文件并将其他服务端的公钥追加到此文件中;
authorized_keys:存放已授权的客户端公钥,可用于客户端免登录。当其他客户端想登录此服务端时,新建该文件并将这些客户端的公钥追加到此文件中就可以免密登录;
config:用于配置要快速访问的服务端的别名等配置信息。可配置多个服务端的相关信息,可使用通配符,如果多次匹配以第一次匹配为准,这样就可以使用ssh 别名 直接登录。
五:

非对称加密工作原理:

(服务器建立公钥: 每一次启动 sshd 服务时,该服务会主动去找 /etc/ssh/ssh_host* 的文件,若系统刚刚安装完成时,由于没有这些公钥,因此 sshd 会主动去计算出这些需要的公钥,同时也会计算出服务器自己需要的私钥。)

1.客户端主动联机请求: 若客户端想要联机到 ssh 服务器,则需要使用适当的客户端程序来联机,包括 ssh, putty 等客户端程序连接。

2.服务器传送公钥给客户端: 接收到客户端的要求后,服务器便将第一个步骤取得的公钥传送给客户端使用 (此时应是明码传送,反正公钥本来就是给大家使用的)。

3.客户端记录并比对服务器的公钥数据及随机计算自己的公私钥: 若客户端第一次连接到此服务器,则会将服务器的公钥记录到客户端的用户家目录内的 ~/.ssh/known_hosts 。若是已经记录过该服务器的公钥,则客户端会去比对此次接收到的与之前的记录是否有差异。若接受此公钥, 则开始计算客户端自己的公私钥。

4.回传客户端的公钥到服务器端: 用户将自己的公钥传送给服务器。此时服务器:具有服务器的私钥与客户端的公钥,而客户端则是: 具有服务器的公钥以及客户端自己的私钥,你会看到,在此次联机的服务器与客户端的密钥系统 (公钥+私钥) 并不一样,所以才称为非对称加密系统。

5.开始双向加解密: (1)服务器到客户端:服务器传送数据时,拿用户的公钥加密后送出。客户端接收后,用自己的私钥解密 (2)客户端到服务器:客户端传送数据时,拿服务器的公钥加密后送出。服务器接收后,用服务器的私钥解密,这样就能保证通信安全。

非对称加密有两个密钥:“公钥”和“私钥”。公钥加密后的密文,只能通过对应的私钥进行解密。而通过公钥推理出私钥的可能性微乎其微。

两台主机的远程连接实现免密登陆 

两台虚拟机

1.192.168.134.132

2.192.168.134.131

1.在客户端(centos)产生密钥:ssh-keygen-t rsa -b 2048​​​​​​​

2.一直输入enter 

3.在出现Overwrite(y/s)输入y,继续enter

4.检查是否成功产生密钥:ls -l /root/.ssh/

                                        id_rsa   私钥

                                        id_rsa.pub 公钥 

5.将公钥传输放到服务器上:ssh-copy-id -i root@192.168.134.131

6.输入主机密码

 7。测试

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/548642.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ssh-scan处理手记

登陆一台Linux RedHat As4的服务器,发现有很多网络连接,为本机去连接其他服务器的22端口。再一看进程,好多ssh-scan的进程。估计是密码设得太简单,被人家黑了。处理思路:找到ssh-scan进程的相应程序文件,删…

常用 SQL Server 规范集锦

原文地址 常见的字段类型选择   1.字符类型建议采用varchar/nvarchar数据类型   2.金额货币建议采用money数据类型   3.科学计数建议采用numeric数据类型   4.自增长标识建议采用bigint数据类型 (数据量一大&#xff…

Linux服务器搭建----Web服务器(apache)

WWW的介绍 万维网(亦作“Web”、“WWW”、“W3”,英文全称为“World Wide Web”),是一个由许多互相链接的超文本组成的系统,通过互联网访问。在这个系统中,每个有用的事物,称为一样“资源”&…

Pa interface issue——PA_EXCEED_ROUND_LIMIT

最近处理一个PA_TRANSACTION_INTERFACE_ALL的Error Error_code:PA_EXCEED_ROUND_LIMIT 原因是PA_EXCEED_ROUND_LIMIT is null or too small for cost*invoice_rate - cost*actual_rate. 就是说limit的value为空或者不满足金额*当前汇率与金额*录入时汇率的差额。 问题的难点在于…

C#实现 Linq 序列的Distinct—— IEnumerable.Distinct()——IEqualityComparer

转载自诗人江湖老,原文地址 在C#中使用List或者Collection的时候,我们经常需要使用到Distinct操作,但是微软默认提供的Distinct重载方法并不能满足我们的需求。这时候,我们就需要自己动手做一番工作了。 Distinct方法的重载 Linq…

F5 配置手册 -F5 BIG-IP 10.1-1-激活

F5 配置手册 F5 BIG-IP 10.1-1-激活 统一沟通(中国)有限公司 2012-01-29 前言: F5---太贵! 不过你如果有命运看到这个文章,F5也就不值钱了。 因为:F5提供测试版的虚拟机,我们买不起,总应该玩得起吧! 但愿F5提供更多的机会,给别人机会,也是给自己机会。 参照: 你也可…

[深入学习C#]利用反射给对象赋值

转载自诗人江湖老,原文地址  C#中利用反射能够获取对象的属性信息,也可以利用反射给对象赋值。 我们如果想利用凡是给一个对象属性赋值可以通过PropertyInfo.SetValue()方式进行赋值,但要注意值的类型要与属性保持一致。   假设我们有如下…

快速配置 Samba 将 Linux 目录映射为 Windows 驱动器

一、局域网内的 Linux 服务器上操作步骤:  1、安装samba(CentOS Linux): yum install samba system-config-samba samba-client samba-common2、创建www账号 /usr/sbin/groupadd www/usr/sbin/useradd -g www wwwcat /etc/passw…

用委托来实现IEqualityComparer接口

转载自诗人江湖老&#xff0c;原文地址 class FuncEqualityComparer<T> : IEqualityComparer<T> {readonly Func<T, T, bool> _comparer;readonly Func<T, int> _hash;public FuncEqualityComparer( Func<T, T, bool> comparer ): this( compar…

Beginning iCloud in iOS 5 Tutorial Part 2(转载)

原文地址&#xff1a;http://www.raywenderlich.com/6031/beginning-icloud-in-ios-5-tutorial-part-2 Setting Up the User Interface The Xcode project template we chose already set up an empty view controller for us. We will extend it by adding the current docume…

JQuery Datatables 服务端分页简单应用学习

背景介绍 最近在一个简单小项目中碰到需要一个前端数据表格控件&#xff0c;在看了网上的资料后最终选择了JQuery Datatables。Datatables功能及其强大&#xff0c;基本满足我的所有需求&#xff0c;在加上其插件Editor具有inline模式&#xff0c;很多需要直接修改数据的功能不…

开源文化与开源社区

开源文化的形成  1998年2月8日&#xff0c;Bruce Perens发表的著名文章“TheOpen Source Definition”让当时众多的开源爱好者&#xff08;大多是***和程序员&#xff09;对开源理念有了一个清晰的认识。在那之后&#xff0c;更多的人开始关注开源所带来的实用意义和背后的文…

C#利用反射实现实体类ListT索引器

相关背景: 在项目开发中&#xff0c;我们经常会自定义一些实体类&#xff0c;在某些需要动态赋值的功能中&#xff0c;我们无法知道到下一个需要赋值的字段名称是什么&#xff0c;只知道会从其他返回需要赋值的字段名称和值&#xff0c;这时候就需要实现索引器了&#xff0c;就…

C#利用反射将Datatable转化为指定实体类ListT

背景介绍 在软件开发中肯定免不了和数据库打交道&#xff0c;我们对数据的增删改查最终会转化为SQL在数据库中执行。从SQLServer中查出数据一般有两种方式&#xff1a;一是ADO.NET直接写SQL语句从数据中查出数据&#xff0c;另一种是利用ORM框架得到数据。ADO.NET作为传统的数据…

Java API 设计清单

为什么80%的码农都做不了架构师&#xff1f;>>> 在设计Java API的时候总是有很多不同的规范和考量。与任何复杂的事物一样&#xff0c;这项工作往往就是在考验我们思考的缜密程度。就像飞行员起飞前的检查清单&#xff0c;这张清单将帮助软件设计者在设计Java API的…

利用FSMT进行文件服务器迁移及整合

当企业文件服务器&#xff08;DFS、共享文件夹等&#xff09;面临硬件更新、系统升级或文件服务器合并的情况时&#xff0c;往往会出现不确定的文件丢失、需要重新设置所有权限、无法将多个文件服务器集成到一台服务器上等问题&#xff0c;为了保证文件服务器的数据完整以及权限…

C#利用反射将实体类ListT转化为Datatable

背景介绍 C#中实体类的操作十分简便&#xff0c;一般情况下不需要涉及ADO.NET&#xff0c;如果需要将实体类转化为Datatable&#xff0c;这个时候就需要手动写一个方法了&#xff0c;代码如下图所示&#xff1a; public static class IEnumerableExtention{/// <summary>…

RHEL 6上KVM的安装配置及使用-将物理接口桥接到桥接器

作业环境服务器端操作系统&#xff1a;Red Hat Enterprise Linux Server release 6.0 (Santiago)KVM&#xff1a;qemu-kvm-0.12.1.2-2.113.el6.x86_64 客户端操作系统&#xff1a;Windows 7KVM管理工具&#xff1a;Xming 6.9 一、安装KVM及相关软件 1、KVM 需要有 CPU 的支持&a…

C#中IEnumerableT.Distinct()将指定实体类对象用Lambda表达式实现多条件去重

背景说明 在EF等ORM框架中需要以List实体类的方式对数据进行大量操作&#xff0c;其中免不了对一些数据进行去重复&#xff0c;而C#中IEnumerable.Distinct()便提供了这一功能。只是对刚开始接触的新人来说比价抽象难以接受&#xff0c;本文会对这一功能进行简要说明&#xff…

9个小技巧助你获得职场幸福

想要生活在幸福的职场中&#xff0c;并非无技巧可寻。以下9个小技巧&#xff0c;帮你收获职场幸福。第1招&#xff1a;按部就班地行动 事业成功的人往往耐得住寂寞&#xff0c;在那些看似程式化的进程当中寻找到快乐&#xff0c;他们是善于自我控制的人&#xff0c;可以让时间听…