If I'm using GCM (I am), is there value to having tls control channel security enabled?
Merlin's comments about GCM are correct, but it has apparently created a misunderstanding as to what that actually means in practice.
The decision to use or NOT use a GCM cipher has no bearing on whether you should enable/disable tls-auth.
If you use a GCM cipher, and enable auth, the auth setting will be ignored for data channel packets (but NOT tls-auth and control channel packets). All that means is that the process of encryption and authentication (HMAC) of packets is more efficient, since authentication is part of the GCM cipher itself.
Given that ciphers are typically negotiated these days between client and server, you're probably going to end up w/ a GCM cipher anyway. That's just the way things are naturally evolving. But even if you didn't use GCM, it's NOT like the older CBC methodology is insecure or unsafe.
Frankly, I'm NOT convinced that using auth and/or tls-auth is all that advantageous to the average user. As I said before, it's just an *additional* layer of security. But it adds overhead and complexity to the config. Even if you end up the target of a DDOS attack, it's unlikely these options are going to provide all that much protection given the resource limits of your router. And given that OpenVPN has to run in user-space, it can always benefit from the elimination of unnecessary operations.
That's NOT to suggest I don't use these options myself from time to time. But I wouldn't hesitate to eliminate them either if I was looking to eke out as much efficiency as possible.
Note: Allegedly these options also provide some "stealthiness", if that matters to you. IOW, it helps to hide the fact the traffic is from a VPN. But I have my doubts as to its effectiveness, since I've seen plenty of users getting blocked w/ these options enabled.
Anyway, if you continue to use tls-auth, probably the bigger or more relevant question is whether you should perhaps use tls-crypt instead.