লিনাক্স অনুমতিতে "অন্যরা" কারা, এবং "মৃত্যুদন্ড কার্যকর" বলতে কী বোঝায়?


13

এই তিনটি প্রশ্নের উত্তর আমি খুঁজে পাইনি:

  • "অন্যরা" কে, যদি আমরা আমাদের সার্ভারে সমস্ত পরিষেবা ব্যবহারকারীকে দিয়ে থাকি তবে "অন্যরা" ঠিকই বিদ্যমান না? উদাহরণস্বরূপ, যদি আমরা কোনও ব্যবহারকারীর কাছে অ্যাপাচি রাখি এবং আমরা /var/wwwএটির উপরে চাপিয়ে দিয়েছি apacheএবং আমরা প্রবেশ chmod 700করি তবে এটি ঠিক কাজ করা উচিত?

  • "এক্সিকিউট" এবং "রিড" এর মধ্যে পার্থক্য কী?

  • ক্লিন ইনস্টল করার পরে পুরো সিস্টেমের জন্য ডিফল্ট ফাইল অনুমতিগুলি কী (উদাহরণস্বরূপ উবুন্টুতে)?

উত্তর:


16

"অন্যরা" কে, যদি আমরা আমাদের সার্ভারে সমস্ত পরিষেবা ব্যবহারকারীকে দিয়ে থাকি তবে "অন্যরা" ঠিকই বিদ্যমান না? উদাহরণস্বরূপ, যদি আমরা কোনও ব্যবহারকারীর কাছে অ্যাপাচি রাখি এবং আমরা /var/wwwএটির উপরে চাপিয়ে দিয়েছি apacheএবং আমরা প্রবেশ chmod 700করি তবে এটি ঠিক কাজ করা উচিত?

অনুমতিগুলি কীভাবে কাজ করে তা এখানে খুব সংক্ষিপ্তভাবে ব্যাখ্যা করা হয়েছে:

  • প্রথম সংখ্যা একটি ফাইল প্রকৃত মালিকের জন্য আছে (পরীক্ষা যারা সহ একটি ফাইল মালিক এর ls -lসাথে এটি পরিবর্তন chown)

  • দ্বিতীয় অঙ্ক ফাইলের দলের জন্য আছে (যদিও ফাইলের মালিক অগত্যা একই গ্রুপের যে ফাইল মালিক হতে না)

  • তৃতীয় অঙ্ক অন্য কেউ, যার অর্থ হল না ফাইল মালিক এবং দলের সকলেই।

সুতরাং যদি আপনি chmod700 এ ফাইল করেন এবং এটির মালিকানা থাকে apache, এমনকি আপনার "সাধারণ" ব্যবহারকারী এটি পড়তে, লিখতে বা চালাতে সক্ষম হবেন না। এটি অত্যন্ত সীমাবদ্ধ এবং কেবল বিরল অনুষ্ঠানে প্রয়োজন - উদাহরণস্বরূপ, আপনি যখন নিজের এসএসএইচ প্রাইভেট কীটি সুরক্ষিত করতে চান, তখন এটির 600অনুমতি পাওয়া যায়। অ্যাপাচি-র ক্ষেত্রে এটির ফলে অন্যান্য সমস্যাও হতে পারে, আপনার সাধারণ ব্যবহারকারীর অ্যাকাউন্ট ছাড়াও আপনি /var/wwwআর কোনও ফাইল সম্পাদনা করতে পারবেন না।

সুতরাং, সাধারণভাবে বলতে গেলে, আপনার x00অন্যের জন্য পড়ার অনুমতিগুলি ( ) সরাতে হবে না ।

আপনি ডিরেক্টরিটির apacheমালিকানা পেতে পারেন /var/www, তবে 644(অন্যদের জন্য কেবল পঠনযোগ্য) দিয়ে with আরেকটি পন্থা আমি প্রায়ই ব্যবহার আপনার নিজের ব্যবহারকারী যোগ করা হয় এবং একটি নতুন এ্যাপাচি ব্যবহারকারী www-usersগ্রুপ, এবং তারপর ফাইল chmodding /var/wwwকরতে 775। এইভাবে, আপনি এবং আপাচে উভয়ই ফাইলগুলিতে লিখতে পারেন। আরও তথ্যের জন্য এখানে দেখুন: অ্যাপাচি জন্য গ্রুপ অনুমতি


