অ্যাপাচি এবং এনগিনেক্সে কীভাবে টিএলএস 1.3 সক্ষম করবেন


টিএলএস 1.3 হ'ল ট্রান্সপোর্ট লেয়ার সিকিউরিটি (টিএলএস) প্রোটোকলের সর্বশেষতম সংস্করণ এবং এটি যথাযথ আইইটিএফ স্ট্যান্ডার্ড: আরএফসি 8446 সহ বিদ্যমান 1.2 টি নির্দিষ্টকরণের উপর ভিত্তি করে It এটি পূর্বসূরীদের তুলনায় আরও শক্তিশালী সুরক্ষা এবং উচ্চতর কার্যকারিতা উন্নতি সরবরাহ করে।

এই নিবন্ধে, আমরা আপনাকে একটি বৈধ টিএলএস শংসাপত্র পেতে এবং অ্যাপাচি বা এনগিনেক্স ওয়েব সার্ভারগুলিতে হোস্ট করা আপনার ডোমেনের সর্বশেষতম টিএলএস 1.3 সংস্করণ প্রোটোকল সক্ষম করতে একটি ধাপে ধাপে গাইডটি দেখাব।

  • অ্যাপাচি সংস্করণ ২.৪.৩7 বা তার বেশি।
  • এনগিনেক্স সংস্করণ 1.13.0 বা তার বেশি greater
  • ওপেনএসএসএল সংস্করণ 1.1.1 বা তার বেশি।
  • সঠিকভাবে কনফিগার করা ডিএনএস রেকর্ড সহ একটি বৈধ ডোমেন নাম
  • একটি বৈধ টিএলএস শংসাপত্র

লেটস এনক্রিপ্ট থেকে টিএলএস শংসাপত্র ইনস্টল করুন

লেটস এনক্রিপ্ট থেকে একটি নিখরচায় এসএসএল শংসাপত্র পাওয়ার জন্য, আপনার বর্ণিত হিসাবে লিনাক্স সিস্টেমে Acme.sh ক্লায়েন্ট এবং কয়েকটি প্রয়োজনীয় প্যাকেজ ইনস্টল করতে হবে।

# apt install -y socat git  [On Debian/Ubuntu]
# dnf install -y socat git  [On RHEL/CentOS/Fedora]
# mkdir /etc/letsencrypt
# git clone https://github.com/Neilpang/acme.sh.git
# cd acme.sh 
# ./acme.sh --install --home /etc/letsencrypt --accountemail [email 
# cd ~
# /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --ocsp-must-staple --keylength 2048
# /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --ocsp-must-staple --keylength ec-256

দ্রষ্টব্য: উপরের কমান্ডে <আসল কোড.কম আপনার প্রকৃত ডোমেন নাম দিয়ে প্রতিস্থাপন করুন।

আপনি একবার এসএসএল শংসাপত্র ইনস্টল হয়ে গেলে, নীচে বর্ণিত হিসাবে আপনি নিজের ডোমেনে টিএলএস 1.3 সক্ষম করতে আরও এগিয়ে যেতে পারেন।

এনগিনেক্সে টিএলএস 1.3 সক্ষম করুন

আমি উপরের প্রয়োজনীয়তাগুলিতে উল্লিখিত হিসাবে, যে টিএলএস 1.3 Nginx 1.13 সংস্করণ থেকে শুরু করে সমর্থিত। আপনি যদি পুরনো Nginx সংস্করণটি চালাচ্ছেন তবে আপনাকে প্রথমে সর্বশেষতম সংস্করণে আপগ্রেড করতে হবে।

# apt install nginx
# yum install nginx

এনগিনেক্স সংস্করণ এবং ওপেনএসএসএল সংস্করণ যা Nginx সংকলিত হয়েছিল তা পরীক্ষা করুন (নিশ্চিত করুন যে এনগিনেক্স সংস্করণটি কমপক্ষে 1.14 এবং ওপেনসেল সংস্করণ 1.1.1)।

# nginx -V
nginx version: nginx/1.14.1
built by gcc 8.2.1 20180905 (Red Hat 8.2.1-3) (GCC) 
built with OpenSSL 1.1.1 FIPS  11 Sep 2018
TLS SNI support enabled
....

এখন nginx ইনস্টলেশন শুরু করুন, সক্ষম করুন এবং যাচাই করুন।

# systemctl start nginx.service
# systemctl enable nginx.service
# systemctl status nginx.service

এখন আপনার পছন্দের সম্পাদকটি ব্যবহার করে এনজিন্স ভোস্ট কনফিগারেশন /etc/nginx/conf.d/example.com.conf ফাইলটি খুলুন।

