انڈروئد

محفوظ کریں اپاچی کو اوبنٹو 18.04 پر خفیہ کریں

اجمل 40 دقيقة للشيخ عبدالباسط عبد الصمد تلاوات مختارة Ù…Ù

اجمل 40 دقيقة للشيخ عبدالباسط عبد الصمد تلاوات مختارة Ù…Ù

فہرست کا خانہ:

Anonim

چلو انکرپٹ ایک سرٹیفکیٹ اتھارٹی ہے جو انٹرنیٹ سیکیورٹی ریسرچ گروپ (ISRG) کے ذریعہ تشکیل دیا گیا ہے۔ یہ دستی سرٹیفکیٹ تخلیق ، توثیق ، ​​تنصیب ، اور تجدید کو ختم کرنے کے لئے ڈیزائن کردہ مکمل طور پر خودکار عمل کے ذریعے مفت SSL سرٹیفکیٹ فراہم کرتا ہے۔

چلو انکرپٹ کے ذریعہ جاری کردہ سرٹیفکیٹ پر آج تمام بڑے براؤزرز پر اعتماد کیا جاتا ہے۔

اس ٹیوٹوریل میں ، ہم مرحلہ وار ہدایات فراہم کریں گے کہ اوبنٹو 18.04 پر سندٹبوٹ ٹول کا استعمال کرکے آئیے انکرپٹ کے ذریعہ آپ اپاچی کو کیسے محفوظ بنایا جائے۔

شرطیں

اس ٹیوٹوریل کو جاری رکھنے سے پہلے یقینی بنائیں کہ آپ نے مندرجہ ذیل شرائط کو پورا کرلیا ہے۔

  • ڈومین کا نام جو آپ کے عوامی سرور IP کی طرف اشارہ کرتا ہے۔ ہم example.com کا استعمال کریں گے۔ آپ نے اپنے ڈومین کیلئے اپاچی کو ورچوئل ورچوئل ہوسٹ کے ساتھ نصب کیا ہے۔

سرٹبوٹ انسٹال کریں

سیرٹبوٹ ایک مکمل خصوصیات والا اور استعمال میں آسان ٹول ہے جو چلو انکرپٹ ایس ایس ایل سرٹیفکیٹ کو حاصل کرنے اور تجدید کرنے اور ویب سرورز کی تشکیل کے لئے کاموں کو خود بخود بنا سکتا ہے۔ سیرٹبوٹ پیکیج اوبنٹو کے پہلے سے موجود ذخیروں میں شامل ہے۔

پیکجوں کی فہرست کو اپ ڈیٹ کریں اور سیرٹبوٹ پیکیج انسٹال کریں:

sudo apt update sudo apt install certbot sudo apt update sudo apt install certbot

مضبوط ڈی ایچ (ڈفی ہیلمین) گروپ تیار کریں

ڈیفی – ہیلمین کیچ ایکسچینج (ڈی ایچ) غیر محفوظ مواصلات چینل پر کرپٹوگرافک چابیاں کا محفوظ طریقے سے تبادلہ کرنے کا ایک طریقہ ہے۔ ہم سلامتی کو مستحکم کرنے کے لئے 2048 بٹ ڈی ایچ پیرامیٹرز کا ایک نیا سیٹ تیار کرنے جارہے ہیں۔

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 www-data /var/lib/letsencrypt sudo chmod g+s /var/lib/letsencrypt

نقل کوڈ سے بچنے کے لئے مندرجہ ذیل دو تشکیلات کے ٹکڑوں کو تشکیل دیں۔

/etc/apache2/conf-avla/letsencrypt.conf

Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/" AllowOverride None Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/" AllowOverride None Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS /etc/apache2/conf-available/ssl-params.conf

SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 SSLHonorCipherOrder On Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" Header always set X-Frame-Options DENY Header always set X-Content-Type-Options nosniff # Requires Apache >= 2.4 SSLCompression off SSLUseStapling on SSLStaplingCache "shmcb:logs/stapling-cache(150000)" # Requires Apache >= 2.4.11 SSLSessionTickets Off SSLOpenSSLConfCmd DHParameters "/etc/ssl/certs/dhparam.pem"

مذکورہ بالا ٹکڑا Cipherli.st کی تجویز کردہ چیپروں کا استعمال کررہا ہے ، OCSP اسٹپلنگ ، HTTP سخت ٹرانسپورٹ سیکیورٹی (HSTS) کو قابل بناتا ہے اور حفاظتی مرکوز HTTP ہیڈر کو نافذ کرتا ہے۔

