openvpn 서버를 설정하고 인증서를 생성하여 클라이언트 컴퓨터에 다운로드했습니다.
Network Manager에서 client.ovpn 파일을 가져온 후에도 여전히 서버 자체에 SSH를 통해 연결할 수 있지만 인터넷에 액세스할 수는 없습니다.
내 서버의 openvpn에서서버 구성 파일, 나는 가지고있다:
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
모두 주석 처리되지 않았습니다.
지구 내에서시스템 구성 파일나는 또한 파일을 가지고 있습니다 :
net.ipv4.ip_forward=1
구성 측면에서 누락된 것이 있나요? 문제 디버깅을 돕기 위해 무엇을 할 수 있나요?
답변1
귀하의 서버에서는 net.ipv4.ip_forward=1
이것만으로는 충분하지 않으며 전달 코드만 활성화합니다. 커널이 무엇을, 누구로부터, 어디서 전달할 수 있는지 알려주어야 합니다(iptables를 통해). 너는 읽어야 해Linux IP 매스커레이딩 가이드.
리디렉션하고 싶다면모두VPN 연결을 통한 네트워크 트래픽(신뢰할 수 없는 네트워크에 연결되어 있는 경우 보안상의 이유로 필요한 경우가 있지만 일반적으로 매우 느릴 수 있으므로 필요하지 않습니다). VPN에 연결된 상태에서 일반 네트워크를 통해 인터넷에 접속하려면 "이 네트워크의 리소스에만 이 연결을 사용하세요"를 체크하세요. (정확한 문장이 아닐 수도 있습니다. 프랑스어로 번역했습니다.) "Route"를 클릭하세요. ." .." 버튼(Network Manager 애플릿에 있는 VPN 연결 설정의 "IPv4 설정" 탭 하단에 위치)
답변2
내 ovpn 서버에서 트래픽을 전달하기 위해 다음 iptables 규칙을 사용합니다.
IPT=$(여기서 iptables) WWW="eth0" ${IPT} -A 입력 -i ${WWW} -p udp --dport 1194 -m state --state new -j accept ${IPT} -A 입력 -i tun0 -j 수락 ${IPT} -A 전달 -i tun0 -o ${WWW} -j 수락 ${IPT} -A 전달 -i ${WWW} -o tun0 -j 수락