鉴于我们的设备和MDM server之间已经可以通信,并能完成相应的锁屏、擦除数据、查询设备信息等功能,但是,我们在安装了mobileconfig后,返现配置描述文件打开显示 “unsigned” 或者“尚未签名”这样的情况,所以接下来的工作就是让我们的mobileconfig文件看起来更加安全一些。

一、标题借助于强大的github,找到了一个python脚本进行签名

地址:https://github.com/nmcspadden/ProfileSigner
profile_signer.py与 mobileconfig 放在同一目录,终端进入目录执行
首先cd xxx(路径)到目标目录之后
1.签名一个mobileconfig

./profile_signer.py -n "iPhone Distribution: Chenzhou Mei Tuo Network Co., Ltd. (NFCZGWSA8V)" sign udid.mobileconfig udidSign.mobileconfig

2.加密一个mobileconfig

./profile_signer.py -n "iPhone Distribution: Skyfox Network Technology Co., Ltd." encrypt udid.mobileconfig udidSign.mobileconfig

3.签名并且加密一个mobileconfig

./profile_signer.py -n "iPhone Distribution:Skyfox Network Technology Co., Ltd." both udid.mobileconfig udidSign.mobileconfig

"Skyfox Network Technology Co., Ltd."为你的证书在钥匙串中的全名,选择证书=>显示简介=>复制常用名称加上引号即可,比如
“iPhone Developer: jakey.shao xxxx@xxx.com”
“iPhone Distribution: Skyfox Network Technology Co., Ltd.”


如果能正确读取到证书,会提示如上图所示,点击允许即可!
(但是这种签名在iOS高系统版本的手机上依然会出现尚未验证的问题、所以这种老办法舍弃)

二、使用证书进行签名(即可使用iOS开发者证书,也可以使用ssl证书)

1.从钥匙串(keychain)中导出证书
实用工具->钥匙串访问->选择要导出的开发者证书,导出生成p12文件 InnovCertificates.p12
然后转换成 InnovCertificates.pem 文件
实用工具->钥匙串访问->选择要导出的证书,导出生成p12文件 InnovCertificates.p12
p12在线转换pem https://www.sslshopper.com/ssl-converter.html

2.从钥匙串(keychain)中导出appword证书为pem文件

最后执行命令即可
(可以根据自己的文件名字来修改下面的命令,也可以直接将命令中使用的名字作为文件的名字)

openssl smime -sign -in Example.mobileconfig -out SignedVerifyExample.mobileconfig -signer InnovCertificates.pem -certfile root.pem -outform der -nodetach

使用ssl证书签名
申请ssl证书成功以后下载证书(最好打包全部下载)
比如我这边是Apache
得到3个文件
其中ca-bundle为证书颁发机构的根证书,双击成功后在苹果的钥匙串文件中点击导出为pem文件即可


执行命令

openssl smime -sign -in unsigned.mobileconfig -out signed.mobileconfig -signer mbaike.crt -inkey mbaike.key -certfile ca-bundle.pem -outform der -nodetach

注意事项

1、描述文件为获取设备信息那描述文件中的回调地址必须为https
2、要用301重定向

