:lastproofread: 2023-01-29 .. _examples-openvvpn-ldap: ######################### OpenVPN with LDAP example ######################### Configuration AD and a windows server ===================================== We aim to configure LDAP authentication between the VYOS router and Windows Server 2019 (role: Active Directory) when our customers connect to our privet network using the OpenVPN client. Using the general schema for example: .. image:: /_static/images/mainschema.png :width: 80% :align: center :alt: Network Topology Diagram .. code-block:: none VyOS - the main OpenVPN server Winserver - windows server with role Active Directory Win10-PC - OpenVPN customer with LDAP authentication First, we need to configure the AD service and create two accounts. One account for the LDAP adapter built into the VYOS router and a second even account for our test client. .. image:: /_static/images/ldapone.png :width: 80% :align: center :alt: Network Topology Diagram Picture 1 - Adding the AD role .. image:: /_static/images/ldaptwo.png :width: 80% :align: center :alt: Network Topology Diagram Picture 2 - Adding the AD role Configuration VyOS router ========================= Make the configuration file for the LDAP plugin. .. code-block:: none vyos@vyos:~$ sudo cat /config/auth/ldap-auth.config URL ldap://10.217.80.58 BindDN userldap@corp.vyos.com Password YourPass Timeout 15 TLSEnable no FollowReferrals no BaseDN "DC=corp,DC=vyos,DC=com" SearchFilter "sAMAccountName=%u" RequireGroup false **This specific example is for a windows server 2019**: * URL ldap://10.217.80.58 - The URL of your LDAP server * BindDN userldap@corp.vyos.com - The BindDN of the users' directory * BaseDN "DC=corp,DC=vyos,DC=com" - In the block notice your domain Make the main config for VyOS like VPN and Authorization server: .. code-block:: none set interfaces ethernet eth0 address 'dhcp' set interfaces openvpn vtun10 local-port '1194' set interfaces openvpn vtun10 mode 'server' set interfaces openvpn vtun10 openvpn-option '--plugin /usr/lib/openvpn/openvpn-auth-ldap.so /config/auth/ldap-auth.config' set interfaces openvpn vtun10 persistent-tunnel set interfaces openvpn vtun10 protocol 'udp' set interfaces openvpn vtun10 server push-route 192.168.0.0/16 set interfaces openvpn vtun10 server subnet '10.23.1.0/24' set interfaces openvpn vtun10 tls ca-cert-file '/config/auth/openvpn/ca.crt' set interfaces openvpn vtun10 tls cert-file '/config/auth/openvpn/central.crt' set interfaces openvpn vtun10 tls crl-file '/config/auth/openvpn/crl.pem' set interfaces openvpn vtun10 tls dh-file '/config/auth/openvpn/dh.pem' set interfaces openvpn vtun10 tls key-file '/config/auth/openvpn/central.key' set protocols static interface-route 10.23.0.0/20 next-hop-interface vtun10 set service ssh port '22' Next, you need to install and configure the configuration file for the windows/Linux OpenVPN client. After connecting to the VPN servers, you will be prompted to go through LDAP authorization. **To automatically generate the openVPN configuration file for windows clients, you can use this link:** https://ovpnconfig.com.br/