내가 관리하지 않는 방화벽 뒤에 있는 PC에서 실행되는 웹 서버에 VPN 연결(openvpn)을 사용하여 접속하려고 합니다. 기본적으로 방화벽 뒤의 원격 PC에 있는 웹 서버에 액세스하기 위해 VPN 서버의 공개 IP를 사용하고 싶습니다.
이미지대로,http://193.105.1.1:8085192.168.1.1:8080에서 호스팅되는 웹사이트를 제공합니다.
이 질문이 이미 해결되었다면 죄송합니다. 비슷한 것을 검색해 보았지만 실제로 무엇을 검색해야 할지 모르겠습니다.
답변1
충분히 쉽습니다!
편의를 위해 머신 A - 193.105.1.1 및 머신 B - 192.168.1.1을 고려해 보겠습니다.
머신 A에 OpenVPN 서버 설치
저는 Ubuntu 18.04와 Nyr OpenVPN 설치 프로그램 스크립트를 선호합니다
터미널에서 이것을 실행하십시오.
wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh
머신 B에 이미 Apache 또는 nginx 설정이 있다고 가정하고 모든 인터페이스를 수신하는지 확인하세요.
머신 B에 OpenVPN 클라이언트를 설치하여 서버에 연결하세요!
OpenVPN 클라이언트를 설치하려면 터미널에서 이 코드를 실행하세요.
sudo apt-get install openvpn
이제 공용 IP에서 OpenVPN 내부 IP 주소로 트래픽을 라우팅하도록 머신 A를 구성해야 합니다. Nyr 스크립트를 사용한 경우 머신 B에는 주소 10.8.0.2가 할당됩니다.
라우팅을 구성해 봅시다!
- ufw 방화벽 활성화
sudo ufw enable ssh && sudo ufw enable
sudo nano /etc/default/ufw
- "DEFAULT_INPUT_POLICY" 및 "DEFAULT_FORWARD_POLICY"를 ACCEPT로 변경합니다. 파일을 저장하고 닫습니다.
sudo nano /etc/ufw/sysctl.conf
- n"et/ipv4/ip_forward=1"의 주석 처리를 제거하십시오. 파일을 저장하고 닫습니다.
sudo nano /etc/ufw/before.rules
"COMMIT" 줄 뒤의 줄 끝에 다음을 추가합니다.
*낫
-에프
:라우팅 사전 승인 [0:0]
-A 사전 라우팅 -i eth0 -d 193.105.1.1 -p tcp -m multiport --dports 23:65535 -j DNAT --대상 10.8.0.2
-A 포스트라우팅 -s 10.8.0.0/24 ! -d 10.8.0.0/24 -j 가장 무도회
저지르다
eth0을 네트워크 인터페이스 이름으로 변경합니다.
두 서버 모두 저장하고 재부팅하세요! OpenVPN 클라이언트를 통해 머신 B를 머신 A에 연결합니다.