답변:
서버 / CA 인증서없이 사용자 이름 / 암호를 사용하여 완벽하게 인증 할 수 있습니다. 그러나, 나는 매우 추천 을 확인하기 위해 그것을 구성 과 Man-in-the-Middle 공격을 방지하기 위해 CA 인증서.
서버 확인없이 누구나 OpenVPN 서버를 가장하여 사용자 이름 / 암호를 수락 할 수 있습니다. 결과 :
Network Manager에서는 아래와 같이 CA Cert 없이도 잘 작동하지만 그렇게 사용하지 마십시오! Windows에서 서버 / CA 인증서를 사용하지 않으면 위의 공격에 실제로 취약합니다.
나는 여기에 답을 찾았습니다 : http://openvpn.net/index.php/open-source/documentation/howto.html#auth
여전히 서버 인증서가 필요합니다.
클라이언트 인증의 유일한 형식으로 사용자 이름 / 암호 인증 사용
기본적으로 서버에서 auth-user-pass-verify 또는 사용자 이름 / 암호 확인 플러그인을 사용하면 이중 인증을 사용할 수 있으며 클라이언트 인증을 위해 클라이언트 인증서 및 사용자 이름 / 암호 인증이 모두 필요합니다.
보안 관점에서 권장하지는 않지만 클라이언트 인증서 사용을 비활성화하고 사용자 이름 / 암호 인증 만 강제 실행하는 것도 가능합니다. 서버에서 :
클라이언트 인증서가 필요하지 않음 이러한 구성은 일반적으로 다음을 설정해야합니다.
username-as-common-name-클라이언트 인증서를 통해 인증 된 클라이언트의 공통 이름을 사용할 때와 같이 서버가 색인 목적으로 사용자 이름을 사용하도록 지시합니다.
client-cert-not-required는 서버 인증서가 필요하지 않으므로 client-cert-not-required를 사용하는 서버에 연결하는 클라이언트는 클라이언트 구성 파일에서 cert 및 key 지시문을 제거 할 수 있지만 그렇지는 않습니다. 클라이언트가 서버 인증서를 확인해야하기 때문에 ca 지시문.