签名一个mobileconfig相关推荐

  1. windows utf8 签名 一个很二的问题(经典乱码“锘”字)

    有时候用某个软件保存出xml 发现中文出现乱码,在txt,和vs里都能正常打开,可是用程序或者第三放库打开就是xml解析错误或者中文乱码 微软在自己的UTF-8格式的文本文件之前加上了EF BB BF ...

  2. win10计算机如何禁用签名,怎样永久禁用Windows10驱动程序强制签名?一个命令就能轻松解决...

    默认情况下,Windows10中所有未经签名的驱动程序都是无法使用的.这会直接导致部分硬件出现故障,如果我们想要处理掉该故障,就需要去关闭Windows10的默认驱动验证.这该如何操作?为了节省麻烦, ...

  3. win10计算机如何禁用签名,怎么设置永久禁用Win10驱动程序强制签名? 一个命令帮你搞定...

    在Win10中,未经签名的驱动程序不能使用,这会导致部分硬件出现问题,此时就需要手动关闭Windows10的默认驱动验证.好在这个永久关闭验证的方法很简单,只需一个命令就可以搞定. ▲要关闭强制验证只 ...

  4. 为iOS的mobileconfig文件进行签名

    Safari获取UDID需要安装.mobileconfig文件, 但是,我们在安装了.mobileconfig后,返现配置描述文件打开显示"unsigned" 或者"尚未 ...

  5. 苹果官网证书文件,待研究

    苹果官网证书文件,待研究 http://www.apple.com/certificateauthority/   导读:MDM 证书申请流程(vendor及customer)整个流程分为两部分:ve ...

  6. php生成mobileconfig,.mobileconfig的生成与签名

    一.生成mobileconfig配置文件 1.打开iPhone配置实用工具 点击新建(工具下载自行百度) 2.在文件列表选中新建的mobileconfig配置文件后,会弹出一个操作菜单 3.填写通用信 ...

  7. php 超级签名,手动实现一个超级签名

    现在互联网上都说ios的超级签名很牛逼,所以我今天就来进行技术攻关了,一下就是实现超级签名的视频 首先我们需要知道ios的超级签名是什么鬼玩意,所谓的超级签名就是使用了苹果提供给开发者的Ad-Hoc分 ...

  8. 使用Safari获取手机UDID,对.mobileconfig文件进行签名加密

    帮朋友做个东西,项目中使用到了获取用户的UDID这个功能,但是有些东西都是要自己去摸索的找相关的资料. 在这里直接把找到的相关资料先贴出来,如果能够解决问题那也是极好的. #第一步 iOS 开发如何获 ...

  9. 超级签名源码_苹果iOS超级签名源码技术解析

    随着苹果对于企业分发证书的频繁吊销和日益收紧,代签名行业也随之迭代出了黑科技,即所谓的超级签名源码. 签名原理 签名原理其实就一句话,使用了苹果提供给开发者的Ad-Hoc分发通道,把安装设备当做开发设 ...

最新文章

  1. python oracle数据库操作_Python连接oracle数据库的基本操作
  2. 开发日记-20190527 关键词 ubuntu无线网卡驱动安装
  3. oracle case when及decode的用法
  4. MyBatis-02 MyBatis XML方式概述及配置步骤
  5. mysql-5.7.21-winx64.zip 下载安装
  6. 网易实战分享|Docker文件系统实战
  7. 动软代码生成器 模板
  8. lcd1602c语言程序分析,51单片机驱动LCD1602程序设计(C语言).doc
  9. 你有必要不沾计算机一段时间英语,八年级上册英语第一单元背默(人教版)
  10. 给博客添加能动的看板娘
  11. html显示证书错误代码,Win7打开网页提示证书错误的原因及解决方法
  12. 实施不良资产证券化 信用评级不能少
  13. win10打开计算机代码,Win10开不了机错误代码0xc0000428三种解决方法
  14. 16 岁少年前往腾讯总部要求解封 QQ 账号;微软发内部信辟谣:没有关闭微软苏州的相关计划;Go 1.20 发布|极客头条
  15. 在blender使用MMD模型凹造型的简单流程
  16. html页面边框的简单设置方法
  17. LaTex bib引用知网论文NoteExpress格式文献 —— cnki2bib
  18. 基于Android的租车app
  19. 从项目制到产品制,日子变美好了吗?
  20. Dubbo源码分析:小白入门篇

热门文章

  1. python实现视频ai换脸_Python如何实现AI换脸功能 Python实现AI换脸功能代码
  2. Linux查看流量情况以及关闭流量端口
  3. 淘特 Flutter 流畅度优化实践
  4. k8s-linux上安装
  5. Handheld Multi-Frame Super-Resolution论文理解
  6. antdesign+vue额外展开行expandedRowRender全部展开,并隐藏expandIcon展开收起按钮;antdesign表格嵌套表格
  7. Android模拟器实现windows虚拟串口通信调试
  8. java 如何初始化数组_java中初始化数组的三种方式分别是什么
  9. 面子对中国人为什么这么重要
  10. 正则表达式叠字,过滤重复字