সমস্যা: আইওএস 9 এখন এটিএস ব্যবহার করে আমাদের মোবাইল অ্যাপ্লিকেশনটি আর আমাদের ওয়েব-পরিষেবাতে সুরক্ষিত সংযোগ স্থাপন করতে পারে না।
পটভূমি: আইওএস 9 অ্যাপ ট্রান্সপোর্ট সুরক্ষা প্রবর্তন করে
সার্ভার সেটআপ: উইন্ডোজ সার্ভার 2008 আর 2 এসপি 1 (ভিএম) আইআইএস 7.5, ডিজিকার্ট থেকে এসএসএল শংসাপত্র। উইন্ডোজ ফায়ারওয়াল বন্ধ।
কী আরএসএ 2048 বিট (ই 65537)
ইস্যুকারী ডিজিকার্ট এসএএএ 2 সিকিউর সার্ভার সিএ
স্বাক্ষর অ্যালগরিদম SHA512withRSA
এগুলি হ'ল অ্যাপ ট্রান্সপোর্ট সুরক্ষা প্রয়োজনীয়তা:
সার্ভারটি অবশ্যই কমপক্ষে পরিবহন স্তর সুরক্ষা (টিএলএস) প্রোটোকল সংস্করণ 1.2 সমর্থন করে support সংযোগ সিফারগুলি সীমাবদ্ধ যারা ফরওয়ার্ড গোপনীয়তা সরবরাহ করে (নীচে সাইফারগুলির তালিকাটি দেখুন) শংসাপত্রগুলি অবশ্যই একটি SHA256 বা আরও ভাল স্বাক্ষর হ্যাশ অ্যালগরিদম ব্যবহার করে স্বাক্ষরিত হতে হবে, হয় 2048 বিট বা বৃহত্তর আরএসএ কী বা 256 বিট বা বৃহত্তর উপবৃত্তাকার-বক্ররেখা দ্বারা (ইসিসি) কী। অবৈধ শংসাপত্রগুলির ফলে একটি হার্ড ব্যর্থতা এবং কোনও সংযোগ নেই। এগুলি হ'ল গৃহীত সাইফারগুলি:
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
কি চেষ্টা করা হয়েছে:
- আমাদের ডোমেনটি কাজ করার অনুমতি দেওয়ার জন্য মোবাইল অ্যাপে ব্যতিক্রম যুক্ত করা হচ্ছে, তবে আমি এই অনিরাপদ পদ্ধতিটি নিয়ে যেতে চাই না, আমি আমাদের এসএসএল ঠিক করতে চাই।
- আইআইএস ক্রিপ্টোকে 'সেরা অনুশীলন', 'পিসিআই' ব্যবহার এবং কাস্টম সেটআপগুলি ব্যবহার করতে ব্যবহৃত হয়েছিল । এমনকি ক্রিপ্টো স্যুটটি কেবল উপরের তালিকায় পরিবর্তন করে পুনরায় অর্ডার করার চেষ্টা করেছিল। প্রতিটি চেষ্টা করার পরে সার্ভারটি পুনরায় বুট করা হয় এবং এসএসএল ল্যাবগুলি চালানো হয় (ক্যাশে সাফ করার পরে)। আমি একটি এফ রেটিং থেকে একটি এ এবং এমনকি এ- তে যেতে সফল হয়েছিলাম তবে এর ফলে কেবল আইওএস 8 এবং 9 নিরাপদ সংযোগ স্থাপন করতে অক্ষম হয়েছিল। (NSURLErrorDomain কোড = -1200 এবং _ কেসিএফএস স্ট্রিমেরর কোড কোড = -9806)
- ভিএম পুনরুদ্ধার করে একটি পাওয়ারশেল স্ক্রিপ্ট চেষ্টা করে এসএসএল পারফেক্ট ফরওয়ার্ড সিক্রেসি এবং টিএলএস 1.2 এর জন্য আপনার আইআইএস সেটআপ করেছিলাম এমনকি আমি দ্বিতীয় চেষ্টাও করেছি যেখানে আমি পাওয়ার স্ক্রিপ্ট থেকে সাইফারগুলি সম্পাদনা করে যা প্রয়োজন তার একটি ন্যূনতম তালিকায়।
ফলাফল: সর্বদা একই, A বা A- এর রেটিং। iOS8 এবং iOS9 সুরক্ষিত সংযোগের জন্য আলোচনা করতে পারে না। হ্যান্ডশেক সিমুলেশনটির ফলাফল সাফারি এবং আইওএস পণ্যগুলির জন্য "প্রোটোকল বা সিফার স্যুট মেলে না" in
আপডেট আপডেট অ্যাপল সমর্থন সঙ্গে কাজ করার পরে, আমরা কিছু প্যাকেট ট্রেস ক্যাপচার করেছি:
$ tcpdump -n -r trace.pcap
reading from file trace.pcap, link-type EN10MB (Ethernet)
client > server [S], seq 1750839998, win 65535, length 0
server > client [S.], seq 2461151276, ack 1750839999, win 8192, length 0
client > server [.], ack 1, win 4104, length 0
client > server [P.], seq 1:175, ack 1, win 4104, length 174
server > client [R.], seq 1, ack 175, win 0, length 0
প্রথম তিনটি প্যাকেট হ'ল ক্লাসিক এসওয়াইএন - এসওয়াইএন-এসিকি - এসিপি থ্রি ওয়ে হ্যান্ডশেক যা টিসিপি সংযোগ স্থাপন করে। চতুর্থ প্যাকেটটি হ'ল আইওএস আপনার সার্ভারকে একটি টিএলএস ক্লায়েন্ট হ্যালো বার্তা প্রেরণ করছে, T টিসিপি সংযোগের উপর টিএলএস সংযোগ স্থাপনের প্রথম পদক্ষেপ। আমি এই বার্তাটি আলাদা করে রেখেছি এবং এটি যথেষ্ট যুক্তিসঙ্গত দেখাচ্ছে। পঞ্চম প্যাকেটে সার্ভারটি সহজেই সংযোগটি ড্রপ করে (কোনও আরএসটি পাঠিয়ে)।
আইআইএস .5.৫ কেন একটি আরএসটি করবে তা কি কেউ জানেন?