Panduan instalasi n8n di VPS Ubuntu 24.04 menggunakan Node.js. Mencakup konfigurasi NGINX sebagai reverse proxy dan pengamanan dengan SSL Let's Encrypt untuk platform automasi yang andal.
n8n (dibaca “en-eight-en”) merupakan open-source workflow automation tool yang memungkinkan kamu untuk membuat automasi dan integrasi antara berbagai aplikasi dan layanan dengan cara yang mudah dan visual, tanpa banyak menulis kode.
Baca Juga: Apa Itu n8n? Solusi Workflow Automation Open Source
Dengan self-hosting n8n di VPS, kamu akan memiliki kendali penuh terhadap data, privasi, dan alur kerja tanpa adanya batasan. Dengan menjalankan n8n di infrastruktur milikmu sendiri, kamu bisa menghindari ketergantungan pada penyedia layanan dan menyesuaikan lingkungan sesuai kebutuhan.
Panduan ini ditujukan untuk membantu kamu menginstal n8n melalui sistem operasi Ubuntu 24.04 dengan menggunakan Node.js.
Sebelum memulai, pastikan hal-hal berikut sudah dipenuhi:
VPS dengan OS Ubuntu 24.04
Akses root atau user dengan hak sudo
Port 5678 terbuka di firewall
Koneksi internet aktif untuk mengunduh paket-paket yang dibutuhkan
Domain untuk pengaksesan n8n via HTTPS, misalnya: n8n.yourdomain.com
Sistem sudah di-update untuk menghindari konflik dependensi:
sudo apt update && sudo apt upgrade -y
n8n dapat berjalan secara langsung di sistem Node.js. Silakan ikuti langkah-langkah di bawah ini untuk menginstal versi LTS (long-term support) Node.js.
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo bash -
sudo apt-get install -y nodejs
node -v
atau:
npm -v
Jika berhasil, terminal akan menampilkan versi Node.js dan npm
npm install -g n8n
Jika kamu menginstall n8n menggunakan Node.js tanpa Docker, prosesnya akan berhenti begitu terminal ditutup atau koneksi SSH terputus. Untuk mencegah hal ini, kamu bisa menjalankan n8n di dalam sesi screen agar tetap berjalan meskipun koneksi terminal terputus.
Pertama, buat ke sesi screen terlebih dahulu:
screen -S n8n
Selanjutnya, jalankan perintah berikut:
n8n
Untuk menghentikan koneksi dari sesi screen, ketik CTRL + A lalu D. Jika kamu ingin kembali berinteraksi dengan sesi screen n8n tersebut, jalankan perintah:
screen -R n8n
http://ip-server-mu:5678
Ketika mengakses n8n menggunakan IP Address atau domain yang tidak menggunakan HTTPS, kamu mungkin akan menjumpai error seperti gambar berikut:
Hal ini terjadi karena n8n menggunakan secure cookie secara default, yang memerlukan HTTPS. Untuk mengatasi kendala ini akan kita bahas pada langkah pembuatan sertifikat SSL.
Untuk melindungi website n8n kamu dan memastikan koneksi yang terenkripsi, kita akan mengaktifkan SSL (HTTPS) menggunakan Let’s Encrypt dan NGINX sebagai reverse proxy. Langkah ini sangat penting jika kamu menggunakan domain kustom dan untuk mengatasi error secure cookie.
sudo apt update && sudo apt install nginx certbot python3-certbot-nginx -y
sudo systemctl enable nginx && sudo systemctl start nginx
sudo nano /etc/nginx/sites-available/n8n
Isi dengan:
server {
server_name n8n.yourdomain.com;
location / {
add_header Content-Security-Policy "default-src https: data: 'unsafe-inline' 'unsafe-eval'; connect-src https: wss:;";
proxy_pass http://127.0.0.1:5678;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_redirect off;
proxy_cache_bypass $http_upgrade;
}
listen 80;
}
sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
sudo systemctl restart nginx
sudo certbot --nginx -d n8n.yourdomain.com
sudo crontab -e
Pilih nano jika kamu diminta memilih editor.
Tambahkan:
0 2 * * * certbot renew --quiet --post-hook "systemctl restart nginx"
Sertifikat Let’s Encrypt akan berakhir setiap 90 hari secara default. Dengan menjalankan cron job ini, Certbot akan memperbarui sertifikat SSL milikmu secara otomatis.
Instalasi n8n menggunakan Node.js di VPS Ubuntu 24.04 telah selesai. Untuk mengonfirmasi bahwa n8n sudah menggunakan HTTPS, buka web browser dan masukkan nama domain milikmu dalam format https://n8n.yourdomain.com.
Jika kamu melihat tampilan n8n tanpa peringatan SSL, artinya proses install n8n telah berhasil. Dengan konfigurasi ini, kamu memiliki platform automasi yang andal, aman, dan siap digunakan untuk mengintegrasikan berbagai alur kerja milikmu.
Jangan ragu untuk menghubungi tim support kami jika Anda memiliki pertanyaan atau masalah terkait layanan CloudKilat.