کنفگریشن فائلوں کو چالو کرنے سے پہلے ، اس بات کو یقینی بنائیں کہ جاری mod_headers اور mod_headers دونوں mod_headers ہیں:

sudo a2enmod ssl sudo a2enmod headers

اگلا ، مندرجہ ذیل کمانڈز چلا کر SSL تشکیل فائلوں کو فعال کریں۔

sudo a2enconf letsencrypt sudo a2enconf ssl-params

HTTP / 2 ماڈیول کو فعال کریں ، جو آپ کی سائٹوں کو تیز اور زیادہ مضبوط بنائے گا:

sudo a2enmod

تبدیلیوں کے اثر انداز ہونے کے لئے اپاچی کی تشکیل کو دوبارہ لوڈ کریں:

sudo systemctl reload apache2

اب ، ہم ویبروٹ پلگ ان کے ذریعہ سرٹ بوٹ ٹول چلا سکتے ہیں اور ٹائپ کرکے 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-10-28. 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:

اب جب کہ آپ کے پاس سرٹیفکیٹ فائلیں ہیں ، اپنی ڈومین کی ورچوئل ہوسٹ کنفیگریشن کو مندرجہ ذیل میں ترمیم کریں۔

/etc/apache2/sites-available/example.com.conf

ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration

مذکورہ بالا ترتیب کے ساتھ ، ہم ایچ ٹی ٹی پی ایس پر مجبور کر رہے ہیں اور www سے نان- www ورژن میں بھیج رہے ہیں۔ اپنی ضروریات کے مطابق ترتیب کو ایڈجسٹ کرنے کے لئے آزاد ہو.۔

تبدیلیوں کے اثر انداز ہونے کے لئے اپاچی سروس کو دوبارہ لوڈ کریں:

sudo systemctl reload apache2

اب آپ https:// کا استعمال کرکے اپنی ویب سائٹ کھول سکتے ہیں ، اور آپ کو گرین لاک آئیکن نظر آئے گا۔

خودکار تجدید کرتے ہوئے آئی ایس کو اینکرپٹ ایس ایس ایل سرٹیفکیٹ دیں

آئیے اینکرپٹ کے سرٹیفکیٹ 90 دن کے لئے موزوں ہیں۔ سرٹیفکیٹ کی میعاد ختم ہونے سے پہلے خود بخود تجدید کرنے کے لئے ، سرٹ بوٹ پیکیج ایک ایسا کراؤن کام تیار کرتا ہے جو دن میں دو بار چلتا ہے اور خود بخود کسی بھی سرٹیفکیٹ کی میعاد ختم ہونے سے 30 دن پہلے ہی تجدید کرتا ہے۔

ایک بار جب سرٹیفکیٹ کی تجدید ہوجاتی ہے تو ہمیں بھی اپاچی سروس کو دوبارہ لوڈ کرنا ہوگا۔ /etc/cron.d/certbot فائل میں --renew-hook "systemctl reload apache2" کریں تاکہ یہ مندرجہ ذیل کی طرح نظر آئے۔

/etc/cron.d/certbot

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 apache2"

تجدید کاری کے عمل کی جانچ کرنے کے لئے ، آپ سرٹ بوٹ --dry-run ڈرائی --dry-run سوئچ استعمال کرسکتے ہیں:

sudo certbot renew --dry-run

اگر کوئی غلطیاں نہیں ہیں تو ، اس کا مطلب ہے کہ تجدید کا عمل کامیاب رہا۔

نتیجہ اخذ کرنا

اس ٹیوٹوریل میں ، آپ نے اپنے ڈومین کے لئے ایس ایس ایل سرٹیفکیٹ ڈاؤن لوڈ کرنے کے لئے لیٹس اینکرپٹ کلائنٹ سرٹی بوٹ کا استعمال کیا۔ آپ نے نقل کے کوڈ سے بچنے کے لئے اپاچی کے ٹکڑوں کو بھی تشکیل دیا ہے اور سرٹیفکیٹ استعمال کرنے کے لئے اپاچی کو تشکیل دیا ہے۔ سبق کے اختتام پر ، آپ نے خود بخود سرٹیفکیٹ کی تجدید کیلئے ایک کرون کام ترتیب دیا ہے۔

اپاچی اوبنٹو آئیے خفیہ کاری کریں سرٹبوٹ ایس ایس ایل

یہ پوسٹ اوبنٹو 18-04 سیریز میں انسٹال-لیمپ اسٹیک آن-انسٹال کرنے کا ایک حصہ ہے۔

اس سلسلے میں دیگر پوسٹس:

U اوبنٹو 18.04 پر اپاچی کو انسٹال کرنے کا طریقہ