Esta é uma descrição passo a passo de como configurar o OpenVPN Community Edition para o LastPass Universal Proxy usando o protocolo LDAP, com o objetivo de definir o LastPass MFA como um método de autenticação secundário. As etapas a seguir contêm as configurações relacionadas ao Universal Proxy.
Observação: O OpenVPN Community Edition não tem uma interface gráfica de usuário (GUI). As configurações são feitas usando a interface de linha de comando (CLI).
Observação: como o OpenVPN Community Edition lida com as solicitações de autenticação recebidas em um único encadeamento, apenas um cliente pode efetuar login por vez. Portanto, pode-se contar com um tempo de espera maior.
- Instale o plugin LDAP do OpenVPN, openvpn-auth-ldap, em seu servidor para obter as bibliotecas e arquivos de configuração necessários.
Resultado: o arquivo de configuração de autenticação LDAP do OpenVPN, auth-ldap.conf será instalado.
- Configure o servidor OpenVPN para autenticação LDAP usando o arquivo auth-ldap.conf. Defina o seguinte:
-
URL
-
Endereço IP ou nome DNS do Universal Proxy.
-
BindDN
-
O nome de usuário do administrador configurado para a autenticação LDAP no seguinte formato:
CN=Admin,CN=Users,DC=domain,DC=country_code
-
Password
-
A senha do usuário administrador LDAP.
-
Timeout
-
61
-
TLSEnable
-
no
-
BaseDN
-
O DN base sob o qual os usuários estão localizados, no seguinte formato:
cn=Users,dc=domain,dc=country_code.
-
SearchFilter
-
"(&(userPrincipalName=%u))"
-
RequireGroup
-
false
-
Group - BaseDN
-
O DN base sob o qual os usuários estão localizados, no seguinte formato:
cn=Users,dc=domain,dc=country_code.
-
Group - Searchfilter
-
"(|(userPrincipalName=%u))"
-
Group – MemberAttribute
-
uniqueMember ou
sAMAccountname, dependendo da configuração do Universal Proxy.
Exemplo:
URL ldap://
:389 BindDN cn=Admin,cn=Users,dc=domain,dc=country_code Password ************** Timeout 61 TLSEnable no
BaseDN "cn=Users,dc=domain,dc=country_code" SearchFilter "(&(userPrincipalName=%u))" RequireGroup false
BaseDN "cn=Users,dc=domain,dc=country_code" SearchFilter "(|(userPrincipalName=%u))" MemberAttribute uniqueMember
- Adicione as seguintes opções ao arquivo de configuração do servidor OpenVPN, server.conf:
- Caminho do arquivo de configuração, para ler os atributos e usá-lo para autenticar os usuários. Por exemplo:
plugin /usr/lib/openvpn/openvpn-auth-ldap.so /etc/openvpn/auth-ldap.conf login
- Imponha o uso do nome de usuário e da senha para autenticação:
username-as-common-name
- Desative a autenticação do certificado por parte do cliente:
client-cert-not-required
Exemplo:
port 1194 proto tcp dev tun ca ca.crt cert server.crt key server.key # This file should be kept secret dh dh.pem plugin /usr/lib/openvpn/openvpn-auth-ldap.so /etc/openvpn/auth-ldap.conf login server 10.8.0.0 255.255.255.0 ifconfig-pool-persist /var/log/openvpn/ipp.txt username-as-common-name keepalive 10 120 client-cert-not-required cipher AES-256-GCM user nobody group nogroup persist-key persist-tun status /var/log/openvpn/openvpn-status.log log /var/log/openvpn/openvpn.log log-append /var/log/openvpn/openvpn.log verb 6 explicit-exit-notify 0
- Habilite a autenticação por nome de usuário e senha do cliente, adicionando auth-user-pass:
client
dev tun
proto tcp
remote 20.67.97.220 1194
resolv-retry infinite
nobind
;user nobody
;group nogroup
persist-key
persist-tun
;remote-cert-tls server
client-cert-not-required
username-as-common-name
;tls-auth ta.key 1
auth-user-pass
cipher AES-256-GCM
verb 6
;mute 20
-----BEGIN CERTIFICATE----- *********** -----END CERTIFICATE-----
- Reinicie o servidor OpenVPN para aplicar as alterações.
Pronto! A VPN do OpenVPN Community Edition está configurada.