কীভাবে স্ব-স্বাক্ষরিত শংসাপত্র ব্যবহার করে কীস্টোর এবং ট্রাস্টস্টোর তৈরি করবেন?


17

এসএসএল ব্যবহার করে আমাদের কাছে জাভা সার্ভার এবং ক্লায়েন্টের যোগাযোগ রয়েছে network সার্ভার এবং ক্লায়েন্ট পরস্পর শংসাপত্র ব্যবহার করে একে অপরকে প্রমাণীকরণ করে। সার্ভার এবং ক্লায়েন্ট দ্বারা ব্যবহৃত কীস্টোর ধরণটি জেকেএস। সার্ভার এবং ক্লায়েন্ট তাদের কীস্টোর এবং ট্রস্টস্টোর ফাইলগুলি লোড করে। কীস্টোর এবং ট্রস্টস্টোর ফাইলের নামগুলি: সার্ভার.কিস্টোর, সার্ভার.ট্রুস্টোর, ক্লায়েন্ট.কিস্টোর এবং ক্লায়েন্ট.ট্রুস্টোর স্টোর। আমি কেবল পরীক্ষার জন্য স্ব-স্বাক্ষরিত শংসাপত্রগুলি ব্যবহার করছি।

প্রশ্নাবলী:

চতুর্থাংশ 1। আমি জানতে চাই কেন আমাকে step ধাপে সার্ভারের এবং ক্লায়েন্টের নিজস্ব শংসাপত্রগুলি তাদের নিজ নিজ ট্রাস্টস্টোরগুলিতে যুক্ত করতে হবে।

Q2 এর। একই জিনিস অর্জনের জন্য আমি কী পদক্ষেপটি হ্রাস করতে পারি? যদি হ্যাঁ, তবে কিভাবে?

সার্ভারের জন্য আরএসএ কী, স্ব-স্বাক্ষরিত শংসাপত্র, কীস্টোর এবং ট্রস্টস্টোর তৈরির পদক্ষেপ

  1. একটি বেসরকারী আরএসএ কী তৈরি করুন

    openssl genrsa -out diagserverCA.key 2048
    
  2. একটি x509 শংসাপত্র তৈরি করুন

    openssl req -x509 -new -nodes -key diagserverCA.key \
                -sha256 -days 1024 -out diagserverCA.pem
    
  3. ব্যক্তিগত কী এবং সর্বজনীন শংসাপত্র থেকে একটি পিকেসিএস 12 কীস্টোর তৈরি করুন।

    openssl pkcs12 -export -name server-cert \
                   -in diagserverCA.pem -inkey diagserverCA.key \
                   -out serverkeystore.p12
    
  4. পিকেসিএস 12 কীস্টোরকে জেকেএস কীস্টোরে রূপান্তর করুন

    keytool -importkeystore -destkeystore server.keystore \
            -srckeystore serverkeystore.p12 -srcstoretype pkcs12 
            -alias server-cert
    
  5. সার্ভারের বিশ্বাসের দোকানে কোনও ক্লায়েন্টের শংসাপত্র আমদানি করুন।

    keytool -import -alias client-cert \
            -file diagclientCA.pem -keystore server.truststore
    
  6. সার্ভারের বিশ্বাসের দোকানে একটি সার্ভারের শংসাপত্রটি আমদানি করুন।

    keytool -import -alias server-cert \
            -file diagserverCA.pem -keystore server.truststore
    

কোনও ক্লায়েন্টের জন্য আরএসএ প্রাইভেট কী, স্ব-স্বাক্ষরিত শংসাপত্র, কীস্টোর এবং ট্রাস্টস্টোর তৈরির পদক্ষেপ

  1. একটি ব্যক্তিগত কী তৈরি করুন

    openssl genrsa -out diagclientCA.key 2048
    
  2. একটি x509 শংসাপত্র তৈরি করুন

    openssl req -x509 -new -nodes -key diagclientCA.key \
                -sha256 -days 1024 -out diagclientCA.pem
    
  3. ব্যক্তিগত কী এবং সর্বজনীন শংসাপত্র থেকে পিকেসিএস 12 কীস্টোর তৈরি করুন।

    openssl pkcs12 -export -name client-cert \
                   -in diagclientCA.pem -inkey diagclientCA.key \
                   -out clientkeystore.p12
    
  4. একটি পিকেসিএস 12 কীস্টোরকে জেকেএস কীস্টোরে রূপান্তর করুন

    keytool -importkeystore -destkeystore client.keystore \
            -srckeystore clientkeystore.p12 -srcstoretype pkcs12 \
            -alias client-cert
    
  5. ক্লায়েন্টের বিশ্বাসের দোকানে একটি সার্ভারের শংসাপত্র আমদানি করুন।

    keytool -import -alias server-cert -file diagserverCA.pem \
            -keystore client.truststore
    
  6. ক্লায়েন্টের বিশ্বাসের দোকানে ক্লায়েন্টের শংসাপত্র আমদানি করুন।

    keytool -import -alias client-cert -file diagclientCA.pem \
            -keystore client.truststore
    

উত্তর:


3

সাধারণ https এর জন্য কেবল 1 কমান্ডের প্রয়োজন;

keytool -genkeypair

যদি ক্লায়েন্ট অন্ধভাবে কোনও শংসাপত্রের উপর বিশ্বাস রাখে না, তবে আপনাকে ক্লায়েন্টের কাছে আপনার সার্ভারের সার্বজনীন সার্ট অনুলিপি করতে হবে।

আপনি কেন একেবারে ওপেনসেল ব্যবহার করছেন?

https://docs.oracle.com/javase/10/tools/keytool.htm


যতক্ষণ না আমার সম্পাদনাটি পিয়ারের পর্যালোচনা না পাওয়া যায়: পতাকাটি-জেনকেপায়ার হয় এবং আপনি শংসাপত্রটি কাস্টমাইজ করতে অনেকগুলি পৃথক পতাকা যুক্ত করতে পারেন (যেমন-মূল্যায়ন 365 বা -নাম "সিএন = মার্ক জোন্স, ও = জাভাসফট, ও = সান, সি = ইউএস ")। আরও তথ্যের জন্য উত্তরের লিঙ্কটি সেরা দেখুন।
জোহানেস স্টাডলার

1
@ জোহানেস স্ট্যাডলার ধন্যবাদ আমি আপনার সম্পাদনা অনুমোদন করেছি এবং সর্বশেষ জাভা সংস্করণটির লিঙ্কটি আপডেট করেছি, নোট করুন যে "এই কমান্ডটির নাম পূর্ববর্তী রিলিজগুলিতে জেনকি ছিল"
ব্যবহারকারী ১১৩৩7575৫
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.