پایگاه دانش

نحوه دریافت گواهی SSL

گرین پلاس_نحوه دریافت گواهی SSL

از آنجایی که با گواهی ssl آشنا شدید نوبت می رسد به نحوه دریافت گواهی SSL.

یکی از مزایای استفاده از سرویس های ابری گرین پلاس  عدم نیاز به درخواست و تمدید های مرتب گواهی ssl می باشد.

جهت یادآوری چون برای دریافت گواهی ssl ما باید وارد سرور خود شویم و مراحل را به ترتیب طی کنیم، پیشنهاد می کنیم حتما در اولین قدم، رکورد a از رکورد های dns را ست کنید.(حتما در رکورد a فراموش نکنید wwwهم قرار بدید ) برای اطمنیان از دامنه ی خود پینگ بگیرید. برای این کار طبق دستور زیر پس از ping دامنه خود را وارد کنید.

				
					ping your domain
				
			

بعد از اطمنیان خاطر از ثبت درست رکورد a بر روی دامنه ی خود، می رسیم به ورود به سرور. برای ورود به سرور خود می توانیم از وارد کردن ستور ssh استفاده کنیم.  برای ورود به سرور خود از طریق ssh، دستور زیر را وارد کنید. 

				
					ssh root@yourdomain.com
				
			

yourdomain : همانطور که می بینید در این بخش باید دامنه مورد نظر را وارد کنید .

سپس از شما رمز عبور می خواهد. رمز عبور مربوط به سرویسی می باشد که سرور خود را ار آن تهیه کرده اید. پس از وارد کردن رمز خود، وارد سرور خواهید شد.

اولین قدم بعد از ورود به سرور، نصب nginx می باشد. برای نصب nginx کافیست دستورات زیر را وارد کنید.

				
					sudo apt update
sudo apt install nginx
				
			

سپس سراغ بررسی وضعیت وب سرور خود می رویم تا مطلع شویم آیا این وب سرور ما که در اینجا nginx مثال زده شده است، فعال می باشد یا خیر.

دستورات زیر را برای بررسی وضعیت nginx وارد می کنیم.

				
					systemctl status nginx
				
			

پس از وارد کردن دستور بالا به صفحه ای در ترمینال که منتقل می شوید که حاوی محتویات زیر می باشد. 

				
					utput
● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2020-04-20 16:08:19 UTC; 3 days ago
     Docs: man:nginx(8)
 Main PID: 2369 (nginx)
    Tasks: 2 (limit: 1153)
   Memory: 3.5M
   CGroup: /system.slice/nginx.service
           ├─2369 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           └─2380 nginx: worker process
				
			

برای اطمینان از وضعیت فعال بودن nginx به قسمت active دقت کنید. اگر همانطور که مشاهده می کنید active نوشته شده باشد، یعنی nginx فعال می باشد.

برای اطمینان خاطر بیشتر اگر ip سرور خود یا دامنه را در browser وارد کنید باید با عکس زیر مواجه شوید. (browser همون مروروگر مثل گوگل یا فایرفاکسه حواست باشه )

 

گرین پلاس_ نحوه دریافت گواهی SSL1

در مرحله بعد باید یک نمونه از html درست کنیم و آن را روی سرور خود قرار بدهیم تا با سرچ دامنه یا ip محتویاتی که ما آماده کردیم را نشان دهد. منظور از محتویات همان صفحه معمولی html می باشد که یک پیام را نشان دهد.

برای این امر دستورات زیر را وارد کنید.

				
					sudo nano /var/www/your_domain/html/index.html
				
			

دقت کنید در اینجا در بخش your domain همانطور که متوجه شدید باید دامنه ی خود را وارد کنید.

در اینجا شما یک فایل html ایجاد کرده اید که می توانید در آن متن دلخواه را بنویسید.

پس از وارد کردن دستور بالا به صفحه زیر وارد می شوید.

				
					
    
        <title>Welcome to your_domain!</title>
    
    
        <h1>Success!  The your_domain server block is working!</h1>
    

				
			

