কোনও এসএসএইচ টানেল / সেশনের জন্য কীভাবে ইউডিপি হোল পঞ্চিং ব্যবহার করবেন


21

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

তবে পরিস্থিতি দেখা দিতে পারে যে আমি রাস্পবেরি পাইতে কিছু পরিবর্তন করতে চাই। উদাহরণস্বরূপ সিস্টেম আপডেট বা প্রোগ্রামে পরিবর্তন যা ডেটা সার্ভারে প্রেরণ করে বা যাই হোক না কেন।

প্রস্তাবিত সেটআপের সাথে আমি এর ল্যানের বাইরে থেকে রাস্পবেরি পাইয়ের সাথে সংযোগ করতে সক্ষম হব না।

দ্রষ্টব্য: আমি নেটওয়ার্কটি পরিবর্তন করতে চাই না, এবং বিদ্যমান রাউটারে পোর্ট ফরওয়ার্ডিং, ডিনডিএনএস বা ভিপিএন করার ক্ষমতা নেই।

আমি সম্প্রতি ইউডিপি হোল পাঞ্চিংয়ের উপরে পড়েছি। প্রাথমিক ধারণাটি হ'ল, ক্লায়েন্ট একটি ইউডিপি প্যাকেজটি একটি পরিচিত সার্ভারের ঠিকানায় প্রেরণ করে (অর্থাত্ একটি সার্বজনীন আইপি বা ডাইনডিএনএস সক্ষম)। ক্লায়েন্ট বি যা ক্লায়েন্ট এ এর ​​সাথে সংযোগ স্থাপন করতে চায় সার্বজনীন আইপি এবং ক্লায়েন্ট এ এর ​​পোর্ট নম্বর জিজ্ঞাসা করে server

এটি তখন ক্লায়েন্ট এ এর ​​সাথে সরাসরি এটির সার্বজনীন আইপি এবং পোর্টে সংযোগ করতে পারে যা গতিশীল। ক্লায়েন্ট প্রথম ব্যবহৃত পোর্টে সার্ভারের সাথে সংযুক্ত হওয়ার কারণে, NAT প্যাকেজগুলি ক্লায়েন্ট এ-তে প্রেরণ করবে NAT

আমি আশা করি আমি ধারণাটি সঠিকভাবে, কম বেশি…

এটি সমস্ত দুর্দান্ত শোনায়, তবে সমস্যাটি হ'ল, এটি কোনও টিসিপি সংযোগের সাথে কাজ করার জন্য কোয়ার্টারেটেড হয় না, কারণ রাউটারটি টিসিপি সংযোগটির হ্যান্ডশেকটি "বুঝতে" সক্ষম হয় এবং যদি এটি সঠিকভাবে তৈরি না হয় তবে তা এগিয়ে যাবে না প্যাকেজ।

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


আপনার কাছে এমন একটি ইন্টারনেট ফেসিং ডিভাইস রয়েছে যা ইউডিপি হোল-পাঞ্চিং করতে সক্ষম তবে টিসিপি নয়? আরও ভাল NAT ডিভাইস পান।
সিপিটি_ফিংক

আমি ইউডিপি দিয়ে এসএসএস করিনি তবে এখানে এটির একটি লিঙ্ক zarb.org/~gc/html/udp-in-ssh-tunneling.html
বার্লোপ

আমি জানি না তবে আমি একজন এসএসএস গুরুকে জিজ্ঞাসা করেছি, তারা বলেছিল যে এসএসডি ইউডিপি ফরোয়ার্ড করতে পারে, তবে কেবল এটি যদি ভিপিএন-এর মতো কাজ করে, এবং তার জন্য কোনও পরিবর্তন আছে, তিনি বলেছিলেন এটি -wতবে তিনি বলেন , তিনি ইউএসপি ওভারের টিসিপি (সম্ভবত তার দ্বারা তিনি ssh সহ ইউডিপি ফরোয়ার্ড করার যে কোনও প্রয়াস অন্তর্ভুক্ত রয়েছে), এতে উচ্চ বিলম্বিত হওয়া, এবং আপনার আর চাই না এমন স্টাফের retransmits এর মতো বিষয় রয়েছে। আমার ধারণা এটি চেষ্টা করার পরেও এটি একটি আকর্ষণীয় বিষয়। আমি এই ভিপিএনটি
বার্লপ

আমি আগ্রহী যে আপনি কেন একটি অভ্যন্তরীণ বন্দর খুলতে চান না? - এটি এমন দুর্দান্ত দৃশ্যের মতো শোনাচ্ছে না যার জন্য দুর্দান্ত দুর্দান্ত সুরক্ষা দরকার ... বিকল্পভাবে, আপনার ক্লায়েন্ট থাকতে পারে একটি ক্লায়েন্ট বি এর অ্যাক্সেস রয়েছে এমন একটি সার্ভারের সাথে একটি বিপরীত পোর্ট বাইন্ডিং সহ আউটবাউন্ড এসএসএইচ সংযোগ বজায় রাখতে পারে। আপনি মিডল ম্যান সার্ভারের মাধ্যমে সংযোগ করতে পারেন। যাইহোক, এই ধরণের ব্যবস্থা ব্যর্থতার ঝুঁকিপূর্ণ এবং তাই এটি ভুল হয়ে গেলে সাজানোর জন্য সীমিত শারীরিক অ্যাক্সেস দেওয়া বেশ অনাকাঙ্ক্ষিত।
কাবিদাশা

উত্তর:


8

pwnat


"..এটি নেটের পিছনে পিয়ারের সাথে সংযোগ শুরু করার জন্য তুচ্ছ নয় " "

".. প্রায় সমস্ত NAT বাস্তবায়ন অভ্যন্তরীণ ট্র্যাফিক ফরোয়ার্ড করতে অস্বীকার করে যা সাম্প্রতিক ম্যাচের আউটবাউন্ড অনুরোধের সাথে মিলে না " "


"..যন্ত্রটি pwnatএকটি জিএনইউ / লিনাক্স-কেবল, স্বায়ত্তশাসিত এনএটি ট্র্যাভারসালের এককভাবে বাস্তবায়ন implementation NAT এর পিছনে সার্ভারের সাথে যোগাযোগ করার পরে , এটি ইউডিপি প্যাকেটগুলি ব্যবহার করে টিসিপি শব্দার্থবিজ্ঞানের সাহায্যে একটি চ্যানেল স্থাপন করে NAT এটি ক্লায়েন্ট এবং সার্ভার উভয়কেই নেটের পিছনে সমর্থন করে supports (যদি NAT এর মধ্যে কোনও জাল [কাস্টম] আইসিএমপি বার্তাগুলি সংক্রমণ করার অনুমতি দেয়) এই প্রয়োগটি শেষ ব্যবহারকারীদের লক্ষ্য করে ""


  
ব্যবহার: ./pwnat <-s | -c> <আরগস>

  -সি ক্লায়েন্ট মোড
    <args>: [স্থানীয় আইপি] <স্থানীয় পোর্ট> <প্রক্সি হোস্ট> [প্রক্সি পোর্ট (Def: 2222)] <দূরবর্তী হোস্ট> <রিমোট পোর্ট>

  -স সার্ভার মোড
    <args>: [স্থানীয় আইপি] [প্রক্সি পোর্ট (Def: 2222)] [[অনুমোদিত হোস্ট]: [অনুমোদিত বন্দর] ...]

  -6 আইপিভি 6 ব্যবহার করুন  
  -v ডিবাগ আউটপুট দেখান (2 অবধি)  
  - সাহায্য প্রদর্শন করুন এবং প্রস্থান করুন  

উদাহরণ:  

    সার্ভার সাইডটি যে কারও প্রক্সিতে অনুমতি দেয়:
      ./pwnat -s

    Google.com:80 এ সংযোগ স্থাপন করতে ইচ্ছুক ক্লায়েন্ট:
      ./pwnat -c 8000 <pwnat.server.com> google.com 80
    তারপরে, গুগল দেখার জন্য http: // লোকালহোস্ট: 8000 এ ব্রাউজ করুন!  


pwnat;  নেটওয়ার্ক সিগন্যাল-প্রবাহ চার্ট


"সক্রিয় জন্য কী ধারণা সার্ভার থেকে ক্লায়েন্টের IP ঠিকানা শিখতে জন্য সার্ভার থেকে পর্যায়ক্রমে একটি নির্দিষ্ট, পরিচিত IP ঠিকানার একটি বার্তা পাঠান। সরলতম পদ্ধতির একটি সরাসরি ICMP ইকো রিকোয়েস্ট বার্তা ব্যবহার , অব্যবহৃত IP ঠিকানা 1.2.3.4 যেমন "যেহেতু 1.2.3.4 বরাদ্দ করা হয়নি, তাই আইসিএমপি রিকুয়েস্ট কোনও ডিফল্ট রুট ছাড়াই রাউটারগুলির দ্বারা চালিত হবে না। "

"বার্তা ফলে 1.2.3.4 পাঠানো হিসাবে, ন্যাট উত্তরগুলি রাউটিং, প্রতিক্রিয়ায় সক্ষম করবে এই অনুরোধটি করতে। সংযোগ ক্লায়েন্ট তারপর জাল এই ধরনের একটি উত্তর। হবে বিশেষ করে, ক্লায়েন্ট একটি ICMP বার্তা ইঙ্গিত প্রেরণ করা হবে TTL_EXPIRED। এই ধরনের কোনও ইন্টারনেট রাউটার বৈধভাবে বার্তা প্রেরণ করতে পারে এবং প্রেরকের ঠিকানাটি সার্ভারের লক্ষ্য আইপি-র সাথে মিলবে বলে আশা করা যায় না। "

" (জাল) সরাসরি ICMP উত্তরের জন্য সার্ভার শোনা এবং প্রাপ্তির উপর, প্রেরক আইপি করার জন্য একটি সংযোগ স্থাপন করা ICMP উত্তরে নির্দিষ্ট করা হয়েছে। ক্লায়েন্ট একটি বিশ্বব্যাপী routable IP ঠিকানা ব্যবহার হয়, তাহলে এই সম্পূর্ণভাবে unproblematic হয় এবং উভয় TCP অথবা UDP ব্যবহার করা যেতে পারে একটি দ্বি-মুখী সংযোগ স্থাপন করার যদি ক্লায়েন্ট শোনে একটি উপর প্রাক একমত বন্দর। "

"(পূর্ব-সম্মত বন্দর নেই এমন ক্ষেত্রে, একটি পোর্ট নম্বর বেশিরভাগ ক্ষেত্রে আইসিএমপি ইকো রেসপন্সের পে- লোডের অংশ হিসাবে যোগাযোগ করা যেতে পারে )"।


সূত্র: http://samy.pl/pwnat.pdf
https://github.com/samyk/pwnat


লোকালহোস্ট থেকে লোকালহোস্ট সংযোগের জন্য pwnat সবেমাত্র কার্যকরী। আমি কিছু প্যাকেট প্রেরণ ও গ্রহণ করতে পারি, তবে দৃ rob় সংযোগ স্থাপনের জন্য এটি খুব বেশি কার্যকর নয়।
স্কট

@ স্কট ওয়েল, এটি একটি আকর্ষণীয় হ্যাক, তবে এটি আইসিএমপি-এর মতো নেটওয়ার্ক প্রোটোকলের অপব্যবহার এবং অপব্যবহারের উপর ভিত্তি করে ধারণার প্রমাণ মাত্র। আমি এটির উপর নির্ভর করব না। এটি পুরানো এবং অবিস্মরণীয় এবং আমি এটি ব্যবহার করার পরামর্শ দেব না। এমনকি যদি প্রশ্নটি ইউডিপি হোলপঞ্চিংকে নির্দিষ্ট করে না দেয় তবে আমি এটি উল্লেখও করতাম না। আপনি যদি নির্ভরযোগ্য চান, একটি ভিপিএন টানেল হুক করুন।
ভয়েসেস

আমি অভিযোগ করছি না, তবে আমি মনে করি যে "এই সমাধান উত্পাদন পরিবেশে ব্যবহারের জন্য নয়" এখানে সম্ভাব্য স্থিতিশীল সমাধানের সন্ধানের জন্য যে কেউ এখানে আসবেন তাদের জন্য দরকারী তথ্য।
স্কট

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

দুটি NAT'd মেশিনকে লিঙ্ক করতে বিপরীত এসএসএস টানেল ব্যবহার করে আমার কাছে বর্তমানে কার্যক্ষম সমাধান। তবে এটির জন্য একটি "মিডলম্যান" মেশিনের প্রয়োজন রয়েছে যার হয় একটি স্ট্যাটিক আইপি থাকে বা যার জন্য আমি রাউটারে পোর্ট ফরওয়ার্ডিং কনফিগার করতে পারি। এটি আমাকে সেই মধ্যস্থতাকে কাটাতে সক্ষম করেছিল। আচ্ছা ভালো.
স্কট

1

কয়েকটি সমাধান এখানে দেওয়া হল:

কোনও ওপেনভিপিএন সার্ভারের সাথে ফিরে সংযোগ করতে আপনি আপনার রাস্পবেরি পাই সেটআপ করতে পারেন এবং সর্বদা আপনার এতে অ্যাক্সেস থাকবে।

আপনি পেজসাইটে একবার দেখে নিতে পারেন। পরীক্ষা করে দেখুন https://pagekite.net/wiki/Howto/SshOverPageKite/


এটি "ইউডিপি হোল-পাঞ্চিং" এর সাথে কীভাবে সম্পর্কিত ?
ভয়েসগুলি

0

এটি কিছুটা নোংরা তবে সহজ সমাধান, তবে নেটক্যাট ব্যবহারের কী হবে? রাস্পবেরি পাইতে আপনি একটি স্ক্রিপ্ট তৈরি করতে পারেন যা কমান্ডটি লুপ করে:

nc <public_ip> <port1> | sh | nc <public_ip> <port2>  

আপনার স্থানীয় হোস্টে, করুন:

nc -l <port1>

এবং:

nc -l <port2>  

আপনি প্রথম কমান্ডটি টাইপ করতে সক্ষম হবেন এবং দ্বিতীয়টিতে প্রতিক্রিয়াটি দেখতে পাবেন।


এটি "ইউডিপি হোল-পাঞ্চিং" এর সাথে কীভাবে সম্পর্কিত ?
ভয়েস

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