কোন সম্পর্কের ফলে কোনও ফাইলের এসিএল মাস্ক এবং স্ট্যান্ডার্ড গোষ্ঠী অনুমতি রয়েছে?


17

প্রথমে আমি একটি ফাইল তৈরি করি এবং এটি স্ট্যান্ডার্ড অনুমতি এবং এসিএল এন্ট্রিগুলি যাচাই করি:

$ touch file; ls -l file; getfacl file
-rw-r--r-- 1 user user 0 Jul 30 16:26 file
# file: file
# owner: user
# group: user
user::rw-
group::r--
other::r--

তারপরে আমি ফাইলে এসিএল মাস্ক সেট করে আবার এটির স্ট্যান্ডার্ড অনুমতি এবং এসিএল এন্ট্রি পরীক্ষা করে দেখি:

$ setfacl -m mask:rwx file
$ ls -l file; getfacl file
-rw-rwxr--+ 1 user user 0 Jul 30 16:26 file
# file: file
# owner: user
# group: user
user::rw-
group::r--
mask::rwx
other::r--

নোট করুন যে ফাইলের সাথে ACL মাস্কের স্ট্যান্ডার্ড গ্রুপের অনুমতিও পরিবর্তিত হয়েছে।

  1. এসিএল মাস্ক এবং স্ট্যান্ডার্ড গ্রুপ অনুমতিের মধ্যে কী সংযোগ রয়েছে?
  2. এসিএল মাস্ক এবং ফাইল গ্রুপের অনুমতিগুলি সংযুক্ত করার কারণ কী? এর পিছনে কোন যুক্তি রয়েছে?

প্রশ্নে বিতরণগুলি হ'ল ডেবিয়ান লিনাক্স .6..6 এবং সেন্টস 7


সম্পাদনা

এই মুহুর্তে আমি স্ট্যান্ডার্ড ফাইল গ্রুপ অনুমতি এবং এসিএল মুখোশের মধ্যে সম্পর্ক নিয়ে গবেষণা করার সময় আমি আমার কিছু অনুসন্ধানগুলি ভাগ করতে চেয়েছিলাম। আমি খুঁজে পাওয়া অভিজ্ঞতা অভিজ্ঞতা আছে:

  1. এসিএল মুখোশ পরিবর্তন করা যেতে পারে:

    1. setfacl -m m:<perms>কমান্ড দিয়ে সরাসরি এটি সেট করে ;
    2. chmodকমান্ডের সাথে ফাইল গ্রুপের অনুমতিগুলি পরিবর্তন করে (যদি এসিএল মাস্কটি ইতিমধ্যে উপস্থিত থাকে; এটি উপস্থিত নাও হতে পারে কারণ ফাইলটিতে নামী ব্যবহারকারী বা গ্রুপ এসিএল অনুমতি না থাকলে এটি optionচ্ছিক);
    3. নামযুক্ত ব্যবহারকারী বা গ্রুপ এসিএল এন্ট্রি যুক্ত করে (মুখোশটি স্বয়ংক্রিয়ভাবে পুনরায় গণনা করা হবে)।
  2. মাস্কটি সর্বাধিক অ্যাক্সেসের অধিকারগুলি প্রয়োগ করে (এসিএল মুখোশের অনুমতিগুলি ছাড়িয়ে এমন অনুমতি সহ এসিএল এন্ট্রি থাকলে) কেবলমাত্র মুখোশটি সেটফ্যাকলের মাধ্যমে বা chmod (ফাইলের স্বয়ংক্রিয় গণনা নয়) দ্বারা ফাইল গ্রুপের অনুমতি সংশোধন করার মাধ্যমে সেট করা থাকে। এসিএল এন্ট্রিগুলিতে যে কোনও পরিবর্তন এসিএল মাস্কটি স্বয়ংক্রিয় পুনঃ গণনাকে ট্রিগার করবে এবং কার্যকরভাবে "বল প্রয়োগকারী মোড" বন্ধ করবে।

  3. এসিএলগুলি ব্যবহার করার সময় স্ট্যান্ডার্ড ফাইল গ্রুপের অনুমতিগুলিকে স্পষ্টভাবে প্রভাবিত করছে এমন কয়েকটি পার্শ্ব প্রতিক্রিয়া রয়েছে:

    1. কোনও ফাইলের জন্য প্রয়োগ করা নামযুক্ত ব্যবহারকারী বা গ্রুপ এসিএল এন্ট্রি এসিএল মাস্কটি পরিবর্তন করতে পারে (এর অনুমতিগুলি বাড়িয়ে তুলতে পারে) এবং ফলস্বরূপ কার্যকর ফাইল গ্রুপের অনুমতিগুলি। উদাহরণস্বরূপ, যদি আপনি কোনও ফাইলের মালিক হিসাবে "rw-r - r-- জিম ছাত্রদের" এর উপর অনুমতি স্থাপন করেন এবং আপনি "জ্যাক" ব্যবহারকারীর কাছে আরডাব্লু অনুমতি প্রদান করেন তবে আপনি স্পষ্টতই যে কাউকে আরডব্লিউ অনুমতি মঞ্জুর করবেন "ছাত্র" গ্রুপ থেকে।
    2. কঠোর (কম অনুমতি) এসিএল মাস্ক স্থায়ীভাবে সম্পর্কিত স্ট্যান্ডার্ড ফাইল গোষ্ঠী অনুমতিগুলি অপসারণ করতে পারে। উদাহরণস্বরূপ, যদি আপনার কাছে আরডাব্লু স্ট্যান্ডার্ড ফাইল গোষ্ঠী অনুমতিগুলির সাথে কোনও ফাইল থাকে এবং আপনি যে গ্রুপের অনুমতি রয়েছে সে ফাইলটিতে কেবল একটি পঠনযোগ্য এসিএল মাস্ক প্রয়োগ করেন তবে কেবল পঠনযোগ্যই হ্রাস পাবে। তারপরে আপনি যদি সমস্ত বর্ধিত এসিএল এন্ট্রি ( setfacl -bকমান্ড সহ) সরিয়ে ফেলেন তবে গোষ্ঠী অনুমতিগুলি কেবল পঠনযোগ্য থাকবে। এটি কেবল কঠোর এসিএল মাস্কের ক্ষেত্রেই প্রযোজ্য, নরম এসিএল মাস্ক (আরও অনুমতি) মুছে ফেলার পরে মূল ফাইল গ্রুপের অনুমতি স্থায়ীভাবে পরিবর্তন করবেন না।

