CSR در گواهی دیجیتال چیست؟ آموزش جامع Certificate Signing Request و نحوه ساخت آن در سیستم‌های مختلف
CSR

CSR در گواهی دیجیتال چیست؟ آموزش جامع Certificate Signing Request و نحوه ساخت آن در سیستم‌های مختلف

در فرآیند راه‌اندازی ارتباطات امن و دریافت گواهی دیجیتال، مفهومی به نام CSR یا Certificate Signing Request نقش کلیدی دارد. CSR در واقع نقطه شروع صدور گواهی SSL/TLS است و بدون آن امکان احراز هویت سرور و ایجاد ارتباط امن وجود ندارد. آشنایی با CSR به مدیران سیستم و توسعه‌دهندگان کمک می‌کند تا گواهی دیجیتال را به‌درستی و بدون خطا دریافت و نصب کنند.

گواهی دیجیتال (Certificate) چیست و چه تفاوتی با امضای دیجیتال دارد؟

CSR چیست؟

CSR (Certificate Signing Request) یک فایل متنی رمزنگاری‌شده است که هنگام درخواست صدور گواهی دیجیتال ایجاد می‌شود. این فایل شامل اطلاعات هویتی دامنه یا سازمان به‌همراه کلید عمومی است و توسط سرور یا سیستم درخواست‌دهنده تولید می‌شود. CSR به مرجع صدور گواهی ارسال می‌شود تا بر اساس اطلاعات موجود در آن، گواهی دیجیتال صادر گردد.

نکته مهم این است که CSR هرگز شامل کلید خصوصی نیست و تنها با استفاده از کلید خصوصی امضا می‌شود. این امضا نشان می‌دهد که درخواست‌دهنده واقعاً مالک کلید خصوصی مربوط به کلید عمومی داخل CSR است. به همین دلیل CSR نقش مهمی در حفظ امنیت فرآیند صدور گواهی و جلوگیری از جعل هویت دارد.

منظور از کلید عمومی و کلید خصوصی در رمزنگاری چیست؟ برسی نحوه عملکرد و مقایسه

CSR چه نقشی در صدور گواهی دیجیتال دارد؟

CSR در چرخه صدور گواهی دیجیتال به‌عنوان مرحله آغازین شناخته می‌شود. پس از تولید جفت کلید عمومی و خصوصی روی سرور، فایل CSR ساخته شده و به‌عنوان درخواست رسمی صدور گواهی به مرجع صدور گواهی ارسال می‌شود. CA بر اساس اطلاعات موجود در CSR، مانند نام دامنه و مشخصات سازمان، فرآیند اعتبارسنجی را آغاز می‌کند و بدون CSR امکان صدور هیچ گواهی دیجیتالی وجود ندارد.

از نظر ارتباط با CA (مرجع صدور گواهی)، CSR نقش واسطه اعتماد را ایفا می‌کند. CA با بررسی امضای دیجیتال CSR و اطلاعات درج‌شده در آن، اطمینان حاصل می‌کند که درخواست‌دهنده مالک کلید خصوصی مرتبط با درخواست است. سپس در صورت موفقیت اعتبارسنجی، گواهی دیجیتال را با استفاده از همان کلید عمومی موجود در CSR صادر می‌کند و زنجیره اعتماد شکل می‌گیرد.

CSR چگونه کار می‌کند؟

1.تولید جفت کلید (Public / Private Key)

فرآیند CSR با تولید یک جفت کلید رمزنگاری‌شده روی سرور آغاز می‌شود که شامل کلید عمومی و کلید خصوصی است. کلید خصوصی به‌صورت امن روی سرور نگهداری می‌شود و هرگز نباید افشا شود، در حالی که کلید عمومی برای ایجاد CSR استفاده خواهد شد. امنیت کل فرآیند صدور گواهی دیجیتال به محافظت صحیح از این کلید خصوصی وابسته است.

2.ایجاد فایل CSR

پس از تولید کلیدها، سیستم با استفاده از کلید عمومی و اطلاعات هویتی مانند نام دامنه و سازمان، یک فایل Certificate Signing Request ایجاد می‌کند. این فایل معمولاً به‌صورت متنی و با فرمت PEM است و شامل اطلاعات لازم برای صدور گواهی دیجیتال می‌باشد. CSR در این مرحله هنوز هیچ گواهی‌ای نیست و فقط یک درخواست رسمی محسوب می‌شود.

