এটি এমন স্ট্যান্ডার্ড আচরণ যা অ-সুবিধাবঞ্চিত ব্যবহারকারীদের সুবিধামুক্ত বন্দরগুলিতে (1024 এর নীচে বন্দর নম্বর) আবদ্ধ করার অনুমতি নেই। সুতরাং একটি অ্যাপ্লিকেশন যা উদাহরণস্বরূপ 80 বন্দরটিতে বাঁধাই করতে চায় এই বন্দরে বাঁধার জন্য বিশেষত (সাধারণত এটি রুট হিসাবে চালানো মানে) চালাতে হবে।
একটি সাধারণ পদ্ধতি হ'ল সুবিধাযুক্ত ব্যবহারকারীর সাথে একটি ছোট "শ্রোতা" প্রক্রিয়া চালানো যা সংযোগটি গ্রহণ করে এবং তারপরে অনুরোধটি পরিচালনা করার জন্য একটি অননুমোদিত প্রক্রিয়া তৈরি করে। অনুরোধ প্রক্রিয়াজাতকরণের জন্য সুবিধাগুলি বাদ দেওয়া সুরক্ষা কারণে করা হয়। যদি কেউ অনুরোধটি পরিচালনা করে এমন প্রক্রিয়াটি কাজে লাগাতে সক্ষম হয়, তবে সাধারণত এটি কোনও অনুপ্রবেশকারীকে প্রক্রিয়াজাতকরণ প্রক্রিয়া হিসাবে একই সুবিধাগুলি ব্যবহার করে আদেশগুলি কার্যকর করতে অনুমতি দেয়। সুতরাং কোনও সুবিধাযুক্ত প্রক্রিয়া ব্যবহার করে পুরো অনুরোধটি পরিচালনা করা খারাপ হবে be
তবে অনেক অ্যাপ্লিকেশনের ক্ষেত্রে আজকাল অ-মূল হিসাবে চালানো প্রচলিত; তবে অবশ্যই এই জাতীয় প্রক্রিয়াগুলি স্ট্যান্ডার্ড কনফিগারেশনে সুবিধাভোগী বন্দরগুলিতে আবদ্ধ হতে পারে না। সুতরাং টমক্যাট বা জবস-এর মতো সার্ভারগুলি 8080 এর মতো উচ্চ-বন্দরগুলিতে আবদ্ধ থাকত যাতে তাদের কোনও সুবিধাযুক্ত শ্রোতার দরকার হয় না।
অবশ্যই আপনি যদি এই জাতীয় প্রক্রিয়াটি ইন্টারনেটে প্রকাশ করেন তবে আপনি সম্ভবত 80 বন্দরটিতে অ্যাক্সেস সরবরাহ করতে পারবেন কারণ এইচটিটিপি প্রোটোকল ব্যবহার করার সময় প্রতিটি ব্রাউজার প্রথমে পোর্ট 80-এ সংযোগ দেওয়ার চেষ্টা করবে। এটি সরবরাহ করার জন্য ডাব্লু সাধারণ কাজ হচ্ছে অ্যাপ্লিকেশন এবং পাবলিক ইন্টারনেটের মধ্যে ফায়ারওয়াল বা পোর্ট অনুবাদক ব্যবহার করা। সুতরাং অনুরোধগুলি ফায়ারওয়ালকে অনুরোধ করছে 80 বন্দরটির অনুরোধ করে তবে ফায়ারওয়াল 8080 বন্দরটিতে কিছু অভ্যন্তরীণ হোস্টের কাছে অনুরোধটি ফরোয়ার্ড করে publicly
- (internet request) ----> (port 80)[Firewall] ------> (port 8080)[Webserver]
কখনও কখনও এই পুনর্নির্দেশ সহজভাবে iptablesNAT নিয়ম ব্যবহার করে করা হয় :
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
এটি 8080 পোর্টে একটি অনিবদ্ধ অ্যাপ্লিকেশন শোনার অনুমতি দেয় যখন 80 পোর্টের জন্য সমস্ত আগত অনুরোধগুলি কেবল 8080 বন্দরটিতে পুনর্নির্দেশ করা হয়েছে।
তবে আধুনিক লিনাক্স কার্নেলগুলি ব্যবহার করার আরও একটি সম্ভাবনা রয়েছে: ক্ষমতা ব্যবহার করুন।
setcap CAP_NET_BIND_SERVICE=+ep /some/webserver/binary
এটি binaryরুটবিহীন ব্যবহারকারীদের থেকে শুরু করার পরেও সুবিধাভোগী বন্দরগুলিতে আবদ্ধ হওয়ার অনুমতি দেয় । দেখুন man capabilitiesআরো বিস্তারিত জানার জন্য।