Client certificates question

I am looking for a solution to my problem: I would like to "lock" particular page on my site to only my devices and to be as simple as possible for end users (my family). The goal is to limit page access to only "trusted" devices without much hassle like using Access, custom cookies, IPs (because it changes), etc. I saw this "Client certificates" thing and assume it can help. Is there a way to somehow generate client cert, install it on each device and then limit access in CF WAF to only trusted certs? Note that server-side restriction access (like page password) is not an option. Any ideas? 🙂 Thanks.
11 Replies
crossbeau
crossbeau•11mo ago
Configure mTLS · Cloudflare API Shield docs
When you specify API hosts in mTLS authentication, Cloudflare will block all requests that do not have a client certificate for mTLS authentication.
crossbeau
crossbeau•11mo ago
Should he able to create the rule without api shield Other option, you could put a cloudflare worker on the subdomain with routes and do your own JWT or validation with client
crossbeau
crossbeau•11mo ago
We do that now with https://approov.io/product/
Mobile API Security for Android & iOS Apps | Approov
Looking for end to end mobile app protection? Approov provides mobile app security for android and iOS. Block threats against backend APIs. Try today..
crossbeau
crossbeau•11mo ago
We use approov on our mobile app ans then when specific routes are fired we do a validation with cf worker
FunnyClouds
FunnyClouds•11mo ago
So, the "client certificate" doesn't do what I thought. I thought it could be installed on a device (Windows, Android) like any other certificate. And then if my site detects that I have that certificate installed on the device - I can open the page. That is not how it works?
crossbeau
crossbeau•11mo ago
Configure your mobile app or IoT device · Cloudflare SSL/TLS docs
This tutorial demonstrates how to configure your Internet-of-things (IoT) device and mobile application to use client certificates with API Shield™.
crossbeau
crossbeau•11mo ago
I would think you can do something like above ⏫
crossbeau
crossbeau•11mo ago
and then do something like this -
No description
crossbeau
crossbeau•11mo ago
I havent verified this usecase yet, but this is how I interpretted their mTLS implementation
ben
ben•8mo ago
I am also looking to do this and have found very little resources on how to do so. I have set up the rules in WAF and generated certificates, I have also added them to the devices, however the problem that I am facing is that when accessing the page I am not being asked for the certificate, so the browser doesn't use it and cannot get past the rule I have tested my setup with curl by providing the certificate with: curl -L -v --cert-type P12 --cert ./<cert-name>.p12:'<cert-password>' https://<my-domain> and it works, so the issue is definitely that the website does not ask the browser for a certificate
ben
ben•8mo ago
Cloudflare Community
FYI: HTTP3/QUIC mode w/ mTLS is causing problems with Chromium brow...
I use CF tunnels to publicly expose sites that I run at home. I had “HTTP/3 (with QUIC)” enabled, and I also have a WAF rule to require a Cloudflare-generated client certificate. On my home network, no client certificate is required because my internal DNS directs my sites to my server’s internal IP address. A few weeks ago, an update to Chrome...
Want results from more Discord servers?
Add your server
More Posts
Bugs in Pages Functions?I successfully deployed an Astro site to my Cloudflare Pages account. I'm not using SSR on this siteHelp my site servered with Pages, stop retuning index.htm pages by default when on a directory path.I don't know if it is because of an outage, misconfiguration, or because I mess around with the rediPages _headers file allow access JSON fileHi everyone, I have a React app on the Cloudflare page and there is a JSON file I want to access thrHey so sorry clearly I didn t explainHey, so sorry, clearly I didn't explain myself very well haha. Basically, I have little open source High functions metrics figuresI have a website hosted on Cloudflare - https://tmdb.athena-designs.com According to the web analySending multipart/mixed form data in WorkersWith the `form-data` node package you can define content types / headers per item in the form, see eTCP connection possible in NextJS?Since cloudflare supports tcp connections on workers is it somehow possible to use tcp connections iI’m just trying to make sure that thereI’m just trying to make sure that there isn’t any unexpected issue or asterisk with keeping them colwhen using Email Routing like support@mydomain.com to support1231231@gmail.com, we can receive emawhen using Email Routing like support@mydomain.com to support1231231@gmail.com, we can receive emaa cloudflare tunnel to connect to a local websiteI try to create a cloudflare tunnel to connect to a flutter website running (using "flutter run" com