লিনাক্স সার্ভারে অ্যাপাচি ব্যবহারের জন্য আমি কীভাবে একটি পিএফএক্স শংসাপত্র ফাইল রূপান্তর করতে পারি?


110

লিনাক্স সার্ভারে অ্যাপাচি ব্যবহারের জন্য আমি কীভাবে একটি পিএফএক্স শংসাপত্র ফাইল রূপান্তর করতে পারি?

আমি উইন্ডোজ শংসাপত্র পরিষেবাগুলি থেকে পিএফএক্স তৈরি করেছি। পিএফএক্স পুরো শংসাপত্র চেইন রয়েছে। (যা কেবল একটি মূল এবং মূল শংসাপত্র, কোনও মধ্যবর্তী নেই no)

আমাকে নেতৃত্ব দিন, জ্ঞানী।

উত্তর:


194

সঙ্গে দ্বারা OpenSSL আপনি পরবর্তী কমান্ড চালিয়ে অ্যাপাচে সামঞ্জস্যপূর্ণ ফর্ম্যাটে pfx রূপান্তর করতে পারেন:

openssl pkcs12 -in domain.pfx -clcerts -nokeys -out domain.cer
openssl pkcs12 -in domain.pfx -nocerts -nodes  -out domain.key   

প্রথম কমান্ড এর জন্য সর্বজনীন কী বের করে domain.cer
দ্বিতীয় কমান্ড থেকে প্রাইভেট কী বের করে domain.key

আপনার অ্যাপাচি কনফিগারেশন ফাইলটি এর সাথে আপডেট করুন:

<VirtualHost 192.168.0.1:443>
 ...
 SSLEngine on
 SSLCertificateFile /path/to/domain.cer
 SSLCertificateKeyFile /path/to/domain.key
 ...
</VirtualHost>

এটি শংসাপত্র কর্তৃপক্ষ ফাইল উত্পন্ন করার জন্য কমান্ডটি হারিয়েছে। নীচের উত্তর আরও সম্পূর্ণ।
হককি

100

অতিরিক্তভাবে

openssl pkcs12 -in domain.pfx -clcerts -nokeys -out domain.cer
openssl pkcs12 -in domain.pfx -nocerts -nodes  -out domain.key

আমি শংসাপত্র কর্তৃপক্ষ (সিএ) শংসাপত্রও তৈরি করেছি:

openssl pkcs12 -in domain.pfx -out domain-ca.crt -nodes -nokeys -cacerts

এবং এটি অ্যাপাচি কনফিগারেশন ফাইলে অন্তর্ভুক্ত করেছে:

<VirtualHost 192.168.0.1:443>
 ...
 SSLEngine on
 SSLCertificateFile /path/to/domain.cer
 SSLCertificateKeyFile /path/to/domain.key
 SSLCACertificateFile /path/to/domain-ca.crt
 ...
</VirtualHost>

8
দ্রষ্টব্য: সিএ শংসাপত্রটি খালি থাকলে - দয়া করে কনফিগার ফাইলে এই লাইনটি অন্তর্ভুক্ত করবেন না।
অ্যান্ড্রন

@ অ্যান্ড্রন যখন সিএ সার্টিফিকেট তৈরি করতে আমি তৃতীয় কমান্ড ব্যবহার করি তবে ফলাফলটি খালি crt ফাইল। আমি ইনপুট জন্য সার্ভারএসএল পিএফএক্স ফাইল এবং রুটসিএ পিএফএক্স ফাইল উভয়ই ব্যবহার করার চেষ্টা করেছি। (বিটনামি ওয়্যাম্প) চূড়ান্ত ফলাফলটি হ'ল ফায়ারফক্স আমাকে The certificate is not trusted because the issuer certificate is unknown SEC_ERROR_UNKNOWN_ISSUERত্রুটি দেয় ।
খারগুশ

@ খারগুশ যেমন আমি মন্তব্যে জানিয়েছি: এটি খালি থাকলে - কেবল এই লাইনটি ব্যবহার / অন্তর্ভুক্ত করবেন না। আমারও একই অবস্থা ছিল।
অ্যান্ড্রন

31

এটি অ্যাপাচি এর সাথে কাজ করার জন্য আমাদের আরও একটি পদক্ষেপ প্রয়োজন।

