Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Tweak: Restore Cloudflare Client IP #81

Open
batonac opened this issue Nov 26, 2022 · 2 comments
Open

New Tweak: Restore Cloudflare Client IP #81

batonac opened this issue Nov 26, 2022 · 2 comments
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@batonac
Copy link
Contributor

batonac commented Nov 26, 2022

NGINX needs the following config in order to restore the original visitor IP when the site is behind Cloudflare:

set_real_ip_from 173.245.48.0/20
set_real_ip_from 103.21.244.0/22
set_real_ip_from 103.22.200.0/22
set_real_ip_from 103.31.4.0/22
set_real_ip_from 141.101.64.0/18
set_real_ip_from 108.162.192.0/18
set_real_ip_from 190.93.240.0/20
set_real_ip_from 188.114.96.0/20
set_real_ip_from 197.234.240.0/22
set_real_ip_from 198.41.128.0/17
set_real_ip_from 162.158.0.0/15
set_real_ip_from 104.16.0.0/13
set_real_ip_from 104.24.0.0/14
set_real_ip_from 172.64.0.0/13
set_real_ip_from 131.0.72.0/22
set_real_ip_from 2400:cb00::/32
set_real_ip_from 2606:4700::/32
set_real_ip_from 2803:f800::/32
set_real_ip_from 2405:b500::/32
set_real_ip_from 2405:8100::/32
set_real_ip_from 2a06:98c0::/29
set_real_ip_from 2c0f:f248::/32
real_ip_header CF-Connecting-IP;

The IP addresses need to reflect the lists from https://www.cloudflare.com/ips-v4 and https://www.cloudflare.com/ips-v6. There's a nice, scripted mechanism for this available here.

It seems to me that a toggle switch under the Tweaks tab would be a great place to enable this per site. Perhaps this is too vendor-specific to warrant such precedent, but Cloudflare is fairly ubiquitous...

@batonac
Copy link
Contributor Author

batonac commented Nov 26, 2022

FWIW, with a Cloudflare tunnel connecting via a unix socket, this is reduced to the following:

set_real_ip_from unix:;
real_ip_header CF-Connecting-IP;

@elindydotcom elindydotcom added enhancement New feature or request good first issue Good for newcomers labels Nov 27, 2022
@Hans-101
Copy link

+1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

3 participants