2012-02-14 25 views
6

walkarounds: Burada/ buldum budur: http://cryptopath.wordpress.com/2010/01/29/iphone-certificate-flaws/ ama bu bölüm openssl SMIME ve Verisign'dan var P12 kullanarak benim anlamaiOS mobileconfig ... ben mobileconfig dosyaları ile havadan iPhone'u yapılandırılmasına ilişkin herhangi intel için oldukça birkaç site aradı ve bir aşamada takılıp ettik

ötesinde, komple CA zinciri dahil mobileconfig dosyasını imzalamak ve üzerine kamu HTTP sunucusunu koydu

Eğer doğru anladıysam

ne yapmak zorunda olduğunu:
1) Verisign'dan bir sertifika almak (o key.pem dayalı gördü ve iPhone Configuration .mobileconfig dosyası oluşturmak
2)) Openssl oluşturulan request.pem Yardımcı Program (tüm ayarlarının dolu olması mı gerekiyor yoksa sadece bu dosyaya sahip olmak zorunda mıyım?)
3) ve ... bu CA zinciri nedir?


da burada bir şeyler bulduk: http://www.rootmanager.com/iphone-ota-configuration/iphone-ota-setup-with-signed-mobileconfig.html
İşte Ben de bu zincir şeylerle sıkışıp kaldım ... herkes biliyor/benim gibi acemi olanların tercihen adım-adım çözüm var mı? ;) (en çok istenen şey, tüm sertifika öğelerini oluşturmak için bir çözümdür, çünkü daha sonra oldukça ileri düzey bir eğiticidir)

cevap

11

CA zincirlerinin temel yıkımı: Örnek.com olduğunuzu iddia eden bir güvenlik sertifikanız olduğunu varsayalım. Ama kimse sana inanmayacak. Böylece, birisinin insanlar tarafından güvendiğini (yukarıdaki örnekte Verisign) imzaladığını görüyorsunuz. Şimdi, example.com'un olduğuna inanıyorum çünkü Verisign sertifikanızı imzalayarak sizin için kefil oluyor.

Genellikle Verisign, ana "kök" sertifikası ile imzalamaz. Bunun yerine, bunu ikinci düzey bir CA ile imzalarlar ve ikinci düzey CA, güvendiğim kök sertifika tarafından imzalanır.

Bu bir sertifika zinciridir: Siz (örnek.com), bir kök CA tarafından imzalanan ikinci düzey bir CA tarafından imzalanır.

Bu yüzden, bana sertifikanızı verirken, tüm zinciri sağlamanız gerekir, böylece onu en baştan sonuna kadar doğrulayabilirim ve size gerçekten güvenip güvenmediğimi görebilirim.

Yani, aşağıdaki komut .mobileconfig dosyanızı alır ve sertifikanızla imzalar. Ve tüm zinciri sağladığınız sürece imzana güveneceğim.

Dosyalar:
* company.mobileconfig < - Komut yapıldıktan sonra oluşturulan alır imzalı dosyayı
* server.crt < - senin .mobileconfig dosyası
* signed.mobileconfig < yaptı - güvenilir bir CA
* server.key <'dan aldığınız sertifikanız - yukarıdaki sertifikaya sahip özel anahtar dosyanız (güvenli)
* cert-chain.crt < - insanlar

komut güven üst düzey CA'ya bağlı olan her türlü sertifikaları: cevap için

openssl smime -sign -in company.mobileconfig -out signed.mobileconfig 
    -signer server.crt -inkey server.key -certfile cert-chain.crt 
    -outform der -nodetach 
+0

thx ben asap bunu test etmek deneyin ve :) bildiririz – raistlin

+0

Bu benim için işe yaradı, bir SSL sertifikası kullandım. Teşekkürler. – dazito

+0

Bu komutu Java kodunda şu şekilde çoğaltabilirsiniz: http://stackoverflow.com/questions/36595294/replicate-openssl-command-to-sign-a-file-in-java – dazito