添加不同的软件源
apt.abcydia.com/
apt.thebigboss.org/repofiles/cydia
安装包
name | 解释 | 软件源 |
---|---|---|
Apple File Conduit "2" | 可以访问整个iOS设备的文件系统 | Cydia |
AppSync Unified | 关闭签名 可以绕过系统验证,随意安装、运行破解的ipa安装包 | apt.abcydia.com/ |
iFile | 可以在iPhone上自由访问iOS文件系统 | apt.abcydia.com/ |
安装包
如果通过Cydia源安装deb失败
可以先从网上下载deb格式的安装包
然后将deb安装包放到/var/root/Media/Cydia/AutoInstall
重启手机,Cydia就会自动安装deb
代码判断手机是否越狱了
static const char* jailbreak_apps[] =
{
"/Applications/Cydia.app",
"/Applications/blackra1n.app",
"/Applications/blacksn0w.app",
"/Applications/greenpois0n.app",
"/Applications/limera1n.app",
"/Applications/redsn0w.app",
NULL,
};
- (BOOL)isJailBrokeDevice
{
// Check whether the jailbreak apps are installed
for (int i = 0; jailbreak_apps[i] != NULL; ++i)
{
if ([[NSFileManager defaultManager] fileExistsAtPath:[NSString
thUTF8String:jailbreak_apps[i]]])
{
return YES;
}
}
return NO;
}
Mac 远程登录到自己的iPhone中
SSH 安全外壳协议 OpenSSH 是SSH 协议的免费开源实现
iPhone 安装 OpenSSH
SSL:Secure Sockets Layer的缩写,是为网络通信提供安全及数据完整性的一种安全协议,在传输层对网络连接进行加密
OpenSSL
SSL的开源实现
绝大部分HTTPS请求等价于:HTTP + OpenSSL
OpenSSH的加密就是通过OpenSSL完成的
SSH是通过TCP协议通信,所以要确保Mac和iPhone在同一局域网下,比如连接着同一个WiFi
在Mac的终端输入ssh 账户名@服务器主机地址
比如ssh [email protected](这里的服务器是手机)
初始密码alpine
网络登录到自己的iPhone
ssh [email protected]
The authenticity of host '192.168.8.109 (192.168.8.109)' can't be established.
RSA key fingerprint is SHA256:7/0GbQvijdJQr4kr9BFtkPui8LDMLPkWLBgJJ2Cmj5M.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.8.109' (RSA) to the list of known hosts.
[email protected]'s password:
steveiPhone:~ root# cd /
steveiPhone:/ root# ls
AppSyncUnified.dylib MobileSubstrate dev sbin
AppSyncUnified.plist System etc tmp
Applications User lib usr
Developer asu_inject mnt var
DynamicLibraries bin net.angelxwind.asu_inject.plist
LaunchDaemons boot pguntether
Library cores private
steveiPhone:/ root# exit
logout
Connection to 192.168.8.109 closed.
root、mobile
iOS下有2个常用账户:root、mobile
root:最高权限账户,HOME是/var/mobile
登录mobile用户:root mobile@服务器主机地址
root和mobile用户的初始登录密码都是alpine
最好修改一下root和mobile用户的登录密码(登录root账户后,分别通过passwd、passwd mobile完成)
steveiPhone:~ root# passwd
Changing password for root.
New password:
Retype new password:
steveiPhone:~ root# passwd mobile
Changing password for mobile.
New password:
Retype new password:
steveiPhone:~ root# exit
建立安全连接
将mac 上的公钥拷贝到iPhone上去
在建立安全连接过程中,可能会遇到以下错误信息:提醒服务器的身份信息发生了变更
如果确定要连接此服务器,删除掉之前服务器的公钥信息就行
-
ssh-keygen -R 服务器IP地址
ssh-keygen -R 192.168.8.109
-
或者直接打开known_hosts文件删除服务器的公钥信息就行
vim ~/.ssh/known_hosts
SSH的客户端认证方式
-
基于密码的客户端认证
使用账号和密码即可认证
-
基于密钥的客户端认证
免密码认证
最安全的一种认证方式
SSH-2默认会优先尝试“密钥认证”,如果认证失败,才会尝试“密码认证”
基于密钥的客户端认证
客户端生成密钥文件,将公钥内容追加到服务器的文件尾部
登录认证
-
在客户端生成一对相关联的密钥(Key Pair):一个公钥(Public Key),一个私钥(Private Key)
ssh-keygen // 一路敲回车键(Enter)即可
OpenSSH默认生成的是RSA密钥,可以通过-t参数指定密钥类型
生成的公钥:~/.ssh/id_rsa.pub
生成的私钥:~/.ssh/id_rsa
把客户端的公钥内容追加到服务器的授权文件(~/.ssh/authorized_keys)尾部
ssh-copy-id root@localhost -p 11208
ssh-copy-id [email protected]
需要输入root用户的登录密码
ssh-copy-id会将客户端/.ssh/id_rsa.pub的内容自动追加到服务器的/.ssh/authorized_keys尾部
注意:由于是在~文件夹下操作,所以上述操作仅仅是解决了root用户的登录问题(不会影响mobile用户)
使用USB数据线登录到自己的iPhone上
为了加快传输速度,也可以通过USB连接的方式进行SSH登录
Mac上有个服务程序usbmuxd(它会开机自动启动),可以将Mac的数据通过USB传输到iPhone
/System/Library/PrivateFrameworks/MobileDevice.framework/Resources/usbmuxd
- 李明杰老师使用的一个usbmuxd 但是那个在python3上面不好用了,所以我使用的是 通过brew 安装的 usbmuxd
brew install usbmuxd
注意:要想保持端口映射状态,不能终止此命令行(如果要执行其他终端命令行,请新开一个终端界面)
不一定非要11209端口,只要不是保留端口就行
- 使用方法
端口映射完毕后,以后如果想跟iPhone的22端口通信,直接跟Mac本地的11209端口通信就可以了
新开一个终端界面,SSH登录到Mac本地的11209端口(以下方式2选1)
iproxy 11209 22
ssh root@localhost -p 11209
ssh [email protected] -p 11209
stevekwok@Steves-MBP ~ % ssh root@localhost -p 11209
The authenticity of host '[localhost]:11209 ([127.0.0.1]:11209)' can't be established.
RSA key fingerprint is SHA256:7/0GbQvijdJQr4kr9BFtkPui8LDMLPkWLBgJJ2Cmj5M.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '[localhost]:11209' (RSA) to the list of known hosts.
root@localhost's password:
steveiPhone:~ root# ls
Application Support Library Media
steveiPhone:~ root#
localhost是一个域名,指向的IP地址是127.0.0.1,本机虚拟网卡的IP地址
usbmuxd会将Mac本地11209端口的TCP协议数据,通过USB连接转发到iPhone的22端口
远程拷贝文件也可以直接跟Mac本地的11209端口通信