فهرست مطالب:

تقویت خدمات SSL در سرور وب شما (Apache/ Linux): 3 مرحله
تقویت خدمات SSL در سرور وب شما (Apache/ Linux): 3 مرحله

تصویری: تقویت خدمات SSL در سرور وب شما (Apache/ Linux): 3 مرحله

تصویری: تقویت خدمات SSL در سرور وب شما (Apache/ Linux): 3 مرحله
تصویری: CS50 2013 - Week 8, continued 2024, جولای
Anonim
تقویت خدمات SSL بر روی وب سرور شما (Apache/ Linux)
تقویت خدمات SSL بر روی وب سرور شما (Apache/ Linux)

این یک آموزش بسیار کوتاه است که به یکی از جنبه های امنیت سایبری مربوط می شود - قدرت سرویس ssl در سرور وب شما. سابقه این است که خدمات ssl در وب سایت شما استفاده می شود تا اطمینان حاصل شود که هیچ کس نمی تواند داده هایی را که به وب سایت شما منتقل می شود هک کند. حملات خوبی به سرویس های SSL آسیب پذیر مانند اشکال Heartbleed در OpenSSL و اشکال Poodle که از آسیب پذیری های SSL 3.0 سوء استفاده می کردند ، منتشر شده است. (این منطقه یک هدف متحرک است ، بنابراین شما باید آزمایش SSL را در چرخه ISO-27001 plan-do-check-act (PDCA) خود ایجاد کنید.)

هنگامی که ssl با استفاده از گواهی ارائه دهنده شناخته شده در وب سایت شما نصب می شود ، خواهید دید که وب سایت شما از طریق https://yourdomain.com قابل دسترسی است. این بدان معناست که داده ها در قالب رمزگذاری شده به عقب و جلو منتقل می شوند. در مقابل ، https://yourdomain.com یا رمزگذاری ضعیف داده های منتقل شده را در متن واضح نشان می دهد ، به این معنی که حتی یک هکر بچه دار می تواند با استفاده از ابزارهای در دسترس مانند Wireshark به داده های رمز عبور شما و غیره دسترسی پیدا کند.

در بقیه این آموزش ، من فرض می کنم که شما از Apache به عنوان سرور وب خود در لینوکس استفاده می کنید و از طریق شبیه ساز پایانی مانند بتونه به سرور وب خود دسترسی دارید. برای سادگی ، فرض می کنم که ISP شما گواهی SSL شما را ارائه کرده است و شما می توانید برخی از جنبه های آن را دوباره پیکربندی کنید.

مرحله 1: آزمایش قدرت سرویس SSL خود

آزمایش قدرت سرویس SSL شما
آزمایش قدرت سرویس SSL شما

به سادگی به https://www.ssllabs.com/ssltest/ بروید و نام دامنه خود را در کنار جعبه نام میزبان وارد کرده و کادر تأیید "نتایج را در تابلوها نشان ندهید" را انتخاب کرده و بر روی دکمه ارسال کلیک کنید. (لطفاً توجه داشته باشید که نباید هیچ دامنه ای را بدون اجازه قبلی آزمایش کنید و هرگز نباید نتایج را روی تخته ها نشان دهید.)

پس از اتمام آزمایشات ، نمره F به A+برای شما تعیین می شود. نتایج آزمایش مفصلی به شما داده می شود که امیدوارم دلیل نمره تعیین شده برای شما مشخص شود.

دلایل معمول شکست این است که شما از اجزای قدیمی مانند رمزها یا پروتکل ها استفاده می کنید. من به زودی روی رمزها تمرکز می کنم ، اما ابتدا یک کلمه سریع در مورد پروتکل های رمزنگاری.

پروتکل های رمزنگاری امنیت ارتباطات را در یک شبکه کامپیوتری فراهم می کنند. … اتصال خصوصی (یا ایمن) است زیرا از رمزنگاری متقارن برای رمزگذاری داده های منتقل شده استفاده می شود. دو پروتکل اصلی TLS و SSL هستند. استفاده از دومی ممنوع است و به نوبه خود ، TLS در حال پیشرفت است و بنابراین وقتی این را می نویسم ، آخرین نسخه 1.3 است ، البته در قالب پیش نویس. از نظر عملی ، در ژانویه 2018 ، شما فقط باید TLS v 1.2 را داشته باشید. فعال شد احتمالاً به TLV نسخه 1.3 منتقل می شود. در طول سال 2018. در آزمون Qualys پروتکل های رمزنگاری که اعمال کرده اید لیست می شود و در حال حاضر ، اگر از TLS نسخه 1.2 1.2 استفاده می کنید ، نمره ضعیفی دریافت خواهید کرد.

آخرین نکته ای که در مورد پروتکل های رمزنگاری باید گفت این است که وقتی یک بسته وب و گواهی SSL را از یک ISP اصلی مانند GoDaddy خریداری می کنید ، TLS نسخه 1.2 خواهد بود. که خوب است اما در خط پایین ، ممکن است برای شما مشکل باشد که بگویید TLS v 1.3. شخصاً ، من گواهینامه های SSL خود را نصب می کنم و بنابراین ، به اصطلاح ، بر سرنوشت خودم کنترل دارم.

مرحله 2: پیکربندی مجدد Apache برای ایجاد تغییرات SSL

پیکربندی مجدد Apache برای ایجاد تغییرات SSL
پیکربندی مجدد Apache برای ایجاد تغییرات SSL

