আপডেট 2017:
CAP_NET_BIND_SERVICE বা একটি কাস্টম কার্নেলের চেয়ে অনেক বেশি ভাল।
জোশুয়ার কল্পিত (যেমন আপনি কী করবেন তা না জানলে প্রস্তাবিত নয়) অনুসরণ করে কার্নেলটি হ্যাক করার পরামর্শ দেওয়া হয়েছে:
আমি এখানে প্রথম পোস্ট করেছি ।
সহজ। একটি সাধারণ বা পুরানো কার্নেল সহ, আপনি না।
অন্যদের দ্বারা চিহ্নিত হিসাবে, iptables একটি বন্দর ফরওয়ার্ড করতে পারেন।
অন্যদের দ্বারা নির্দেশিত হিসাবে, CAP_NET_BIND_SERVICE এছাড়াও কাজটি করতে পারে।
অবশ্যই CAP_NET_BIND_SERVICE ব্যর্থ হবে যদি আপনি কোনও স্ক্রিপ্ট থেকে আপনার প্রোগ্রামটি চালু করেন, আপনি শেল ইন্টারপ্রেটারে ক্যাপটি সেট না করেন যা অর্থহীন, আপনি ঠিক তেমন আপনার পরিষেবাটি রুট হিসাবে চালাতে পারবেন ...
যেমন জাভার জন্য, আপনাকে এটি প্রয়োগ করতে হবে জাভা জেভিএম
sudo /sbin/setcap 'cap_net_bind_service=ep' /usr/lib/jvm/java-8-openjdk/jre/bin/java
স্পষ্টতই, এর অর্থ কোনও জাভা প্রোগ্রাম সিস্টেম বন্দরগুলিকে আবদ্ধ করতে পারে।
মনো / .NET এর জন্য ডিটো।
আমি আরও নিশ্চিত যে xinetd আইডিয়া সেরা না।
তবে যেহেতু উভয় পদ্ধতিই হ্যাক, কেবলমাত্র সীমাবদ্ধতা তুলে নিয়ে সীমাটি তোলেন না কেন?
কেউ আপনাকে বলেনি যে আপনাকে একটি সাধারণ কার্নেল চালাতে হবে, সুতরাং আপনি কেবল নিজের চালাতে পারেন।
আপনি কেবল সর্বশেষতম কার্নেলটির (বা আপনার কাছে বর্তমানে একই) উত্সটি ডাউনলোড করুন। এরপরে, আপনি এখানে যান:
/usr/src/linux-<version_number>/include/net/sock.h:
আপনি এই লাইন জন্য সন্ধান করুন
/* Sockets 0-1023 can't be bound to unless you are superuser */
#define PROT_SOCK 1024
এবং এটিকে পরিবর্তন করুন
#define PROT_SOCK 0
যদি আপনি কোনও সুরক্ষিত ssh পরিস্থিতি না পেতে চান তবে আপনি এটিতে এটি পরিবর্তন করুন: # নির্দিষ্ট করুন PROT_SOCK 24
সাধারণত, আমি আপনার প্রয়োজন সবচেয়ে কম সেটিংটি ব্যবহার করতাম, যেমন HTTP- র জন্য 79, বা 25 পোর্টে এসএমটিপি ব্যবহার করার সময় 24।
ইতিমধ্যে সব।
কার্নেলটি কম্পাইল করে ইনস্টল করুন।
পুনরায় বুট করুন।
সমাপ্ত - যে নির্বোধ সীমা GONE, এবং এটি স্ক্রিপ্টগুলির জন্যও কাজ করে।
আপনি কীভাবে কার্নেলটি সংকলন করছেন তা এখানে:
https://help.ubuntu.com/community/Kernel/Compile
# You can get the kernel-source via package linux-source, no manual download required
apt-get install linux-source fakeroot
mkdir ~/src
cd ~/src
tar xjvf /usr/src/linux-source-<version>.tar.bz2
cd linux-source-<version>
# Apply the changes to PROT_SOCK define in /include/net/sock.h
# Copy the kernel config file you are currently using
cp -vi /boot/config-`uname -r` .config
# Install ncurses libary, if you want to run menuconfig
apt-get install libncurses5 libncurses5-dev
# Run menuconfig (optional)
make menuconfig
# Define the number of threads you wanna use when compiling (should be <number CPU cores> - 1), e.g. for quad-core
export CONCURRENCY_LEVEL=3
# Now compile the custom kernel
fakeroot make-kpkg --initrd --append-to-version=custom kernel-image kernel-headers
# And wait a long long time
cd ..
সংক্ষেপে, আপনি সুরক্ষিত থাকতে চাইলে iptables ব্যবহার করুন, আপনি যদি নিশ্চিত হন যে এই বিধিনিষেধ আপনাকে আর বিরক্ত করবে না তখন কার্নেলটি সঙ্কলন করুন।