"এক্সিকিউট" এবং "রিড" এর মধ্যে পার্থক্য কী?

এক্সিকিউটেবল ফাইলগুলি সরাসরি কোনও ব্যবহারকারী দ্বারা চালানো যায় - শেল থেকে সরাসরি। এটি প্রদর্শনের জন্য, আসুন একটি ছোট ফাইল লিখি এবং এটিকে "পরীক্ষা" বলি। নিম্নলিখিত সামগ্রী যুক্ত করুন:

echo "I am executable"

ফাইলটি সংরক্ষণ করুন। এখন, আপনার শেলটিতে, প্রবেশ করার চেষ্টা করুন ./test। আপনি একটি " -বাশ:। / টেস্ট: অনুমতি অস্বীকার " ত্রুটি পাবেন। এটি কারণ ডিফল্টরূপে, নতুন তৈরি করা ফাইলগুলি কার্যকর করার অনুমতি বহন করে না। আপনি যদি নির্বাহের অনুমতি যুক্ত করেন তবে এটি কার্যকর হবে।

$ chmod +x test
$ ./test
I am executable

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

এগুলি উদাহরণস্বরূপ সিস্টেম প্রোগ্রামগুলি বেশিরভাগ ক্ষেত্রে পাওয়া যায় /binls -l /binতাদের অনুমতিগুলি পরিদর্শন করতে চালান । আপনি দেখতে পাচ্ছেন যে এগুলির মালিকানা রয়েছে rootএবং আপনি এগুলি পরিবর্তন করতে পারবেন না তবে আপনি সর্বদা তাদের সম্পাদন করতে পারেন।

সুতরাং, এটি কিছুটা সুরক্ষা বৈশিষ্ট্যও যেহেতু আপনি কিছু ব্যবহারকারীর জন্য নির্দিষ্ট স্ক্রিপ্ট এবং বাইনারিগুলি নিষিদ্ধ করতে পারেন।

ইউনিক্স অনুমতি সম্পর্কে আরও জানতে, উইকিপিডিয়া নিবন্ধটি পড়ুন । "রিড-রাইটিং-এক্সিকিউট" হিসাবে আপনি যে প্রাথমিক অনুমতিগুলি জানেন তা প্রায় দীর্ঘকাল ধরে চলেছিল তবে আপনি অ্যাক্সেস কন্ট্রোল তালিকাগুলির কলহের অংশ মাত্র which যা এর চেয়ে আরও বেশি কার্যকারিতা সরবরাহ করে।


ক্লিন ইনস্টল করার পরে পুরো সিস্টেমের জন্য ডিফল্ট ফাইল অনুমতিগুলি কী (উদাহরণস্বরূপ উবুন্টুতে)?

ডিরেক্টরি এবং মালিক অনুসারে এগুলি পরিবর্তিত হয়। কিছু ফাইল এবং ডিরেক্টরিগুলি সিস্টেম-সংরক্ষিত এবং এর মালিকানাধীন root। বেশিরভাগ ক্ষেত্রে, আপনি তবে এগুলি আপনার সাধারণ ব্যবহারকারী অ্যাকাউন্টের সাথে পড়তে সক্ষম হবেন।

আপনার হোম ফোল্ডারের মতো অন্যান্য ডিরেক্টরি অবশ্যই আপনার ব্যবহারকারীর অন্তর্ভুক্ত। কোনও মেশিনে অন্য ব্যবহারকারীর কাছে এটি যদি একাধিক ব্যক্তির মধ্যে ভাগ করা হয় তবে সেগুলি পড়ার অনুমতিগুলি অস্বীকার করা বুদ্ধিমান হতে পারে - সর্বোপরি, আপনি চান না যে আপনার ব্যক্তিগত জিনিসগুলি উন্মুক্ত হোক।

শেষ অবধি, কিছু ফাইল ডিফল্টরূপে নির্বাহযোগ্য (যেমন /bin:), তবে অন্যগুলি হয় না (যেমন কনফিগারেশন ফাইলগুলি /etc)।

ফাইলসিস্টেম শ্রেণীক্রম স্ট্যান্ডার্ড লিনাক্স অপারেটিং সিস্টেমে পাওয়া ডিরেক্টরি জন্য দেয়ার উদ্দেশ্যে করা ব্যবহার নির্দিষ্ট করে। আপনি ডিরেক্টরিটির সাথে কী করতে চান তার ভিত্তিতে অনুমতিগুলি কী হওয়া উচিত তা আপনি প্রায় "অনুমান" করতে পারেন।


ধন্যবাদ আপনি সত্যিই আমাকে অনেক সাহায্য করেছেন! আমি আপনাকে যথেষ্ট ধন্যবাদ জানাতে পারি না, আরও একটি প্রশ্ন, উদাহরণস্বরূপ, "ফাইল" এবং "এক্সিকিউটেবল" এর মধ্যে রেখাটি কোথায় আছে পিএইচপি ফাইলগুলি অ্যাপাচি দ্বারা সম্পাদিত বা পড়া হয়? আবার অনেক ধন্যবাদ!
এলোমেলো কেক

.phpফাইলগুলি সাধারণত কার্যকর হয় না। এগুলি কেবল সাধারণভাবে বলা হচ্ছে, কেবলমাত্র আপনি অ্যাপাচি দ্বারা পড়া যখন উদাহরণস্বরূপ আপনি যখন আপনার ব্রাউজারটি http://example.com/file.phpদেখায় আপাচি আউটপুট প্রদর্শন করতে সক্ষম হয় সেগুলি আপনার পিএইচপি ইনস্টলেশন দ্বারা ব্যাখ্যা করা দরকার, তবে অ্যাপাচি সেটির যত্ন নেয়। আপনি তাত্ত্বিকভাবে একটি পিএইচপি ফাইলকে এক্সিকিউটেবল করতে পারেন এবং এটি স্ক্রিপ্টের মতো চালাতে পারেন - একইভাবে শিরাতে যেমন আমরা আমাদের testফাইলটি দিয়েছিলাম তবে এটি খুব কমই ব্যবহৃত হয়।
শে 12

5

কেবলমাত্র যুক্ত করতে চাই যে এক্সিকিউট করার অনুমতিটির ডিরেক্টরিগুলির বিভিন্ন কার্যকর অর্থ রয়েছে:

জন্য ফাইল :

  • পড়ুন: ফাইলের বিষয়বস্তু পড়তে পারলে
  • লিখুন: যদি ব্যবহারকারী বা প্রক্রিয়া ফাইলটিতে লিখতে পারেন (এর বিষয়বস্তু পরিবর্তন করুন)
  • এক্সিকিউট: যদি ফাইলটি কার্যকর করা যায়

জন্য ফোল্ডার :

  • পড়ুন: ডিরেক্টরি তালিকা যদি প্রাপ্ত করা যায়
  • লিখুন: ব্যবহারকারী বা প্রক্রিয়া যদি কোনওভাবে ডিরেক্টরি বিষয়বস্তু পরিবর্তন করতে পারে: ডিরেক্টরিতে নতুন ফাইল তৈরি বা মুছুন বা ফাইলগুলির নাম পরিবর্তন করুন name
  • সম্পাদন করুন: যদি ব্যবহারকারী বা প্রক্রিয়া ডিরেক্টরিটি অ্যাক্সেস করতে পারে তবে এটিতে যান (এটি বর্তমান কার্যক্ষম ডিরেক্টরি হিসাবে তৈরি করুন)

না, ডিরেক্টরিগুলির জন্য আলাদা আলাদা মোছার অনুমতি নেই।

(এই তথ্য এখানে পেয়েছেন ।)


0

আমি লিনাক্স বিশেষজ্ঞ নই, তবুও আমি উত্তর দেওয়ার চেষ্টা করি।

প্রতিটি ফাইল সিস্টেম এন্ট্রি একটি সম্পর্কিত ব্যবহারকারী এবং গ্রুপ রয়েছে। ব্যবহারকারীর অনুমতিগুলি "ব্যবহারকারী" পতাকা দ্বারা পরিচালিত হয়। একই গোষ্ঠীর অংশ থাকা ব্যবহারকারীদের ব্যবহারকারীর অনুমতিগুলি "গ্রুপ" পতাকা দ্বারা পরিচালিত হয়। অন্যান্য সমস্ত ব্যবহারকারী "অন্যদের" পতাকা দ্বারা পরিচালিত হয়।

