Foundationপ্রথম নীতি থেকে
LEVEL 10 · Computer Security

Linux Capabilities

লিনাক্স ক্যাপাবিলিটিজ

root-এর সর্বব্যাপী, all-or-nothing ক্ষমতাকে প্রায় ৪১টা স্বতন্ত্র, আলাদাভাবে গ্রহণযোগ্য bit-এ ভেঙে দেওয়ার kernel mechanism।

also: capabilities, capability, CAP_NET_BIND_SERVICE, capability bounding set

UID 0 (root)  -- ঐতিহ্যগত মডেল: ২টা রাজ্য (root / non-root)
capabilities  -- ২^৪১ টা সম্ভাব্য রাজ্য, প্রতিটা bit independently on/off
  • প্রতিটা privileged অপারেশনের নিজস্ব capable(CAP_XXX) চেক থাকে, শুধু UID==0 চেক না
  • পাঁচটা আলাদা সেট: permitted, effective, inheritable, bounding set, ambient — bounding set একটা কঠোর সিলিং
  • উদাহরণ: CAP_NET_BIND_SERVICE দিয়ে পুরো root ছাড়াই 1024-এর নিচের port bind করা যায়
  • Docker ডিফল্টভাবে bounding set ~১৪টা capability-তে নামিয়ে রাখে, CAP_SYS_ADMIN/CAP_SYS_MODULE-এর মতো শক্তিশালী bit বাদ দিয়ে