Table of Contents

Cloudflare + WordPress REST API + n8n integracija

🎯 Namen dokumenta

Ta dokument opisuje:


Velja za


🧠 Povzetek problema (TL;DR)

Če uporabljaš:

potem Cloudflare privzeto:

⚠️ REST API ni browser in ne zna reševati Cloudflare izzivov.

Rešitev je:


Končna arhitektura

n8n (statičen IP)

  1. > Cloudflare WAF (Custom Rules)
  2. > WordPress REST API (/wp-json/)

1️⃣ WordPress – Application Password

V WordPress Admin panelu:

  1. Users
  2. izberi uporabnika (npr. automation_n8n)
  3. Application Passwords
  4. Create new password

Shrani:

Opomba:


2️⃣ n8n – preveri izhodni IP

V n8n ustvari HTTP Request node:

Method: GET
URL: https://api.ipify.org?format=json
Authentication: None

Rezultat:

{
  "ip": "49.12.184.65"
}

Ta IP bo uporabljen v Cloudflare pravilih.


3️⃣ Cloudflare – Global Security Level

Cloudflare Dashboard:

Nastavi:

Security Level = Low

Razlog:


4️⃣ Cloudflare – Custom Rule (ALLOW + SKIP)

Cloudflare:

Ime pravila:

Allow WordPress REST API

Expression:

starts_with(http.request.uri.path, "/wp-json/")
and (ip.src eq 49.12.184.65 or ip.src eq 86.61.31.249)

Action:

Skip

WAF components to skip:

Rule order:

First

To pravilo:


5️⃣ Cloudflare – Custom Rule (BLOCK public REST)

Ustvari drugo pravilo.

Ime:

Block public WordPress REST

Expression:

starts_with(http.request.uri.path, "/wp-json/")
and not (ip.src eq 49.12.184.65 or ip.src eq 86.61.31.249)

Action:

Block

Rule order:

To pravilo:


6️⃣ Cloudflare – Zero Trust / Access

Cloudflare:

Stanje:

NO APPLICATIONS

Ne uporabljamo:

Razlog:


7️⃣ Testiranje v browserju

Iz dovoljenega IP-ja:

https://example.com/wp-json/

Pričakovano:

Iz nedovoljenega IP-ja:


8️⃣ Testiranje v n8n

HTTP Request node:

Method: GET
URL: https://example.com/wp-json/wp/v2/users/me
Authentication: Basic Auth
Username: WP user
Password: Application Password

Pričakovano:


🔐 Varnostna politika

Element Status
REST API javno dostopen
IP allowlist
Basic Auth
WAF bypass samo za n8n
Cloudflare Zero Trust

⚠️ Pogoste napake


✅ Status


🧩 Opomba

Če se IP n8n spremeni: