This is what you do m8
create a subdomain and use it for your announce URL and have you site url on CloudFlare... Problem solved :) |
Quote:
|
Quote:
http://website.com/announce.php I don't know what is thi port ? and i can't find its port forward option in CF |
if you use PHP announce what do you think the port is? :coffee:
|
XBT tracker on cloudflare using Nginx to help
I actually have my tracker behind Cloudflare because it helps with routing traffic for users with IPv6. If I wanted to I could add the DDOS protection as well but I use Page rules to bypass caching and a lot of other options.
Your page rules should look like this: Code:
http://tracker.example.com:8080/* Code:
http://tracker.example.com:2052/* First you have to look up Cloudflares supported ports, use one that works for you. There's a list here: By default, Cloudflare proxies traffic destined for the HTTP/HTTPS ports listed below. HTTP ports supported by Cloudflare: Code:
80 Code:
443 Code:
server { I think that's about it, you can look up how to add more options to Nginx like the amount of workers and keep alive time. If you don't put Nginx in front of your tracker then the tracker will get all Cloudflare ip addresses and won't be able to communicate and track properly. Also make another file in the Nginx conf.d folder called cloudflare.conf and put the following inside, this will allow you to get the real ips: Code:
set_real_ip_from 103.21.244.0/22; Enjoy. And monitor your database for the correct Ips to make sure it's working well. |
SSL
Code:
#Tracker Code:
Has anyone been able to do this? |
YMMV
Try this, it works with proxying xbt, but not tested with cloudflare: Code:
location ~ ^/(.*?)/announce$ { |
Quote:
I know this looks simple but that's all that's needed, trust me I've looked at what it does in the Xbt Tracker Access logs: Code:
server { Code:
servertime (actual ip that's shown) = 127.0.0.1 (otherinfohere) GET /users-passkey/announce?ip=users-ip-address-here&info_hash=users-hash-info&peer_id=-UT2210-&port=users-port-95865786767695&uploaded=0&downloaded=0&left=0&corrupt=0&key=59845y9ty8945y88&event=started&numwant=200&compact=1&no_peer_id=1&ipv6=users-ip-address-here HTTP/1.1 |
Why wouldn't I use the code I posted? I'm using it and it works as expected. My code proxies external https to internal http, so all external traffic is secure. Yours is http to http and it does not do the same thing.
Also, as posted by the author of xbt_tracker not all torrent clients include the ip address in the query string, my code adds it to the proxied url just in case it isn't already there. And, I have logged the announce also, it looks like this Code:
1589673357 127.0.0.1 37032 GET /blahblahblah/announce?info_hash=blahblahblah&peer_id=-qB4030-xRH7k*70(3me&port=8999&uploaded=0&downloaded=0&left=0&corrupt=0&key=6E012D46&event=stopped&numwant=0&compact=1&no_peer_id=1&supportcrypto=1&redundant=0&ip=ipaddress HTTP/1.0 I have no issue with saying your code works, but I do have an issue with you saying mine does not. In my searches, neither method (proxy_pass, rewrite) is recommended over the other, so it comes down to what you prefer. I could not find any evidence that one is faster than the other. |
Trouble getting the real IP to XBT once proxied with NGINX
Quote:
I've been successfully using XBT on my HTTPS Apache powered site for about a year now but only running HTTP on the tracker. Decided to finally attempt securing my tracker and do have client connections working but no matter which NGINX config I try XBT still keeps getting 127.0.0.1 on all client IPs seen from my XBT debug page. Any ideas on what I'm doing wrong? My NGINX config is below. Thanks Code:
# START REV-PROXY CONF IPv4 IPv6 Port UID Seeder Modified Peer ID 127.0.0.1:: 51159 398 0 12.1 minutes 127.0.0.1:: 20035 28 1 28.0 seconds Any and all help anyone can provide is greatly appreciated. Thanks again. |
All times are GMT +2. The time now is 15:44. |
Powered by vBulletin® Version 3.8.11 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions Inc.