iOS 逆向编程(六) SSH、OpenSSH、SSL、OpenSSL 简介与关系

简介: iOS 逆向编程(六) SSH、OpenSSH、SSL、OpenSSL 简介与关系

一、简介

  • 如果你仔细注意,在使用 Cydia 安装 OpenSSH 的时候,你会发现它是先安装了 OpenSSL 在安装 OpenSSH,他们直接是有什么关联跟区别呢?

  • SSLSecure Sockets Layer 的缩写,是为网络通信提供安全及数据完整性的一种安全协议,在传输层对网络连接进行加密,可以说它是一个协议或者说一个标准。
  • OpenSSL:既然说 SSL 是协议或者标准,那么就有对应的实现,OpenSSL 就是 SSL 的开源实现,绝大部分 HTTPS 请求等价于: HTTP + OpenSSL
  • SSHSecure Shell 的缩写,意为 安全外壳协议 , 是一种可以为远程登录提供安全保障的协议,使用 SSH ,可以把所有传输的数据进行加密,中间人 攻击方式就不可能实现,能防止 DNS 欺骗和 IP 欺骗,中途拦截篡改数据,它也是一个协议或者说一个标准。
  • OpenSSH:同上,既然协议或标准,那么就有实现,OpenSSH 就是 SSH 协议的免费开源实现。
  • OpenSSHOpenSSL 有什么关系呢?:简单来说 OpenSSH 的加密就是通过 OpenSSL 完成的,相当于 OpenSSH 是依赖 OpenSSL 的。

二、SSH 版本问题

  • SSH 目前有两个版本 SSH-1SSH-2,目前比较用的多的是 SSH-2,在我们开发中,客户端和服务端版本要保持一致才能通信。
  • 如何查看 SSH 客户端和服务端版本呢?打开命令行:
// 通过命令进入 ssh 文件
dengzemiaodeMacBook-Pro:~ dengzemiao$ cd /etc/ssh
// 查看文件列表
dengzemiaodeMacBook-Pro:ssh dengzemiao$ ls
moduli    ssh_config  sshd_config
// ssh_config 是客户端文件,如果你的电脑作为客户端就查看这个文件
// sshd_config 是服务端文件,如果你的电脑作为服务端就查看这个文件
  • 我这里呢 MAC 电脑是客户端,所以我查看一下 ssh_config 文件即可,打开文件之后里面的 Protocol 字段就是版本号
// 查看 ssh_config 文件
dengzemiaodeMacBook-Pro:ssh dengzemiao$ cat ssh_config 
....... 上下的内容我就删掉省略了
#   Protocol 2 // 这个字段就是版本号,2 就是 SSH-2
....... 上下的内容我就删掉省略了
  • 那怎么查看服务端的,以 iPhone 手机举例,现在我们越狱之后的 iPhone 手机就是服务端,我们可以连接 iPhone 手机并查看一下 sshd_config 文件里面的版本号,命令行连接手机之后,查询命令跟上面的一致。
// 连接手机
dengzemiaodeMacBook-Pro:~ dengzemiao$ ssh root@10.0.89.184
// 输入密码
root@10.0.89.184's password: 
// 进入 ssh 文件
iPhone:~ root# cd /etc/ssh
// 查看文件列表
iPhone:/etc/ssh root# ls
moduli  ssh_config  sshd_config
// 查看服务端文件
iPhone:/etc/ssh root# cat sshd_config
....... 上下的内容我就删掉省略了
# Disable legacy (protocol version 1) support in the server for new
# installations. In future the default will change to require explicit
# activation of protocol 1
Protocol 2 // 这个字段就是版本号,2 就是 SSH-2
....... 上下的内容我就删掉省略了
相关文章
|
7月前
|
Linux Android开发 iOS开发
iOS 应用上架的步骤和工具简介
iOS 应用上架的步骤和工具简介
|
7月前
|
网络协议 IDE 网络安全
GoLand远程开发IDE:使用SSH远程连接服务器进行云端编程
GoLand远程开发IDE:使用SSH远程连接服务器进行云端编程
821 0
|
Java 关系型数据库 MySQL
JSP SSH公车拍卖系统myeclipse开发mysql数据库bs框架java编程网结构
JSP SSH公车拍卖系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发,系统主要采用B/S模式开发。
83 0
|
3月前
|
开发框架 数据可视化 Java
iOS开发-SwiftUI简介
iOS开发-SwiftUI简介
|
1月前
|
存储 网络安全
Curl error (60): SSL peer certificate or SSH remote key was not OK for https://update.cs2c.com.cn/NS/V10/V10SP2/os/adv/lic/base/x86_64/repodata/repomd.xml [SSL: no alternative certificate subject name matches target host name 'update.cs2c.com.cn']
【10月更文挑战第30天】在尝试从麒麟软件仓库(ks10-adv-os)下载元数据时,遇到 SSL 证书验证问题。错误提示为:`Curl error (60): SSL peer certificate or SSH remote key was not OK`。可能原因包括证书不被信任、证书与域名不匹配或网络问题。解决方法包括检查网络连接、导入 SSL 证书、禁用 SSL 证书验证(不推荐)、联系仓库管理员、检查系统时间和尝试其他镜像。
276 1
|
6月前
|
网络安全 开发工具 数据安全/隐私保护
openssh 升级后ssh远程登录报错Permission denied, please try again.
openssh 升级后ssh远程登录报错Permission denied, please try again.
1107 3
|
4月前
|
安全 网络协议 Shell
|
6月前
|
监控 安全 Linux
【权限维持】Linux&OpenSSH&PAM后门&SSH软链接&公私钥登录
【权限维持】Linux&OpenSSH&PAM后门&SSH软链接&公私钥登录
106 2
|
7月前
|
安全 Linux 网络安全
SSH 简介:安全远程访问的利器
SSH是加密网络协议,用于安全远程登录和数据传输。它基于公钥和私钥验证,加密传输确保通信安全。默认使用22端口。在Linux和macOS系统上预装,Windows需额外安装。基本用法包括远程登录(ssh username@hostname)、文件传输(scp source destination)和端口转发。推荐使用密钥对认证,限制登录尝试次数,并配置SSH代理以增强安全性。了解这些基础和技巧能提升远程服务器管理和文件传输效率。
SSH 简介:安全远程访问的利器
|
7月前
|
安全 应用服务中间件 网络安全
阿里云ssl证书简介和使用流程
了解如何在阿里云注册并实名账号,然后购买和部署SSL证书以增强网站安全性。阿里云SSL证书提供强大的加密、身份验证及SEO优势。通过简单流程购买适合的证书类型,如CFCA通配符OV证书,并在Nginx服务器上安装。遵循官方文档,下载证书,编辑Nginx配置并重启服务实现HTTPS。阿里云SSL证书是保障网站安全的高效解决方案。
223 2
阿里云ssl证书简介和使用流程