Esta é uma descrição passo a passo de como configurar a VPN do OpenVPN Community Edition para o LastPass Universal Proxy usando o protocolo RADIUS, 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 RADIUS do OpenVPN, openvpn-auth-radius, em seu servidor para obter as bibliotecas e arquivos de configuração necessários.
Resultado: o arquivo de configuração de autenticação RADIUS do OpenVPN, radiusplugin.cnf será instalado.
- Configure o servidor OpenVPN para autenticação RADIUS usando o arquivo radiusplugin.cnf. Defina o seguinte:
-
NAS-Identifier
-
OpenVPN
-
Service-Type
-
5
-
Framed-Protocol
-
1
-
NAS-Port-Type
-
5
-
NAS-IP-Address
-
Endereço IP do OpenVPN Community Edition
-
OpenVPNConfig
-
Caminho do arquivo de configuração OpenVPN.
-
overwriteccfiles
-
true
-
acctport
-
1813
-
authport
-
1812
-
name
-
Endereço IP ou nome DNS do Universal Proxy.
-
retry
-
1
-
wait
-
61
-
sharedsecret
-
Segredo compartilhado RADIUS, configurado no LastPass Universal Proxy.
Exemplo:
NAS-Identifier=OpenVpn Service-Type=5 Framed-Protocol=1 NAS-Port-Type=5 NAS-IP-Address=
OpenVPNConfig=/etc/openvpn/server/server.conf overwriteccfiles=true server { acctport=1813 authport=1812 name=
retry=1 # How long should the plugin wait for a response? wait=61 sharedsecret=********* }
- Adicione o seguinte 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-radius-ldap.so /etc/openvpn/radiusplugin.cnf 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-radius.so /etc/openvpn/radiusplugin.cnf 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.