# vi /etc/nginx/conf.d/example.com.conf

এবং এসএসএল_প্রোটোকলস নির্দেশটি সনাক্ত করুন এবং নীচের চিত্রের মতো লাইনের শেষে TLSv1.3 যুক্ত করুন

server {
  listen 443 ssl http2;
  listen [::]:443 ssl http2;

  server_name example.com;

  # RSA
  ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
  # ECDSA
  ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;

  ssl_protocols TLSv1.2 TLSv1.3;
  ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
  ssl_prefer_server_ciphers on;
}

শেষ অবধি, কনফিগারেশন যাচাই করুন এবং Nginx পুনরায় লোড করুন।

# nginx -t
# systemctl reload nginx.service

অ্যাপাচে টিএলএস 1.3 সক্ষম করুন

অ্যাপাচি ২.৪.৩7 থেকে শুরু করে, আপনি টিএলএস 1.3 এর সুবিধা নিতে পারেন। আপনি যদি অ্যাপাচি-র পুরানো সংস্করণটি চালাচ্ছেন তবে আপনাকে প্রথমে সর্বশেষতম সংস্করণে আপগ্রেড করতে হবে।

# apt install apache2
# yum install httpd

একবার ইনস্টল হয়ে গেলে আপনি অ্যাপাচি এবং ওপেনএসএসএল সংস্করণটি যাচাই করতে পারেন যার বিরুদ্ধে অ্যাপাচি সংকলিত হয়েছিল।

# httpd -V
# openssl version

এখন nginx ইনস্টলেশন শুরু করুন, সক্ষম করুন এবং যাচাই করুন।

-------------- On Debian/Ubuntu -------------- 
# systemctl start apache2.service
# systemctl enable apache2.service
# systemctl status apache2.service

-------------- On RHEL/CentOS/Fedora --------------
# systemctl start httpd.service
# systemctl enable httpd.service
# systemctl status httpd.service

এখন আপনার প্রিয় সম্পাদকটি ব্যবহার করে অ্যাপাচি ভার্চুয়াল হোস্ট কনফিগারেশন ফাইলটি খুলুন।

# vi /etc/httpd/conf.d/vhost.conf
OR
# vi /etc/apache2/apache2.conf

এবং ssl_protocols নির্দেশিকাটি সনাক্ত করুন এবং নীচের চিত্রের মতো লাইনের শেষে TLSv1.3 যুক্ত করুন।

<VirtualHost *:443>
SSLEngine On

# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
# ECDSA
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;

ssl_protocols TLSv1.2 TLSv1.3
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
ssl_prefer_server_ciphers on;
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem

     ServerAdmin [email 
     ServerName www.example.com
     ServerAlias example.com
    #DocumentRoot /data/httpd/htdocs/example.com/
    DocumentRoot /data/httpd/htdocs/example_hueman/
  # Log file locations
  LogLevel warn
  ErrorLog  /var/log/httpd/example.com/httpserror.log
  CustomLog "|/usr/sbin/rotatelogs /var/log/httpd/example.com/httpsaccess.log.%Y-%m-%d 86400" combined
</VirtualHost>

অবশেষে, কনফিগারেশন যাচাই করুন এবং অ্যাপাচি পুনরায় লোড করুন।

-------------- On Debian/Ubuntu -------------- 
# apache2 -t
# systemctl reload apache2.service

-------------- On RHEL/CentOS/Fedora --------------
# httpd -t
# systemctl reload httpd.service

যাচাইকরণ সাইট টিএলএস 1.3 ব্যবহার করছে

একবার আপনি কোনও ওয়েব সার্ভারের মাধ্যমে কনফিগার হয়ে গেলে, আপনি পরীক্ষা করতে পারেন যে আপনার সাইটটি ক্রোম 70+ সংস্করণে ক্রোম ব্রাউজার বিকাশ সরঞ্জামগুলি ব্যবহার করে টিএলএস 1.3 প্রোটোকলের মাধ্যমে হ্যান্ডশেক করছে।

এখানেই শেষ. আপনি অ্যাপাচি বা এনগিনেক্স ওয়েব সার্ভারগুলিতে হোস্ট করা আপনার ডোমেনে সফলভাবে টিএলএস 1.3 প্রোটোকল সক্ষম করেছেন। এই নিবন্ধটি সম্পর্কে আপনার যদি কোনও প্রশ্ন থাকে তবে নীচে মন্তব্য বিভাগে নির্দ্বিধায় জিজ্ঞাসা করুন।