Description of problem: router pod cannot be started if enable mutual-tls-auth but not specify mutual-tls-auth-ca Version-Release number of selected component (if applicable): openshift v3.11.0-0.9.0 kubernetes v1.11.0+d4cacc0 How reproducible: always Steps to Reproduce: 1. oc adm router test-router --mutual-tls-auth=required 2. Actual results: error in router pod logs: [ALERT] 206/080832 (24) : Proxy 'fe_sni': verify is enabled but no CA file specified for bind '127.0.0.1:10444' at [/var/lib/haproxy/conf/haproxy.config:116]. [ALERT] 206/080832 (24) : Proxy 'fe_sni': verify is enabled but no CA file specified for bind '127.0.0.1:10444' at [/var/lib/haproxy/conf/haproxy.config:116]. [ALERT] 206/080832 (24) : Proxy 'fe_no_sni': verify is enabled but no CA file specified for bind '127.0.0.1:10443' at [/var/lib/haproxy/conf/haproxy.config:166]. [ALERT] 206/080832 (24) : Proxy 'fe_no_sni': verify is enabled but no CA file specified for bind '127.0.0.1:10443' at [/var/lib/haproxy/conf/haproxy.config:166]. [ALERT] 206/080832 (24) : Fatal errors found in configuration. Expected results: router pod should be running if just enable mutual-tls-auth since "mutual-tls-auth-ca" is optional. see command help below: --mutual-tls-auth='none': Controls access to the router using mutually agreed upon TLS configuration (example client certificates). You can choose one of 'required', 'optional', or 'none'. The default is none. --mutual-tls-auth-ca='': Optional path to a file containing one or more CA certificates used for mutual TLS authentication. The CA certificate[s] are used by the router to verify a client's certificate. Additional info: the router pod will be running if using below command: oc adm router test-router --mutual-tls-auth=required --mutual-tls-auth-ca=/root/ca.pem
@hongli good catch - this will need a default value specified. The directive seems to be required if verify is specified. The router command line option --mutual-tls-auth-ca can still be optional but we will need to change the router template to use a default if the mutual-tls-auth option is set.
Fixed in PR: https://github.com/openshift/origin/pull/20476
verified in atomic-openshift-3.11.0-0.20.0.git.0.d80d8ad.el7 and issue has been fixed.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2018:2652