3.امضای CSR با کلید خصوصی

در این مرحله، فایل CSR با استفاده از کلید خصوصی امضا می‌شود تا مالکیت درخواست تأیید گردد. این امضا به مرجع صدور گواهی نشان می‌دهد که درخواست‌دهنده واقعاً مالک کلید خصوصی مرتبط با کلید عمومی داخل CSR است. این مکانیزم از صدور گواهی برای افراد یا سرورهای جعلی جلوگیری می‌کند.

4.ارسال CSR به مرجع صدور گواهی (CA)

در نهایت CSR امضاشده به CA (مرجع صدور گواهی) ارسال می‌شود تا فرآیند اعتبارسنجی آغاز گردد. CA اطلاعات موجود در CSR را بررسی کرده و پس از انجام مراحل تأیید دامنه یا سازمان، گواهی دیجیتال را بر اساس کلید عمومی موجود در CSR صادر می‌کند.

CSR در چه مرحله‌ای از نصب SSL استفاده می‌شود؟

CSR در مرحله قبل از صدور گواهی SSL/TLS و پس از تولید کلید خصوصی استفاده می‌شود. این فایل اولین قدم رسمی برای دریافت گواهی دیجیتال است و پس از ارسال آن به CA و صدور گواهی، مراحل نصب و پیکربندی SSL روی سرور آغاز می‌شود؛ بنابراین بدون CSR، فرآیند نصب SSL عملاً امکان‌پذیر نیست.

اشتباهات رایج هنگام ایجاد CSR

  • وارد کردن اشتباه Common Name (CN)
  • عدم تطابق دامنه با نوع گواهی (Wildcard یا SAN)
  • گم کردن یا حذف کلید خصوصی
  • استفاده از الگوریتم رمزنگاری ضعیف
  • انتخاب طول کلید نامناسب
  • وارد کردن اطلاعات سازمانی نادرست
  • ایجاد CSR روی سرور متفاوت از محل نصب گواهی
  • استفاده مجدد از CSR قدیمی یا نامعتبر

نحوه ساخت CSR در سیستم‌های مختلف 

در این بخش، روش ایجاد فایل CSR را در رایج‌ترین سیستم‌ها و کنترل‌پنل‌ها بررسی می‌کنیم. مراحل به‌گونه‌ای توضیح داده شده‌اند که حتی در اولین تجربه نیز بتوانید بدون خطا CSR بسازید.

ساخت CSR با OpenSSL (Linux / macOS) 

1.بررسی نصب OpenSSL

ابتدا مطمئن شوید OpenSSL روی سیستم نصب است. در ترمینال دستور زیر را اجرا کنید:

				
					openssl version
				
			

اگر نسخه OpenSSL نمایش داده شد، ابزار آماده استفاده است.

2.تولید کلید خصوصی و CSR

با دستور زیر می‌توانید هم‌زمان کلید خصوصی و فایل CSR را ایجاد کنید:

				
					openssl req -new -newkey rsa:2048 -nodes -keyout private.key -out request.csr
				
			

در این دستور:

“rsa:2048” طول کلید امن را مشخص می‌کند 

“private.key” کلید خصوصی شماست 

“request.csr” فایل CSR نهایی خواهد بود 

3.وارد کردن اطلاعات CSR

پس از اجرای دستور، از شما اطلاعاتی مانند Country، Organization و Common Name (دامنه) پرسیده می‌شود. مهم‌ترین فیلد، Common Name است که باید دقیقاً با دامنه موردنظر (مثلاً amnafzar-rayka.ir) مطابقت داشته باشد.

4.ذخیره و استفاده از CSR

پس از پایان مراحل فایل request.csr آماده ارسال به CA است و کلید خصوصی باید در مکانی امن نگهداری شود.

ساخت CSR در IIS (Windows Server) 

1.ورود به IIS Manager

از منوی Start ابزار Internet Information Services (IIS) Manager را اجرا کنید و نام سرور را انتخاب نمایید.

2.باز کردن Server Certificates

در پنل میانی روی گزینه Server Certificates کلیک کنید و سپس از ستون سمت راست گزینه Create Certificate Request را انتخاب نمایید.

3.وارد کردن اطلاعات گواهی

در این مرحله اطلاعاتی مانند:

				
					Common Name
Organization
City و Country

				
			

وارد می‌شود.

4.تنظیم الگوریتم و ذخیره CSR

