PHPMyAdmin এর সাথে SSL/TLS সেটআপ করা

PHPMyAdmin এর সাথে Security Management - পিএইচপি মাইএডমিন (PHP MyAdmin) - Database Tutorials

360

PHPMyAdmin-এর সাথে SSL/TLS সেটআপ করার মাধ্যমে ডেটা ট্রান্সফারের সময় নিরাপত্তা নিশ্চিত করা যায়। SSL/TLS এনক্রিপশন ব্যবহার করে ব্রাউজার এবং সার্ভারের মধ্যে ডেটা সুরক্ষিত থাকে। নিচে PHPMyAdmin-এর জন্য SSL/TLS কনফিগার করার ধাপগুলো দেওয়া হলো।


SSL/TLS সেটআপের পূর্বশর্ত

  1. SSL সার্টিফিকেট:
    • আপনার কাছে একটি বৈধ SSL সার্টিফিকেট থাকতে হবে।
    • এটি নিজে জেনারেট করা (Self-signed) হতে পারে অথবা কোনো সার্টিফিকেট অথরিটি (CA) থেকে নেওয়া হতে পারে (যেমন Let’s Encrypt)।
  2. Apache বা Nginx সার্ভার:
    • PHPMyAdmin চলার জন্য Apache বা Nginx ওয়েব সার্ভার ইনস্টল থাকতে হবে।
  3. PHPMyAdmin ইনস্টলেশন:
    • PHPMyAdmin আগে থেকেই ইনস্টল থাকতে হবে।

SSL/TLS সেটআপের ধাপসমূহ

ধাপ ১: SSL সার্টিফিকেট ইনস্টল করুন

  1. Let’s Encrypt দিয়ে SSL সার্টিফিকেট ইন্সটল (Apache সার্ভারের জন্য):
    • যদি Let’s Encrypt ব্যবহার করেন, তাহলে certbot ইনস্টল করুন:

      sudo apt install certbot python3-certbot-apache
      
    • Apache-এর জন্য SSL সক্রিয় করতে:

      sudo certbot --apache
      
  2. Self-Signed SSL সার্টিফিকেট তৈরি করুন:
    • সার্টিফিকেট এবং কী তৈরি করতে নিচের কমান্ড ব্যবহার করুন:

      sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt
      

ধাপ ২: Apache বা Nginx এ SSL কনফিগার করুন

Apache-এ SSL কনফিগারেশন
  1. SSL মডিউল সক্রিয় করুন:

    sudo a2enmod ssl
    
  2. Default SSL Virtual Host ফাইল সম্পাদনা করুন:
    • /etc/apache2/sites-available/default-ssl.conf ফাইলটি সম্পাদনা করুন:

      sudo nano /etc/apache2/sites-available/default-ssl.conf
      
    • ফাইলের মধ্যে SSL সার্টিফিকেট এবং কী-এর পথ উল্লেখ করুন:

      <VirtualHost *:443>
          ServerName yourdomain.com
          DocumentRoot /var/www/html/phpmyadmin
      
          SSLEngine on
          SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt
          SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key
          
          <Directory /var/www/html/phpmyadmin>
              Options FollowSymLinks
              DirectoryIndex index.php
              AllowOverride All
          </Directory>
      </VirtualHost>
      
  3. SSL সাইট সক্রিয় করুন:

    sudo a2ensite default-ssl
    
  4. Apache সার্ভার পুনরায় চালু করুন:

    sudo systemctl restart apache2
    

Nginx-এ SSL কনফিগারেশন
  1. Default Server Block ফাইল সম্পাদনা করুন:
    • /etc/nginx/sites-available/default বা আপনার Nginx কনফিগারেশন ফাইল সম্পাদনা করুন:

      sudo nano /etc/nginx/sites-available/default
      
    • SSL কনফিগারেশন যোগ করুন:

      server {
          listen 443 ssl;
          server_name yourdomain.com;
      
          ssl_certificate /etc/ssl/certs/apache-selfsigned.crt;
          ssl_certificate_key /etc/ssl/private/apache-selfsigned.key;
      
          root /var/www/html/phpmyadmin;
          index index.php;
      
          location / {
              try_files $uri $uri/ =404;
          }
      
          location ~ \.php$ {
              include snippets/fastcgi-php.conf;
              fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
              fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
              include fastcgi_params;
          }
      }
      
  2. HTTP থেকে HTTPS-এ রিডাইরেক্ট করুন:

    server {
        listen 80;
        server_name yourdomain.com;
        return 301 https://$server_name$request_uri;
    }
    
  3. Nginx সার্ভার পুনরায় চালু করুন:

    sudo systemctl restart nginx
    

ধাপ ৩: PHPMyAdmin অ্যাক্সেস করুন

  • ব্রাউজারে https://yourdomain.com/phpmyadmin লিখুন।
  • আপনি দেখতে পাবেন যে PHPMyAdmin SSL এর মাধ্যমে সুরক্ষিত রয়েছে।

ধাপ ৪: HTTP ডিঅ্যাক্টিভেট (ঐচ্ছিক)

  • শুধুমাত্র HTTPS ব্যবহার করতে চাইলে HTTP সার্ভার ব্লক সম্পূর্ণ ডিঅ্যাক্টিভেট করুন।

সারাংশ

PHPMyAdmin-এর সাথে SSL/TLS সেটআপ করলে ডেটা ট্রান্সফার এনক্রিপ্ট হয়ে যায়, যা সুরক্ষার একটি অত্যন্ত গুরুত্বপূর্ণ ধাপ। SSL/TLS ইনস্টল এবং কনফিগার করার পর আপনার PHPMyAdmin HTTPS প্রটোকলের মাধ্যমে নিরাপদ থাকবে। Let’s Encrypt বা Self-Signed সার্টিফিকেট ব্যবহার করে সহজেই এই প্রক্রিয়া সম্পন্ন করা যায়।

Content added By
Promotion

Are you sure to start over?

Loading...