
بکاپ گیری از سی پنل (cPanel)
دسامبر 17, 2025
تفاوت SSL و TLS چیست؟
دسامبر 17, 2025مقدمه (پروتکل TLS چیست)

پروتکل TLS چیست؟
پروتکل TLS مجموعه ای از قوانین و پیام هاست که کمک می کند دو طرف ارتباط مثلاً مرورگر شما و سرور وب سه هدف مهم را همزمان داشته باشند:
1. محرمانگی (Confidentiality): کسی در مسیر نتواند محتوای داده را بخواند.
2. یکپارچگی (Integrity): کسی نتواند داده را در مسیر دستکاری کند بدون اینکه لو برود.
3. احراز هویت (Authentication): مطمئن شوید واقعاً به همان سروری وصل شده اید که ادعا می کند هست، نه یک واسطه یه جعلی!!
در بسیاری از توضیحاتی که آنلاین می بینیم، TLS را فقط «رمزگذاری» معرفی می کنند.
این ناقص است. رمز گذاری تنها یک ضلع ماجراست؛ بدون احراز هویت و تضمین یکپارچگی، همچنان می شود قربانی حمله مرد میانی (MITM) شد.
یکی از ضعف های رایج مقالات فارسی هم همین است که فقط به «قفل سبز» اشاره می کنند اما توضیح نمی دهند مرورگر از کجا می فهمد این قفل واقعی است و چه زمانی ممکن است فریب بخورد.
-
TLS کجای شبکه می نشیند؟
TLS بین لایه برنامه مثل HTTP ،SMTP ،IMAP ،API و لایه انتقال TCP قرار می گیرد.
به همین دلیل می بینید می گوییم HTTPS یعنی HTTP روی TLS .
همین الگو برای خیلی پروتکل های دیگر هم وجود دارد: SMTPS ، IMAPS ، و حتی ارتباطات داخلی سرویس ها در معماری های میکرو سرویس.
-
تفاوت TLS و SSL
SSL نام قدیمی تر همین ایده است.
در عمل وقتی مردم می گویند «SSL» غالباً منظورشان «TLS» است.
نسخه های SSL قدیمی و نا امن محسوب می شوند و در تنظیمات حرفه ای باید غیر فعال باشند.
-
TLS از زاویه روان شناسی اعتماد
جالب است که TLS فقط یک فناوری امنیتی نیست، یک ابزار مدیریت اعتماد هم هست.
وقتی کاربر روی یک فروشگاه آنلاین وارد می شود، قبل از اینکه قیمت یا عکس محصول را ببیند، ناخود آگاه دنبال نشانه ای از امنیت می گردد: قفل، HTTPS، نبودن هشدار مرورگر.
حتی اگر کاربر نداند رمزنگاری متقارن چیست، همین سیگنال ها باعث می شود خرید را رها نکند.
از آن طرف، یک هشدار ساده مثل “Your connection is not private” می تواند نرخ تبدیل را نابود کند.
پس TLS همزمان هم امنیت واقعی می آورد، هم اعتماد قابل مشاهده و این دو با هم ارزش ایجاد می کنند.
-
پروتکل TLS به چه دردی میخورد؟
اگر بخواهیم کاربرد را کاملاً عملی بگوییم، TLS برای این به درد می خورد که:
اطلاعات ورود(پسورد، توکن، کوکی) لو نرود.
داده ها در مسیر تغییر نکند (مثلاً مبلغ پرداخت یا شماره شبا.)
هویت سرویس مقابل تأیید شود (واقعاً بانک است، واقعاً پنل مدیریت است.)
ارتباطات داخلی بین سرویس ها امن شود (مثلاً بین Nginx و اپلیکیشن یا بین سرویس های یک کلاستر.)
از حملات رایج مثل شنود وای فای عمومی، پروکسی های مخرب و برخی تزریق ها جلوگیری شود.
پس تقریبا متوجه شدیم که پروتکل TLS چیست و چه وظیفه ای دارد
پروتکل TLS چگونه کار می کند؟
قبل از اینکه حتی یک بایت از درخواست اصلی شما (مثلاً GET / یا POST /login) رد و بدل شود، TLS یک مرحله مذاکره انجام می دهد تا روی چند چیز توافق کنند:
از چه نسخه ای استفاده شود (مثلاً TLS 1.3 یا TLS 1.2)
از چه «مجموعه الگوریتم ها» استفاده شود (Cipher Suite)
کلید های جلسه چطور ساخته شوند
سرور با چه گواهی ای خودش را ثابت کند
آیا نشست قبلی قابل از سرگیری است یا نه (Session Resumption) این مرحله را معمولاً با اسم Handshake میشناسند.
قدم اول: ClientHello
کلاینت (مرور گر، اپلیکیشن یا هر کلاینت TLS) پیامی می فرستد به نام ClientHello که شامل این موارد است:
نسخه های قابل پشتیبانی
فهرست cipher suite های پیشنهادی
یک عدد تصادفی (Random)
اکستنشن ها مثل SNI ،ALPN و موارد دیگر
SNI خیلی مهم است: وقتی چند دامنه روی یک IP هستند، SNI کمک می کند کلاینت بگوید من برای کدام دامنه آمده ام» تا سرور گواهی درست را بدهد.
قدم دوم: Server Hello و انتخاب تنظیمات
سرور پاسخ می دهد و اعلام می کند چه گزینه هایی را انتخاب کرده است.
در TLS 1.3 خیلی چیز ها ساده تر و امن تر شده و الگوریتم های قدیمی کنار گذاشته شده اند.
قدم سوم: گواهی دیجیتال و زنجیره اعتماد
سرور گواهی (Certificate) خودش را می فرستد. این گواهی معمولاً شامل:
- نام دامنه (CN / SAN)
- کلید عمومی سرور
- امضای مرجع صادرکننده (CA)
- تاریخ اعتبار
- اطلاعات سازمان (در برخی انواع گواهی)
مرورگر اینجا چند بررسی انجام می دهد:
- آیا دامنه با گواهی می خواند؟ (مثلاً example.com واقعاً داخل SAN هست؟)
- آیا گواهی منقضی نشده؟
- آیا زنجیره CA معتبر است؟ (Root / Intermediate)
- آیا گواهی لغو نشده؟ (CRL / OCSP یا OCSP Stapling)
اگر این مرحله رد شود همان هشدار معروف مرورگر را می بینید.
قدم چهارم: تولید کلید های جلسه (Session Keys)
اینجا بخش طلایی TLS رخ می دهد.
هدف این است که دو طرف روی کلید های مشترک توافق کنند، بدون اینکه لازم باشد کلید را مستقیم در شبکه بفرستند.
معمولاً از تبادل کلید مبتنی بر (EC)DHE استفاده می شود که نتیجه اش ویژگی بسیار مهمی است به نام: Forward Secrecy (محرمانگی آینده)
یعنی اگر روزی کلید خصوصی سرور لو برود، ارتباطات ضبط شده قدیمی قابل رمز گشایی نباشند.
این دقیقاً همان چیزی است که خیلی ها در توضیحات سطحی TLS جا می اندازند.
قدم پنجم: رمز گذاری متقارن برای داده واقعی
بعد از Handshake برای اینکه ارتباط سریع باشد، رمز گذاری اصلی با الگوریتم های متقارن انجام می شود (مثل AES-GCM یا ChaCha20-Poly1305).
رمز گذاری نا متقارن بیشتر برای «شروع امن» و «احراز هویت» و «توافق کلید» استفاده می شود نه برای کل ترافیک.
TLS 1.3 چه تفاوت مهمی دارد؟
بدون اینکه وارد فرمول های سنگین شویم، TLS 1.3 چند بهبود کلیدی دارد:
- Handshake سریع تر (کمتر رفت و برگشت)، پس سرعت لود بهتر
- حذف cipher suite ها و الگوریتم های قدیمی و نا امن
- پیش فرض های امن تر
- طراحی ساده تر و کمتر مستعد اشتباه در پیاده سازی
اگر برای وب سرور یا سرویس خودتان تنظیم می کنید، فعال بودن TLS 1.3 یک امتیاز بزرگ است (در کنار سازگاری با کلاینت ها.)
پروتکل TLS در چه مواقعی تاثیر گذار است؟
TLS تقریباً همیشه مفید است اما در بعضی سناریو ها «تاثیر گذارتر» و حتی حیاتی تر می شود:
1) لاگین، ثبت نام، پنل های مدیریتی
هرجا نام کاربری، رمز عبور، کوکی، توکن یا OTP رد و بدل می شود، TLS باید اجباری باشد.
حتی یک درخواست بدون TLS می تواند جلسه را لو بدهد.
2) پرداخت و تراکنش
اینجا بحث فقط محرمانگی نیست؛ یکپارچگی حیاتی است.
اگر داده دستکاری شود، خسارت مالی و حقوقی ایجاد می کند.
3) API ها و ارتباط سرویس به سرویس
در معماری های مدرن، بخش زیادی از ترافیک «داخلی» است.
اگر TLS فقط روی لبه (Edge) باشد و داخل شبکه همه چیز متن واضح باشد، با یک نفوذ کوچک، کل سیستم قابل شنود می شود.
استفاده از TLS داخلی یا حتی mTLS (احراز هویت دوطرفه) در سرویس های حساس، ریسک را خیلی کم می کند.
4) وای فای عمومی، شبکه های اشتراکی، دیتاسنتر های چند مستاجره
هرجایی که «دیگران هم در مسیر هستند» ، TLS نقش سپر را بازی میکند .
5) ایمیل و پیام رسانی سازمانی
TLS در SMTP با STARTTLS یا SMTPS کمک می کند مسیر انتقال امن تر شود.
البته اینجا یک نکته مهم وجود دارد: در ایمیل، TLS همیشه «انتها به انتها» نیست، چون ممکن است پیام بین چند سرور میانی عبور کند.
اما باز هم تفاوت بزرگی ایجاد می کند.
چگونه از این پروتکل TLS استفاده کنیم؟
برای استفاده درست باید هم «گواهی معتبر» داشته باشید، هم «پیکربندی صحیح».
یک چک لیست کاربردی:
گام 1: گرفتن گواهی معتبر
برای وب سایت ها، رایج ترین مسیر استفاده از CA های عمومی است.
برای سرویس های داخلی، می توانید CA خصوصی داشته باشید.
اگر مدیریت ساده و تمدید خودکار می خواهید، راه حل هایی مثل ACME (مثلاً Let’s Encrypt) عالی هستند.
گام 2: نصب روی وب سرور / لود بالنسر
بسته به معماری TLS ممکن است اینجا terminate شود:
روی Nginx / Apache
درون HAProxy
روی Cloudflare یا CDN
درون لودبالنسر دیتاسنتر
یا مستقیم داخل اپلیکیشن (کمتر توصیه میشود مگر در موارد خاص)
نکته: اگر TLS روی لود بالنسر terminate شود، ارتباط بین لود بالنسر تا اپلیکیشن هم باید امن باشد (TLS داخلی یا شبکه ایزوله واقعی).
گام 3: اجبار HTTPS و حذف مسیر های نا امن
ریدایرکت 301 از HTTP به HTTPS
فعال سازی HSTS (با دقت مخصوصاً اگر ساب دامین ها دارید)
اطمینان از اینکه لینک های داخلی Mixed Content تولید نمی کنند
گام 4: فعال کردن نسخه های امن
TLS 1.3 و TLS 1.2 را نگه دارید
نسخه های قدیمی را غیر فعال کنید (مثل TLS 1.0 / 1.1 و SSLها)
گام 5: انتخاب Cipher Suite مناسب
در این بخش ساده ترین کار امن ترین کار نیست، اما می شود با تنظیمات پیشنهادی معتبر جلو رفت.
هدف:
اولویت با AEAD مثل AES-GCM یا ChaCha20-Poly1305
اولویت با ECDHE برای Forward Secrecy
حذف الگوریتم های ضعیف و قدیمی
گام 6: مانیتورینگ و تمدید خودکار
گواهی منقضی شده یعنی بحران پس:
تمدید خودکار را فعال کنید
هشدار مانیتورینگ برای تاریخ انقضا بگذارید
بعد از تمدید ، reload سرویس را فراموش نکنید
-
اشتباهات رایج در پیاده سازی TLS
این بخش را خیلی جدی بگیرید چون اکثر «مشکل TLS» از خود پروتکل نیست، از تنظیم غلط است:
- نصب ناقص زنجیره گواهی (Intermediate)
- استفاده از گواهی برای دامنه اشتباه (SAN ندارد)
- فعال بودن نسخه های قدیمی برای سازگاری، بدون نیاز واقعی
- Mixed Content در سایت (تصویر یا اسکریپت از HTTP)
- عدم فعال سازی OCSP Stapling در سناریو های پرترافیک
- استفاده از TLS فقط بیرون و ارسال ترافیک داخلی به صورت plaintext
- اعتماد بی جا به «قفل» در حالی که سیستم آلوده یا DNS دستکاری شده است
- وقتی TLS خطا می دهد از کجا عیب یابی کنیم؟
چند سرنخ سریع و کاربردی:
- اگر مرورگر می گوید Certificate Expired: تاریخ انقضا را چک کنید، تایم سرور هم درست باشد.
- وقتی می گوید Name Mismatch: دامنه داخل SAN نیست یا اشتباه به دامنه دیگری وصل شده اید.
- فقط بعضی کلاینت ها مشکل دارند: احتمالاً نسخه TLS یا cipher suite با آن کلاینت سازگار نیست.
- زمانی که پشت CDN هستید: حالت SSL/TLS را درست تنظیم کنید و ارتباط CDN تا سرور را هم درست کنید.
- شما API دارید و خطای Handshake می گیرید: لاگ کلاینت و سرور را کنار هم بگذارید، معمولاً مشکل نسخه یا SNI است.
در میانه یک مسیر، بد نیست برگردیم به اصل ماجرا:
پروتکل TLS چیست و چگونه کار می کند؟
پاسخ کوتاه این است که TLS با یک مذاکره ای هوشمندانه (Handshake)، هویت را بررسی می کند، کلید های امن می سازد و بعد داده واقعی را سریع و مطمئن رمز گذاری می کند.
پاسخ کاربردی تر این است که TLS ستون فقرات اعتماد در ارتباطات اینترنتی امروز است.
سوالات متداول
1) آیا TLS فقط برای وبسایت هاست؟
نه. TLS برای هر ارتباطی که روی شبکه انجام می شود قابل استفاده است: وب، API، ایمیل، اپلیکیشن های موبایل، سرویس های داخلی و حتی برخی VPN ها که از TLS به عنوان لایه امن استفاده می کنند.
2) تفاوت HTTPS و TLS چیست؟
TLS یک پروتکل امنیتی است. HTTPS یعنی HTTP که داخل TLS تونل شده است.
یعنی HTTPS یک «کاربرد» از TLS است، نه چیز جدا.
3) اگر گواهی رایگان باشد، امنیت کمتر است؟
خیر. رایگان یا پولی بودن، لزوماً سطح رمزنگاری را تغییر نمی دهد.
تفاوت معمولاً در نوع اعتبارسنجی (DV ، OV ، EV)، خدمات پشتیبانی و امکانات مدیریتی است.
برای خیلی از سایت ها، گواهی رایگان معتبر کاملاً کافی است.
4) بهترین راه جلوگیری از تمدید نشدن گواهی چیست؟
تمدید خودکار (مثلاً با ACME) + مانیتورینگ تاریخ انقضا . حتی اگر تمدید خودکار دارید ، هشدار انقضا را حذف نکنید ؛ چون خطاهای DNS ، تغییر مسیرها ، یا محدودیتهای شبکه میتواند تمدید را شکست دهد .
5) آیا TLS روی سرعت سایت اثر منفی دارد؟
TLS کمی هزینه پردازشی دارد ولی در عمل با TLS 1.3 و سخت افزار های امروزی، اثرش بسیار کم است.
حتی گاهی به خاطر بهبود های شبکه و پروتکل ها، تجربه کاربری بهتر هم می شود. ضمن اینکه امنیت و اعتماد، ارزش این هزینه را دار
بسیار ممنون که مارا در مقاله پروتکل TLS چیست همرالهی کردید. جهت مشاهده آخرین مقالات ما می توانید به صفحه بلاگ مایا هاست مراجعه کنین.
تیم تولید محتوای مایا هاست