আমি মনে করি আপনি নীচের পৃষ্ঠাটি রেফারেন্সের জন্য নিতে পারেন, www-uxsup.csx.cam.ac.uk/pub/doc/suse/sles9/adminguide-sles9/…
কুন্ডি

উত্তর:


11

ইউনিক্স ফাইলের অনুমতিগুলি এসিএল প্রবেশের সাথে দ্বিধাদ্বন্ধ করে এবং এর বিপরীতে কোনও অর্থ হয় না। তদনুসারে, ম্যানুয়াল পৃষ্ঠা ( acl(5)) আপনি যা চাইবেন তা বলে:

এসিএল এন্ট্রি এবং ফাইলের পার্মিশন বিটের বিপরীতে কার্যনির্বাহী

এসিএল দ্বারা সংজ্ঞায়িত অনুমতিগুলি ফাইল অনুমতি বিট দ্বারা নির্দিষ্ট করা অনুমতিগুলির একটি সুপারসেট।

ফাইলের মালিক, গোষ্ঠী এবং অন্যান্য অনুমতি এবং নির্দিষ্ট এসিএল এন্ট্রিগুলির মধ্যে একটি চিঠিপত্র রয়েছে: মালিকের অনুমতিগুলি ACL_USER_OBJ প্রবেশের অনুমতিের সাথে মিলে যায়। যদি ACL এর ACL_MASK এন্ট্রি থাকে তবে গ্রুপ অনুমতিগুলি ACL_MASK প্রবেশের অনুমতিের সাথে মিলে যায়। অন্যথায়, যদি এসিএলটির কোনও এসিএল_এমএএসকে প্রবেশ নেই, গ্রুপ অনুমতিগুলি এসিএল_গ্রোপ_ওবিজে প্রবেশের অনুমতিগুলির সাথে সামঞ্জস্য। অন্যান্য অনুমতিগুলি ACL_OTHER_OBJ প্রবেশের অনুমতিের সাথে মিলে যায়।

