Windows Server에 OpenVPN 서버 설치 및 AD 사용 (LDAP) 계정 확인

◎ 서버 OS: Windows Server 2019
◎ OpenVPN: OpenVPN 2.4.9 (커뮤니티)
◎ 광고 검증 구성 요소: Auth4OpenVPNv2.0
OS 클라이언트 OS: 윈도우 10

 

회사의 VPN 하드웨어 장비로 인해 오래되었습니다,최근 설문 조사 VPN 솔루션,먼저 오픈 소스 솔루션으로 시작하고 싶습니다,처음에는 5 년 전에 테스트 한 OpenVPN을 생각했습니다.,그러나 공식 웹 사이트에서 VM 이미지 파일을 다운로드하고 빌드를 완료 한 후,이 버전은 두 개의 무료 클라이언트 연결 만 여는 것을 발견했습니다.,더 구독하십시오。충전하기 시작했다고 생각했습니다,당연한 서버와 클라이언트 (OpenVPN Connect) 소프트웨어 인터페이스가 너무 아름다워졌습니다,메모장을 통해 설정을 변경하는 것을 기억했습니다.。

그런 다음 일본에서 SoftEther VPN을 찾았습니다.,연구와 건축에 시간을 보낸 후,나는이 세트가 작동해야한다고 생각했다.,예상치 못하게 테스트를 할 때,SoftEther VPN에서 SQL 연결 끊기 버그 발견,네티즌은 2 년 동안이 문제를보고했습니다,공무원은 여전히 ​​수정하지 않았다,그래서 나는 마지 못해 포기해야했다。 SoftEther VPN을 설정하는 방법,참조【주의 사항】 SoftEther VPN 서버 설정

나중에 OpenVPN의 관련 라이센스 정보를 찾기 위해 되돌아갔습니다.,커뮤니티 버전 만 찾았습니다.,다운로드를 설치 한 후,익숙한 텍스트 파일 설정 화면이 다시 나타납니다.,하。아래는이 빌드의 목표와 설정 방법입니다:

【목표】
◎ 서버는 Windows 시스템을 사용합니다。
◎ 계정 확인 방법으로 AD 사용。
◎ 클라이언트 측은 독립적 인 네트워크 세그먼트를 사용합니다,그리고 자동으로 IP를 얻을。
◎ 클라이언트 측은 특정 네트워크 세그먼트 트래픽에 대해서만 VPN을 제공합니다.,온라인으로 (인터넷) 하지 않음。
◎ 클라이언트는 기업 내의 다른 네트워크 세그먼트에 연결할 수 있습니다。

 

◎ 첫,에 OpenVPN 커뮤니티 다운로드 페이지에서 최신 버전을 다운로드하십시오.。

 

◎ 그런 다음 커뮤니티를 참조하십시오 Easy_Windows_Guide,완전한 서버 및 클라이언트 설정,다음 캡처 키 설정。


 

【전치 작업]

◎ 설치할 때 스스로 확인하십시오 “EasyRSA 2 인증서 관리 스크립트” 요소。

◎ "시스템 관리자"로 cmd를 실행하십시오.,그리고 다음 명령을 순서대로 실행하십시오.:

cd "C:\Program Files\OpenVPN\easy-rsa"
init-config
notepad vars.bat

 

◎ 기본 인증서 정보 수정,수정 후 보관。

KEY_COUNTRY = US로 설정
KEY_PROVINCE = CA 설정
KEY_CITY = SanFrancisco 설정
KEY_ORG = OpenVPN 설정
KEY_EMAIL=mail@host.domain 설정

 

◎ 다음 명령을 순서대로 실행하십시오:

vars
clean-all

 

【건축 증명서 및 열쇠】
◎ 다음 명령을 실행하십시오:

build-ca

 

◎ 인증서 정보를 입력하십시오:

나라 이름 (2 문자 코드) [우리]:
시 /도 이름 (성명) [CA]:
지역 이름 (예 :, 시티) [샌프란시스코]:
조직 이름 (예 :, 회사) [OpenVPN]:
조직 단위 이름 (예 :, 부분) []:
공통 이름 (예 :, 귀하의 이름 또는 서버의 호스트 이름) []:
이메일 주소 [mail@host.domain]:

 

◎ 다음 명령을 순서대로 실행하십시오:

