OpenSSL उपयोग प्रलेखन
OpenSSL एक शक्तिशाली ओपन-सोर्स टूलकिट है, जिसका उपयोग सुरक्षित संचार के लिए किया जाता है। इसमें एन्क्रिप्शन, डिक्रिप्शन, SSL/TLS प्रोटोकॉल आदि की सुविधाएँ दी गई हैं। ServBay में OpenSSL पहले से ही शामिल है, इस लेख में OpenSSL की स्थापना, कॉन्फ़िगरेशन और उपयोग की विधि विस्तार से दी गई है।
स्थापना और कॉन्फ़िगरेशन
स्थापना
ServBay के साथ OpenSSL पहले से ही शामिल आता है, अतः अलग से स्थापना की आवश्यकता नहीं है।
कॉन्फ़िगरेशन
OpenSSL का कॉन्फ़िगरेशन फ़ाइल आमतौर पर /Applications/ServBay/package/common/openssl/3.2
फोल्डर (Intel चिप के लिए /Applications/ServBay/package/common/openssl/1.1.1u
) में स्थित होती है, तथा डिफ़ॉल्ट कॉन्फ़िगरेशन फ़ाइल openssl.cnf
होती है। आप अपनी आवश्यकतानुसार इस फ़ाइल को संपादित कर सकते हैं जिससे OpenSSL के व्यवहार में बदलाव किया जा सके।
उदाहरण कॉन्फ़िगरेशन फ़ाइल सामग्री:
ini
[ req ]
default_bits = 2048
default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
attributes = req_attributes
x509_extensions = v3_ca
[ req_distinguished_name ]
countryName = Country Name (2 letter code)
countryName_default = US
stateOrProvinceName = State or Province Name (full name)
localityName = Locality Name (eg, city)
0.organizationName = Organization Name (eg, company)
organizationalUnitName = Organizational Unit Name (eg, section)
commonName = Common Name (eg, fully qualified host name)
commonName_max = 64
[ req_attributes ]
challengePassword = A challenge password
challengePassword_min = 4
challengePassword_max = 20
[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
मूल उपयोग
OpenSSL में कमांड-लाइन टूल्स की व्यापक श्रृंखला उपलब्ध है, जिनका उपयोग विभिन्न एन्क्रिप्शन व प्रमाणपत्र प्रबंधन कार्यों के लिए किया जाता है। नीचे कुछ मूल उपयोग के उदाहरण दिए गए हैं:
प्राइवेट और पब्लिक की जनरेशन
RSA प्राइवेट की जनरेट करें
bash
openssl genpkey -algorithm RSA -out private_key.pem
1
प्राइवेट की से पब्लिक की जनरेट करें
bash
openssl rsa -pubout -in private_key.pem -out public_key.pem
1
सर्टिफिकेट साइनिंग रिक्वेस्ट (CSR) बनाना
CSR जेनरेट करें
bash
openssl req -new -key private_key.pem -out request.csr
1
सेल्फ-साइन्ड सर्टिफिकेट
सेल्फ-साइन्ड सर्टिफिकेट जनरेट करें
bash
openssl req -x509 -days 365 -key private_key.pem -in request.csr -out certificate.crt
1
प्रमाणपत्र प्रबंधन
सर्टिफिकेट जानकारी देखें
CSR जानकारी देखें
bash
openssl req -text -noout -verify -in request.csr
1
सर्टिफिकेट जानकारी देखें
bash
openssl x509 -text -noout -in certificate.crt
1
सर्टिफिकेट फॉर्मेट बदलना
PEM से DER में कन्वर्ट करें
bash
openssl x509 -outform der -in certificate.pem -out certificate.der
1
DER से PEM में कन्वर्ट करें
bash
openssl x509 -inform der -in certificate.der -out certificate.pem
1
एन्क्रिप्शन और डिक्रिप्शन
सिमिट्रिक एन्क्रिप्शन
AES की सहायता से फ़ाइल एन्क्रिप्ट करें
bash
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.txt
1
AES की सहायता से फ़ाइल डिक्रिप्ट करें
bash
openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt
1
एसीमिट्रिक एन्क्रिप्शन
पब्लिक की के साथ फ़ाइल एन्क्रिप्ट करें
bash
openssl rsautl -encrypt -inkey public_key.pem -pubin -in plaintext.txt -out encrypted.txt
1
प्राइवेट की के साथ फ़ाइल डिक्रिप्ट करें
bash
openssl rsautl -decrypt -inkey private_key.pem -in encrypted.txt -out decrypted.txt
1
सामान्य प्रश्न
1. OpenSSL कमांड चल नहीं रही है
- समाधान: कृपया सुनिश्चित करें कि ServBay का environment variable सही से सेट है। अगर फिर भी समस्या बनी रहती है, तो ServBay की "सेटिंग्स" - "कमांड लाइन टूल्स" खोलें और
zsh
तथाbash
के लिए सेटिंग करें, फिर टर्मिनल दोबारा खोलें।
2. जनरेट हुआ सर्टिफिकेट अमान्य है
- समाधान: CSR (सर्टिफिकेट रिक्वेस्ट फ़ाइल) और कॉन्फ़िगरेशन फ़ाइल में दी गई जानकारी को जाँचें। सुनिश्चित करें कि सभी आवश्यक फ़ील्ड भरे गए हैं।
3. एन्क्रिप्शन या डिक्रिप्शन फेल हो रहा है
- समाधान: उपयोग की जा रही की और एल्गोरिद्म मेल खा रहे हैं या नहीं, यह जाँचें। साथ ही input और output फ़ाइल का पथ भी सही होना चाहिए।
संक्षेप
OpenSSL एक शक्तिशाली और लचीला टूलकिट है, जो विभिन्न प्रकार के सुरक्षित संचार और एन्क्रिप्शन कार्यों के लिए उपयुक्त है। इस लेख द्वारा आप जान चुके होंगे कि ServBay में OpenSSL को कैसे इंस्टॉल, कॉन्फ़िगर और उपयोग किया जा सकता है, विशेष रूप से प्रमाणपत्र प्रबंधन और डेटा एन्क्रिप्शन कार्यों के लिए।