"পড়া" এর অর্থ যা বোঝায়। "এক্সিকিউট" এর অর্থ আপনি ফাইলটি (যেমন একটি কমান্ড) চালু করতে পারেন বা ডিরেক্টরিটি তালিকাভুক্ত করতে পারেন।

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


0

কমপক্ষে, আপনাকে প্রশ্নের 2 টির একটি সুনির্দিষ্ট উত্তর দেওয়ার জন্য, এখানে আপনি কী কী / করতে পারবেন না তা দেখানোর জন্য একটি সংক্ষিপ্ত-সারণি এখানে দেওয়া হয়েছে:

+--------------------------------------------------+
| Execute Yes (./file.sh) | Read Yes (vim file.sh) |
|--------------------------------------------------|
| Execute Yes (./file.sh) | Read No (ERROR)        |
|--------------------------------------------------|
| Execute No (ERROR)      | Read Yes (vim file.sh) |
|--------------------------------------------------|
| Execute No (ERROR)      | Read No (ERROR)        |
+--------------------------------------------------+

সবচেয়ে গুরুত্বপূর্ণ যেটি মনে রাখতে হবে তা হ'ল এটি হল যে এটি ব্যবহারকারীর পঠন ফাইলটি মেমরির মধ্যে চালিত করার জন্য নয়, এটি ব্যবহারকারীর পক্ষে কর্নেল করছে।


0

আপনি অন্য সকলকে বাদ দিতে চাইলে এটি জটিল হতে পারে। আমার / ইত্যাদি / পাসডাব্লুডি ফাইল থেকে এই তালিকাটি দেখুন (অনুমতি এবং স্পষ্টতার জন্য কী সরানো হয়নি):

রুট ডিমন বিন সিঙ্ক সিঙ্ক গেমস ম্যান এলপি মেইল ​​নিউজ ইউকিপ প্রক্সি www-ডেটা ব্যাকআপ লিস্ট আইরিচ গ্যানটস সাইজলগ মেসেজবস ইউএসএমএক্স হ্যালডেমনের কেউ নেই

একটি {এটি আমি, এবং নীচে আমি ইনস্টল করা জিনিসগুলি এখানে দিচ্ছি, সর্বোপরি সিস্টেমটি নিয়ে}

আভা মাইএসকিএল ডাল আরটিকিট সানড টিমডিটি দিদিউইকি

সুতরাং উদাহরণস্বরূপ, lp বা uucp থেকে অনুমতিগুলি সরিয়ে ফেলুন এবং আপনি মুদ্রণটি ভাঙ্গবেন। বিন, সিস্ট, বা ডিমন থেকে অনুমতি সরিয়ে ফেলুন এবং সম্ভবত প্রচুর স্টাফ ভেঙে যাবে। irc, গেমস, মেল, সংবাদ, এবং ব্যাকআপ সম্ভবত নিরাপদে মুছে ফেলা হতে পারে (যদি না আপনি এটি ব্রাউজার হিসাবে না সিস্টেমের মাধ্যমে ব্যবহার করছেন)। বাকি আমি আপনার অনুসন্ধান ইঞ্জিন দক্ষতা ছেড়ে।

এটি যদিও উবুন্টু / বোধি লিনাক্স এবং অন্যান্য সিস্টেমে অতিরিক্ত অতিরিক্ত থাকতে পারে। এই সমস্ত অন্যগুলি হ'ল সবকিছুকে রুট হিসাবে চালানো আটকাতে। আমি এমন একটি সিস্টেম তৈরি করার সম্ভাবনা কল্পনা করেছি যেখানে প্রতিটি ফাইল কেবলমাত্র একজন ব্যবহারকারী ব্যবহারকারী (বার রুট) দ্বারা পড়া / লিখিত / সম্পাদিত হতে পারে তবে আমি নিশ্চিত নই যে এটির চেষ্টা হয়েছে।

কোড চালানোর অনুমতি কার্যকর করা হয়। পড়ার অনুমতিটি কেবল দেখার (এবং অনুলিপি করার)?

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