build-key-server server
build-key client
# Guide 上是建議用 client 端的電腦名稱,然後為每一台電腦產生一份憑證,
# 但因為我主要是要用 AD 驗證,所以我這邊是只產生一份名為 client 的憑證,然後讓所有電腦一起使用。
build-dh
"C:\Program Files\OpenVPN\bin\openvpn.exe" --genkey --secret "C:\Program Files\OpenVPN\easy-rsa\keys\ta.key"

 

[서버 설정 파일 설정]

◎ 다음 명령을 실행하십시오:

copy "C:\Program Files\OpenVPN\sample-config\server.ovpn" "C:\Program Files\OpenVPN\easy-rsa\keys\server.ovpn"
notepad "C:\Program Files\OpenVPN\easy-rsa\keys\server.ovpn"

 

◎ 다음 텍스트를 찾으십시오。

ca ca.crt
cert server.crt
키 server.key

dh dh2048.pem

 

◎ 교체:

그 “C:\\프로그램 파일 \ OpenVPN \ config \ ca.crt”
증명서 “C:\\프로그램 파일 \ OpenVPN \ config \ server.crt”
키 “C:\\프로그램 파일 \ OpenVPN \ config \ server.key”

즉 “C:\\프로그램 파일 \ OpenVPN \ config \ dh2048.pem”

 

◎ 보관 및 닫기。

◎ 다음 텍스트를 찾으십시오,주석 앞에서 세미콜론을 제거하십시오.(;)。모두가 공유 할 수있는 바우처를 하나만 만들려고하므로,이로 인해 다른 클라이언트가 동일한 IP 세트를 얻을 수 있습니다.,이 설정을 켜십시오,모든 사람이 다른 IP를 얻을 수 있도록。

;중복 CN

 

【클라이언트 설정 파일 설정】

◎ 다음 명령을 실행하십시오:

copy "C:\Program Files\OpenVPN\sample-config\client.ovpn" "C:\Program Files\OpenVPN\easy-rsa\keys\client.ovpn"
notepad "C:\Program Files\OpenVPN\easy-rsa\keys\client.ovpn"

 

◎ 다음 텍스트를 찾으십시오。

ca ca.crt
cert server.crt
키 server.key

tls-auth ta.key 1

 

◎ 교체:

그 “C:\\프로그램 파일 \ OpenVPN \ config \ ca.crt”
증명서 “C:\\프로그램 파일 \ OpenVPN \ config \ client.crt”
키 “C:\\프로그램 파일 \ OpenVPN \ config \ client.key”

tls-auth “C:\\프로그램 파일 \ OpenVPN \ config \ ta.key” 1
# 가이드에이 섹션이 없습니다,클라이언트를 실행할 때 실수입니다,그리고 수정。

 

◎ 다음 “내 서버 -1” OpenVPN의 실제 FQDN 또는 IP 주소로 수정하십시오。

remote my-server-1 1194

 

◎ 보관 및 닫기。

 

【복사 증명서、올바른 디렉토리의 키]

◎ 다음 명령을 실행하십시오:

robocopy "C:\Program Files\OpenVPN\easy-rsa\keys\" "C:\Program Files\OpenVPN\config\" ca.crt ta.key dh2048.pem server.crt server.key server.ovpn

 

◎ 안에 “C:\프로그램 파일 OpenVPN easy-rsa keys ”,다음 파일을 복사하십시오:

ca.crt

client.crt
client.key
client.ovpn

 

◎ 클라이언트 컴퓨터에 게시 “C:\프로그램 파일 OpenVPN config ”
PS. 클라이언트 설치 파일은 서버와 동일합니다。

 

[OpenVPN 시작]

◎ 서버에서 "시스템 관리자"로 OpenVPN GUI 실행。"시스템 관리자"로 실행하지 않으면,그러나 일부 로그에는 쓰기 권한이 없을 수 있습니다.。"Windows 서비스"로 이동할 수도 있습니다,將 “OpenVPNService” "활성화 유형"을 다음으로 변경하십시오.”자동적 인”,"활성화"를 마우스 오른쪽 버튼으로 클릭。

◎ 클라이언트 측에서 OpenVPN GUI를 직접 실행,오른쪽 하단에있는 아이콘을 마우스 오른쪽 버튼으로 클릭하고 "연결"을 선택하십시오.。더 나은 인터페이스 인 OpenVPN Connect로 클라이언트를 설치할 수도 있습니다,그리고 프로필을 설정 (client.opvn) 창으로 드래그。


 

