로컬 클라이언트 네트워크를 통해 openVPN 클라이언트로 포트 전달

로컬 클라이언트 네트워크를 통해 openVPN 클라이언트로 포트 전달

따라서 openVPN을 사용하여 유료 VPN 서비스에 WD MyCloud EX2를 연결했지만 여전히 포트 전달을 사용하여 로컬 네트워크의 외부 네트워크에서 ssh, ftp 및 plex 포트(22,20-21,32400)에 액세스하고 싶습니다. . VPN 서버에 포트 전달을 설정할 수 있다는 것을 알고 있으며 공급자가 이를 허용하지만 IP가 항상 변경되므로 VPN 공급자를 거치고 싶지 않습니다. 기본적으로 NAS가 있는 로컬 네트워크에 있을 때(그리고 openVPN을 사용하여 로컬 네트워크로 라우팅할 때) 포트에 액세스할 수 있지만 포트 전달을 사용하여 연결할 수 없습니다(NAS VPN을 활성화하자마자 작동이 중지됩니다). . 예를 들어 몇 가지 기본 Iptables 규칙을 시도했지만 iptables -A OUTPUT -p tcp -m tcp --dport 32400 -j AC작동하지 않는 것 같습니다. 유사한 시도에 대한 다양한 게시물을 보았지만 둘 중 하나인 것 같습니다. NAS가 특정 포트에 대해 openVPN을 우회하도록 허용하는 방법에 대한 아이디어가 있는 사람이 있습니까? 감사해요

답변1

문제는 라우팅으로 인해 발생할 수 있습니다. 대부분의 경우 VPN 공급자는 장치가 VPN 서버를 기본 게이트웨이로 사용하도록 강제하는 경로를 푸시할 것입니다. 일반적으로 푸시됩니다 0.0.0.0/1. 128.0.0.0/1결합된 이 두 경로는 전체 IPv4 주소 공간을 포괄하고 접두사가 더 크므로(예: /24) 직접 업스트림 게이트웨이 및 로컬 네트워크와 계속 통신할 수 있기 때문입니다.

예를 들어, VPN 클라이언트가 인터넷의 호스트(예: 1.2.3.4)로부터 해당 인터페이스의 패킷을 수신하는 경우 eth0경로 0.0.0.0/1와 일치하여 VPN 서버로 보냅니다. 1.2.3.4 VPN 서버의 패킷이 필요하지 않으므로 연결을 설정할 수 없습니다. 당신이 원하는 것은 응답 패킷이 eth0초기 패킷이 들어온 것과 같은 방식으로 나가는 것입니다.

이는 포트 전달을 통해 액세스해야 하는 VPN 클라이언트 컴퓨터의 라우팅 정책을 통해 수행할 수 있습니다. 이 유사한 질문과 첫 번째 답변을 참조하십시오.수신과 동일한 인터페이스에서 응답하시겠습니까?

인용하자면:

echo 200 isp2 >> /etc/iproute2/rt_tables
ip rule add from <interface_IP> dev <interface> table isp2
ip route add default via <gateway_IP> dev <interface> table isp2

답변2

동적 IP 주소에 대한 도메인 이름을 가질 수 있는 ddns(동적 DNS)를 설정할 수 있습니다. 저는 개인적으로 no-ip를 사용합니다. 무료이며 30일마다 버튼을 눌러 계속 이 도메인 이름을 원하는지 확인하면 됩니다. 무료입니다.

Win 컴퓨터의 클라이언트나 네트워크의 Linux 서버를 통해 기본 라우터로 설정할 수 있습니다.

openvpn을 설정하고(직접 구축한 경우) 터널을 사용하여 VPN 유형 3으로 설정할 수 있습니다. 이렇게 하면 연결하는 모든 네트워크의 동일한 서브넷에 장치가 배치됩니다. 홈 네트워크 주소에 다른 IP를 사용하는 것이 좋습니다. 10.10.1.0/24로 사용하면 IP 주소 충돌이 발생하지 않습니다.

관련 정보