ToB企服应用市场:ToB评测及商务社交产业平台

标题: 【Linux安全】SSH免密登录 [打印本页]

作者: 写过一篇    时间: 2024-6-9 01:46
标题: 【Linux安全】SSH免密登录
前言

通过SSH实验长途登陆有两种方式:口令登录和公钥登录。本文将从这两种登陆方式的原理展开来讲解如何实现SSH免密登录服务器。
一、SSH简介

● SSH(Secure Shell,安全外壳)是一种网络安全协议,为建立在应用层基础上的安全协议。SSH较为可靠,专为长途登录会话和其他网络服务提供安全性。利用SSH协议可以有用防止长途管理过程中的信息泄漏题目,可以通过加密和认证机制实现安全的访问和文件传输等业务。
● SSH两种安全验证方式:基于口令的安全验证、基于密钥的安全验证
● SSH默认端口为22
二、SSH两种安全验证原理

1. 基于口令的安全验证

假设主机A需要长途毗连服务器B,只要A知道B的帐号和密码,就可以登录到长途主机,而且所有传输的数据都会被加密。但是这种通过口令登陆的方式不能保证正在毗连的服务器就是你想毗连的服务器。可能会有别的服务器在冒充真正的服务器,也就是受到“中间人”这种方式的攻击。

2. 基于密钥的安全验证

假设主机A需要长途毗连服务器B,此时主机A需要为自己生成一对密钥(公钥+私钥),并把自己的公钥存放在服务器B上的~/.ssh/authorized_keys的文件里,当主机A向服务器B发送请求后,服务器B会在自己的~/.ssh/authorized_keys文件中查找是否有主机A的公钥,假如ssh_key文件中存放的主机A的公钥和主机A发送请求时的公钥同等,那么服务器B就会向主机A发送质询,主机A利用私钥对质询举行解密再发送给服务器B,B确认质询后同意建立会话。
基于密钥的安全验证不需要在网络上举行密码的传输而且私钥永久掌握在主机A手里,因此可以很好的抵抗中间人攻击。

三、SSH免密登录

通过对SSH两种安全验证机制的了解,可以发现利用口令登录的方式需要输入密码,而利用公钥登陆的方式制止了输入密码这个步骤。因此SSH基于密钥的安全验证方式可以实现SSH长途免密登录。
实现SSH免密登录的步骤如下:
1. 当地生成密钥对

利用ssh-keygen生成一对密钥,生成的私钥将存放在用户目次下的.ssh/id_rsa中,公钥将存放在用户目次下的.ssh/id_rsa.pub中

生成的两个密钥文件:

2. 将公钥放入服务器中

首先登录服务器,将刚刚在本机生成的公钥复制到服务器的~/.ssh/authorized_keys文件中

查察authorized_keys文件,可以看到公钥已经被写入。

~/.ssh/authorized_keys文件中可以存放多个主机的公钥,每个公钥背面会利用主机名来区分

3. 免密登录服务器

完成以上设置后在本机利用SSH可以免密登录服务器


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4