Is there a way to bypass cloudflare protection?

Describe the problem/error/question

The site I want to login/post has cloudflare protection it basically detects if you’re a bot when I use HTTP Request node in n8n but I don’t get cloudflare challenge if I use a browser. Is there any free tools that can bypass bot detection? I tried using the community node n8n-nodes-camoufox but it seems to have connection issues connect ECONNREFUSED ::1:9222 any other community nodes I can use?

What is the error message (if any)?

Please share your workflow

(Select the nodes on your canvas and use the keyboard shortcuts CMD+C/CTRL+C and CMD+V/CTRL+V to copy and paste the workflow.)

Share the output returned by the last node

Information on your n8n setup

  • n8n version:2.29.8
  • Database (default: SQLite):default
  • n8n EXECUTIONS_PROCESS setting (default: own, main):default
  • Running n8n via (Docker, npm, n8n cloud, desktop app):npm
  • Operating system:Ubuntu 24.04 LTS

@Ruriko

The reason you are encountering these issues is that Cloudflare does not just look at your “User-Agent” header; it performs TLS Fingerprinting (checking how your network connection is established) and JavaScript Challenges (running code in a browser to prove you aren’t a script). The standard n8n HTTP Request node is a simple HTTP client with no browser engine, so it fails these tests immediately.

To fix this, you would typically need to launch a Camoufox or Chromium browser manually in your Ubuntu terminal with the remote debugging flag enabled:

# Example (actual command depends on your camoufox installation)
camoufox --remote-debugging-port=9222

If you don’t have the browser binary installed and running as a separate process, the node has nothing to connect to.

Another alternative is FlareSolverr
You need to install via docker

docker run -d \
  --name=flaresolverr \
  -p 8191:8191 \
  -e LOG_LEVEL=info \
  --restart always \
  ghcr.io/flaresolverr/flaresolverr:latest

then use http node to send your request

Method: POST
URL: http://localhost:8191/v1
Body Parameters (JSON):

{
  "cmd": "request.get",
  "url": "https://the-protected-site.com",
  "maxTimeout": 60000
}