
Devido a issolinkpara ter a autenticação de usuário/senha a linha abaixo deve ser adicionada ao arquivo de configuração do servidor.
plugin /usr/share/openvpn/plugin/lib/openvpn-auth-pam.so login
Mas o link não menciona como o arquivo login
deve ser preenchido.
Estou no Ubuntu 18.04.
Responder1
PAM significa umMódulos de autenticação conectáveis, é uma estrutura de autenticação e autorização do sistema. Poderia usar arquivo, banco de dados, tudo o que você configurou como armazenamento de senha. Ele pode até usar outras coisas além de senhas para autenticação (por exemplo, OTP e assim por diante); ele pode fazer autenticação de dois fatores, vincular-se a terceiros externos confiáveis (como Kerberos) e assim por diante. No caso mais simples, ele usa umsombraarquivo para armazenar senhas criptografadas para usuários do sistema.
openvpn-auth-pam
O módulo permite autenticar pares OpenVPN usando esta estrutura de autenticação do sistema. login
aqui significa o serviço PAM que seu OpenVPN usará. Provavelmente você já possui alguns serviços, como system-auth
os usados para usuários locais. Dê uma olhada nos /etc/pam.d/
arquivos para ter uma ideia de como o PAM está configurado e também leia seus manuais.
O que você descobrirá é que o login
serviço, por padrão, refere-se apenas ao arquivo system-auth
. Para usar isso como está, primeiro crie usuários do sistema local e defina suas senhas. Em seguida, adicione uma --auth-user-pass
opção às configurações do cliente, com nome de arquivo de credenciais ou nu (então ele solicitará credenciais de forma interativa). Veja man openvpn
para detalhes.
Por fim, lembre-se de sempre empregar primeiro a autenticação baseada em certificado. Cada ponto VPN deve ter seu próprio par de certificado/chave exclusivo. A autenticação do nome de usuário/senha deve ser considerada apenas como medida complementar de segurança. E é melhor não usar o recurso `duplicate-cn'.