openssl pkcs12 -in domain.pfx -clcerts -nokeys -out domain.cer
openssl pkcs12 -in domain.pfx -nocerts -nodes  -out domain_encrypted.key
openssl rsa -in domain_encrypted.key -out domain.key

চূড়ান্ত কমান্ড অ্যাপাচি ব্যবহারের জন্য কীটি ডিক্রিপ্ট করে। ডোমেন.কি ফাইলটি দেখতে এমন হওয়া উচিত:

-----BEGIN RSA PRIVATE KEY-----
MjQxODIwNTFaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3d3d3
LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxp
YWIuKTElMCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEG
A1UEAxMqRW50cnVzdC5uZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgp
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArU1LqRKGsuqjIAcVFmQq
-----END RSA PRIVATE KEY-----

চমৎকার! বিটনামি বা অন্যদেরও সিএ ক্র্যাটের প্রয়োজন হয়, সিএ ক্র্ট অন্তর্ভুক্ত করার জন্য অ্যান্ড্রনের উত্তর দেখুন at মাইকেল ফেরান্টির সার্ভার-সি.সি.আর.টি (অ্যান্ড্রোনর উত্তরে ডোমেন-সি.সি.আর.t. এর জায়গায়), এবং সার্ভার.সিআরটি (ডোমেন.সির স্থলে) এবং সার্ভার.কি (ডোমেন.কি-র জায়গায়) নামকরণ ব্যবহার করুন উত্তর এখানে।
ওল্ডগ্রাগ

3

কাছাকাছি কিছু টুলিং নিয়েছে তবে এটিই আমি শেষ করেছি।

IIS7 এ একটি শংসাপত্র তৈরি এবং ইনস্টল করা হয়েছে। আইআইএস থেকে পিএফএক্স হিসাবে রফতানি করা হয়েছে

Pkcs12 এ রূপান্তর করুন

openssl pkcs12 -in certificate.pfx -out certificate.cer -nodes

দ্রষ্টব্য: পিএফএক্সকে পিইএম ফর্ম্যাটে রূপান্তর করার সময়, ওপেনসেল সমস্ত শংসাপত্র এবং ব্যক্তিগত কী একক ফাইলে রাখবে put আপনাকে পাঠ্য সম্পাদকটিতে ফাইলটি খুলতে হবে এবং প্রতিটি শংসাপত্র এবং প্রাইভেট কী (বিগিন / এন্ড স্টেটমেন্ট সহ) এর নিজস্ব স্বতন্ত্র পাঠ্য ফাইলে অনুলিপি করতে হবে এবং যথাক্রমে সার্টিফিকেট.সিসার, ক্যাসেট.সিসার, প্রাইভেটকি.কি হিসাবে সংরক্ষণ করতে হবে।

-----BEGIN PRIVATE KEY-----
Saved as certificate.key
-----END PRIVATE KEY-----

-----BEGIN CERTIFICATE-----
Saved as certificate.crt
-----END CERTIFICATE-----

অ্যাপাচি vhost ডাব্লু / ওয়েবমিনে যুক্ত হয়েছে।


আপনি যদি না চান যে ব্যক্তিগত কী এবং শংসাপত্রগুলি একই ফাইলে শেষ হয় তবে -nokeys(ব্যক্তিগত কীটি বের করার জন্য নয়) এবং -clcerts(কেবলমাত্র শংসাপত্রটি বের করার জন্য) ব্যবহার করুন। মাতেজ ঠিক এটাই বলেছিলেন।
ব্রুনো

0

এসএসএলহপ্পারের বিভিন্ন সার্ভারের মাঝে চলার বিষয়ে বেশ কয়েকটি সুন্দর নিবন্ধ রয়েছে।

http://www.sslshopper.com/how-to-move-or-copy-an-ssl-certificate-from-one-server-to-another.html

এই পৃষ্ঠার নীচে কেবল প্রাসঙ্গিক লিঙ্কটি বেছে নিন।

দ্রষ্টব্য: তাদের একটি অনলাইন রূপান্তরকারী রয়েছে যা তাদের আপনার ব্যক্তিগত কীতে অ্যাক্সেস দেয়। তাদের সম্ভবত বিশ্বাসযোগ্য হতে পারে তবে আপনার নিজের মেশিনে প্রাইভেট কীটি প্রাইভেট রাখতে ওপেনএসএল কমান্ড (এই সাইটে প্রদর্শিতও) ব্যবহার করা ভাল।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.