HTTPS را در سرورهای خود فعال کنید

کریس پالمر
Chris Palmer
Matt Gaunt

این صفحه راهنمایی برای راه اندازی HTTPS در سرورهای شما ارائه می دهد که شامل مراحل زیر می شود:

  • ایجاد یک جفت کلید عمومی/خصوصی 2048 بیتی RSA.
  • ایجاد یک درخواست امضای گواهی (CSR) که کلید عمومی شما را جاسازی می کند.
  • به اشتراک گذاری CSR خود با مرجع صدور گواهی (CA) برای دریافت گواهی نهایی یا زنجیره گواهی.
  • گواهی نهایی خود را در مکانی غیر قابل دسترسی از طریق وب مانند /etc/ssl (لینوکس و یونیکس) یا هر جایی که IIS نیاز دارد (ویندوز) نصب کنید.

کلیدها و درخواست های امضای گواهی را ایجاد کنید

این بخش از برنامه خط فرمان openssl که با اکثر سیستم‌های Linux، BSD و Mac OS X ارائه می‌شود، برای تولید کلیدهای خصوصی و عمومی و CSR استفاده می‌کند.

یک جفت کلید عمومی/خصوصی ایجاد کنید

برای شروع، یک جفت کلید RSA 2048 بیتی ایجاد کنید. یک کلید کوتاه‌تر را می‌توان با حملات حدس‌زنی brute-force شکست، و کلیدهای طولانی‌تر از منابع غیرضروری استفاده می‌کنند.

برای ایجاد یک جفت کلید RSA از دستور زیر استفاده کنید:

openssl genrsa -out www.example.com.key 2048

این خروجی زیر را می دهد:

Generating RSA private key, 2048 bit long modulus
.+++
.......................................................................................+++
e is 65537 (0x10001)

درخواست امضای گواهی را ایجاد کنید

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

اجرای دستور زیر:

openssl req -new -sha256 -key www.example.com.key -out www.example.com.csr

خروجی زیر

You are about to be asked to enter information that will be incorporated
into your certificate request

What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:CA
State or Province Name (full name) [Some-State]:California
Locality Name (for example, city) []:Mountain View
Organization Name (for example, company) [Internet Widgits Pty Ltd]:Example, Inc.
Organizational Unit Name (for example, section) []:Webmaster Help Center Example
Team
Common Name (e.g. server FQDN or YOUR name) []:www.example.com
Email Address []:webmaster@example.com

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

برای اطمینان از اعتبار CSR، این دستور را اجرا کنید:

openssl req -text -in www.example.com.csr -noout

پاسخ باید به شکل زیر باشد: