ভিপিএন ক্লায়েন্টে পোর্ট ফরোয়ার্ড?


21

আমি কিছুটা ধাঁধা পেয়েছি এবং এর সমাধানের সন্ধান করতে আমার খুব ভাগ্য হয় নি। এই মুহুর্তে আমি ভেরিজোন 3G এর মাধ্যমে নেটে সংযুক্ত হয়েছি। তারা সমস্ত আগত ট্র্যাফিক ফিল্টার করে তাই সংযোগগুলি গ্রহণ করার জন্য পোর্টগুলি খোলা আমার পক্ষে অসম্ভব।

আমার কাছে বর্তমানে লিনোড ডট কম এ একটি লিনাক্স ভার্চুয়াল মেশিন রয়েছে এবং pptpdকিছুটা iptablesবন্দর ফরোয়ার্ডিং ইনস্টল করার চেষ্টা করার জন্য চিন্তাটি আমার মনকে অতিক্রম করেছে । আমি pptpdইনস্টল করেছি এবং আমার হোম মেশিনটি সুখে সংযোগ স্থাপন করেছে। এটি বলেছিল, এখানে কিছু সাধারণ তথ্য রয়েছে:

সার্ভার (ডাবিয়ান) WAN আইপি: x0xx এথিক্স0 - পিটিপিপিডি আইপি: পিছুডিতে yyy1 - ক্লায়েন্ট ভিপিএন আইপি: yyy100

আমি উন্মাদ হয়ে যাচ্ছিলাম না তা যাচাই করার জন্য, আমি ক্লায়েন্টের খোলা পোর্টগুলিতে সার্ভার থেকে কিছু সংযোগ চেষ্টা করেছি এবং ক্লায়েন্ট ভিপিএন আইপি-র মাধ্যমে সংযোগগুলি গ্রহণ করে।

আমি যা অর্জন করতে চাই তা হ'ল:

ইন্টারনেট -> ওয়ান আইপি: পোর্ট -> ক্লায়েন্ট ভিপিএন আইপি: পোর্ট ফরওয়ার্ড করুন

সুতরাং উদাহরণস্বরূপ, যদি আমার ক্লায়েন্টটিতে 6000 পোর্ট খোলা থাকে তবে কোনও ব্যক্তি xxxx: 6000 তে টেলনেট করতে পারে এবং সার্ভারটি এটি ধরতে পারে এবং এটি 192.168.3.100:6000 এ ফরোয়ার্ড করে।

আমি কমপক্ষে 20 টি বিভিন্ন গুগলড কনফিগার চেষ্টা করেছি iptablesএবং এখনও কেউ কাজ করেনি। কারও কি কোনও ধারণা আছে, বা সম্ভবত একটি সম্পূর্ণ ভিন্ন পদ্ধতির বিষয়ে আমি অবগত নই? মূলত টিসিপি এবং ইউডিপি ট্র্যাফিক উভয়ই মারাত্মকভাবে আগুন লাগানো সংযোগের মাধ্যমে শুনতে হবে।

উত্তর:


25

এই কাজটি করতে আপনার ভিপিএন সার্ভারে (লিনোড) তিনটি জিনিস করা দরকার:

  1. আপনাকে অবশ্যই আইপি ফরওয়ার্ডিং সক্ষম করতে হবে:

    sysctl -w net.ipv4.ip_forward=1
    
  2. পোর্টটি ফরোয়ার্ড করতে গন্তব্য NAT (DNAT) সেট আপ করুন। আপনি সম্ভবত এটি ইতিমধ্যে খুঁজে পেয়েছেন কারণ এটি স্ট্যান্ডার্ড পোর্ট ফরওয়ার্ডিং স্টাফ, তবে সম্পূর্ণতার জন্য:

    iptables -t nat -A PREROUTING -d x.x.x.x -p tcp --dport 6000 -j DNAT --to-dest y.y.y.100:6000
    
  3. উত্স NAT (এসএনএটি) সেট আপ করুন যাতে আপনার ভিপিএন ক্লায়েন্টের দৃষ্টিকোণ থেকে সংযোগটি ভিপিএন সার্ভার থেকে আসে:

    iptables -t nat -A POSTROUTING -d y.y.y.100 -p tcp --dport 6000 -j SNAT --to-source y.y.y.1
    

আপনার এসএনএটি-র প্রয়োজনীয়তার কারণ হ'ল অন্যথায় আপনার ভিপিএন ক্লায়েন্ট তার রিটার্ন প্যাকেটগুলি সরাসরি হোস্টের কাছে প্রেরণ করবে যা সংযোগটি (জেডজেজজ) তার ডিফল্ট গেটওয়ের (যেমন ভেরিজন 3 জি) মাধ্যমে শুরু করেছিল, এবং ভিপিএন এর মাধ্যমে নয়। সুতরাং রিটার্ন প্যাকেটের উত্স আইপি ঠিকানাটি আপনার ভেরিজোন 3 জি ঠিকানা হবে এবং এক্সএক্সএক্সএক্সএক্স নয় এটি সমস্ত ধরণের সমস্যার কারণ হতে পারে, যেহেতু zzzz সত্যই xxxx এর সাথে সংযোগটি শুরু করেছিল

বেশিরভাগ বন্দর ফরওয়ার্ডিং সেটআপগুলিতে, এসএনএটি প্রয়োজন হয় না কারণ পোর্ট ফরোয়ার্ডিং করা হোস্টটি গন্তব্য হোস্টের (যেমন একটি হোম রাউটার) ডিফল্ট গেটওয়ে।

এছাড়াও মনে রাখবেন যে আপনি 6000 বন্দরটি অন্য কোনও বন্দরে ফরোয়ার্ড করতে চান (7000 বলুন), তবে এসএনএটি নিয়মটি 6000 নয়, 7000-র সাথে মেলানো উচিত match


হ্যালো এজিডাব্লুএ, প্রতিক্রিয়াটির জন্য ধন্যবাদ। আমার ইতিমধ্যে ip_forwarding ছিল এবং আপনার বিধিগুলি পুরোপুরি কার্যকর হয়েছিল, যদিও প্রাথমিকভাবে তা নয়। সমস্যাটি ছিল (আমার iptables noobness এ) যে আমি iptables বুঝতে পারিনি - F নাট এন্ট্রিগুলি ফ্লাশ করে না, এবং iptables -L সেগুলি তালিকাভুক্ত করছে না। কীভাবে তাদের সঠিকভাবে তালিকাভুক্ত করা যায় তা আবিষ্কার করার পরে আমি চেষ্টা করেছি বিভিন্ন বিবাদী এন্ট্রি। আপনার নিয়মগুলি ফ্লাশ করে দেখার চেষ্টা করার পরে এটি পুরোপুরি কার্যকর হয়। একটি দ্রুত প্রশ্ন যদিও, আপনার বিধিগুলিতে আপনি tcp নির্দিষ্ট করেন specify এটি "সমস্ত" তে পরিবর্তন করে টিসিপি / ইউডিপি উভয়ই ট্র্যাফিকের জন্য কাজ করবে?
ভাইল ব্রিগেডিয়ার

আপনাকে স্বাগতম! (যাইহোক, আমি iptables-saveআমার iptables নিয়মগুলি ব্যবহার করতে পছন্দ করি - যদিও আউটপুটটি মানুষের ব্যবহারের উদ্দেশ্যে নয় তবে এটি এখনও পঠনযোগ্য এবং আপনার সমস্ত iptables নিয়মগুলি দেখায় )) না, দুর্ভাগ্যক্রমে আপনি সেখানে "সমস্ত" ব্যবহার করতে পারবেন না, কারণ --dportকেবল প্রোটোকলগুলির সাথে কাজ করে যা আসলে পোর্ট রয়েছে ("সমস্ত" উদাহরণস্বরূপ আইসিএমপি অন্তর্ভুক্ত করবে, যার বন্দরগুলির কোনও ধারণা নেই)। টিসিপি এবং ইউডিপির জন্য আপনার পৃথক বিধি প্রয়োজন।
এজিডব্লিউএ

Iptables- সংরক্ষণ টিপ জন্য ধন্যবাদ। টিসিপি এবং ইউডিপি উভয়ের জন্য প্রত্যাশা অনুযায়ী সবকিছুই কাজ করে। চিয়ার্স।
ভিল ব্রিগেডিয়ার

2
এই উত্তরের কেবলমাত্র একটি আপডেট হ'ল আইপ্রাউট 2 দিয়ে আপনি নিজের ভিপিএন ক্লায়েন্টকে 2 টি গেটওয়ে রাখতে এবং ডিএনএটি ট্র্যাফিকটি ভিপিএন এর পিছনে সেটআপ করতে পারবেন। এটি উপকারী যদি আপনি এসএনএটি ব্যবহার করতে না চান এবং সমস্ত ট্র্যাফিক ভিপিএন সার্ভার থেকে আসছে বলে মনে হয়। thomas-krenn.com/en/wiki/Two_Default_Gateways_on_One_S systemm এ কীভাবে সেট আপ করবেন তার তথ্য অন্তর্ভুক্ত করে।
PressingOnAlways

আমি যতক্ষণ না ইউএফডাব্লিউ অক্ষম থাকি ততক্ষণ আমার পক্ষে কাজ করে, যদিও আমি ইউএফডাব্লুতে 8080 অনুমতি দিয়েছি, তবে আমি ইউএফডাব্লু সক্ষম করার সাথে সাথে এই ফরোয়ার্ডিং স্টাফ কাজ করে না .. কোনও ধারণা?
সুধির এন

3

আমিও এই সমস্যাটি পেয়েছি এবং ঘন্টাখানেক সমাধান করার চেষ্টা করেছি .. এটি আমার সমাধান:

  • আমি VPNClientএকই সঙ্গে একাধিক ছিল IPAddress। সুতরাং আমি তাদের প্রত্যেককে একটি স্ট্যাটিক দিয়েছিIPAddress

একটি ডিরেক্টরি নির্ধারণ করুন যেখানে ক্লায়েন্ট স্ক্রিপ্টগুলি সংরক্ষণ করা উচিত, যেমন / etc / openvpn / staticclients এবং ডিরেক্টরি তৈরি করুন

mkdir /etc/openvpn/staticclients

সার্ভারে আপনার ওপেনভিএনপিএন কনফিগারেশনে বিকল্প হিসাবে এই ডিরেক্টরিটি যুক্ত করুন:

client-config-dir /etc/openvpn/staticclients

প্রতিটি ক্লায়েন্টের জন্য আপনাকে একটি ফাইল তৈরি করতে হবে। ফাইলের common nameনামটি অবশ্যই ক্লায়েন্টের শংসাপত্রে নির্দিষ্ট হওয়া বৈশিষ্ট্যের সাথে মেলে । এই আদেশটি কম্পিউটার শংসাপত্র থেকে সিএন পায়:

এই উদাহরণটি 10.1.134.110/10.1.134.109টিকে IPAddressক্লায়েন্টের সাথে common name পরীক্ষার সাথে চাপায় এবং সাবনেট 10.1.135.0 এর জন্য একটি অতিরিক্ত রুটও চাপ দেয়।

cat /etc/openvpn/staticclients/TESTCLIENT

ifconfig-push 10.1.134.110 10.1.134.109
push "route 10.1.135.0 255.255.255.0 10.1.134.62"
  • http://www.yougetsignal.com/tools/open-port/ এবং http://canyouseeme.org/ সঠিকভাবে পোর্টগুলি সনাক্ত করে নি। ওয়েবসাইটগুলি এই বন্দরগুলি দেখতে সক্ষম হয়েছিল যে আমি অতিরিক্তভাবে ক্লায়েন্টের উপরে আমার অ্যাপ্লিকেশনটি শুরু করতে হয়েছিল।

  • অতিরিক্ত SNATনিয়মের প্রয়োজন নেই । শুধুমাত্র এই বিধিগুলির প্রয়োজন ছিল:

sysctl -w net.ipv4.ip_forward=1

iptables -t nat -A PREROUTING -p tcp --dport 28006 -j DNAT --to 10.1.134.110

2

বেশিরভাগ সার্ভারের ডিফল্ট কনফিগারেশনে আইপি ফরওয়ার্ডিং অক্ষম থাকে। আপনি যদি আপনার ভিপিএন এর মাধ্যমে আগত সংযোগগুলি পুনর্নির্দেশ করতে চান তবে আপনাকে এটি সক্ষম করতে হবে।

এটা চেষ্টা কর:

sysctl -w net.ipv4.ip_forward = 1

আমি iptables কনফিগারেশন ছাড়াও বলতে চাই।


0

আপনি যা অর্জন করতে চান তা (সম্ভবত) খুব সম্ভব pptpdবা ওপেনভিপিএন এবং আইপটবেবলগুলির সাহায্যে, তবে আপনি সম্ভবত এই ব্যবহারের ক্ষেত্রে আরও ভাল প্রার্থী খুঁজে পেতে পারেন। আমি শুধু পড়া এই যা ঠিক এই ব্যবহার ক্ষেত্রে জন্য কিভাবে সেটআপ tinc করার বর্ণনা করা হয়েছে। এটি pptdpওপেনভিপিএন অংশের একটি (সম্ভাব্যতর সহজ) বিকল্প । তারপরে আপনার আইপটিবলগুলির জন্য ঠিক একই বিধিগুলির প্রয়োজন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.