OpenVPN: क्लाइंट के लिए सर्वर से एक आईपी फॉरवर्ड करें


0

मेरा सेटअप निम्नानुसार दिखता है:

  • सर्वर (ubuntu सर्वर) सार्वजनिक आईपी पते 1.2.3.4के साथ OpenVPN सर्वर के रूप में कार्य करता है
  • RaspberryPi (raspbian) 10.8.0.6OpenVPN नेटवर्क और भौतिक नेटवर्क में स्थानीय पते के पते के साथ OpenVPN सर्वर से जुड़ा है192.168.178.36
  • "लैन-क्लाइंट" स्थानीय पते के साथ रास्पबेरी पाई के समान भौतिक नेटवर्क में है 192.168.178.56
  • "क्लाइंट" उसी OpenVPN नेटवर्क में है, जिसमें पता के साथ रास्पबेरी पाई है 10.8.0.10

मेरे वर्तमान सेटअप के साथ, "क्लाइंट" और रास्पबेरी पाई ओपेनवोन सर्वर के साथ सफलतापूर्वक कनेक्ट होते हैं और एक दूसरे के साथ संवाद कर सकते हैं। अब मैं रास्पबेरी पाई का उपयोग करके राउटरबेरी पीआई के लिए "लैन-क्लाइंट" को फॉरवर्ड करना चाहता हूं, इसलिए ओपनवैप सर्वर से जुड़ा प्रत्येक क्लाइंट इसे एक्सेस कर सकता है।

मैं "lan-client" पर OpenVPN स्थापित नहीं कर सकता, और न ही मैं इसे अग्रेषित करने के लिए कुछ पोर्ट कर सकता हूं या किसी भी कॉन्फ़िगरेशन को बदल सकता हूं।

क्या OpenVPN के साथ भी यह संभव है? और यदि हां, तो मैं यह कैसे कर सकता हूं? मैं केवल इस विशिष्ट आईपी को अग्रेषित करना चाहता हूं और रास्पबेरी पीज़ लैन में सभी क्लाइंट नहीं।

मेरे वर्तमान विन्यास इस तरह दिखते हैं:

server.conf

port  1194
proto udp
dev   tun

ca   /etc/certs/ca.crt
cert /etc/certs/server.crt
key  /etc/certs/server.key

dh   /etc/certs/dh4096.pem

cipher AES-256-CBC

server    10.8.0.0 255.255.255.0
keepalive 10 120
client-to-client

ifconfig-pool-persist /etc/openvpn/ipp.txt
client-config-dir /etc/openvpn/ccd

persist-key
persist-tun

status     /var/log/openvpn/status.log
log        /var/log/openvpn/openvpn.log
log-append /var/log/openvpn/openvpn.log

verb 3

ipp.txt (सर्वर)

client-rpi,10.8.0.4

सीसीडी / क्लाइंट-आरपीआई (सर्वर)

ifconfig-push 10.8.0.6 10.8.0.1

client.conf (रास्पबेरी पाई)

client
dev     tun
proto   udp
remote  1.2.3.4 1194

resolv-retry infinite
nobind
persist-key
persist-tun

ca   /etc/certs/ca.crt
cert /etc/certs/client-rpi.crt
key  /etc/certs/client-rpi.key

cipher AES-256-CBC

remote-cert-tls server

verb 3

भले ही मैं केवल एक आईपी पते को रूट करना चाहता हूं, लेकिन मैंने पहले ही पूर्ण लैन को रूट करने के लिए ऑनलाइन कुछ गाइड का पालन किया है। ऐसा करने के लिए, मैंने जोड़ा

route 192.168.178.0 255.255.255.0

करने के लिए server.conf और

iroute 192.168.178.0 255.255.255.0

करने के लिए सीसीडी / क्लाइंट-आरपीआई config। जब मैं 192.168.178.20सर्वर पर उदाहरण के लिए पिंग करने की कोशिश करता हूं, तो मुझे 100% पैकेट लॉस (कोई जवाब नहीं) मिलता है। रास्पबेरी पाई पर यह इस तरह दिखता है:

$ sudo tcpdump -i tun0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type RAW (Raw IP), capture size 262144 bytes
09:39:09.863118 IP 10.8.0.1 > 192.168.178.20: ICMP echo request, id     19467, seq 1, length 64
09:39:10.869903 IP 10.8.0.1 > 192.168.178.20: ICMP echo request, id 19467, seq 2, length 64
09:39:11.878093 IP 10.8.0.1 > 192.168.178.20: ICMP echo request, id 19467, seq 3, length 64

जब मैं एक ही पता पिंग करता हूं लेकिन रास्पबेरी पाई से (जो कि लक्ष्य के समान भौतिक नेटवर्क में है) सब कुछ ठीक काम करता है, जैसा कि अपेक्षित है, इसलिए यह लक्ष्य फ़ायरवॉल नहीं है जो अनुरोधों को छोड़ देता है।

मेरा अनुमान है, कि रास्पबेरी पाई पिंग अनुरोधों को प्राप्त करती है और इसे आगे बढ़ाती है, लेकिन लक्ष्य 192.168.178.20को पता नहीं है कि कैसे प्रतिक्रिया दें। समस्या यह है, जैसा कि पहले ही उल्लेख किया गया है, मैं उस डिवाइस पर राउटिंग टेबल और न ही अन्य सेटिंग्स नहीं बदल सकता। मेरे पास केवल सर्वर और रास्पबेरी पाई तक पहुंच है। क्या मेरी समझ सही है, और क्या कोई समाधान है जो काम करेगा? या यह सिर्फ मेरी गलतफहमी और गलतफहमी है? यह मार्गों के साथ रास्पबेरी पाई पर एक समस्या हो सकती है, लेकिन मुझे नहीं पता कि इसे कैसे ठीक किया जाए।


आप वीपीएन से रास्पि आईपी रेंज में आने वाले नेट कनेक्शनों के लिए आईपी टेबल्स का उपयोग करने पर ध्यान दे सकते हैं, जो ग्राहकों को लेन के लिए कुछ ऐसा करने के लिए जवाब दे सकते हैं जो उनके लिए 'स्थानीय' प्रतीत होता है - मार्गों को जोड़ने से परहेज।
djsmiley2k

1
@ djsmiley2k धन्यवाद, जैसा कि मुझे केवल 3 पोर्ट्स की आवश्यकता थी, जिन्हें मैंने रासबेरी पाई के माध्यम से नैट नियमों और iptables का उपयोग करके आगे बढ़ाने में कामयाब रहा। और सर्वर ओपनवैप नेटवर्क के माध्यम से रास्पबेरी पाई तक पहुंच सकता है।
दारुमादरुम

बहुत बढ़िया :) एक उत्तर के रूप में लिखना चाहते हैं और स्वयं को स्वीकार करते हैं? स्व-प्रलेखन भविष्य में किसी और की मदद कर सकता है :)
djsmiley2k
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.