Instal Nginx di Debian 12

Instal Nginx Di Debian 12



Dalam panduan ini, kami akan menunjukkan cara menginstal dan mengkonfigurasi Nginx di Debian 12.

Prasyarat:

Untuk melakukan langkah-langkah yang ditunjukkan dalam panduan ini, Anda memerlukan komponen berikut:

  • Sistem Debian 12 yang dikonfigurasi dengan benar. Periksa cara menginstal Debian pada VM VirtualBox .
  • Akses ke pengguna non-root dengan hak istimewa sudo. Belajar lebih tentang mengelola hak istimewa sudo menggunakan /etc/sudoers di Debian .

Nginx di Debian

Dikembangkan dan dipelihara oleh Proyek Debian , Debian adalah a populer , distribusi Linux gratis dan sumber terbuka. Debian terkenal dengan stabilitas, keamanan, dan dukungan komunitasnya. Debian 12 (nama kode “kutu buku”) adalah rilis stabil terbaru. Belajar lebih tentang memutakhirkan dari Debian 11 ke Debian 12 .







Nginx adalah server web gratis dan sumber terbuka yang terkenal dengan kinerja tinggi, skalabilitas, efisiensi memori, dan keamanannya. Selain itu, ini juga dapat berfungsi sebagai proxy terbalik, penyeimbang beban, cache HTTP, dll.



Di Debian, Nginx tersedia langsung dari repo paket resmi. Namun, ini mungkin sedikit ketinggalan jaman karena Siklus rilis paket Debian . Untungnya, Nginx menawarkan repo resmi Debian dengan rilis terbaru.



Metode 1: Menginstal Nginx dari Repo Debian

Pertama, buka jendela terminal dan perbarui cache repo APT:





$ sudo pembaruan yang tepat

Nginx tersedia sebagai paket “nginx”:



$ tepat tampilkan nginx

Untuk menginstal Nginx, jalankan perintah berikut:

$ sudo tepat Install nginx

Metode 2: Menginstal Nginx dari Repo Nginx

Mengonfigurasi repo Nginx APT menyediakan Nginx versi terbaru. Namun, ini mungkin bertentangan dengan paket Nginx lain dari repo default.

Prasyarat Instalasi

Pertama, instal paket prasyarat:

$ sudo tepat Install curl gnupg2 ca-sertifikat lsb-rilis debian-archive-keyring

Mengimpor Kunci Penandatanganan GPG

Kunci penandatanganan Nginx diperlukan bagi APT untuk memverifikasi keaslian paket yang diunduh. Ambil kunci penandatanganan:

$ keriting https: // nginx.org / kunci / nginx_signing.key | gpg --sayang | sudo tee / usr / membagikan / gantungan kunci / nginx-arsip-keyring.gpg > / dev / batal

Verifikasi apakah kunci yang tepat telah diimpor:

$ gpg --lari kering --diam --tanpa gantungan kunci --impor --opsi-impor pertunjukan impor / usr / membagikan / gantungan kunci / nginx-arsip-keyring.gpg

Outputnya harus mencetak 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 sebagai sidik jari kunci. Jika tidak, hapus file tersebut dari /usr/share/keyrings/nginx-archive-keyring.gpg dan mulai ulang prosesnya.

Menambahkan Repo Nginx APT

Dengan kunci penandatanganan terinstal, sekarang kita dapat menambahkan repo Nginx ke APT. Nginx menawarkan dua cabang rilis:

stabil : Kompatibilitas yang lebih baik dengan modul pihak ketiga. Hanya menerima perbaikan penting.

garis utama : Fitur baru mungkin memengaruhi kompatibilitas modul. Namun, ia menerima lebih banyak perbaikan bug, patch keamanan, dan perbaikan penting.

Nginx secara resmi merekomendasikan penerapan cabang jalur utama dalam semua kasus. Untuk menambahkan cabang jalur utama Nginx, jalankan perintah berikut:

$ gema 'deb [ditandatangani oleh=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/mainline/debian `lsb_rilis -cs` nginx' | sudo tee / dll. / tepat / sumber.daftar.d / nginx.list

Jika Anda menginginkan cabang stabil Nginx, jalankan perintah berikut:

$ gema 'deb [ditandatangani oleh=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/debian `lsb_rilis -cs` nginx' | sudo tee / dll. / tepat / sumber.daftar.d / nginx.list

Penyematan Repo

Untuk memaksa APT menggunakan repo Nginx ketika menangani paket terkait Nginx, kami mengaktifkan penyematan repo:

$ gema -Dia 'Kemasan: * \N Pin: asal nginx.org \N Pin: lepaskan o=nginx \N Prioritas Pin: 900 \N ' | sudo tee / dll. / tepat / preferensi.d / 99nginx

Menginstal Nginx

Dengan repo baru yang dikonfigurasi, perbarui cache repo APT:

$ sudo pembaruan yang tepat

Lihat info paket Nginx:

$ tepat tampilkan nginx

Terakhir, instal Nginx:

$ sudo tepat Install nginx

Penyesuaian Firewall

Debian dilengkapi dengan firewall iptables (netfilter) yang sudah diinstal sebelumnya. Namun, untuk kemudahan penggunaan, disarankan untuk menggunakan firewall UFW . Ini pada dasarnya adalah antarmuka netfilter yang lebih ramah pengguna.

