Lindungi editor
Tempatkan editor di belakang HTTPS dan autentikasi yang didukung. Batasi akses administratif dan hindari pendaftaran publik bila tidak diperlukan. Rute webhook memerlukan keputusan eksposur dan autentikasi tersendiri.
Simpan kunci kredensial
Cadangkan kunci enkripsi yang dikonfigurasi dengan perlindungan yang sesuai. Memulihkan basis data tanpa kunci yang benar dapat membuat kredensial tersimpan tidak dapat digunakan. Jauhkan kunci dari tangkapan layar, repositori, dan log yang tidak difilter.
Skalakan jalur eksekusi secara sengaja
Untuk penyiapan yang sibuk, tinjau database, antrean, dan model worker yang didukung. Redis dan worker terpisah menambahkan persyaratan akses dan persistensi tersendiri. Batasi tugas bersamaan agar lonjakan tidak menghabiskan VPS atau anggaran API eksternal.
Simpan hanya data eksekusi yang berguna
Alur kerja dapat menangani token, catatan pribadi, dan dokumen. Atur pemangkasan riwayat eksekusi, redaksi nilai sensitif, dan tentukan percobaan ulang dengan hati-hati. Webhook yang terduplikasi tidak boleh menyebabkan pembayaran atau pesan kedua yang tidak diinginkan.
Perlakukan kunci enkripsi sebagai bagian dari basis data
Kredensial tersimpan bergantung pada kunci enkripsi n8n. Pertahankan direktori state yang berisi kunci yang dibuat otomatis atau setel N8N_ENCRYPTION_KEY dari penyimpanan rahasia privat. Semua worker antrean memerlukan kunci yang sama dengan proses utama. Uji pemulihan dengan kredensial sekali pakai; basis data yang dipulihkan saja mungkin tampak sehat sementara kredensialnya tetap tidak terbaca.
- Simpan kunci di luar direktori publik dan repositori
- Cadangkan basis data secara konsisten
- Gunakan PostgreSQL yang didukung untuk penerapan produksi yang dimaksudkan
Dokumentasi resmi: konfigurasi kunci enkripsi n8n
Beri webhook alamat publiknya
Reverse proxy seperti Caddy dapat mengakhiri HTTPS sementara n8n mendengarkan secara internal. Dokumentasi saat ini menggunakan N8N_WEBHOOK_URL untuk origin webhook eksternal dan menggantikan nama WEBHOOK_URL yang lebih lama dari versi 2.35.0. Tetapkan jumlah hop proxy tepercaya ke jalur sebenarnya; satu proxy menggunakan N8N_PROXY_HOPS=1. Pertahankan informasi host, protokol, dan klien yang diteruskan. Uji webhook dari luar server dan verifikasi URL produksinya.
- Tetapkan zona waktu alur kerja secara sengaja
- Pangkas riwayat eksekusi yang berisi input sensitif
- Gunakan pekerja antrean dan Redis hanya dengan kontrol akses privat yang diperlukan
# Example: one HTTPS reverse proxy
N8N_WEBHOOK_URL=https://automations.example.com/
N8N_PROXY_HOPS=1Dokumentasi resmi: n8n di balik reverse proxy
Tentukan beban kerja dan integrasi yang diizinkan
Daftar pemicu, akun eksternal, perkiraan volume eksekusi, dan pengeluaran maksimum atau efek samping yang dapat ditimbulkan setiap alur kerja. Periksa lisensi n8n untuk penggunaan sebenarnya, terutama jika menawarkannya sebagai layanan kepada orang lain. Alur kerja terjadwal kecil dan pemroses webhook publik memiliki kebutuhan sumber daya yang berbeda. Mulai dengan rilis yang didukung, status persisten privat, nama TLS, dan basis data yang sesuai untuk penerapan; hindari mengekspos port basis data dengan editor.
- Gunakan kredensial terbatas terpisah untuk setiap integrasi.
- Tetapkan zona waktu alur kerja yang dimaksudkan dan retensi riwayat eksekusi.
- Jaga alur kerja yang diekspor bebas dari rahasia nyata yang tertanam.
Dokumentasi resmi: n8n Penerapan Docker
Tetapkan origin webhook publik untuk rilis yang terpasang
Reverse proxy seperti Caddy menjangkau n8n secara internal sementara layanan eksternal memanggil origin webhook HTTPS-nya. Gunakan variabel URL webhook yang didokumentasikan untuk rilis terpasang; dokumentasi saat ini menamainya N8N_WEBHOOK_URL, sementara rilis lama menggunakan WEBHOOK_URL. Tetapkan jumlah hop proxy sebenarnya alih-alih memercayai header yang diteruskan secara sembarangan. Pisahkan kebijakan akses editor dari autentikasi webhook, dan verifikasi bahwa callback produksi tidak berisi host atau port internal.
# Example values for a supported current release, behind one proxy:
N8N_WEBHOOK_URL=https://automations.example.com/
N8N_PROXY_HOPS=1Dokumentasi resmi: pengaturan reverse-proxy webhook n8n
Uji alur kerja yang tidak berbahaya sebelum memberikan akses tulis
Mulailah dengan permintaan hanya-baca atau catatan uji sekali pakai. Uji webhook produksi dari luar VPS, penolakan autentikasi, dan percobaan ulang yang disengaja. Permintaan berulang tidak boleh secara tidak sengaja membuat tindakan konsekuensial kedua. Periksa log eksekusi untuk input yang bocor, lalu terapkan kebijakan retensi. Jika webhook hanya berfungsi dalam mode uji editor, periksa apakah alur kerja telah diterbitkan/aktif dan apakah rute produksi dan uji mencapai proses yang benar.
- Gunakan kredensial integrasi sekali pakai untuk menguji pemulihan.
- Simpan salinan terenkripsi independen dari N8N_ENCRYPTION_KEY atau status kunci yang dihasilkan.
- Jangan kirim contoh kata sandi atau token API ke keluaran debugging yang disimpan.
Dokumentasi resmi: kunci enkripsi n8n
Skalakan hanya setelah mengamati hambatan eksekusi
Mode antrean menambahkan Redis, worker, dan basis data bersama; proses utama menerima pemicu sementara worker melakukan eksekusi. Setiap worker harus menggunakan kunci enkripsi kredensial yang sama. Ikuti persyaratan penyimpanan data biner saat ini sebelum memindahkan alur kerja dengan file ke mode antrean. Batasi konkurensi dan anggaran API upstream, serta pantau usia antrean dan kegagalan. Cadangkan basis data, status, dan kunci secara bersamaan; memulai ulang kontainer bukanlah rencana pemulihan untuk kredensial tersimpan yang tidak dapat dibaca.
Dokumentasi resmi: mode antrean n8n · Pengaturan pemangkasan eksekusi