ফাইলের মালিক, গোষ্ঠী এবং অন্যান্য অনুমতিগুলি সর্বদা সংশ্লিষ্ট এসিএল প্রবেশের অনুমতিগুলির সাথে মেলে। ফাইলের অনুমতি বিটগুলির সংশোধন সম্পর্কিত এসিএল এন্ট্রিগুলির সংশোধন এবং এই এসিএল এন্ট্রিগুলির পরিবর্তনের ফলে ফাইল অনুমতি বিটের পরিবর্তন ঘটে।

আলোচনার জবাবে সংযোজন:

এসিএল মাস্ক এবং ফাইল গ্রুপের অনুমতিগুলি সংযুক্ত করার কারণ কী? এর পিছনে কোন যুক্তি রয়েছে?

একটি ভাল ব্যাখ্যা এখানে । মূলত মুখোশটি হ'ল একটি

[...] গ্রুপ শ্রেণিতে যে কোনও প্রবেশিকা মঞ্জুরি দেবে এমন অনুমতিগুলির উপরের সীমানা।

এই উপরের গতির সম্পত্তিটি নিশ্চিত করে যে এসিএলগুলি সম্পর্কে অজানা POSIX.1 অ্যাপ্লিকেশনগুলি হঠাৎ এবং অপ্রত্যাশিতভাবে এসিএল সমর্থিত হওয়ার পরে অতিরিক্ত অনুমতি প্রদান শুরু করবে না।

ন্যূনতম এসিএলগুলিতে, গ্রুপ শ্রেণীর অনুমতিগুলি মালিকানাধীন গ্রুপের অনুমতিগুলির মতো। বর্ধিত এসিএলগুলিতে, গ্রুপ শ্রেণিতে অতিরিক্ত ব্যবহারকারী বা গোষ্ঠীগুলির জন্য এন্ট্রি থাকতে পারে। এটি একটি সমস্যার ফলস্বরূপ: এই অতিরিক্ত কিছু এন্ট্রিগুলির মধ্যে এমন কিছু অনুমতি থাকতে পারে যা মালিকানাধীন গোষ্ঠী এন্ট্রিতে অন্তর্ভুক্ত থাকে না, সুতরাং মালিকানাধীন গ্রুপ এন্ট্রি অনুমতিগুলি গ্রুপ শ্রেণীর অনুমতি থেকে পৃথক হতে পারে।

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


আপনি যা বলছেন তা নিম্নলিখিত getfacl আউটপুটটিতে প্রযোজ্য: ব্যবহারকারী :: rw- গোষ্ঠী :: r-- অন্যান্য :: r-- । এই 3 টি লাইন পরিবর্তিত হবে যদি আপনি chmodস্ট্যান্ডার্ড অনুমতিগুলি পরিবর্তনের জন্য কমান্ড ব্যবহার করেন এবং বিপরীতভাবে যখন আপনি কার্যকর করেন, বলুন getfacl -m u:someuser:rwx, ফাইলের মালিকের জন্য স্ট্যান্ডার্ড ফাইলের অনুমতি পরিবর্তন হবে এবং ls -lআউটপুটে পরিবর্তনটি প্রতিফলিত হবে । এটি সমস্ত সত্য, তবে আমি দেখতে পাচ্ছি না এটি কীভাবে আমার প্রশ্নের উত্তর দেয়
Golem

পুরো গল্পের জন্য আমার সম্পাদনাটি দেখুন
কাউন্টারমোড

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

1
জ্ঞান থাকতে পারে। এটি সংজ্ঞা এবং বাস্তবায়নের উপর নির্ভর করে। সংজ্ঞা অনুসারে লিনাক্স ফাইল এসিএল, এটি এখন যেমন বাস্তবায়িত হয়, এটি স্ট্যান্ডার্ড ফাইল অনুমতিগুলির একটি সুপারসেট, যাতে সেগুলি অন্তর্ভুক্ত থাকে। সুতরাং তারা "বিরোধিতা" করতে পারে না। এখানে একটি ব্যবহারের কেস দেওয়া আছে। আমি যদি প্রাথমিক -rw-r--r-- 1 user userঅনুমতি নিয়ে ফাইলটির জন্য "পরীক্ষক" -এ rwx অনুমতিগুলি অর্পণ করি তবে সেই নামকৃত ব্যবহারকারী এসিএল গ্রহণ করা হবে এবং এসিএল মুখোশটি (ফাইল গ্রুপের অনুমতি সহ )ও rwx এ পরিবর্তিত হবে। --- [ধারাবাহিকতা হিসাবে পরবর্তী মন্তব্য দেখুন]
Golem