Secara default, UFW memblokir Nginx dari akses jaringan. Untuk mengizinkan akses HTTP/HTTPS, jalankan perintah berikut:

$ sudo huh izinkan 80 , 443 / tcp

Jika Anda hanya menginginkan akses HTTP, gunakan perintah berikut:

$ sudo huh izinkan 80 / tcp

Jika Anda hanya menginginkan akses HTTPS, gunakan perintah berikut:

$ sudo huh izinkan 443 / tcp

Verifikasi apakah aturan berhasil ditambahkan:

$ sudo status ufw

Memverifikasi Instalasi Nginx

Ada beberapa cara untuk memverifikasi apakah instalasi Nginx berhasil. Pertama, periksa status layanan Nginx:

$ sudo status sistemctl nginx

Jika tidak berjalan, mulai server:

$ sudo systemctl mulai nginx

Sekarang, buka URL berikut di browser web:

$ http: // localhost_atau_server_ip /

Anda harus membuka halaman selamat datang default Nginx.

Mengelola Proses Nginx

Setelah instalasi, Nginx mendaftarkan layanan dengan systemd. Kita dapat dengan mudah mengelola proses Nginx menggunakan layanan ini.

Status Nginx

Perintah berikut mengembalikan status Nginx:

$ sudo status sistemctl nginx

Menghentikan Nginx

Perintah berikut menghentikan Nginx:

$ sudo systemctl menghentikan nginx

Memulai Nginx

Jika Nginx tidak berjalan, gunakan perintah berikut untuk memulai server:

$ sudo systemctl mulai nginx

Memuat ulang Nginx

Nginx tidak memerlukan restart penuh untuk menerapkan perubahan apa pun pada konfigurasinya. Dalam hal ini, kita dapat memuat ulang layanan Nginx tanpa memutuskan koneksi apa pun:

$ sudo systemctl memuat ulang nginx

Memulai ulang Nginx

Untuk me-restart server Nginx, jalankan perintah berikut:

$ sudo systemctl restart nginx

Memuat Ulang atau Memulai Ulang Nginx

Jika Anda tidak yakin apakah akan memuat ulang atau memulai ulang Nginx, gunakan perintah berikut:

$ sudo systemctl memuat ulang atau memulai ulang nginx

Dalam hal ini, systemd secara otomatis memutuskan tindakan terbaik.

Tip Bonus 1: Blok Nginx

Mirip dengan virtual host di Apache, Nginx juga mendukung banyak host di satu server.

Berikut konfigurasi dummy yang menangani dua server virtual ( sumber ):

http {

indeks indeks. html ;

server {

nama_server www. domain1 . dengan ;

access_log log / domain1. mengakses . catatan utama ;

akar / dulu / www / domain1. dengan / htdocs ;

}

server {

nama_server www. domain2 . dengan ;

access_log log / domain2. mengakses . catatan utama ;

akar / dulu / www / domain2. dengan / htdocs ;

}

}

File tersebut berisi beberapa blok dalam file konfigurasi, masing-masing menjelaskan berbagai properti. Blok yang paling penting adalah blok server dan lokasi:

  • server : Ini menjelaskan server virtual untuk menangani permintaan klien dari jenis tertentu. Mungkin ada beberapa blok server untuk beberapa server virtual. Koneksi masuk dialihkan ke blok server yang berbeda berdasarkan nama domain, alamat IP, dan port yang diminta.
  • lokasi : Ini adalah sub-blok di dalam blok server. Ini menjelaskan bagaimana Nginx harus menangani permintaan klien yang masuk untuk sumber daya yang berbeda.

Konfigurasi ini disimpan dalam file di /etc/nginx/sites-available . Mungkin ada file unik untuk setiap blok server. Konfigurasi diterapkan ketika ditempatkan di bawah /etc/nginx/sites-enabled . Umumnya, file konfigurasi dari situs yang tersedia disinkronkan ke situs yang mendukung.

Tips Bonus 2: File dan Direktori Nginx Penting

Berikut daftar singkat file dan direktori penting Nginx:

  • /etc/nginx : Direktori induk yang menampung semua konfigurasi Nginx.
  • /etc/nginx/sites-available : Ini berisi file blok server. File konfigurasi tidak digunakan.
  • /etc/nginx/sites-enabled : Ini juga menghosting blok server per situs. Umumnya, itu adalah symlink dari situs-situs yang tersedia. Nginx secara aktif menggunakan konfigurasi dari direktori ini untuk melayani permintaan klien.
  • /etc/nginx/snippet : Ini menampung fragmen konfigurasi yang dapat diimplementasikan di tempat lain.
  • /etc/nginx/ngnix.conf : Ini adalah file konfigurasi utama untuk Nginx. Ini menangani perilaku global Nginx.

Kesimpulan

Kami memamerkan berbagai cara menginstal Nginx di Debian. Kami juga membahas secara singkat cara mengelola proses Nginx menggunakan systemd. Selain itu, kami juga menyinggung secara singkat blok Nginx dan bagaimana Nginx dapat dikonfigurasi untuk melayani beberapa host virtual.

Tertarik untuk mempelajari lebih lanjut tentang Nginx? Lihat Subkategori Nginx .