GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Mengkonfigurasi Nginx Dengan SSL

Dalam tutorial ini, kami akan menunjukkan cara mengkonfigurasi Nginx dengan SSL di server Linux Anda. Bagi Anda yang belum tahu, Transport Layer Security (TLS) dan Secure Socket Layer ( SSL) menyediakan metode mudah untuk mengenkripsi koneksi antara pengguna akhir dan server web. SSL menggunakan sistem otoritas sertifikat untuk memberikan verifikasi identitas guna mencegah situs web mengklaim sebagai organisasi atau situs web lain. Tutorial ini menunjukkan cara menyiapkan keamanan SSL yang kuat di server web Nginx.

Artikel ini mengasumsikan Anda memiliki setidaknya pengetahuan dasar tentang Linux, tahu cara menggunakan shell, dan yang terpenting, Anda meng-host situs Anda di VPS Anda sendiri. Instalasi cukup sederhana dan mengasumsikan Anda sedang berjalan di akun root, jika tidak, Anda mungkin perlu menambahkan 'sudo ' ke perintah untuk mendapatkan hak akses root. Saya akan menunjukkan kepada Anda melalui langkah-demi-langkah mengkonfigurasi Nginx dengan SSL di Linux Anda.

Konfigurasi Nginx Dengan SSL

Diperlukan:

  • Dengan asumsi Anda telah menginstal server web Nginx.
  • Saya menggunakan Namecheap sebagai registrar, dan mereka menjual kembali Sertifikat SSL dari sejumlah perusahaan lain, termasuk Comodo.

Langkah 1. Buat direktori

mkdir -p /etc/nginx/ssl/idroot.us

Langkah 2. Membuat Kunci SSL dan CSR Anda

Sebelum membeli sertifikat, Anda perlu membuat kunci pribadi, dan file CSR (Permintaan Penandatanganan Sertifikat). Anda akan dimintai konten File CSR saat memesan sertifikat. Untuk Nama Umum, masukkan nama domain yang Anda maksudkan tanpa 'www' yaitu idroot.us. Jika itu SSL Wildcard, gunakan *.idroot.us.

openssl req -nodes -newkey rsa:2048 -keyout idroot.us.key -out idroot.us.csr

Langkah 3. Buat bundel sertifikat

Setelah membeli sertifikat, Anda akhirnya akan mendapatkan email dengan Sertifikat SSL Anda. Ini berisi file zip dengan berikut:

  • AddTrustExternalCARoot.crt
  • COMODORSAAddTrustCA.crt
  • COMODORSADomainValidationSecureServerCA.crt
  • idroot_net.crt
cat idroot_net.crt AddTrustExternalCARoot.crt COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt >> ssl-bundle.crt

Setelah membuat bundel sertifikat, Anda dapat memindahkannya ke direktori SSL Nginx Anda.

mv ssl-bundle.crt /etc/nginx/ssl/idroot.us/

Langkah 4. Konfigurasikan Sertifikat untuk Nginx

Buka konfigurasi virtual host Nginx, menggunakan SSL dengan Nginx memerlukan modifikasi pada mendengarkan direktif dan tiga direktif terkait SSL seperti yang ditunjukkan pada contoh berikut:

nano /etc/nginx/conf.d/ssl.conf
server {
   listen 443 ssl spdy;
   server_name www.idroot.us idroot.us;
   root /var/www/idroot.us/public_html;
   index index.php index.html index.htm;
   server_tokens off;

   #SSL CONF
   ssl on;
   ssl_certificate /etc/nginx/ssl/idroot.us/ssl-bundle.crt;
   ssl_certificate_key /etc/nginx/ssl/idroot.us/idroid.us.key;


   #SSL
   ssl_session_cache shared:SSL:20m;
   ssl_session_timeout 10m;

   ssl_prefer_server_ciphers On;
   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;

   ssl_stapling on;
   ssl_stapling_verify on;
   resolver 8.8.8.8 8.8.4.4 valid=300s;
   resolver_timeout 10s;

   # permalink
   location / {
      try_files $uri $uri/ /index.php?$args;
   }

   # php-script handler
   location ~ \.php$ {
      fastcgi_index index.php;
      fastcgi_pass 127.0.0.1:9000;
      root    /var/www/idroot.us/public_html;
      fastcgi_param SCRIPT_FILENAME /var/www/idroot.us/public_html$fastcgi_script_name;
      include /etc/nginx/fastcgi_params;
   }

location  ~ /\.ht {
               deny  all;
           }
    }

Langkah 5. Redirect HTTP Virtual Host ke HTTPS

return 301  https://idroot.us$request_uri;

Langkah 6. Mulai ulang/muat ulang Nginx.

/etc/init.d/nginx restart

Selamat! Anda telah berhasil menginstal Nginx dengan SSL. Terima kasih telah menggunakan tutorial ini untuk menginstal dan mengonfigurasi Nginx dengan SSL pada sistem Linux. Untuk bantuan tambahan atau informasi berguna, kami sarankan Anda memeriksa yang resmi Situs web Nginx.


Cent OS
  1. Cara Mengonfigurasi Nginx agar Bekerja dengan PHP melalui PHP-FPM

  2. Konfigurasi Kibana 4 dengan Nginx | Mengamankan Kibana 4 – CentOS 7

  3. Cara mengkonfigurasi SSL Cloudflare asal dengan Nginx

  1. Cara Memasang Sertifikat SSL di NGINX

  2. Cara Menginstal dan Mengkonfigurasi Nginx di CentOS 7

  3. Cara mengonfigurasi IMAP dengan SSL

  1. Cara Instal phpMyAdmin dengan Nginx di CentOS 7

  2. Cara Menginstal dan Mengonfigurasi Askbot dengan Nginx di CentOS 7

  3. Cara Menginstal SuiteCRM dengan Nginx di CentOS 7