client need certificate? #93

Closed
opened 2025-12-29 01:22:51 +01:00 by adam · 5 comments
Owner

Originally created by @woday-dev on GitHub (Dec 12, 2021).

Issue description
When TLS key and cert is enabled in headscale server, tailscale client cannot connect, as server said client need to provide certificate.
After check with code, seems like bellow code is responsible, is this behavior expected?
Seems make no sense to require tailscale client provide any certificate.

app.go
ClientAuth:   tls.RequireAnyClientCert,
Originally created by @woday-dev on GitHub (Dec 12, 2021). <!-- If you have a question, please consider using our Discord for asking questions --> **Issue description** When TLS key and cert is enabled in headscale server, tailscale client cannot connect, as server said client need to provide certificate. After check with code, seems like bellow code is responsible, is this behavior expected? Seems make no sense to require tailscale client provide any certificate. ``` app.go ClientAuth: tls.RequireAnyClientCert, ``` <!-- Please add your issue description. --> <!-- Steps to reproduce the behavior. --> <!-- Please add relevant information about your system. For example: - latest - 1.16 - linux - Kernel version - The relevant config parameters you used - Log output -->
adam added the bug label 2025-12-29 01:22:51 +01:00
adam closed this issue 2025-12-29 01:22:51 +01:00
Author
Owner
@negbie commented on GitHub (Dec 14, 2021): https://www.cloudflare.com/de-de/learning/access-management/what-is-mutual-tls/
Author
Owner

@woday-dev commented on GitHub (Dec 15, 2021):

https://www.cloudflare.com/de-de/learning/access-management/what-is-mutual-tls/

Thanks for explanation, it's mutual-tls and safe, that's not the issue.
Yet seems no option to let tailscale client provide certificate, thus handshake cannot be made.

@woday-dev commented on GitHub (Dec 15, 2021): > https://www.cloudflare.com/de-de/learning/access-management/what-is-mutual-tls/ Thanks for explanation, it's mutual-tls and safe, that's not the issue. Yet seems no option to let tailscale client provide certificate, thus handshake cannot be made.
Author
Owner

@ficapy commented on GitHub (Dec 24, 2021):

I have the same problem, using HTTP can be deployed successfully, but using HTTPS, the client can't connect

@ficapy commented on GitHub (Dec 24, 2021): I have the same problem, using HTTP can be deployed successfully, but using HTTPS, the client can't connect
Author
Owner

@ImpostorKeanu commented on GitHub (Jan 28, 2022):

I'm a bit perplexed by this as well.

I understand it's possible to issue client certificates once one has a CA, but I'm unsure how to supply that certificate to Tailscale client's for authentication.

I'm quite new to Tailscale and I've done some Google due diligence but I've come up empty handed.

Tailscale itself has a cert subcommand but it looks to be concerned with procuring certs from the Tailscale network.

I'd be grateful for a tip on this.

@ImpostorKeanu commented on GitHub (Jan 28, 2022): I'm a bit perplexed by this as well. I understand it's possible to issue client certificates once one has a CA, but I'm unsure how to supply that certificate to Tailscale client's for authentication. I'm quite new to Tailscale and I've done some Google due diligence but I've come up empty handed. Tailscale itself has a `cert` subcommand but it looks to be concerned with procuring certs from the Tailscale network. I'd be grateful for a tip on this.
Author
Owner

@ImpostorKeanu commented on GitHub (Jan 28, 2022):

Quite certain I'm not doing it right, but I implemented an Nginx reverse HTTP proxy using this guidance at the perimeter of my network.

It gets the job done, though joining nodes is obviously limited to my home network.

@ImpostorKeanu commented on GitHub (Jan 28, 2022): Quite certain I'm not doing it right, but I implemented an Nginx reverse HTTP proxy using [this guidance](https://app.smallstep.com/hello-mtls/doc/client/nginx-proxy) at the perimeter of my network. It gets the job done, though joining nodes is obviously limited to my home network.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/headscale#93