ঠিক আছে, উইকিপিডিয়া এবং netcat
ডকুমেন্টেশনে যেমন নথিভুক্ত করা হয়েছে , এমন একটি -e
বিকল্প রয়েছে যা এটি সংযোগ প্রাপ্তির পরে প্রোগ্রামকে স্প্যান ( ই xecute) করে, সকেটটি স্টিডিন, স্টাডআউট এবং প্রক্রিয়াটির স্টাডারের সাথে সংযুক্ত করে causes ব্যবহারের উদাহরণ:
nc -l -p
পোর্ট_ সংখ্যা -e
প্রোগ্রাম_নাম
উদাহরণ সাধারণভাবে দেন /bin/sh
বা bash
হিসাবে ব্যবহার করা হচ্ছে program_name । এই বিকল্পটির ব্যবহার নিরুৎসাহিত করা হয়েছে কারণ এটি মূলত আপনার মেশিনে একটি বেনাম, পাসওয়ার্ডহীন অ্যাক্সেস পোর্টাল খোলে। অবশ্যই, এটি শেলটির চেয়ে কম শক্তি সহ একটি প্রোগ্রাম ব্যবহার করে (এটির শেল থেকে পালানোর ক্ষমতা নেই এমন একটি) ব্যবহার করে আপনার প্রশমিত করা যায়, এটি আপনার ব্যবহারকে হ্রাস করে এবং একটি গোপন রেখে। যাইহোক, মূল বিকাশকারীদের netcat
দৃ of়ভাবে যথেষ্ট অনুভূত হয়েছিল যে এই বিকল্পটি একটি খারাপ ধারণা যা তারা এটি ডিফল্টরূপে অক্ষম করে এবং "GAPING_SECURITY_HOLE" সংকলন বিকল্পের অধীনে শর্তযুক্ত করে। এই নেটগেট টিউটোরিয়াল এবং অন্যান্য netcat
ডকুমেন্টেশনে এটি সংক্ষেপে উল্লেখ করা হয়েছে ।
একটি গুগল অনুসন্ধান আমাকে অন্যান্য স্ট্যাক এক্সচেঞ্জ সাইটে এই বিষয়টির আলোচনার দিকে পরিচালিত করেছিল: স্ট্যাক ওভারফ্লো এবং সার্ভার ফল্ট । একাধিক অবদানকারী ব্যবহার না করেই একই জিনিস করে নিম্নলিখিত কৌশল প্রদত্ত -e
বিকল্প (অর্থাত একটি সংস্করণ এ, netcat
যে হয়েছে -e
বিকল্প অক্ষম):
সার্ভারে:
mkfifo
পাইপ_নামের
nc -l -p
পোর্ট_ <
নাম্বার |
পাইপ_নাম >
প্রোগ্রাম_নাম পাইপ_নাম
ক্লায়েন্টে:
nc
সার্ভার_ম্যাচাইন_নাম
পোর্ট_নম্বার
কয়েকটি নোট:
- কিছু সংস্করণগুলিতে
netcat
, -l
বোঝা -p
, তাই আপনি শুধু বলতে হবে -l
এবং তারপর পোর্ট নম্বর।
- আপনি নিজের সমাধানটি একটি
while true
লুপে মুড়তে চাইতে পারেন ।