OpenVPN unable to use authentication server with ampersand in descriptive name
Add LDAP server in System/User Manager/Authentication Servers, include an ampersand in the Descriptive Name. Test against LDAP server in Diagnostics/Authentication, success. Configure OpenVPN server to authenticate against the LDAP server, attempt to connect with client. Server logs will show
Dec 10 23:11:15 openvpn 28595 customer_ip:1194 Peer Connection Initiated with [AF_INET]126.96.36.199:1194
Dec 10 23:11:15 openvpn 28595 customer_ip:1194 TLS Auth Error: Auth Username/Password verification failed for peer
Dec 10 23:11:15 openvpn 28595 customer_ip:1194 WARNING: Failed running command (--auth-user-pass-verify): external program exited with error status: 1
Dec 10 23:11:15 openvpn user 'test' could not authenticate.
Recreate LDAP server without ampersand in the Descriptive Name, configure OpenVPN to use new LDAP server. Attempt to connect from client, success.
Encode the auth server list before passing it on the CLI, to avoid issues with special characters that break when interpreted as URL parameters during OpenVPN auth. Fixes #7002