基本介绍
ssh:安全的远程登陆
要有客户端与服务器端,客户端主动链接服务端,那么服务端地址是不能变的。
socket:套接字 标识应用唯一的地址
tcp/udp port端口号
cat /etc/service查看所有的端口号
备注:通过IP找到了这台机器,通过端口号找到相对应的应用程序
注意:IP和端口号要固定
centos默认openssh
格式
ssh[user@]host[COMMAND]
ssh root@192.168.10.6‘IP a’
#查看这个主机的IP地址,查询完自动退出
选项
-p port:远程服务器监听端口
-b:指定链接的源IP
两块网卡的时候,指定希望的网卡链接对方
-v:调试模式
看详细的过程
-C:压缩方式
-X:支持x11转发
-Y:支持信任x11转发
ForwardX11Trusted yes
-t:强制伪tty分配
ssh -t remoteservre1 ssh remoteservre2
配置文件
服务器端配置文件
/etc/ssh/sshd_config
客户端配置文件
/etc/ssh/ssh_config
openssh软件组成
相关包:
openssh
openssh-clients
openssh-server
工具:
clients:ssh,scp,sftp,slogin
windows客户端:
xshell,putty,securecrt,sshsecureshellclient
Server:sshd
ssh验证两种方式
1、基于password
2、基于key
当用户远程连接ssh服务器时,会复制ssh服务器/etc/ssh/ssh_host*key.pub
(CentOS7默认是ssh_host_ecdsa_key.pub)文件中的公钥到客户机的 ~./ssh/know_hosts中。下次连接时,会自动匹配相应私钥,不能匹配,将拒 绝连接第一种是说账号密码验证,我们第一次用ssh链接一台主机的时候,会出现询问如图
试问这是什么意思?
这是询问你链接的机子是不是真实机器呢,不是假冒的机器,确认下,没问题键入 y,当我们键入y,它会记录你的信息,如IP 公钥等等。
第二次链接的时候就不会出现提示,为什么?
因为当我们第一次链接时键入”y“后,记录了你的信息,当我们再次链接时,它会拿你记录的信息和你当前的信息做比较,看是否还是原来的那台电脑,如果不是,它会认为你这台机器是一个假冒的,拒接链接,解决了钓鱼网站的威胁。
试想
假如有三台主机分别是192.168.43.6、192.168.43.7、192.168.43.17,6这台主机正常链接7主机,当6断开与7的链接后,我们用17来冒充7与6建立链接。有没有效果?
说明:我们是把192.168.43.17主机IP改成了192.168.43.7来与192.168.43.6建立链接。
会出现下图
有人会说改物理地址,那也是会出现上图。我们来了解下它的底层原理就知道了。
底层原理:在第一次链接的时候,会记录改主机的公钥信息,放在当前用户的家目录ssh目录里,当你链接的时候,用私钥签名,让公钥解密。
所以:只要拿到对方的私钥就可假冒这台主机。
所有说私钥安全很重要!
基于用户名口令验证方式工作原理
当用户发送ssh请求到ssh服务端时,服务端回应客户端,并把自己的公钥发给客户端,客户端接收到服务端的公钥后,并用服务端的公钥对自己的密码加密发给服务端,服务端接收后,用自己的私钥进行解密,得到的密码,去验证对不对,正确就能正常登陆。如图
精彩内容请看下一篇