远程连接
远程连接
分类#
ssh :加密,压缩 远程连接加密协议
telnet :明文,无压缩 远程协议
telnet 192.168.19.26 80 这里telnet用途是程序 (80端口是否打开)
openssh (免费)
服务名称:sshd
服务端主程序:/usr/sbin/sshd
服务端配置文件:/etc/ssh/sshd_config
ssh公钥传输原理#
客户端首次 发起连接,服务端 会生成一个随机会话id,会将 服务端的 公钥 以及会话id发给客户端。
客户端收到会话id 以及 服务端公钥 ,会用客户端自己的公钥 以及会话id 做运算 产生一个结果,然后再用服务端的公钥加密
再将这个加密结果 传给服务端,服务端收到加密结果后,会用自己的私钥 解密,得到运算客户端的公钥和会话id 运算的结果。
因为已知会话 id 所以就可以得到客户端的公钥,最后双方持有对面的公钥
#
2、常用算法 在对称加密算法中常用的算法有:DES、3DES、TDEA、Blowfish、RC2、RC4、RC5、IDEA、SKIPJACK等。
3、特点 1、加密方和解密方使用同一个密钥; 2、加密解密的速度比较快,适合数据比较长时的使用; 3、密钥传输的过程不安全,且容易被破解,密钥管理也比较麻烦;
#
格式#
ssh +选项+用户名 @IP地址
默认端口号是22
做实验时建议修改端口号,默认时22.别人很轻松就进你的服务器
#可以更改端口号
#默认22 修改端口号
#可以修改,不需要询问
#ask 改成no 就可以不用询问 yes or no
#没改之前需要询问 yes or no
#改了之后不需要询问
ssh -l 指定登录名称
ssh -p zhi顶登录带你扣
ssh -t 方便跳板连接命令
如:ssh -t 192.168.19.26 ssh -t 192.168.19.28 ssh 192.168.19.25
跳板机 :一个客户端连接一个服务端无法连接,中间需要加个辅助服务端,辅助服务端称为跳板机。辅助服务端连接内网和外网
#来自于 192.168.91.100的所有流量全部拒绝.
#25服务器无法访问27服务器了,用到跳板
#用跳板命令,输入跳几次的密码
实验一 故障案例 (一台服务器下线,连不上怎么办)#
#准备三台服务器
#将test26 服务及关机,模仿下线
#去27服务端,将IP地址临时改成26服务端的IP地址
#去25客户端 连接26服务端
#开启26服务端 ,模仿新机上线
#去27服务端,重启网络。恢复原来的IP
#再回到25客户端里,重连26服务端。显示远程主机标识已更改
#cd 到当前目录下的ssh中,将保存密钥的文件删除或者将里面内容删掉
#再重连,连接成功
实验二 白名单实验#
#准备三个服务器
#25服务器下编辑
#在最下面插入一段程序。
意思:默认拒绝所有,允许所有主机来访问我的yr用户,只允许192.168.19.27下的张三访问
#重启sshd
#无法访问其他用户
#加了用户yr 可以访问了
#在26服务端船建个用户名为zhangsan的
#26服务器下的zhangsan无法访问
#去27服务器下创建个名为zhangsan的用户
#27服务器下的zhangsan可以访问
实验三 使用密钥对应免交户验证登录#
#免交户密钥 命令, 下面指定存放路径,默认~/ .ssh/
#设置密码
#再输入一次密码
#生成密钥
#已在存放路径中
#将公钥文件导入对方用户,指定路径
#访问26服务器,直接访问,无需密码
#
#
格式 :sshpass +选项+命令
-p passwd #后 跟密码它允许你使用 -p参数指定文密码,然后直接登录远程服务器
-f filename #后跟保存密码的文件名,密码是文件内容的第一行
-e #将环境变量 SSHPASS 作为密码
#
-H 指定主机
-i 显示详细信息
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?