Hello folks

We have implemented a gRPC server on our embedded linux based camera and 
have a couple of clients that are expected to run on both the camera itself 
(so local loopback connection) as well as on host computers that are on the 
same subnet as the camera. Both the server and clients are written in C++ 
and use the gRPC C++ API. I’m trying to use mutual TLS so that only clients 
written by us can connect to the server. 

I setup a self-signed root CA and used it to sign a server certificate and 
client certificate (more than one client certificate since I have more than 
one client). I’m not sure what is the best way to setup the certificate. 
>From what I understand that either the common name or 
subjectAlternativeNames will be used to verify a connection in addition to 
the signature with the root certificate. 
Server 
   
   - I can setup the camera’s hostname to something that will match the 
   common name in the certificate. Is this the recommended approach ? 

Client 
   
   - I can’t set the hostnames of the clients, so I’m not sure what to put 
   in the common name for the server to verify. Any recommendation here ? 

Currently I’m using a subjectAlternativeName of IP:0.0.0.0 which allows me 
to make calls over local loopback but its not usable over the network. 

I’m using SslCredentials and SslServerCredentials but I’m wondering if I 
should be using the TlsCredentials and TlsServerCredentials with some kind 
of of custom verification callback. I would appreciate any advice on 
setting up the certificates appropriately for the usecase I have described. 

To summarize, the client is expected to connect to the cameras on the same 
network and be able to use the remote API. 

Thanks
Kartik
​

-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to grpc-io+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/bcadafa6-f84f-4073-9d58-9e5558e2a65en%40googlegroups.com.

Reply via email to