برای مثال در اینجا می توانید در بخش head دامنه خود را در داخل متن قرار دهید. 

یا در تگ h1 متنی بنویسید که پیج به نمایش بگذارد.( میتونین بنویسین خوش اومدی به اینجا welcom ... ) چون با دستور نانو وارد شدید برای خروج اول سیو کنید، با ctrl + o و سپس با ctrl + x خارج شوید.

حال برای آنکه این تنظیمات را وب سرور ما یا nginx اعمال کند لازم است یک بلوک سرور با تنظیمات صحیح ایجاد شود. برای این کار دستور زیر را وارد می کنیم.

				
					sudo nano /etc/nginx/sites-available/your_domain
				
			

حتما توجه کنید در اینجا منظور از your domain همان دامنه شما می باشد. پس از وازد کردن دستور به صفحه زیرمنتقل می شوید که طبق صفحه ی  زیر تغییرات لازم را ایجاد کرده.

				
					server {
        listen 80;
        listen [::]:80;

        root /var/www/your_domain/html;
        index index.html index.htm index.nginx-debian.html;

        server_name your_domain www.your_domain;

        location / {
                try_files $uri $uri/ =404;
        }
}
				
			

همانطور که مشاهده می کنید در بخش هایی که your domain نوشته شده باید دامنه ی خودرا وارد کنید. 

در مرحله بعد بایدفیلدمان را enable کنیم با ساخت لینک از آن به دایرکتوری sites-enabled.

توجه کنید باز هم تغییرات لازم را در your domain ایجاد کنید.(همه اینجاها باید دامنه خودتو بذاری یادت بمونه دیگه)

				
					sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/
				
			

your_domain: به درخواست های your_domain و www.your_domain پاسخ می دهد.

پیش فرض: به هر درخواستی در پورت 80 که با دو بلوک دیگر مطابقت ندارد پاسخ می دهد.

در مرحله بعد برای اینکه اطمینان حاصل کنید که هیچ اروری از سمت سینتکس نخواهید داشت حتما دستور زیر را وارد کنید.

				
					sudo nginx -t
				
			

و سپس یکبار سرور را ری استارت کنید تا تغیرات اعمال شوند.

				
					sudo systemctl restart nginx
				
			

به مرحله ای رسیدیم که از نصب وب سرور و بهبود عملکرد آن اطمینان خاطر داریم. حالا سراغ certbot می رویم تا از طریق آن گواهی ssl خود را دریافت کنیم.

دستور زیر را برای نصب certbot بر روی سرور خود اعمال کنید.

				
					sudo apt update
sudo apt install certbot
				
			

در مرحله بعد دستور زیر را جهت نصب و دریافت گواهی وارد کنید.

				
					sudo certbot --nginx
				
			

در مرحله بعد از شما ایمیل درخواست می کند پس از ایمیل رمز خود را وارد کنید تا به دریافت گواهی هدایت شوید.

بعد انجام مراحل بالا شما گواهی را دریافت کرده اید و با سرچ دامنه خود هم پیغام را مشاهده می کنید و هم اگر در بالای سایت جای لینک کلیک کنید مشاهده خواهید کرد که وضعیت از http به https تغییر حالت داده است.

اکنون که گواهی را دریافت کردید برای مطمئن شدن از دریافت گواهی می توانید به منابعی برای بررسی صحت گواهی ssl مراجعه کنید که اینجا برای شما ssl checker  را مثال می زنیم.

کافیست دامنه خود را وارد کنید و درصورت تایید موارد زیر را نشان می دهد.(از سایت خودمون مثال زدم)

گرین پلاس_ نحوه دریافت گواهی SSL

اگر با این صفحه مواجه شدید شما گواهی ssl  را دریافت کرده اید، تبریک میگم.

امیدوارم از مقاله نحوه دریافت گواهی SSL لذت برده باشید. 🙂