¿Es posible configurar un servidor VPN en Linux para autenticarse contra PAM o contraseña con clientes de Android y Windows?

¿Es posible configurar un servidor VPN en Linux para autenticarse contra PAM o contraseña con clientes de Android y Windows?

Tengo un servidor Linux y necesito conectarme a su red de forma remota desde clientes de Windows 10 y Android. ¿Es posible configurar el servidor para que los clientes puedan autenticarse con las cuentas de usuario en la máquina Linux con nombres de usuario y contraseñas?

Me gustaría usar IKEv2 para esto, pero no es necesario si existe una solución mejor. Ya intenté configurar strongSwan y logré utilizar los certificados de cliente. También logré que freeRadius se autenticara en /etc/passwd, pero no pude obtener el nombre de usuario y la contraseña para pasar de strongSwan a freeRadius. ¿Es esta la forma correcta de hacerlo?

Actualizaré esta pregunta cuando se hagan sugerencias.

Respuesta1

El problema es que la mayoría de los métodos EAP que utilizan nombre de usuario/contraseña no transmitirán contraseñas en texto plano. En su lugar, utilizan algún tipo de protocolo de desafío/respuesta con algún hash/cifrado calculado tanto por el cliente como por el servidor, lo que generalmente requiere que el servidor ya posea la contraseña en texto plano (a menos que el método se base en pruebas de contraseña de conocimiento cero), no un hash. versión del mismo tal como está almacenada en /etc/passwd.

El único método que admite strongSwan y que utiliza contraseñas de texto sin formato esEAP-GTC, pero la compatibilidad con el cliente es limitada (tampoco sé si funciona con FreeRADIUS, pero strongSwan podría interactuar directamente con PAM). Básicamente, solo strongSwan lo usa de esta manera, por lo que Android con la aplicación strongSwan funcionará bien, pero Windows no admite este método.

información relacionada