017 Linux 之啥是 ssh ?

Posted 不甩锅的码农

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了017 Linux 之啥是 ssh ?相关的知识,希望对你有一定的参考价值。

1 什么是 ssh?有什么用?

(1)ssh 是一种协议

SSH(Secure Shell) 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议,利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

(2)ssh 服务

Linux 一般作为服务器使用,我们通常使用 ssh 服务(指实现 SSH 协议的软件)远程登录到 Linux 服务器来管理维护系统。

  • OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现。
  • OpenSSH 的服务端:sshd(Linux 服务器启动该服务)
  • OpenSSH 的客户端:ssh(客户端启动,通过它来访问服务端)

2 ssh 基于密匙的安全验证过程是怎样的?

需要创建一对密匙,把公用密匙放在服务器上。连接SSH服务器时,客户端向服务器发出请求,用你的放的公钥匙进行安全验证,服务器收到请求之后,先在该服务器上你的主目录下寻找你的公匙,然后把它和你发送过来的公用密匙进行比较。如果两个密匙一致,服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以用你的私匙解密。

3 对称加密与非对称加密区别是什么?

(1)对称加密

加密(encryption)与解密(decryption)用的是同样的密钥(secret key)。效率高,对称加密的一大缺点是密钥的管理与分配,在发送密钥的过程中,密钥有很大的风险会被黑客们拦截。现实中通常的做法是将对称加密的密钥进行非对称加密,然后传送给需要它的人。

(2)非对称加密

非对称加密为数据的加密与解密提供了一个非常安全的方法,它使用了一对密钥,公钥(public key)和私钥(private key)。私钥只能由一方安全保管,不能外泄,而公钥则可以发给任何请求它的人。非对称加密使用这对密钥中的一个进行加密,而解密则需要另一个密钥。目前最常用的非对称加密算法是RSA 算法。虽然非对称加密很安全,但是和对称加密比起来,它非常的慢,所以我们还是要用对称加密来传送消息,但对称加密所使用的密钥我们可以通过非对称加密的方式发送出去。

4 非对称加密 RSA 算法的作用

(1)加密:公钥加密私钥解密

主要用于将数据资料加密不被其他人非法获取,保证数据安全性。使用公钥将数据资料加密,只有私钥可以解密。即使密文在网络上被第三方获取由于没有私钥则无法解密,从而保证数据安全性。

  1. A 在自己电脑上生成 RSA 钥匙文件,一个私钥文件一个公钥文件,并将他的公钥传送给 B。
  2. 此时 B 要传送信息给 A,于是 B 用 A 的公钥加密他的消息,然后传送给A。(网络上传输的密文,没有 A 的私钥无法解密,其他人获取之后也没用)
  3. A 用他的私钥解密 B 的消息。

(2)认证:私钥加密公钥解密

主要用于身份验证,判断某个身份的真实性。使用私钥加密之后,用对应的公钥解密从而验证身份真实性。
SSH 公钥登录则用的是第二种功能。

5 如何生成 ssh 密钥对?

  • 运行完上面的命令会生成一对公私钥,默认保存在 ~/.ssh/ 下的 id_rsa,id_rsa.pub。
  • id_rsa 是私钥,id_rsa.pub 是公钥,私钥一定要妥善保管。
  • id_rsa 的权限必须是 600 , chmod 600 ~/.ssh/id_rsa。600 即(-rw------)只有所有者才有读和写的权限。

6 ssh 配置 config 文件与快捷登陆

(1)快捷登陆配置

在 ~/.ssh/ 下可以自己定义一些快捷键登陆的配置,该配置在 ~/.ssh/config

config 结构如下:

Host kafka_broker_01                      #定义主机别名
ServerAliveInterval 30
HostName 122.22.222.102                   #主机ip
Port 33033                                #ssh 端口
User bila                                 #用户名
IdentityFile /Users/bila/.ssh/id_rsa      #私钥
ProxyCommand ssh w_x_bastion -C -W %h:%p  #设置跳板机

(2) 登陆

指定用户登录

ssh bila@192.168.0.103

指定端口号登录

ssh ssh 192.168.0.103 -p 2022

7 附录

GitHub如何配置SSH
Key https://blog.csdn.net/u013778905/article/details/83501204
远程管理服务 SSH
https://www.jianshu.com/p/d3412c5ebdaa

8 小结

啥是 SSH?SSH 的作用;对称加密、非对称加密的区别和作用;ssh 密钥对生成,以及 ssh 配置快捷登陆。

「不甩锅的码农」原创,转载请注明来源,未经授权禁止商业用途!同名 GZH 请关注!

以上是关于017 Linux 之啥是 ssh ?的主要内容,如果未能解决你的问题,请参考以下文章

齐博CMS:啥是SSH

017 SSH

017在Linux系统下安装和配置Tomcat

017_linux驱动之_信号量

Linux基本功杂记——[017]——LFS构建逻辑理解

linux操作系统 啥是系统调用?啥是库函数?二者有何区别?