UNPKG

nginx-cf-realip

Version:

Command line utility for updating NGINX real-ip rules for CloudFlare's IPs

59 lines (46 loc) 1.99 kB
# Recover CloudFlare visitor IPs with NGINX Update your CloudFlare realip list with a simple commandline utility. ### Why? CloudFlare essentially acts as a reverse proxy for your website, meaning requests to your servers served by CloudFlare are in fact coming from CloudFlare's servers not your visitors. This means that in certain situations, such as for your NGINX access logs you'll see CloudFlare's IP addresses instead of your visitors'. This can be problematic for services that rely on visitor's true IP addresses. Particularly if you're relying on a fraud prevention system that requires visitor IPs. See [CloudFlare's support article on the topic](https://support.cloudflare.com/hc/en-us/articles/200170706-How-do-I-restore-original-visitor-IP-with-Nginx-) for a much better explaination. This package helps you keep CloudFlare's list or IP addresses updated with a simple command: `nginx-cf-realip`. ### Requirements - [npm](https://www.npmjs.com/get-npm) v4.6.1 or higher. ## Installation ```bash $ npm install -g nginx-cf-realip ``` ## Options ```text $ nginx-cf-realip [options] Options: -V, --version output the version number -d, --destination <path> Destination path for NGINX realip list. (default: "./cf-realip.conf") -h, --header <header> Header to fetch realip from. (default: "CF-Connecting-IP") -h, --help output usage information ``` ## Usage Create a `cf-realip.conf` file in the current directory: ```bash $ nginx-cf-realip ``` You can also define a destination path: ```bash $ nginx-cf-realip -d /etc/nginx # -d can be either a file or directory path. ``` Then, include your generated `cf-realip.conf` file in your NGINX configuration. (Default path: `/etc/nginx/nginx.conf`) ```nginx http { # ... include /etc/nginx/cf-realip.conf; # ... } ``` ## License This repository is licensed under the ISC license. Copyright (c) 2019, Jørgen Vatle.