Linux에서 VPN 서버를 설정하여 PAM에 대해 인증하거나 Android 및 Windows 클라이언트로 비밀번호를 설정할 수 있습니까?

Linux에서 VPN 서버를 설정하여 PAM에 대해 인증하거나 Android 및 Windows 클라이언트로 비밀번호를 설정할 수 있습니까?

Linux 서버가 있고 Windows 10 및 Android 클라이언트에서 원격으로 해당 네트워크에 연결해야 합니다. 클라이언트가 사용자 이름과 비밀번호를 사용하여 Linux 시스템의 사용자 계정에 대해 인증할 수 있도록 서버를 설정할 수 있습니까?

이를 위해 IKEv2를 사용하고 싶지만 더 나은 솔루션이 있다면 그럴 필요는 없습니다. 이미 StrongSwan 설정을 시도했으며 클라이언트 인증서를 사용하여 성공했습니다. 또한 /etc/passwd에 대해 인증하기 위해 freeRadius를 얻을 수 있었지만 StrongSwan에서 freeRadius로 전달될 사용자 이름과 비밀번호를 얻을 수 없었습니다. 이것이 올바른 방법입니까?

제안이 있으면 이 질문을 업데이트하겠습니다.

답변1

문제는 사용자 이름/비밀번호를 사용하는 대부분의 EAP 방법이 일반 텍스트 비밀번호를 전송하지 않는다는 것입니다. 대신 클라이언트와 서버 모두에서 계산된 일부 해시/암호화와 함께 일종의 시도/응답 프로토콜을 사용합니다. 이를 위해서는 일반적으로 서버가 해시된 암호가 아닌 일반 텍스트 암호(영지식 암호 증명을 기반으로 하지 않는 한)를 이미 보유하고 있어야 합니다. 에 저장된 버전입니다 /etc/passwd.

일반 텍스트 비밀번호를 사용하는 StrongSwan이 지원하는 유일한 방법은 다음과 같습니다.EAP-GTC, 그러나 클라이언트 지원은 제한적입니다(FreeRADIUS와 작동하는지 여부도 모르지만 StrongSwan은 PAM과 직접 상호 작용할 수 있습니다). 기본적으로 StrongSwan만 이런 방식을 사용하기 때문에 StrongSwan 앱이 설치된 Android는 잘 작동하지만, Windows에서는 이 방식을 지원하지 않습니다.

관련 정보