0%

OpenSSH软件套装

OpenSSH是一个实现SSH协议的软件,它主要分为两个端:SSH Server和SSH Client。
约定:以下所指的“连接”都指“SSH连接”。

一、SSH Server

用来提供SSH服务。
重要的有两个部件,分别是“sshd程序”和“sshd_config文件”。
“sshd程序”是SSH Server的“daemon程序”,“sshd_config文件”是“sshd程序”使用的配置文件。

二、SSH Client

用来请求SSH服务。
重要的有两个部件,分别是“ssh程序”和“ssh_config文件”。
“ssh程序”是SSH Client的客户程序,“ssh_config文件”是“ssh程序”使用的配置文件。关于“ssh程序”,可见《ssh命令》。关于“ssh_config文件”,可见《ssh_config配置文件》

三、其他

另外,OpenSSH还有一个处理密钥相关内容的机制,在这个机制中主要有以下这些内容:

3.1、“ssh-keygen程序”用于创建,管理,转换密钥

“ssh-keygen程序”是用来创建,管理和转换密钥的工具。详细内容见《ssh-keygen命令》

3.2、配置密钥用于建立SSH连接

为了让SSH Client能够以xxx用户身份连接到SSH Server,需要经过以下步骤:

  1. 使用“ssh-keygen程序”创建公钥私钥对
  2. 将公钥的内容追加到SSH Server所在主机的“/home/xxx/.ssh/authorized_keys”文件中
  3. 将私钥分发给所有有权以xxx用户身份连接到SSH Server的SSH Client

3.3、管理可信任SSH Server的Host Key

当SSH Client连接SSH Server的时候,会将SSH Server所在主机的Host Key追加保存到SSH Client所在主机的“/home/xxx/.ssh/known_hosts”文件中,下次当该SSH Client再次连接同一个(IP地址或者域名一样)SSH Server的时候,会去判断两次连接中SSH Server所在主机的Host Key是否一致,如果不一致,很有可能存在中间人攻击。

3.4、使用“ssh-agent程序”接管“公钥私钥验证匹配计算过程”

详见《ssh-add命令》《ssh-agent命令》

四、以下是一些实践文章的链接

您的支持将鼓励我继续分享!