Updates the TLS and CA certificate sections to use algorithms
better than md5. Using md5 as a digest causes nginx to fail
to load because it is not accepted by open ssl.
Closes#3571
Multiple people within my work organisation were caught out by the fact
that the trusted client cert issuers must be given in a file named
`ca.crt` and that other filenames will fail to work.
This change makes it more clear to those who stumble across the
documentation that this is a potential gotcha.
os.urandom sometimes returns more bytes and its generally encouraged to use python3's `secrets` module.
Also double64 encode to prevent messing up the environment variables
with binary data
Adds the 'nginx.ingress.kubernetes.io/auth-request-redirect'
annotation, which allows the customization of the
'X-Auth-Request-Redirect' Header. Fixes: #1979