SSH是什么?
早期的主机用来登录的协议是telnet协议,基与TCP的23端口工作。
telnet的缺陷:用户的认证是明文的。
数据传输过程的明文的。
SSH:基于TCP协议的22端口,C/S架构的。ssh通常为两个版本:V1和V2版本,但是V1在设计上有缺陷 ,容易受到攻击,便废弃了。
监听状态:就是服务器端启动起来,等待客户端连接的状态。
客户端:linux:ssh
windows:putty、Secure CRT(很多软件公司都在用的远程连接工具)、Xmanager、MobaXterm
服务器端:sshd
OpenSSH(开源):ssh和sshd。
服务器端:sshd(配置文件位于/etc/ssh/sshd_config)
客户端:ssh(配置文件位于/etc/ssh/ssh_config)
[root@localhost ssh]# ls
moduli sshd_config ssh_host_ecdsa_key.pub ssh_host_ed25519_key.pub ssh_host_rsa_key.pub
ssh_config ssh_host_ecdsa_key ssh_host_ed25519_key ssh_host_rsa_key
ssh_host_ecdsa_key、ssh_host_ecdsa_key.pub
ssh_host_rsa_key、ssh_host_rsa_key.pub:这俩个(rsa和dsa)算法是为v2版本准备的,优先使用rsa。
ssh_host_ed25519_key、sh_host_ed25519_key.pub:这个是为v1算法准备的
私钥文件和配置文件至关重要,所以权限都是600
使用pstree查看进程,会有一个sshd服务主进程来监听客户端请求,一旦有用户请求进来了,就会生成一个子进程来响应客户端的请求,所以登陆的用户多了,ssh进程会启动多个。
这是当我使用三个pts时,是上图。
SSH认证的实现:
sshd:主机密钥(就是在你第