نحوه ایجاد SSL معتبر در localhost برای XAMPP

SSL
در این متن می خواهیم برای سایت Site.test یک گواهینامه ssl رایگان نصب کنیم .
  1. در XAMPP به پوشه Apache بروید. برای من این پوشه ر مسیر C:\xampp\apache قرار دارد این بستگی به مسیر نصب شما دارد.
  2. 2. یک پوشه در آن صفحه ایجاد کنید. من پوشه ای با نام crt ایجاد کردم . من در این مسیر می خواهم گواهینامه خود را ایجاد کنم . C:\xampp\apache\crt
  3. این فایل ها را اضافه کنید
فایل cert.conf
با کدزیر :
[ req ]
 
 
 
default_bits        = 2048
 
default_keyfile     = server-key.pem
 
distinguished_name  = subject
 
req_extensions      = req_ext
 
x509_extensions     = x509_ext
 
string_mask         = utf8only
 
 
 
[ subject ]
 
 
 
countryName                 = Country Name (2 letter code)
 
countryName_default         = US
 
 
 
stateOrProvinceName         = State or Province Name (full name)
 
stateOrProvinceName_default = NY
 
 
 
localityName                = Locality Name (eg, city)
 
localityName_default        = New York
 
 
 
organizationName            = Organization Name (eg, company)
 
organizationName_default    = Example, LLC
 
 
 
commonName                  = Common Name (e.g. server FQDN or YOUR name)
 
commonName_default          = {{DOMAIN}}
 
 
 
emailAddress                = Email Address
 
emailAddress_default        = test@example.com
 
 
 
[ x509_ext ]
 
 
 
subjectKeyIdentifier   = hash
 
authorityKeyIdentifier = keyid,issuer
 
 
 
basicConstraints       = CA:FALSE
 
keyUsage               = digitalSignature, keyEncipherment
 
subjectAltName         = @alternate_names
 
nsComment              = "OpenSSL Generated Certificate"
 
 
 
[ req_ext ]
 
 
 
subjectKeyIdentifier = hash
 
 
 
basicConstraints     = CA:FALSE
 
keyUsage             = digitalSignature, keyEncipherment
 
subjectAltName       = @alternate_names
 
nsComment            = "OpenSSL Generated Certificate"
 
 
 
[ alternate_names ]
 
 
 
DNS.1       = {{DOMAIN}}
 
و فایل make-cert.bat با کد زیر راایجاد کنید
@echo off
 
set /p domain="Enter Domain: "
 
set OPENSSL_CONF=../conf/openssl.cnf
 
 
 
if not exist .\%domain% mkdir .\%domain%
 
 
 
..\bin\openssl req -config cert.conf -new -sha256 -newkey rsa:2048 -nodes -keyout %domain%\server.key -x509 -days 365 -out %domain%\server.crt
 
 
 
echo.
 
echo -----
 
echo The certificate was provided.
 
echo.
 
pause
 
 
  1. cert.conf را ویرایش کرده و make-cert.bat را اجرا کنید
در فایل crrt.conf مقدار {{DOMAIN}} را با نام سایت خود که در اینجا site.text است تغییر دهید و سپس فایل make-cert.bat را اجرا کنید.
پس از اجرا سولاتی از شما پرسید می شود که باید جواب دهید
 
5- گواهینامه را در ویندوز نصب کنید.
پس از آن پوشه site.test ایجاد شده را مشاهده خواهید کرد. در آن پوشه خواهیم داشت server.crt و server.key. این گواهی SSL ماست.
برای نصب آن روی ویندوز روی server.crt دوبار کلیک کنید تا ویندوز بتواند به آن اعتماد کند.
و سپس Local Machineرا به عنوان محل سایت انتخاب کنید.
حال Place all certificate in the following store را انتخاب کنید و سپس با کلیک روی brows گزینه Trusted Root Certification Authorities. را انتخاب کنید .
کلیک کنید روی next و سپس finish
  1. سایت را در هاست های ویندوز اضافه کنید
  2. را باز کنید و فایل C:\Windows\System32\drivers\etc\hosts را در ان باز نمایید
حال خط زیر را در اخر فایل اضافه و فایل را ذخیره کنید
127.0.0.1 site.test
حال با اجرای http: //site.test در مرور گر سایت از طریق xampp اجرا  خواهد شد.
7- سایت را در در فایل XAMPP conf اضافه کنید
ما باید SSL را برای این دامنه فعال کنیم و به XAMPP اطلاع دهیم که SSL Cert را در کجا ذخیره کرده ایم  بنابراین باید C: \ xampp \ apache \ conf \ extra \ httpd-xampp.conf را ویرایش کنیم
 
و این کد را در پایین اضافه کنید:
## site.test
 <VirtualHost *:80>
     DocumentRoot "C:/xampp/htdocs"
     ServerName site.test
     ServerAlias *.site.test
 </VirtualHost>
 <VirtualHost *:443>
     DocumentRoot "C:/xampp/htdocs"
     ServerName site.test
     ServerAlias *.site.test
     SSLEngine on
     SSLCertificateFile "crt/site.test/server.crt"
     SSLCertificateKeyFile "crt/site.test/server.key"
 </VirtualHost>
پس از آن ، شما نیاز به راه اندازی مجدد Apache در XAMPP دارید. این بسیار ساده است ، به سادگی کنترل پنل XAMPP را باز کنید و ماژول Apache را stop کرده و مجدداً start کنید.
 
 
در صورتی که گواهینامه را خریداری نموده اید فایل ها خریداری شده را باید در مسیر زیر در پوشه های اعلام شده قرار دهید
  •  
در این مسیر سه پوشه با اسم های ssl.crt و ssl.csr و ssl.key قرار دارد  که باید فایل های ایجاد شده را در هر یک از پوشه ها کپی کنید سپس از پوشه ssl.crt گواهینامه  خود را اجرا و نصب کنید .

Add Feedback