Instal Nginx
Secara default, Ubuntu tidak dikirimkan dengan Nginx. Oleh karena itu, harus diinstal secara manual dengan perintah berikut:.
sudo apt-get updatesudo apt-get install Nginx
Perintah pertama memperbarui informasi repositori lokal, sedangkan perintah kedua menginstal Nginx di sistem.
Konfigurasikan Firewall
Mengonfigurasi firewall tergantung pada perangkat lunak firewall yang diinstal di sistem. Karena beberapa firewall tersedia di pasaran, tidak mudah untuk mengajari mereka cara mengkonfigurasinya. Jadi, panduan ini hanya menunjukkan cara mengkonfigurasi default, firewall inbuilt- UFW, alias firewall yang tidak rumit. Firewall lain harus memiliki konfigurasi yang mirip dengan yang ini.
daftar aplikasi sudo ufwsudo ufw izinkan 'Nginx HTTPS'
sudo ufw aktifkan
Perintah pertama mencantumkan profil yang tersedia untuk digunakan di firewall. Perintah kedua menggunakan profil HTTPS Nginx di daftar izinkan (alias Daftar Putih) firewall, dan perintah ketiga mengaktifkan firewall. Panduan ini kemudian menunjukkan cara menggunakan HTTPS. HTTPS diperlukan saat ini karena mengamankan koneksi data antara klien dan server. Browser seperti Chrome akan secara otomatis menggunakan versi HTTPS dari situs mana pun di masa mendatang; Oleh karena itu, SSL harus diaktifkan untuk situs web mana pun, terutama ketika pemilik situs web berencana untuk meningkatkan skor SEO dan keamanannya.
Konfigurasikan Sistem File
Meskipun Nginx mendukung untuk menyajikan konten melalui beberapa nama domain, itu dikonfigurasi secara default untuk menyajikan konten melalui satu domain. Jalur defaultnya adalah Nginx adalah /var/www/html. Beberapa domain harus memiliki banyak direktori. Petunjuk berikut menunjukkan cara membuat beberapa direktori untuk menyajikan konten melalui beberapa domain.
- Buat direktori untuk setiap domain dengan perintah berikut:. Bendera p diperlukan untuk membuat direktori induk, artinya ketika www atau direktori lain di alamat tidak ada, itu membuat seluruh baris direktori dengan bendera p. sudo mkdir -p /var/www/nucuta.com/html
- Tetapkan kepemilikan ke direktori. Ini memastikan pengguna memiliki kendali penuh atas direktori. Namun, di sini pengguna diambil dari pengguna yang saat ini masuk, dan oleh karena itu penting untuk masuk ke akun pengguna yang akan ditetapkan ke direktori. Segmen pertama $USER adalah untuk pengguna, dan segmen kedua adalah untuk grup tempat pengguna berada. sudo chown -R $USER:$USER /var/www/nucuta.com/html
- Ubah izin direktori dengan perintah berikut. Ada 3 entitas, dan 3 izin dalam sistem file Linux. Dalam contoh berikut, digit pertama untuk pengguna, digit kedua untuk grup, dan digit terakhir untuk semua (alias publik). Izin baca bernilai 4, izin tulis bernilai 2, dan izin eksekusi bernilai 1. Angka-angka ini dapat ditambahkan bersama-sama untuk mengubah izin entitas, misalnya, 755 berarti, USER memiliki izin untuk BACA, MENULIS, dan EKSEKUSI (4+2+1 = 7), GROUP memiliki izin untuk BACA, dan EKSEKUSI (4+1 = 5), SEMUA memiliki izin untuk melakukan hal yang sama. Izin diterapkan ke file dan direktori dengan aturan yang berbeda. Aturan tercantum dalam grafik berikut:.
- Setelah izin diberikan, buat halaman default untuk setiap domain di browser web saat domain telanjang disebut. Domain telanjang artinya domain tanpa subdomain, contoh nucuta.com. nano /var/www/nucuta.com/html/index.html.
- Tambahkan kode boilerplate berikut di setiap file indeks, dan simpan sebagai indeks.html di direktori masing-masing (seperti yang terlihat di atas).
sudo mkdir -p /var/www/nucuta.bersih/html.
sudo chown -R $USER:$USER /var/www/nucuta.bersih/html
sudo chmod -R 755 /var/www/nucuta.com/html
sudo chmod -R 755 /var/www/nucuta.bersih/html
nano /var/www/nucuta.net/html/indeks.html.
Keberhasilan!
Konfigurasi Nginx
Mengonfigurasi Nginx tidak sesulit Nginx secara default mendukung banyak domain domain. Meskipun dimungkinkan untuk menggunakan informasi konfigurasi beberapa domain dalam file yang sama, disarankan untuk menggunakan beberapa file untuk informasi konfigurasi setiap domain. File konfigurasi default bernama "default", dan terletak di /etc/nginx/sites-available/default
- Arahkan ke /etc/nginx/sites-available/default, dan hapus semua informasi konfigurasi. Gunakan editor teks seperti nano atau notepad++ nano /etc/nginx/sites-available/default
- Salin dan tempel konfigurasi berikut, dan simpan. server
- Salin informasi konfigurasi dalam file default ke file konfigurasi khusus domain dengan perintah berikut:. sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/nucuta.com
- Ulangi langkah di atas ke domain lain juga dengan perintah berikut following. sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/nucuta.bersih
- Buka kedua file dengan editor teks seperti nano (nano ), dan ubah nilai direktif server_name sebagai berikut. Di /etc/nginx/sites-available/nucuta.file com
- Setelah kedua file dikonfigurasi, salin ke direktori berikut untuk mengaktifkan file konfigurasi. Ini menciptakan tautan simbolis antara file aktual dan direktori; karenanya di masa mendatang, hanya file dalam direktori yang tersedia situs yang harus diubah untuk membuat perubahan di direktori yang tersedia situs, dan yang mendukung situs. sudo ln -s /etc/nginx/sites-available/nucuta.com /etc/nginx/sites-enabled/
- Buka file konfigurasi, buat perubahan lagi, dan gunakan perintah berikut untuk membuat perubahan menjadi efektif. Perintah pertama memastikan file konfigurasi bebas dari informasi konfigurasi yang tidak valid, dan perintah kedua memastikan server dimuat ulang atau dimulai ulang dengan benar untuk membuat perubahan efektif. Gunakan perintah reload atau restart. Muat ulang lebih disukai, tetapi mulai ulang dapat digunakan jika memuat ulang tidak berhasil. systemctl config nginx
dengarkan 80 default_server;
mendengarkan [::]:80 default_server;
root /var/www/html;
indeks indeks.indeks html.indeks htm.nginx-debian.html;
nama server _;
lokasi /
try_files $uri $uri/ =404;
server_name nucuta.com
Di /etc/nginx/sites-available/nucuta.berkas bersih
server_name nucuta.bersih
sudo ln -s /etc/nginx/sites-available/nucuta.net /etc/nginx/sites-enabled/
systemctl reload nginx atau systemctl restart nginx.
Konfigurasikan Catatan DNS
Mengonfigurasi pengaturan DNS bergantung pada penyedia DNS. Namun, semua penyedia DNS memiliki antarmuka yang serupa. Secara default, pencatat domain menyediakan akses ke catatan DNS. Fase ini membutuhkan alamat IP server tempat server web nginx di-host. Mendapatkan alamat IP sepenuhnya tergantung pada platform. Platform seperti Linode, DigitalOcean, Vultr menampilkan IP di dasbor. Jika sulit untuk menemukan hubungi dukungan dari penyedia layanan masing-masing.
- Dalam pengaturan DNS, tambahkan catatan “A”, dan gunakan IP server sebagai nilai, nama domain sebagai tuan rumah. Pastikan nama domain yang digunakan di sini sama dengan nama domain yang digunakan di file konfigurasi Nginx. Setelah mengonfigurasi satu domain, ulangi juga untuk domain lainnya.
- Biarkan catatan DNS diperbarui. Biasanya membutuhkan waktu hingga 24 jam, tetapi biasanya, ini selesai dalam beberapa menit.
Aktifkan HTTPS
Mengaktifkan HTTPS cukup sederhana, dan dapat dilakukan secara gratis dengan letsencrypt. Letsencrypt adalah otoritas sertifikat sumber terbuka yang merilis sertifikat SSL gratis ke webmaster untuk mengenkripsi lalu lintas ke situs web mereka.
- Instal snap-in sistem operasi dengan perintah berikut:. Perhatikan bahwa segmen ini akan menggunakan daemon snap untuk menginstal semua paket yang diperlukan alih-alih apt atau apt-get. Snap adalah manajemen paket alternatif, dan alat penyebaran yang dapat digunakan untuk menginstal paket di Ubuntu, dan banyak sistem operasi Linux lainnya. Ini tidak diperlukan untuk menginstal ketika memiliki Ubuntu 16.04 LTS atau versi lain yang lebih tinggi. Namun, tetap saja, jalankan perintah terakhir untuk memastikan snap sudah diperbarui. sudo apt update
- Instal certbot yang mengonfigurasi, dan perbarui sertifikat SSL untuk kedua domain. Tanpa sertifikat SSL certbot harus diinstal secara manual. Selain itu, pembaruan harus dilakukan secara manual juga. Ini bisa menjadi masalah karena sertifikat letsencrypt kedaluwarsa setelah 3 bulan kemudian. Oleh karena itu, sertifikat SSL harus diperbarui setiap 3 bulan sekali untuk memastikan situs dapat berfungsi dengan baik seperti yang diharapkan. Gunakan perintah berikut untuk menginstal certbot dengan mudah. sudo snap install --classic certbot
- Certbot diinstal di direktori /snap/bin/certbot. Untuk menjalankan file certbot yang dapat dieksekusi melalui baris perintah tanpa menentukan path lengkapnya, jalankan perintah berikut:. Ini menciptakan tautan simbolis antara snap/bin/certbot dan direktori /usr/bin/certbot, sehingga memungkinkan certbot yang dapat dieksekusi untuk berjalan pada antarmuka baris perintah tanpa menentukan jalur lengkapnya. sudo ln -s /snap/bin/certbot /usr/bin/certbot
- Konfigurasikan instance Nginx di sistem dengan perintah berikut. Ada perintah lain yang secara langsung menargetkan domain tertentu saat mengonfigurasi SSL. Perintah ke-2 yang ditentukan di bawah ini menginstal dan mengonfigurasi sertifikat SSL untuk nama domain yang ditentukan. sudo certbot -nginx
- Jalankan perintah berikut untuk mensimulasikan proses pembaruan. Perintah aktual tanpa flag -dry-run dijalankan secara otomatis saat certbot mengonfigurasi cronjob untuk menjalankan perintah secara otomatis setelah beberapa waktu kemudian. Pengujian dry run diperlukan untuk memastikan certbot dapat memperbarui sertifikat tanpa hambatan apa pun. sudo certbot memperbarui --dry-run
sudo apt install snapd
sudo snap instal inti; Sudo snap refresh inti
certbot --nginx -d nucuta.com
Kesimpulan
Mengonfigurasi beberapa nama domain di server web Nginx cukup mudah karena menyediakan banyak opsi untuk mempermudah proses. Certbot memungkinkan untuk menginstal sertifikat SSL untuk beberapa domain untuk server web Nginx. Sebagai sertifikat SSL, panduan ini menggunakan letsencrypt yang menyediakan sertifikat SSL gratis untuk sejumlah domain domain. Satu-satunya kelemahan letsencrypt adalah masa pakainya yang singkat, tetapi certbot memastikan itu tidak akan menjadi masalah bagi webmaster dengan proses pembaruan otomatisnya.