عار٠کسے Ú©ÛØªÛ’ Ûیں؟ Ø§Ù„Ù„Û Ø³Û’ Ù…ØØ¨Øª Ú©ÛŒ باتیں شیخ الاسلام ڈاÚ
فہرست کا خانہ:
- شرطیں
- سرٹبوٹ انسٹال کریں
- مضبوط ڈی ایچ (ڈفی ہیلمین) گروپ تیار کریں
- آئیے اینکرپٹ ایس ایس ایل سرٹیفکیٹ حاصل کرنا
- خودکار تجدید کرتے ہوئے آئی ایس کو اینکرپٹ ایس ایس ایل سرٹیفکیٹ دیں
- نتیجہ اخذ کرنا
چلو انکرپٹ ایک مفت اور کھلا سرٹیفکیٹ اتھارٹی ہے جو انٹرنیٹ سیکیورٹی ریسرچ گروپ (ISRG) کے ذریعہ تیار کیا گیا ہے۔ چلو انکرپٹ کے ذریعہ جاری کردہ سرٹیفکیٹس پر آج تقریبا almost تمام براؤزرز پر بھروسہ کیا گیا ہے۔
اس ٹیوٹوریل میں ، ہم ایک مرحلہ وار ہدایات فراہم کریں گے کہ سینٹوس 7 پر سیرٹبوٹ ٹول کا استعمال کرتے ہوئے لیٹ انکرپٹ کے ذریعہ اپنے نگنیکس کو کیسے محفوظ بنایا جائے۔
شرطیں
اس ٹیوٹوریل کو جاری رکھنے سے پہلے یقینی بنائیں کہ آپ نے مندرجہ ذیل شرائط کو پورا کرلیا ہے۔
- آپ کا ایک ڈومین نام ہے جو آپ کے عوامی سرور IP کی طرف اشارہ کرتا ہے۔ اس ٹیوٹوریل میں ہم
example.comڈاٹ کام کا استعمال کریں گے۔ آپ نے EPEL ذخیرہ کو چالو کیا ہے اور CentOS 7 پر Nginx کو انسٹال کرنے کے طریقے پر عمل کرکے Nginx انسٹال کیا ہے۔
سرٹبوٹ انسٹال کریں
سیرٹبوٹ استعمال کرنے میں ایک آسان ٹول ہے جو چل انکرپٹ ایس ایس ایل سرٹیفکیٹ کو حاصل کرنے اور تجدید کرنے اور ویب سرورز کی تشکیل کے لئے کاموں کو خود بخود بنا سکتا ہے۔
سیرٹبوٹ پیکیج کو انسٹال کرنے کے لئے ای پی ایل ذخیرہ چلانے کی تشکیل کریں:
مضبوط ڈی ایچ (ڈفی ہیلمین) گروپ تیار کریں
ڈیفی – ہیلمین کیچ ایکسچینج (ڈی ایچ) غیر محفوظ مواصلات چینل پر کرپٹوگرافک چابیاں کا محفوظ طریقے سے تبادلہ کرنے کا ایک طریقہ ہے۔
درج ذیل کمانڈ کو ٹائپ کرکے 2048 بٹ DH پیرامیٹرز کا ایک نیا سیٹ تیار کریں:
sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
اگر آپ چاہیں تو آپ سائز کو 4096 بٹس تک تبدیل کرسکتے ہیں ، لیکن اس صورت میں ، نظام انٹروپی کے حساب سے نسل کو 30 منٹ سے زیادہ وقت لگ سکتا ہے۔
آئیے اینکرپٹ ایس ایس ایل سرٹیفکیٹ حاصل کرنا
ہمارے ڈومین کے لئے ایس ایس ایل سرٹیفکیٹ حاصل کرنے کے ل we're ہم ویبروٹ پلگ ان کا استعمال کرنے جارہے ہیں جو domain
${webroot-path}/.well-known/acme-challenge
ڈائرکٹری میں مطلوبہ ڈومین کی توثیق کرنے کے لئے عارضی فائل تشکیل دے کر کام کرتا ہے۔ چلو انکرپٹ سرور عارضی فائل سے HTTP درخواستوں کی توثیق کرتا ہے تاکہ یہ تصدیق کی جاسکے کہ درخواست کردہ ڈومین سرور میں حل ہوجاتا ہے جہاں سرٹیٹ بوٹ چلتا ہے۔
اس کو مزید آسان بنانے کے
/var/lib/letsencrypt
. ہم ایک واحد ڈائرکٹری ،
/var/lib/letsencrypt
.well-known/acme-challenge
لئے تمام HTTP درخواستوں کا نقشہ
/var/lib/letsencrypt
گے۔
مندرجہ ذیل کمانڈز ڈائریکٹری تشکیل دیں گے اور اسے نینگس سرور کیلئے قابل تحریر بنا دیں گے۔
sudo mkdir -p /var/lib/letsencrypt/.well-known
sudo chgrp nginx /var/lib/letsencrypt
sudo chmod g+s /var/lib/letsencrypt
نقل کوڈ سے بچنے کے لئے درج ذیل دو ٹکڑوں کو تشکیل دیں جن کو ہم اپنی تمام Nginx سرور بلاک فائلوں میں شامل کرنے جارہے ہیں۔
sudo mkdir /etc/nginx/snippets
/etc/nginx/snippets/letsencrypt.conf
location ^~ /.well-known/acme-challenge/ { allow all; root /var/lib/letsencrypt/; default_type "text/plain"; try_files $uri =404; }
/etc/nginx/snippets/ssl.conf
ssl_dhparam /etc/ssl/certs/dhparam.pem; ssl_session_timeout 1d; ssl_session_cache shared:SSL:50m; ssl_session_tickets off; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS'; ssl_prefer_server_ciphers on; ssl_stapling on; ssl_stapling_verify on; resolver 8.8.8.8 8.8.4.4 valid=300s; resolver_timeout 30s; add_header Strict-Transport-Security "max-age=15768000; includeSubdomains; preload"; add_header X-Frame-Options SAMEORIGIN; add_header X-Content-Type-Options nosniff;
مذکورہ ٹکڑے میں موزیلا کے ذریعہ تجویز کردہ چیپرز شامل ہیں ، او سی ایس پی اسٹپلنگ ، ایچ ٹی ٹی پی سخت ٹرانسپورٹ سیکیورٹی (ایچ ایس ٹی ایس) کو قابل بناتا ہے اور حفاظتی مرکوز ایچ ٹی ٹی پی ہیڈر کو نافذ کرتا ہے۔
ایک بار اس کے ٹکڑوں کے
letsencrypt.conf
بعد ، ڈومین سرور بلاک کھولیں اور
letsencrypt.conf
کا ٹکڑا شامل کریں جیسا کہ ذیل میں دکھایا گیا ہے:
server { listen 80; server_name example.com www.example.com; include snippets/letsencrypt.conf; }
تبدیلیوں کے اثر انداز ہونے کے لئے نینگینکس ترتیب کو دوبارہ لوڈ کریں:
sudo systemctl reload nginx
اب آپ ویبروٹ پلگ ان کے ساتھ سیرٹ بوٹ چلا سکتے ہیں اور جاری کرکے اپنے ڈومین کیلئے SSL سرٹیفکیٹ فائلیں حاصل کرسکتے ہیں۔
sudo certbot certonly --agree-tos --email [email protected] --webroot -w /var/lib/letsencrypt/ -d example.com -d www.example.com
اگر ایس ایس ایل سرٹیفکیٹ کامیابی کے ساتھ حاصل کرلیا گیا ہے ، تو سرٹی بوٹ مندرجہ ذیل پیغام کو پرنٹ کرے گا۔
IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/example.com/privkey.pem Your cert will expire on 2018-06-11. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF:
اب جب کہ آپ کے پاس سرٹیفکیٹ فائلیں ہیں ، آپ اپنے ڈومین سرور بلاک میں درج ذیل ترمیم کرسکتے ہیں۔
server { listen 80; server_name www.example.com example.com; include snippets/letsencrypt.conf; return 301 https://$host$request_uri; } server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; #… other code }
مذکورہ بالا ترتیب کے ساتھ ہم ایچ ٹی ٹی پی ایس پر مجبور ہو رہے ہیں اور www کو نان www ورژن میں بھیج رہے ہیں۔
آخر میں ، تبدیلیوں کے اثر انداز ہونے کے لئے نینگینکس سروس کو دوبارہ لوڈ کریں۔
خودکار تجدید کرتے ہوئے آئی ایس کو اینکرپٹ ایس ایس ایل سرٹیفکیٹ دیں
آئیے اینکرپٹ کے سرٹیفکیٹ 90 دن کے لئے موزوں ہیں۔ سرٹیفکیٹ کی میعاد ختم ہونے سے پہلے خود بخود تجدید کرنے کے ل we ، ہم ایک ایسا کام بنائیں گے جو دن میں دو بار چلے گا اور کسی بھی سرٹیفکیٹ کی میعاد ختم ہونے سے 30 دن قبل خود بخود تجدید کرے گا۔
نیا cronjob بنانے کے لئے
crontab
کمانڈ چلائیں:
sudo crontab -e
مندرجہ ذیل لائنیں چسپاں کریں:
0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(3600))' && certbot -q renew --renew-hook "systemctl reload nginx"
فائل کو محفوظ کریں اور بند کریں۔
تجدید کاری کے عمل کی جانچ کرنے کے لئے ، آپ سرٹبوٹ کمانڈ استعمال کرسکتے ہیں جس کے بعد - ڈرائی
--dry-run
سوئچ ہوگا:
sudo certbot renew --dry-run
اگر کوئی غلطیاں نہیں ہیں تو ، اس کا مطلب یہ ہے کہ ٹیسٹ کی تجدید کا عمل کامیاب رہا۔
نتیجہ اخذ کرنا
اس ٹیوٹوریل میں ، آپ نے اپنے ڈومین کے لئے ایس ایس ایل سرٹیفکیٹ ڈاؤن لوڈ کرنے کے لئے لیٹس اینکرپٹ کلائنٹ ، سرٹ بوٹ کا استعمال کیا۔ ڈپلیکیٹ کوڈ سے بچنے کے لئے آپ نے Nginx کے ٹکڑوں کو بھی تشکیل دیا ہے اور سرٹیفکیٹ کو استعمال کرنے کے لئے Nginx کو تشکیل دیا ہے۔ سبق کے اختتام پر آپ نے خود کار طریقے سے سرٹیفکیٹ کی تجدید کیلئے ایک کرون کام ترتیب دیا ہے۔
اینگینکس سینٹوز آئیے خفیہ کاری کے سرٹبوٹ ایس ایس ایل کریںیہ پوسٹ CentOS 7 سیریز پر انسٹال لیمپ اسٹیک کا ایک حصہ ہے۔
اس سلسلے میں دیگر پوسٹس:
Cent CentOS 7 پر Nginx انسٹال کرنے کا طریقہمائیکروولا اور ٹی موبائل کے ساتھ ساتھ ساتھ ساتھ ساتھ ساتھ ساتھ ساتھ ساتھ ساتھ ساتھ ساتھ ساتھ ساتھ ساتھ بغاوت کرنے کی امید ہے.
موٹوولا نے اپنے موبائل موبائل آلہ کو Google لوڈ، اتارنا Android آپریٹنگ سسٹم پر مبنی اعلان کیا.
ڈیبین 9 پر انکرپٹ کے ساتھ اینگینکس کو محفوظ کریں
اس ٹیوٹوریل میں ، ہم وضاحت کریں گے کہ سیبیٹ بوٹ ٹول کا استعمال کس طرح ڈیبین 9 پر نجنکس کے لئے مفت ایس ایس ایل سرٹیفکیٹ حاصل کرنے کے لئے کریں۔
سیکنڈوس 8 پر انکرپٹ کے ساتھ اینگینکس کو محفوظ کریں
اس ٹیوٹوریل میں ، ہم ایک مرحلہ وار ہدایات فراہم کریں گے کہ سینٹوس 8 پر نائنیکس کو بطور ویب سرور کی حیثیت سے چلنے والے مفت لیٹ انکرپٹ ایس ایس ایل سرٹیفکیٹ کو کیسے انسٹال کیا جائے۔ ہم یہ بھی دکھائیں گے کہ SSL سرٹیفکیٹ کو استعمال کرنے اور HTTP / 2 کو فعال کرنے کے لئے Nginx کو کس طرح تشکیل دیں۔