یکی از زمینه های مهمی که در آزمون Qualys SSL آزمایش شده است و تمرکز این بخش مجموعه های Cipher است که قدرت رمزگذاری داده های منتقل شده شما را تعیین می کند. در اینجا یک نمونه خروجی از آزمون Qualys SSL در یکی از دامنه های من آمده است.

رمز سوئیت # TLS 1.2 (سوئیت در سرور مورد نظر سفارش) TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030) ECDH secp256r1 (معادله 3072 بیت RSA) FS256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f) ECDH secp256r1 (معادله 3072 بیت RSA) FS128TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028) ECDH secp256r1 (معادله 3072 بیت RSA) FS256TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (0xc027) ECDH secp256r1 (معادل 3072 بیت RSA) FS128

ممکن است زمان زیادی را صرف پیکربندی مجدد پیکربندی Apache خود کنید تا خطوط قرمز (ناموفق) را از گزارش تست Qualys خود حذف کنید ، اما من روش زیر را برای دریافت بهترین تنظیمات Cipher Suite توصیه می کنم.

1) از وب سایت Apache دیدن کنید و توصیه های آنها را برای استفاده از Cipher Suite جلب کنید. در زمان نوشتن ، این پیوند را دنبال کردم -

2) تنظیمات توصیه شده را به فایل پیکربندی Apache خود اضافه کرده و Apache را راه اندازی مجدد کنید. این تنظیم توصیه شده آنها بود که من از آن استفاده کردم.

SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384: ECDHE-RSA-AES256-GCM-SHA384: ECDHE-ECDSA-CHACHA20-POLY1305: ECDHE-RSA-CHACHA20-POLY1305: ECDHE-E35-E35A-E253-E35A -AES128-GCM-SHA256: ECDHE-ECDSA-AES256-SHA384: ECDHE-RSA-AES256-SHA384: ECDHE-ECDSA-AES128-SHA256: ECDHE-RSA-AES128-SHA256

یادداشت ها - یکی از چالش ها یافتن فایل مورد نیاز برای تغییر دستورالعمل SSLCipherSuite است ، برای این کار وارد Putty شده و وارد دایرکتوری etc (sudo cd /etc) شوید و به دنبال یک پوشه apache مانند apache2 یا http باشید. بعد ، در فهرست apache به صورت زیر جستجو کنید: grep -r "SSLCipherSuite" /etc /apache2 - این خروجی مشابه این را به شما می دهد:

/etc/apache2/mods-available/ssl.conf:#SSLCipherSuite HIGH: MEDIUM:! aNULL:! MD5:! RC4:! DES/etc/apache2/mods-available/ssl.conf: #SSLCipherSuite HIGH:! aNULL: ! MD5:! RC4:! DES /etc/apache2/mods-available/ssl.conf:#SSLCipherSuite ECDH+AESGCM: DH+AESGCM: ECDH+AES256: DH+AES256: ECDH+AES128: DH+AES: ECDH+3DES: DH+3DES: RSA+AESGCM: RSA+AES: RSA+3DES:! aNULL:! MD5:! DSS

نکته مهمی که باید به آن توجه کنید فایل /etc/apache2/mods-available/ssl.conf یا هر آنچه که شما دارید است. فایل را با استفاده از ویرایشگری مانند nano باز کرده و به بخش # SSL Cipher Suite بروید:. سپس ورودی موجود در دستورالعمل SSLCipherSuite را با ورودی بالا در وب سایت Apache جایگزین کنید. به خاطر داشته باشید که دستورالعمل های قدیمی SSLCipherSuite را کامنت کنید و Apache را مجدداً راه اندازی کنید - در مورد من ، این کار را با تایپ sudo /etc/init.d/apache2 restart انجام دادم

توجه داشته باشید که گاهی اوقات ممکن است لازم باشد رمزهای خاصی را که به شما نمره پایین Qualys SSL می دهند (مثلاً به دلیل کشف آسیب پذیری های جدید) ، حتی اگر از تنظیمات توصیه شده آپاچی استفاده کرده اید ، حذف کنید. یک مثال این است که خط زیر در گزارش Qualys شما TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030) با رنگ قرمز (شکست) ظاهر می شود اولین قدم این است که کد مورد نیاز برای تغییر در دستورالعمل Apache SSLCipherSuite خود را بیابید. برای پیدا کردن کد ، به https://www.openssl.org/docs/man1.0.2/apps/ciphers… بروید-این کد را به صورت زیر نشان می دهد: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 ECDHE-RSA-AES256-GCM-SHA384

ECDHE-RSA-AES256-GCM-SHA384 را بردارید و آن را از ورودی که بعنوان دستورالعمل Apache Apache SSLCipherSuite اضافه کرده اید حذف کرده و سپس با استفاده از عبارت زیر به آن اضافه کنید!

مجدداً Apache را مجدداً راه اندازی کنید و دوباره آزمایش کنید

مرحله 3: نتیجه گیری

من می دانم که شما چیزی در مورد آزمایش SSL آموخته اید. چیزهای زیادی برای آموختن در این مورد وجود دارد ، اما امیدوارم ، شما را در مسیر درست راهنمایی کرده باشم. در آموزش های بعدی من ، سایر حوزه های امنیت سایبری را پوشش خواهم داد ، بنابراین با ما همراه باشید.

توصیه شده: