Ist es möglich, unter Linux einen VPN-Server einzurichten, um mit Android- und Windows-Clients eine Authentifizierung gegenüber PAM oder Passwd durchzuführen?

Ist es möglich, unter Linux einen VPN-Server einzurichten, um mit Android- und Windows-Clients eine Authentifizierung gegenüber PAM oder Passwd durchzuführen?

Ich habe einen Linux-Server und muss mich von Windows 10- und Android-Clients aus per Fernzugriff mit seinem Netzwerk verbinden. Ist es möglich, den Server so einzurichten, dass sich Clients mit Benutzernamen und Kennwörtern gegenüber den Benutzerkonten auf dem Linux-Rechner authentifizieren können?

Ich würde hierfür gerne IKEv2 verwenden, aber das ist nicht notwendig, wenn es eine bessere Lösung gibt. Ich habe bereits versucht, strongSwan einzurichten, und war mit Client-Zertifikaten erfolgreich. Ich habe es auch geschafft, freeRadius dazu zu bringen, sich gegenüber /etc/passwd zu authentifizieren, konnte aber den Benutzernamen und das Passwort nicht von strongSwan an freeRadius weitergeben. Ist das der richtige Weg?

Ich werde diese Frage aktualisieren, falls/falls Vorschläge gemacht werden.

Antwort1

Das Problem besteht darin, dass die meisten EAP-Methoden, die Benutzername/Passwort verwenden, keine Passwörter im Klartext übertragen. Stattdessen verwenden sie eine Art Challenge/Response-Protokoll mit Hash/Verschlüsselung, die sowohl vom Client als auch vom Server berechnet wird. Dies erfordert normalerweise, dass der Server bereits das Passwort im Klartext besitzt (es sei denn, die Methode basiert auf Zero-Knowledge-Passwortbeweisen), und nicht eine gehashte Version davon, wie sie in gespeichert ist /etc/passwd.

Die einzige Methode, die strongSwan unterstützt und die Klartext-Passwörter verwendet, istEAP-AGB, aber die Client-Unterstützung ist begrenzt (ich weiß auch nicht, ob es mit FreeRADIUS funktioniert, aber strongSwan könnte direkt mit PAM interagieren). Im Grunde verwendet es nur strongSwan auf diese Weise, sodass Android mit der strongSwan-App problemlos funktioniert, aber Windows unterstützt diese Methode nicht.

verwandte Informationen