above 위는 Easy_Windows_Guide의 주요 내용입니다.,위 설정을 완료 한 후,인증서로 연결을 완료 할 수 있습니다,다음은 내가 원하는 환경에 맞게 설정을 조정하는 것입니다:

◎ 클라이언트는 기업 내의 다른 네트워크 세그먼트에 연결할 수 있습니다。
◎ 계정 확인 방법으로 AD 사용。

 

[고객이 기업 내 다른 네트워크 세그먼트에 연결하도록 허용]

V OpenVPN 구축 후,기본 서버는 가상 네트워크 카드를 생성합니다,IP는 10.8.0.1,그리고 클라이언트는 얻을 것이다 10.8.0.6,현재 고객은 핑으로 이동합니다. 10.8.0.1 통과해야한다。

다음으로 서버의 물리적 네트워크 카드를 핑해야합니다 (예 192.168.53.1) 알아낼 것이다,현재 라우팅을 추가하는 것 외에도,또한"인터넷 연결 공유"기능을 켜십시오。나는 오랫동안 여기 붙어 있습니다,나중에는 마침내 ViRb3 네티즌에있었습니다. "인터넷 트래픽을 프록시하는 OpenVPN Windows 서버 만들기 · GitHub"이 기사에서는"인터넷 연결 공유 "키 설정을 찾습니다.。

◎ ";푸시 경로 “192.168…"
◎ 형식에 따라,다음을 추가하십시오,보관。

push "route 192.168.53.0 255.255.255.0"
# 如果要讓 Client 連到企業內部的其他網段,
# 可以在這邊加入其他網段的資訊。

 

◎ 인터페이스 카드 설정을 입력하십시오,실제 네트워크 카드를 켭니다 (192.168.53.1 이 하나) "인터넷 연결 공유"기능 (틱”다른 네트워크 사용자가이 컴퓨터의 인터넷 연결을 통해 연결할 수 있도록 허용”)。
PS. 이 작업을 수행하는 방법을 알기 전에 많은 기사를 찾았습니다.,오랫동안 여기 붙어。

 

Internet "인터넷 연결 공유"기능을 켠 후,OpenVPN 가상 네트워크 카드의 IP가 192.168.137.1,OpenVPN의 기본값을 사용하려면 10.8.0.1,기계어 코드를 수정해야합니다。
◎ regedit 실행,到下列路徑:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters

 

◎ ScopeAddress 값을 10.8.0.1。

◎ OpenVPN 서버 재시작,그리고 클라이언트가 다시 연결하자。

[AD를 계정 확인 방법으로 사용]

  首先,감사합니다 J. 오르테가. VBScript 작성,OpenVPN이 검증을 위해 AD를 쉽게 전달할 수 있도록하겠습니다,감사 감사 재 감사。에Windows 구현을위한 OpenVPN에 대한 Active Directory 인증 – 아미고"이 페이지에는 매우 자세한 구성 지침이 있습니다.,그러나 나이 때문에,따라서 Windows에서 후속 조치 2008、2012 향후 버전,아직 할 일이 몇 가지 있습니다,다음은 마무리 후 설정 방법입니다:

◎ Auth4OpenVPNv2.0.zip 다운로드,그리고 내용을 압축 해제하십시오 “C:/프로그램 파일 / OpenVPN / Config”

 

◎ Auth4OpenVPN.ini 수정,AD에 대한 정보를 입력하십시오,예는 다음과 같습니다:

Server = "192.168.53.20"
Domain = "abc"
DN = "dc=abc,dc=com,dc=tw"
Group = "(Group)OpenVPN"
Logging = "On"

 

다음 행동,J와 함께. 오르테가. 페이지에서 약간 다릅니다,이것은 아이스 OpenVPN 커뮤니티 포럼 새 버전의 Windows Server의 보안 문제에 대한 수정,당신에게 네티즌 감사합니다。

◎ 메모장 열기,다음 붙여 넣기:

set LOCALAPPDATA=C:\Users\%USERNAME%\AppData\Local
set CommonProgramFiles=C:\Program Files\Common Files
set CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
set CommonProgramW6432=C:\Program Files\Common Files
C:\Windows\System32\cscript.exe "C:\Program Files\OpenVPN\config\Auth4OpenVPN.vbs"
exit %errorlevel%

◎ 파일 저장 “C:\프로그램 파일 OpenVPN config”,파일 이름 “Auth4OpenVPN-64bitWrapper.cmd”。

◎ 다음 두 줄의 명령을 server.ovpn에 추가하십시오.:

script-security 3
auth-user-pass-verify Auth4OpenVPN-64bitWrapper.cmd via-env

◎ 클라이언트 측의 client.ovpn에 다음 두 줄 명령을 추가하십시오.:

auth-user-pass
auth-retry interact

◎ 그래서,클라이언트가 연결 중입니다,로그인하기 위해 계정 비밀번호 창이 나타납니다。

 

【추가 정보】

◎ Auth4OpenVPN은 테스트 기능을 제공합니다,AD에 대한 연결을 먼저 테스트하려면 다음 명령을 사용하는 것이 좋습니다.,후속 조치를하겠습니다。

auth4openvpn.vbs <user> <password>

◎ Auth4OpenVPN은 Windows 응용 프로그램 로그에 확인 결과를 남깁니다.,원래 웹 페이지 방법에 따라 설정 한 경우,나타날 수 있습니다 “Auth4OpenVPN: -2147221164, 등록되지 않은 카테고리” 오류 메시지,현재 제공되는 아이스 네티즌에 따르면 “Auth4OpenVPN-64bitWrapper.cmd” 수리 방법,환경 매개 변수의 문제를 해결할 수 있습니다。

◎ 클라이언트가 회사 네트워크를 통해 인터넷에 액세스 할 수있게하려면 (인터넷),server.ovpn 파일에서 다음 문자열을 찾으십시오.,그리고 이전 메모를 추가하십시오(;)그냥 벗어。

;push "redirect-gateway def1 bypass-dhcp"

◎ client.ovpn 파일을 가져올 때 OpenVPN Connect,인증서 및 키 파일이 client.ovpn 파일과 동일한 디렉토리에 있는지 확인합니다.,오류가없는 경우。가져 오기 완료 후,나중에 연결할 때,OpenVPN Connect는 client.ovpn의 설정에 따라 명령 경로에서 인증서 및 키 파일을 읽습니다.;OpenVPN GUI에는이 문제가 없습니다。

◎ OpenVPN 및 Windows 기본 계정을 확인하려는 경우,당신은 smiley22에 의해 공유를 참조 할 수 있습니다 SAMAuth4OpenVPN 요소。

◎ 아직이 솔루션을 채택하지 않았습니다.,본토에는 OpenVPN에 대한 필터링 기능이 있기 때문에,따라서 연결 과정에서 이상한 문제가 발생합니다.。

 

【參考連結】

3 응답

  1. Windows AD 환경을 사용하여 Openvpn을 구축하여 도메인 계정 인증 실현 – 바이오스 홈 라고 |

    […] ◎ Auth4OpenVPN.ini 수정,광고 관련 정보 입력,예는 다음과 같습니다:? […]

  2. 라고 |

    여보세요. 튜토리얼 주셔서 감사합니다.하지만 인정해야합니다. 설명하겠습니다 :
    Windows에서 서버 파일을 만들 수 있습니다. ( 서버 필수 2016) Windows에서 연결합니다. 10 내 클라이언트 파일. 연결이 이루어집니다..
    하지만 핑 단계에서, 내가 주소를 핑할 때 10.8.0.1 내 클라이언트 스테이션에서, 부정적인 결과.
    그렇지 않으면, 클라이언트와 서버를 연결할 수있는 즉시, 내 클라이언트 워크 스테이션에 더 이상 인터넷 연결이 없습니다..
    이 일에서 벗어나도록 도와 줄 단서가 있습니까?…..
    이것이 필수 버전이라는 사실이 핑을 방지 할 수 있습니까? ?

    您好,10.8.0.1도 ping에 실패하는 경우,VPN 연결이 설정되지 않았을 가능성이 있습니다.,기본적으로,10.8.0.1핑 가능。
    내 기사의 단계를 참조 할 수 있습니다.,단계별로 설정,행운을 빕니다,샤오 샤오

    베어 답글 |

코멘트를 남겨주세요

유의하시기 바랍니다: 덧글 검토가 활성화되고 귀하의 코멘트를 지연시킬 수있다. 댓글을 다시 제출하실 필요는 없습니다.