Quick start: situs web dalam 15 menit
Dari mesin bersih hingga situs nginx yang berfungsi dengan sertifikat HTTPS: instalasi, direktori situs, domain, firewall, dan verifikasi.
Diperbarui 23 Agustus 2026
Skenario: instalasi Debian atau Ubuntu yang masih baru, domain milik Anda sendiri, dan tujuan untuk melihat halaman Anda melalui HTTPS. Semua perintah dijalankan sebagai root melalui SSH.
1. Instal nginx
apt update && apt install -y nginx
systemctl enable --now nginx
Buka http://your-address di browser Anda — Anda akan melihat halaman selamat datang. Jika tidak muncul, periksa firewall (langkah 3).
Di AlmaLinux, gunakan dnf sebagai ganti apt; lihat AlmaLinux.
2. Arahkan domain
Di panel registrar Anda, tambahkan record A dengan alamat mesin dari tab "Overview":
example.com. A 203.0.113.10
www.example.com. A 203.0.113.10
Periksa bahwa domain mengarah ke alamat yang benar:
apt install -y dnsutils
dig +short example.com
Pembaruan record memerlukan waktu dari satu menit hingga beberapa jam. Selama dig masih mengembalikan alamat lama, Anda tidak akan bisa menerbitkan sertifikat.
3. Buka port
apt install -y ufw
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
Lakukan
allow OpenSSHterlebih dahulu, baruenable. Urutan sebaliknya akan memutus akses Anda, dan Anda harus masuk melalui konsol teks.
4. Buat situs
mkdir -p /var/www/example.com
echo '<h1>Works</h1>' > /var/www/example.com/index.html
chown -R www-data:www-data /var/www/example.com
Konfigurasi di /etc/nginx/sites-available/example.com:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
Aktifkan dan terapkan:
ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx
nginx -t wajib dijalankan: perintah ini memeriksa konfigurasi sebelum restart. Jika outputnya tidak diakhiri dengan syntax is ok dan test is successful, jangan restart layanan — perbaiki dulu kesalahannya.
5. Terbitkan sertifikat
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com
Certbot akan meminta email, menambahkan blok listen 443 ssl, dan menyiapkan pengalihan HTTP. Perpanjangan diatur secara otomatis; Anda bisa memeriksanya seperti ini:
certbot renew --dry-run
Yang paling sering bermasalah
| Gejala | Penyebab |
|---|---|
| Browser tidak membuka situs | Port 80 atau 443 tertutup di ufw |
Certbot: Timeout during connect | Domain belum mengarah ke mesin, atau port 80 tertutup |
502 Bad Gateway | nginx mem-proxy ke aplikasi yang tidak berjalan — periksa systemctl status untuk layanan Anda |
403 Forbidden | Tidak ada izin pada direktori, atau index.html tidak ada |
| Halaman default nginx alih-alih halaman Anda | /etc/nginx/sites-enabled/default belum dihapus |
Log untuk semua masalah di atas:
tail -n 50 /var/log/nginx/error.log
journalctl -u nginx -n 50 --no-pager
Selanjutnya, Anda sebaiknya mengurus keamanan dasar menggunakan checklist jam pertama jika Anda belum melakukannya.