الگوریتم رمزنگاری (معمولا RSA با طول 2048 انتخاب می‌شود) را انتخاب کرده و مسیر ذخیره فایل CSR را مشخص کنید. فایل خروجی آماده ارسال به CA خواهد بود.

نکات مهم ساخت CSR در IIS

  • CSR باید روی همان سروری ساخته شود که گواهی نصب می‌شود.
  • حذف یا تغییر Key بعد از CSR باعث نامعتبر شدن گواهی می‌شود.

ساخت CSR در cPanel 

1.ورود به cPanel

با اطلاعات هاست وارد cPanel شوید و به بخش SSL/TLS بروید.

2.انتخاب Generate, view, or delete SSL certificate signing requests

در این بخش امکان ساخت و مدیریت CSR فراهم است.

3.تکمیل فرم CSR

دامنه، اطلاعات سازمانی و طول کلید (2048 یا 4096) را وارد کنید. cPanel کلید خصوصی را به‌صورت خودکار ایجاد می‌کند.

4.تولید و کپی CSR

پس از ایجاد، متن CSR نمایش داده می‌شود که باید آن را کپی کرده و در سایت CA وارد کنید.

ساخت CSR در Plesk

1.ورود به Plesk

پس از ورود، به مسیر Websites & Domains → SSL/TLS Certificates بروید.

2.افزودن گواهی جدید

روی گزینه Add SSL/TLS Certificate کلیک کرده و اطلاعات دامنه و سازمان را وارد کنید.

3.ایجاد CSR

با انتخاب گزینه Create CSR، Plesk به‌صورت خودکار کلید خصوصی و CSR را تولید می‌کند.

4.کپی CSR و ارسال به CA

CSR تولیدشده را کپی کرده و برای صدور گواهی دیجیتال استفاده نمایید.

تفاوت Plesk با cPanel

در Plesk مدیریت CSR و گواهی‌ها متمرکزتر است و معمولاً نیاز به جابه‌جایی دستی کلید خصوصی کمتر احساس می‌شود، در حالی که در cPanel کنترل جزئی‌تری روی فایل‌ها وجود دارد.

جمع‌بندی…

CSR یا Certificate Signing Request یکی از مهم‌ترین مراحل در فرآیند دریافت و نصب گواهی دیجیتال SSL/TLS است که نقش کلیدی در احراز هویت سرور و ایجاد ارتباط امن ایفا می‌کند. آشنایی با مفهوم CSR، نحوه کار آن، مراحل ساخت در سیستم‌های مختلف و جلوگیری از اشتباهات رایج، به مدیران سیستم و توسعه‌دهندگان کمک می‌کند تا بدون خطا گواهی دیجیتال خود را دریافت و امنیت ارتباطات وب را به‌درستی پیاده‌سازی کنند.

سوالات متداول

1. CSR چیست و چرا به آن نیاز داریم؟

CSR یک فایل رمزنگاری‌شده است که برای درخواست صدور گواهی دیجیتال استفاده می‌شود و بدون آن امکان دریافت گواهی SSL وجود ندارد.

2. آیا CSR شامل کلید خصوصی است؟

خیر، CSR هرگز شامل کلید خصوصی نیست و فقط با استفاده از کلید خصوصی امضا می‌شود تا مالکیت درخواست تأیید گردد.

3. مهم‌ترین اطلاعات داخل CSR کدام است؟

مهم‌ترین فیلد CSR، Common Name است که باید دقیقاً با دامنه یا ساب‌دامنه موردنظر مطابقت داشته باشد.

4. آیا می‌توان از یک CSR برای چند دامنه استفاده کرد؟

فقط در صورتی که CSR برای گواهی‌های SAN یا Wildcard ایجاد شده باشد؛ در غیر این صورت هر دامنه نیاز به CSR جداگانه دارد.

5. اگر کلید خصوصی CSR گم شود چه اتفاقی می‌افتد؟

در این صورت گواهی صادرشده قابل استفاده نخواهد بود و باید CSR و گواهی جدیدی ایجاد شود.

6. CSR باید روی کدام سرور ساخته شود؟

CSR باید روی همان سروری ساخته شود که قرار است گواهی SSL روی آن نصب گردد.

7. طول کلید مناسب هنگام ساخت CSR چقدر است؟

حداقل طول پیشنهادی کلید 2048 بیت است که استاندارد و امن محسوب می‌شود.

موارد اخیر

برترین ها

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دیدگاه