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، نحوه کار آن، مراحل ساخت در سیستمهای مختلف و جلوگیری از اشتباهات رایج، به مدیران سیستم و توسعهدهندگان کمک میکند تا بدون خطا گواهی دیجیتال خود را دریافت و امنیت ارتباطات وب را بهدرستی پیادهسازی کنند.
سوالات متداول
CSR یک فایل رمزنگاریشده است که برای درخواست صدور گواهی دیجیتال استفاده میشود و بدون آن امکان دریافت گواهی SSL وجود ندارد.
خیر، CSR هرگز شامل کلید خصوصی نیست و فقط با استفاده از کلید خصوصی امضا میشود تا مالکیت درخواست تأیید گردد.
مهمترین فیلد CSR، Common Name است که باید دقیقاً با دامنه یا سابدامنه موردنظر مطابقت داشته باشد.
فقط در صورتی که CSR برای گواهیهای SAN یا Wildcard ایجاد شده باشد؛ در غیر این صورت هر دامنه نیاز به CSR جداگانه دارد.
در این صورت گواهی صادرشده قابل استفاده نخواهد بود و باید CSR و گواهی جدیدی ایجاد شود.
CSR باید روی همان سروری ساخته شود که قرار است گواهی SSL روی آن نصب گردد.
حداقل طول پیشنهادی کلید 2048 بیت است که استاندارد و امن محسوب میشود.
موارد اخیر
-
CSR در گواهی دیجیتال چیست؟ آموزش جامع Certificate Signing Request و نحوه ساخت آن در سیستمهای مختلف -
گواهی دیجیتال (Certificate) چیست و چه تفاوتی با امضای دیجیتال دارد؟ -
حمله Side Channel چیست؟ بررسی کامل حملات ساید چنل در امنیت سایبری -
آسیب پذیری XXE چیست و چگونه باعث نفوذ به سرور میشود؟ بررسی XML External Entity به زبان ساده -
NFC چیست و چگونه کار میکند؟ + کاربرد Near Field Communication در امنیت شبکه -
احراز هویت بدون رمز عبور چیست و چرا آینده امنیت دیجیتال است؟ -
FIDO چیست و چگونه فرایند احراز هویت را امن تر میکند؟ -
ماژول امنیتی سخت افزاری (HSM) چیست و با Hardware Security Key چه تفاوتی دارد؟ -
کلید سختافزاری چیست؟ معرفی انواع Hardware Security Key -
OpenVPN چیست و چگونه کار میکند؟ + مقایسه با IPsec VPN
برترین ها
-
CSR در گواهی دیجیتال چیست؟ آموزش جامع Certificate Signing Request و نحوه ساخت آن در سیستمهای مختلف -
گواهی دیجیتال (Certificate) چیست و چه تفاوتی با امضای دیجیتال دارد؟ -
حمله Side Channel چیست؟ بررسی کامل حملات ساید چنل در امنیت سایبری -
آسیب پذیری XXE چیست و چگونه باعث نفوذ به سرور میشود؟ بررسی XML External Entity به زبان ساده -
احراز هویت بدون رمز عبور چیست و چرا آینده امنیت دیجیتال است؟
اشتراک گذاری این مطلب
دیدگاهتان را بنویسید
نشانی ایمیل شما منتشر نخواهد شد. بخشهای موردنیاز علامتگذاری شدهاند *