[PAID] CloudFlare IP interpretation/passthrough

Started by Vagrancy, August 16, 2016, 08:51:09 AM

Previous topic - Next topic

Vagrancy

Background:

I am looking into CloudFlare, but for various reasons I cannot use their packages for displaying the referred user's IP (such as this one for apache). This is a problem for many reasons, pertaining mainly to bans but also account security.

I am looking for someone to create a modification that replaces (or rather augments) the usage of the visitor's IP address on SMF, with the referred IP as supplied by CloudFlare in the HTTP header.

Features:
  • Takes an admin-editable list of IPs (accessible from Configuration -> Modification Settings), let's call it "CF list", where the admin can specify which IPs are expected to be CloudFlare proxies
  • If a visitor's IP is on previously mentioned list, look for the specified HTTP header, and if found, return that IP instead of the connecting IP
  • If the header does not exist, or the IP is not on the "CF list", display the connecting IP without any modifications
    This should function on all parts of the forum that deals with IPs, including the logging of IPs in topic replies, ban list, who's online, etc.
    Support for Login Security is desirable but not a requirement.

    Should be compatible with both 2.0 and 2.1.

    No special permissions -- permission to edit the list should be hardcoded to admins.

vbgamer45

Community Suite for SMF - Take your forum to the next level built for SMF, Gallery,Store,Classifieds,Downloads,more!

SMFHacks.com -  Paid Modifications for SMF

Mods:
EzPortal - Portal System for SMF
SMF Gallery Pro
SMF Store SMF Classifieds Ad Seller Pro

Vagrancy

Holy diver, thanks a lot!

Offer on hold until I can check those out.

Vagrancy

http://custom.simplemachines.org/mods/index.php?mod=4072

This mod works as close to perfect as one could expect. Hit up the forum thread for it though, as there is a slight hiccup with IPv6 addresses (that you need to fix in the CloudFlare panel).

Advertisement: