현재 Windows 서버를 사용하고 있습니다. 이 Windows 서버는 원격 데이터베이스에서 데이터를 검색하므로 원격 VPN 서버에 영구적으로 연결됩니다. 그래서 우리는 원격 서버에서 제공하는 인증서를 사용하여 클라이언트 모드에서 openVPN을 사용합니다.
이제 직원들이 원격으로 연결할 수 있도록 허용하고 싶습니다. 일반적으로 숙제를 하거나 회의 중 일을 합니다. 이것이 바로 우리가 이 서버에 openVPN 인스턴스를 추가하고 싶지만 이번에는 서버 모드에 추가하고 싶은 이유입니다.
기술적인 관점에서 우리는 두 개의 서로 다른 가상 네트워크 카드를 사용하기 때문에 두 개의 openVPN 인스턴스를 동시에 사용하는 데 어떤 문제가 있을 수 있는지 알 수 없습니다. 그리고 두 서브넷 모두 서로 다릅니다. 기본 게이트웨이는 절대 변경되지 않습니다(절대 변경되지 않습니다). 많은 문제를 피할 수 있습니다.
저는 두 개의 TAP 카드(openVPN에서 사용)를 설치했습니다. openVPN 인스턴스를 특정 네트워크 카드에 "링크"하는 방법을 모르겠습니다. 두 개의 네트워크 카드 TAP만 있으면 충분합니까? 동일한 시스템에서 하나의 클라이언트와 하나의 openVPN 서버를 동시에 확보하는 방법은 무엇입니까?
원본 게시물
저는 Windows 서버를 사용하고 있습니다.
같은 컴퓨터에서 동시에 openVPN을 클라이언트와 서버로 사용해야 합니다. 가능합니까?
그렇다면 제약사항은 무엇입니까?
그렇지 않다면 다른 대안이 있습니까?
나는 iptables의 강력한 기능을 갖춘 Linux에 가능성이 있다는 것을 알고 있지만 이것이 Windows 호스트에서 가능한지는 실제로 모릅니다.
답변1
OpenVPN TLS 서버와 클라이언트를 동일한 시스템에 두는 것이 가능합니다(저는 얼마 전에 Ubuntu에서 이 방식을 실행했으며 Windows에서 여기서 문제가 발생할 것으로 예상하지 않습니다). 다른 포트와 가상 TAP-Win32 네트워크 카드를 사용하도록 설정하기만 하면 됩니다.
nobind
임의의 동적 포트를 사용하도록 옵션을 포함하도록 클라이언트 인스턴스를 구성하는 것이 좋습니다 . 이렇게 하면 인스턴스 간의 포트 충돌을 쉽게 피할 수 있습니다(기본적으로 OpenVPN은 클라이언트 모드에서도 항상 기본 포트 1194에 바인딩됩니다). 서버는 포트에 바인딩해야 하며 port $PORT
기본 포트가 적합하지 않은 경우 선택적으로 포트를 설정할 수 있습니다. 서버와 클라이언트 모두에서 dev-node $GUID
별도의 인스턴스별 TAP 어댑터를 할당하는 데 사용됩니다. GUID는 레지스트리에서 또는 콘솔 명령을 사용하여 읽을 수 있습니다 openvpn --show-adapters
.