HTTPS-কেবল ব্রাউজার, SameSite কুকিজ এবং বাস্তবসম্মত ডেভেলপমেন্ট অবস্থার সময়ে, স্থানীয়ভাবে আসল SSL সার্টিফিকেট দিয়ে কাজ করা গুরুত্বপূর্ণ। Let's Encrypt এখানে অগ্রণী কাজ করেছে - certbot এবং Cloudflare এর সাহায্যে, ওয়াইল্ডকার্ড সার্টিফিকেট তৈরি এবং পুনর্নবীকরণ দ্রুত এবং সহজ। এটি আপনাকে স্থানীয় নেটওয়ার্কের যেকোনো ডিভাইসে (স্মার্টফোন, ভিএম, ...) অথবা ভিপিএন এর মাধ্যমে এনক্রিপ্ট করা আপনার ওয়েব প্রকল্পগুলি অ্যাক্সেস করতে দেয়।
উদাহরণস্বরূপ, আমরা প্রথমে ক্লাউডফ্লেয়ারের সাথে একটি ডেভেলপার ডোমেন নিবন্ধন করি vielhuber.dev
:

আমরা এখন এই ডোমেনটিকে তার নিজস্ব স্থানীয় আইপি ঠিকানার দিকে নির্দেশ করতে দেব (উদাহরণস্বরূপ 192.168.0.2
) দেখান। এটি করার জন্য, নিম্নলিখিত DNS A রেকর্ড তৈরি করুন (গুরুত্বপূর্ণ: প্রক্সি স্ট্যাটাসটি অবশ্যই সেট করতে হবে ধূসর/শুধুমাত্র DNS-এর জন্য সেট করা):
আদর্শ | নাম | সন্তুষ্ট |
---|---|---|
ক | @ | 192.168.0.2 |
ক | * | 192.168.0.2 |
ওয়াইল্ডকার্ড সার্টিফিকেট যাচাই করার জন্য, স্বয়ংক্রিয়ভাবে TXT রেকর্ড সেট করা প্রয়োজন। এটি করার জন্য, আমরা এখন একটি API টোকেন তৈরি করব (প্রোফাইল > API টোকেন > টোকেন তৈরি করুন > টেমপ্লেট: Edit zone DNS) এবং ডোমেইনটি নির্বাচন করব।:

অবশেষে, আমরা certbot সেট আপ করেছি:
sudo apt install certbot python3-certbot-dns-cloudflare
pip install --upgrade pyOpenSSL cryptography certbot certbot-dns-cloudflare
এখন আমরা পূর্বে তৈরি করা API টোকেন জমা করি:
mkdir -p ~/.secrets/certbot
nano ~/.secrets/certbot/cloudflare.ini
dns_cloudflare_api_token = YOUR_CLOUDFLARE_API_TOKEN_WITH_EDIT_ZONE_DNS_PERMISSIONS
chmod 600 ~/.secrets/certbot/cloudflare.ini
অবশেষে, আমরা একটি সার্টিফিকেট চাই:
certbot certonly \
--dns-cloudflare \
--dns-cloudflare-credentials ~/.secrets/certbot/cloudflare.ini \
--dns-cloudflare-propagation-seconds 60 \
-d '*.vielhuber.dev' -d vielhuber.dev \
--agree-tos \
--email david@vielhuber.de \
--non-interactive
স্বয়ংক্রিয় পুনর্নবীকরণও দ্রুত সেট আপ করা হয়। সার্টবট যাতে প্রতি ১২ ঘন্টা অন্তর অন্তর স্বয়ংক্রিয়ভাবে চলতে না পারে, তার জন্য আমরা প্রথমে স্ট্যান্ডার্ড স্ক্রিপ্টটি নিষ্ক্রিয় করি এবং আমাদের নিজস্ব স্ক্রিপ্ট যুক্ত করি:
sudo mv /etc/cron.d/certbot /etc/cron.d/certbot.disabled
( crontab -l 2>/dev/null; echo "0 12 * * * certbot renew --quiet" ) | crontab -
certbot renew --dry-run
এইটুকুই প্রয়োজন: Apache-তে ইন্টিগ্রেট করার জন্য, আপনার প্রোজেক্টে Apache কনফিগারেশনে তৈরি করা সার্টিফিকেটগুলি উল্লেখ করতে হবে (যেমন। /etc/apache2/sites-available/project-xy.conf
):
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/vielhuber.dev/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/vielhuber.dev/privkey.pem
অ্যাপাচি পুনরায় চালু করার পরে (sudo systemctl reload apache2
) সার্টিফিকেটগুলি তখন ইতিমধ্যেই সক্রিয় থাকে এবং আপনি আপনার প্রকল্পগুলি অ্যাক্সেস করতে পারেন https://project-xy.vielhuber.dev.
সামান্য প্রাথমিক প্রচেষ্টার মাধ্যমে, আপনি প্রকৃত ওয়াইল্ডকার্ড সার্টিফিকেট দিয়ে একটি স্থানীয় উন্নয়ন পরিবেশ তৈরি করতে পারেন যা কেবল বাস্তবসম্মতই নয় বরং আধুনিক ব্রাউজার, API এবং ডিভাইসগুলির সাথেও নির্বিঘ্নে কাজ করে। DNS-01 যাচাইকরণের জন্য ধন্যবাদ, আপনার সর্বজনীনভাবে অ্যাক্সেসযোগ্য সার্ভার বা ম্যানুয়াল সার্টিফিকেট অনুরোধের প্রয়োজন নেই - সবকিছু স্বয়ংক্রিয়, নিরাপদ এবং নির্ভরযোগ্য।