Regardless of whether or not you provide your own SSL certificates, cloudflare still uses their own between their servers and client browsers. So any SSL encrypted traffic is unencrypted at their end before being re-encrypted with your certificate. How can such an entity be trusted?
A lot of people in this thread have never been ddosed and it shows. You don’t need to host a super popular thing to get ddosed.
When you host game servers there are gonna be salty 16 years old that go to a free stresser and hit you with 1gbps.
And you might think “well yeah but it’s not like cloudflare’s free plan protects that much”.
It does, believe me. I’ve done tests with people who have access to botnets and without cloudflare with 1gbps our connection was dead. With cloudflare it didn’t go down and reported more than 50gbps on the cloudflare dashboard.
Also another thing is that a lot of these people are 16 year old script kiddies, and not seeing your IP directly discourages them.
nginx can be configured to throttle connections and fail2ban to refuse them to mitigate this
If you want then to cache your content to reduce the load of your servers, they have to decrypt the traffic. This is how a reverse proxy works.
And, well, you have to trust them before contract their services. The same way people trust vpns to route their traffic. If I was from some 3 letter agency and want to spy on potential illegal content, I would tap into a vpn server.
Yes, you’re right that there’s a certain amount of trust you need to have in CF… but what are you trusting it to do? And if they fail, what are the consequences?
Honest question - even if you are sending your Vaultwarden traffic over CF, and they are watching or attacking, you have to trust that the e2e encryption of Vaultwarden is what’s keeping you safe, right? Not the SSL certs. Does the auth mechanism rely on the SSL certs not to be compromised? I would hope not.
For me, it’s about trade offs.
https://www.troyhunt.com/cloudflare-ssl-and-unhealthy-security-absolutism/
These two data sources kinda sum it up for me - “If you are concerned that cloudflare can read your data - don’t use cloudflare.”
But I do want to be sure that any e2e encrypted app doesn’t rely on SSL for its “end-to-end”.
Thanks for the link, it’s an interesting read with more detail than I’ve ever heard (not having used cloudflare for this myself).
Thanks for the links
The concern isn’t that CF is reading your data. It’s that 3-letter agencies can read your data at will, since they always make these deals with large companies to have open-hose access to all the data. There was a scandal that Facebook had a special access page for those people.
You might think you’re innocent, and you’re a good person, so nothing to worry about. This is the old “I have nothing to hide”, but this isn’t how the world works. People who want to get you can pull strings to get anything they want from government institutions. After all, government is just people. It’s not a benevolent being.
Now all this is unlikely, granted. But the task of a good security setup isn’t to make it impossible to hack you, but it’s to make it hard enough and costly. I’m quite sure there’s a zero-day somewhere that can hack my bare-bones Linux servers, but good luck breaking the 10 layers of security I have before even reaching these servers to find something remotely valuable about me. I don’t need to make concessions in that regard. You don’t have to trust anyone.
What is it you’re afraid cloudflare is doing? This is a company trusted by tons of corporations who have legit secrets to protect. Why would they care about intercepting your traffic? To what end?
Cyber attacks are goal-oriented and based on attack cost, basically how much effort for how much reward. Is your selfhost traffic super valuable? So valuable that someone would hack cloudflare to get it?
In reality, other than commodity malware that your security suite should easily pick up, there isn’t much threat in my opinion.
The question was a more general one, and not specific to my personal data needs.
The existence of such a ubiquitous centralised service that actually IS a MITM, whether they are malicious or not, seems curious to me.
As they say, if the product is free, then you are the product. If people accept, but recognise, a loss of privacy when using free services from Google and meta, for example, knowing that the data they provide is used for personalised ads, then how come CF’s free tier isn’t viewed with the same level of scrutiny?
Thats not what a MITM is
A MITM is a Man-in-the-Middle Attack, someone whom you dont trust or dont know has hijacked your network connection to either read, remove or modify data from your network packets and then proxy-send it to your initial intended target
Cloudflare is a proxy server, a person you TRUST and designated to passthrough first to scan and check for network security before it redirects and pass your packets through to your intended target, like a gatekeeper
What, you gonna call all your gatekeepers, your bouncers, your proxy servers a MITM?
Get some reading comprehension. He said MITM and not MITM Attack. He’s referring to Cloudflare as a middle man.
What OP is trying to say is why everyone is okay with using Cloudflare when it basically is a middle man where your traffic/requests go through and could potentially be sniffed at.
No, I read it properly, a MITM generally refers to MITM Attack and vice versa in cybersecurity, it is down to the individual to clarify if they meant otherwise and clearly, this case he is referencing to BEING A MITM for malicious purposes
To clarify, I did not mean MITM attack. It actually wouldn’t make sense to say that cloudflare is a man in the middle attack, since it is a company and not an action.
I didn’t include the word “attack” anywhere.
MITM is commonly used together with attack, so your misunderstanding is understandable. However the acronym just stands for Man In The Middle, which is why it is followed by “attack” in such situations.
Yeah. I believe Cloudflare basically has its heart in the right place but it is is still a dangerous central choke point.
CF is not using „their own“! The certificates the client see must be provided and authorized by the provider of the service. Or put in other words: CF is acting as the hosting provider to the outside, to the clients.
The rest of journey is „inside“ the domain of the provider of the service. It is totally normal that traffic has some journey to go and often it never touches the premises of the provider or even a server owned by the provider.
The important thing that all the part which from a customer‘s view is „internal to the provider of the service“ (behind the CF address) is responsibility of the provider of the service, no matter what 3rd party services they use.
My take is: Any data worth your while shouldn’t just rely on HTTPs anyway. You should have more layers of encryption. That’s how majority of the companies do it.
And for people who do not even know this, are better off using CF as MITM.
Also…shouldn’t we talking more about self-hosting rather than privacy and efficiency issues? I think the topic is a moot point - either you feel that Cloudflare is ‘trustworthy’…or you don’t.
IMHO, it’s sorta like using Google’s Gmail for business purposes. Read the fine print - they can do whatever they want with your data, despite their privacy statements. Same goes with Cloudflare. You’re using *their* services on *their servers.
They have to lookout for themselves and the risks involved.
Because it’s easier and cheaper than setting up your own SSL tunnel securely.
From a non hobbyists point of view, you’re paying for them to handle the messy business of maintaining a secure endpoint on the Internet. The sheer amount of bot crap you get hitting your servers as a result of an open SSL port is crazy. Also you are paying for their services as a CDN, which can significantly improve latency and reduce bandwidth bills.
Most self hosters won’t benefit from a CDN (the volume and global distribution of traffic is too small for it to make much of a difference) or a global internal transit network.
Of course you definitely can set up your own SSL terminating proxy (where you own the box/process that unencrypted traffic goes through), it’s just a lot more money and effort to do well than most would be willing to dedicate to it. But if you’re not ok with your traffic going through a third party maybe it’s worth it.
Just the mechanics of setting up SSL termination is a faff. Not only do you need to set up SSL properly on your app servers, you also have to do the same on your terminating proxy - and keep the certs renewed, disable insecure configurations, patch your SSL implementation. For many, the convenience of this all being someone else’s problem is worth it compared to the privacy implications.
Because it’s easier and cheaper than setting up your own SSL tunnel securely.
Wut you can easily set up SSL with let’s encrypt and traefik.
What CF gives you that you can’t really do yourself is CDN
And DDoS protection
In regard to enterprises, they don’t give a rats ass about any potential intellectual property theft. That risk has been written off. What matters is compliance and security.
Not having DDOS protection in place can potentially have legal consequences and can be very costly. DDOS protection is either investing millions of dollars in equipment or offloading that responsibility to a company like Cloudflare.
security
i think you are completely wrong here. big corporations do cost assessments of security vs costs of security breaches. if security is more expensive than data breach, they will accept the breach.
they don’t give a rats ass about any potential intellectual property theft. That risk has been written off
That’s not true. It’s a mitigated risk through contract.
That’s true, I didn’t specify the circumstances.
In the case of overt IP theft, the contract is the mitigating factor.
However in the case of convert IP theft through systematic, transparent surveillance of traffic (what OP is alluding to), it’s something that you cannot really mitigate apart from just not being digitally present. Cloudflare is a player there, but so is any ISP and nation state who is curious enough. To be on the internet, you have to accept the risk that systematic surveillance can impact your intellectual property.
In some cases, your mitigating factor is the law. But it’s really difficult to prove that Cloudflare might be sniffing your data and using the IP unlawfully and it’s downright impossible to prove that the NSA or foreign intelligence is using your IP.
Let’s remember that Cloudflare is engaged in business with USG, so if they were doing that kind of nefarious stuff, it’d result in a bad time for a whole lot of folks.
Mostly they know how cf work but when asking simplicity cf do it
People go out of their way to de-Google their phones but them are ok with this situation.
people selfhost for many different reasons. you may self host so you can degoogle, but I selfhost so I can put Kubernetes/mqtt/zigbee/flask etc etc etc on my resume
They think it’s not a problem for them. Because they think that:
- they have nothing to hide
- they don’t think CF (or TLAs who have access) will use it against them. (Possible examples: Ukrainian sites, Russian sites who disagree with goverment on at least some things)
- they think alternatives are worse - it’s…rather difficult to make CF censor you.
- they only use CF’s DNS services and not other things
- It’s just easier this way
This reminds me of current situation with “AI”: There is OpenAI/Anthropic with their APIs (requests are sent via HTTPS but OpenAI/Anthropic are not only need to have access to do their work - they also censor it). There are paid-for alternatives who either host proxies for OpenAI/Anthropic/others (like OpenRouter.ai) or host local models for others (hosting require significant resources which will be unusused if you don’t query often). There are means to host locally at home if you can. Some people prefer not to use local hosting even when they can do so.
It’s not entirely true what you said. I use cloudflare -> my Proxyserver -> my machines behind the Proxyserver
My Proxyserver has my own certificates loaded and terminates the SSL/TLS connection from cloudflare
Even if the data is passing through cloudflare cdn uses the cloudflare certificates my data is encrypted first using my own certificates from the Proxyserver
Even if the data is passing through cloudflare cdn uses the cloudflare certificates my data is encrypted first using my own certificates from the Proxyserver
This is false, connect to your website, check the certificate, it will be Cloudlfare’s. I assume either you have not checked, or are a Business customer paying quite some money yearly to Cloudflare.
Cloudflare decrypts inbound traffic, then re-encrypts it before sending it to you, unless you pay a decent amount of money so that they serve your certificate.
When I visit one of the sites I manage, that goes through CF (my personal ones don’t), I see that the certificate that the browser sees is one provided by CF and not the one that I create using LetsEncrypt.
CF provides different encryption modes. So if it’s “Full” you’ll need a valid SSL cert on your server, which CF will use end-to-end. If it’s “Flexible” (IIRC), then you don’t need a cert on your server, in which case CF will use their own cert for encryption.