n8n - Getting Started Guide
n8n is an open-source workflow automation tool that lets you connect apps, APIs, and services using a visual drag-and-drop editor. It works like Zapier or Make, but runs entirely on your own server. With over 400 integrations and support for custom code, it suits both simple automations and complex multi-step workflows. Your owner account is created automatically during provisioning using the domain, email and password you provided when ordering.
Step 1 - Verify n8n Works
Your server's IP address and root password are shown on the Server Details page in your client panel. Open your browser and navigate to:
http://your.server.ip
Log in with the email and password you provided when ordering. Your owner account was created automatically during setup.
If the login page loads and you can sign in, n8n is working correctly.
If you placed the server behind a VyOS router on a private network, either configure port forwarding (ports 22, 80 and 443) to make n8n accessible from the internet (needed for webhooks from external services), or connect over a VPN and reach n8n on the server's private IP.
Step 2 - Configure Custom Domain (Optional)
If you provided a domain name during order, point it to your server by creating a DNS A record:
your-domain.com -> your.server.ip
DNS changes usually take a few minutes, but can take up to 24 hours. You can check the status at dnschecker.org.
Step 3 - Enable SSL with Let's Encrypt
Once your domain resolves to the server IP, connect via SSH and run:
ssh root@your.server.ip
/opt/setup/get-ssl.sh
The script will automatically configure Nginx with your domain, obtain a free Let's Encrypt certificate, and update n8n to use HTTPS. After completion, n8n will be available at https://your-domain.com. Automatic renewal is already configured.
Post-Installation
Fail2Ban - Brute-Force Protection
Your server comes with Fail2Ban pre-configured to protect SSH from brute-force attacks.
| Rule | Max Attempts | Ban Duration |
|---|---|---|
| SSH | 5 failed logins | 10 minutes |
Useful commands:
# Check banned IPs
fail2ban-client status sshd
# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4
If you accidentally lock yourself out, connect via VNC console in your client panel and unban your IP.
Service Management
# Check n8n service status
systemctl status n8n
# View n8n logs
journalctl -u n8n -f
# Restart n8n
systemctl restart n8n
# View setup log
cat /opt/setup/setup.log
Backups
n8n stores all data (workflows, credentials, execution history) in an SQLite database:
# Back up n8n data
cp -r /root/.n8n /root/n8n-backup-$(date +%Y%m%d)
# Or export workflows via CLI
n8n export:workflow --all --output=/root/workflows-backup.json
Updates
# Update n8n
npm install -g n8n
systemctl restart n8n
# Update OS packages
apt update && apt upgrade -y
Software Included
| Component | Version |
|---|---|
| Ubuntu | 24.04 LTS |
| n8n | Latest |
| Node.js | 22.x LTS |
| Nginx | 1.24 |
| Certbot | 2.9 |
| Fail2Ban | 1.0.2 |
Troubleshooting
| Problem | Solution |
|---|---|
| Cannot access n8n web interface | Check that n8n is running: systemctl status n8n. Also verify Nginx: systemctl status nginx |
| n8n shows "Not Found" or blank page | Restart n8n: systemctl restart n8n. Wait 10-15 seconds and refresh the page |
| SSL script fails with DNS error | Ensure your domain A record points to the server IP. Check with: dig +short your-domain.com |
| Login page says "wrong credentials" | Use the email and password you entered when ordering. If forgotten, check your order details in the client panel |
| Workflows not executing | Check n8n logs: journalctl -u n8n --since "1 hour ago". Ensure the workflow is set to Active |
| Webhooks not reachable from outside | Set up a domain and enable SSL. Webhook URLs update automatically when SSL is configured |
| Blocked by Fail2Ban | Use VNC console in your client panel to unban your IP |
| Forgot root password | Use VNC console in your client panel to reset it |