पोर्ट 22 से वर्चुअल कंप्यूटर पर ubuntu पर फॉरवर्ड ट्रैफ़िक


0

मैं एक वर्चुअल मशीन पर एक होस्ट मशीन पर 22 पोर्ट से 22 ट्रैफिक को आगे बढ़ाने की कोशिश कर रहा हूं।

मेरा होस्ट ubuntu चल रहा है।

मैंने अपने मेजबान पर इस कमांड को निष्पादित करने की कोशिश की है: iptables -t nat -A PREROUTING -d 192.168.1.161 -p tcp --dport 22 -j DNAT --to 192.168.122.2:22जिसमें कोई वापसी नहीं थी। कोई त्रुटि, या अन्य जानकारी नहीं दिखाई गई है।

जब चल रहा है tcpdump -i eno1 port 22और पोर्ट 22 से कनेक्ट करने का प्रयास करते हैं, तो मुझे मेजबान में आने वाले पैकेज दिखाई देते हैं। VM पर समतुल्य दौड़ना इनकमिंग पैकेज नहीं दिखाता है

192.168.1.161 eno1 का स्थानीय आईपी है। 192.168.122.2 वर्चुअल मशीन का आईपी है।

मैंने जाँच की है कि मैं होस्ट से वीएम से कनेक्ट कर सकता हूं।

cat /proc/sys/net/ipv4/ip_forward रिटर्न 1

अगर मैं मेजबान से वीएम में ssh करने की कोशिश करता हूं ( ssh user@192.168.122.2) तो यह ठीक काम करता है। अगर मैं अपने कार्य केंद्र (मेजबान के रूप में एक ही नेटवर्क) से ssh user@192.168.1.161इसे आजमाता हूं । जैसा कि tcpdump से उल्लेख किया गया है मैं मेजबान पर पहुंचने वाले पैकेज देख सकता हूं, लेकिन VM को अग्रेषित नहीं किया जा सकता। मेरे पास गैर-डिफ़ॉल्ट पोर्ट पर चलने वाले होस्ट के लिए SSH है।

होस्ट Ubuntu 17.10 चला रहा है। अतिथि डेबियन जीएनयू / लिनक्स 9 चला रहा है

VM को KVM द्वारा चलाया जाता है और मैं इसे पुण्य-प्रबंधक का उपयोग करके प्रबंधित करता हूं।

ifconfig मेजबान के लिए:

eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.161  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 2a00:7660:142d:0:8a51:fbff:fe4a:9ed1  prefixlen 64  scopeid 0x0<global>
        inet6 2a00:7660:142d::140  prefixlen 128  scopeid 0x0<global>
        inet6 fe80::8a51:fbff:fe4a:9ed1  prefixlen 64  scopeid 0x20<link>
        ether 88:51:fb:4a:9e:d1  txqueuelen 1000  (Ethernet)
        RX packets 62604  bytes 10855077 (10.8 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 69941  bytes 36442632 (36.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 20  memory 0xf7f00000-f7f20000

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 10625  bytes 27445185 (27.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 10625  bytes 27445185 (27.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:04:bb:9b  txqueuelen 1000  (Ethernet)
        RX packets 1155  bytes 142293 (142.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1667  bytes 650997 (650.9 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

vnet0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet6 fe80::fc54:ff:fe12:71ae  prefixlen 64  scopeid 0x20<link>
        ether fe:54:00:12:71:ae  txqueuelen 1000  (Ethernet)
        RX packets 1155  bytes 158463 (158.4 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4349  bytes 794450 (794.4 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

"मैंने निष्पादित करने की कोशिश की है" क्या आपको कोई त्रुटि मिली है? आपके पास कौन सा लक्षण है? क्या काम नहीं करता है, आपने क्या परीक्षण किया?
पैट्रिक मेवजेक

मैंने कुछ और जानकारी जोड़ी है। पूरी तरह से निश्चित नहीं है कि आपको सिम्पटम्स से क्या मतलब है?
जोनास लॉरेन

एक डुप्लिकेट मिला: serverfault.com/questions/770847/iptables-kvm-forward-port <s> मुझे अपने प्रश्न को चिह्नित करने के लिए फिर से नहीं है। यह उद्देश्यों लगता है और मुद्दों ही कर रहे हैं </ s> अपनी शैली का इंतजार कर समाधान।
जोनास लारसेन

जवाबों:


0

आपके iptables की डिफ़ॉल्ट नीति क्या है (के साथ जाँच की जा सकती है iptables -L)? यदि इसे DROP पर सेट किया जाता है, तो आपको VM को अग्रेषण सक्षम करने की आवश्यकता है:

iptables -A FORWARD -p tcp -d 192.168.1.161 --dport 22 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

संपादित करें: मैं यह सोचते हैं रहा हूँ मुखौटा धारण कर लिया , सक्षम किया गया है जब से तुम virt-manager, जो libvirt का उपयोग करता है का उपयोग कर रहे हैं, और यह है डिफ़ॉल्ट व्यवहार नेट मोड के साथ। आपको अपने iptables नियमों को बदलना होगा:

iptables -t nat -A PREROUTING -i eno1 -p tcp --dport 22 -j DNAT --to 192.168.122.2:22
iptables -A FORWARD -p tcp -i eno1 --dport 22 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

यदि चिनाई सक्षम नहीं है, तो आपके वीएम को जवाब देने के लिए आपके घर नेटवर्क के लिए एक मार्ग होना चाहिए।


iptables -L कितना सामान देता है, मैं डिफ़ॉल्ट कहां देख सकता हूं?
जोनास लॉरसेन

आपको कुछ इस तरह से देखना चाहिए: चैन फॉरवर्ड (पॉलिसी DROP)
CaptAintHere

हाँ, मैं उन पॉलिसी ड्रॉप को देखता हूं। Ive ने आपकी कमांड चलाने की कोशिश की, लेकिन यह अभी भी विफल है। Iptables -L का शीर्ष भाग अभी इस तरह दिखता है: prntscr.com/jl4lhx - संपूर्ण iptables -L pastebin.com/E0pkEKf2
जोनास

क्या आप कुछ और विवरण जोड़ने के लिए अपने प्रश्न को संपादित कर सकते हैं? आप (VirtualBox, VMWare ...) किस हाइपरविज़र का उपयोग कर रहे हैं? आपका नेटवर्किंग मोड क्या है (NAT, Bridged ...)?
CaptAintHere

मैंने कुछ और जानकारी जोड़ी है
जोनास लॉरेन

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.