1
এখন "পরীক্ষক" এর rwx অনুমতিগুলি ফাইলের নতুন -rw-rwxr-- 1 user userঅনুমতিগুলির সাথে বিরোধিতা করে নাকি? কীভাবে বৈপরীত্য নির্ধারণ করবেন? পরীক্ষার্থীর এসিএল অনুমতিগুলি স্ট্যান্ডার্ড ফাইল গ্রুপ অনুমতির সাথে তুলনা করে? কোন যুক্তি আপনাকে গ্রাহকের অনুমতিগুলি ব্যবহারকারীর অনুমতিগুলির সাথে তুলনা করতে পরিচালিত করেছিল? এগুলি কি আলাদা আলাদা সত্ত্বা নয়? এটা কি পাল্টা নয়? এটি সম্ভবত আপনার পক্ষে সুস্পষ্ট তবে আমি এখনও এটি ধরার জন্য সংগ্রাম করছি।
Golem

3

আমি এই লিঙ্কটি হ্যান্ডলিং এসিএলগুলি দেখলে অবশেষে বুঝতে পারি যে ঠিক কী ঘটছে

বিশেষত, সেই মুখোশগুলি মূলত NAMED ব্যবহারকারী এবং সমস্ত GROUP অনুমতিগুলি প্রতিস্থাপনের জন্য ফাংশন করে। এর অর্থ যদি আপনি:

  1. মাস্ক সামঞ্জস্য করুন, আপনি গ্রুপ সর্বাধিক অনুমতি পরিবর্তন করুন,
  2. আপনি যদি কোনও মাস্ক উপস্থিতের সাথে গ্রুপের অনুমতিগুলির মধ্যে কোনওটি পরিবর্তন করেন তবে মুখোশটি সমস্ত গোষ্ঠী অনুমতিগুলির সর্বাধিক গ্রুপের অনুমতি নেয়
  3. গোষ্ঠী পড়ুন, লিখুন এবং সম্পাদনের অনুমতিগুলি যদি উপস্থিত থাকে তবে মুখোশের উপর ভিত্তি করে নির্ধারিত হয়

এখানে চিত্র বর্ণনা লিখুন

আশা করি এটি সাহায্য করবে।


আপনার উল্লিখিত পৃষ্ঠায় মাস্কটির খুব সুন্দর ব্যাখ্যা রয়েছে (বিভাগ 27.3.3 থেকে উদ্ধৃতি । অ্যাকসেস এসিএল সহ একটি ডিরেক্টরি ): মুখোশ গ্রুপ শ্রেণিতে সমস্ত প্রবেশের জন্য সর্বাধিক কার্যকর অ্যাক্সেস অনুমতিগুলি সংজ্ঞায়িত করে। এর মধ্যে নামযুক্ত ব্যবহারকারী, নামী গোষ্ঠী এবং নিজস্ব গোষ্ঠী অন্তর্ভুক্ত রয়েছে।
patryk.beza

-1

এর পিছনে কোন যুক্তি রয়েছে?

যুক্তি সম্পূর্ণরূপে নষ্ট হয়ে গেছে এবং এভাবে পসিক্স এসিএলগুলি খাঁটি এবং অকেজো বোকা।

যদি তারা স্ট্যান্ডার্ড আদিম UNIX '"ugo" মডেল ব্যতীত এসিএলগুলির ধারণা না থাকা অ্যাপ্লিকেশনের সাথে সামঞ্জস্যতা রক্ষার লক্ষ্য রাখে , তারা আসলে শুরুতেই ব্যর্থ হয়েছিল কারণ এখন গ্রুপের অনুমতি সাফ করা প্রতিটি অ্যাপ্লিকেশন কার্যকরভাবে এসিএল দ্বারা যুক্ত অ্যাক্সেস প্রত্যাহার করছে।

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