আমি কি এমন একটি * সুপার * সুপার-ইউজার তৈরি করতে পারি যাতে আমার কাছে এমন একজন ব্যবহারকারী থাকতে পারে যা রুট করার অনুমতি অস্বীকার করতে পারে?


34

আমি ভাবছিলাম যে কোনও ব্যবহারকারীর কাছে মূল ব্যবহারকারীর চেয়ে বেশি অনুমতি থাকা সুবিধাজনক হতে পারে।

আপনি দেখুন, আমি সমস্ত ক্রিয়াকলাপ এবং প্রায় সমস্ত বিদ্যমান রুট ব্যবহারকারীর সুবিধাগুলি ঠিক ঠিক তেমনই রাখতে চাই ।

তবে আমি কেস ভিত্তিতে চূড়ান্তভাবে বিচ্ছিন্ন একটি মামলার মূলোপকরণের সুযোগগুলি অস্বীকার করার ক্ষমতাটি চাই like

এর অন্যতম সুবিধা আমাকে আপডেটের সময় কিছু অযাচিত ফাইলগুলি ইনস্টল করা থেকে বিরত রাখতে দেয়। এটি সম্ভাব্য সুবিধার মাত্র একটি উদাহরণ।

যেহেতু অ্যাপেট-গেট আপডেটগুলি মূল দ্বারা বা সুডো সুবিধাসমূহ দ্বারা চালিত হয়, অ্যাপ্ট-গেট আপডেটের সময় কিছু অযাচিত ফাইলগুলি প্রতিস্থাপনের ক্ষমতা রাখে।

যদি আমি এই পৃথক নির্দিষ্ট ফাইলগুলিতে এই সুযোগগুলি অস্বীকার করতে পারি, তবে আমি এগুলিকে একটি সিমিলিংক হিসাবে সেট করতে পারি /dev/nullবা সম্ভবত একটি ফাঁকা স্থানধারক ফাইল থাকতে পারে যার অনুমতি থাকতে পারে যা আপডেটের সময় ফাইলটি প্রতিস্থাপন করা থেকে অস্বীকার করবে।

অতিরিক্ত হিসাবে, আমি সাহায্য করতে পারি না তবে একটি লাইন সম্পর্কে স্মরণ করিয়ে দিতে পারি যা উবুন্টু স্রষ্টার একজনের সাথে একটি সাক্ষাত্কারে বলা হয়েছিল যখন লোকেরা কীভাবে ব্যবহারকারীদের "আমাদের" (উবুন্টু দেবগণের উল্লেখ) সম্পর্কে আরও ভাল বিশ্বাস করে সে সম্পর্কে কিছু বলেছিলেন "কারণ আমাদের মূল রয়েছে have "এটি রুট অনুমতি নিয়ে সিস্টেম আপডেটগুলি কীভাবে সম্পাদিত হয় তার একটি উল্লেখ ছিল।

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

আমি এই সম্পর্কে কেবল ভেবেছি এবং এখন পর্যন্ত এই ধারণার জন্য কোনও সময় ব্যয় করিনি এবং আমি যথেষ্ট আত্মবিশ্বাসী যে এটি বের করা যেতে পারে। তবে আমি এটি জানতে আগ্রহী যে এটি ইতিমধ্যে সম্পন্ন হয়েছে কিনা বা এটি সম্ভবত কোনও নতুন ধারণা বা ধারণা নয় not

মূলত, দেখে মনে হচ্ছে একটি সুপার সুপার-ব্যবহারকারী থাকার কিছু উপায় থাকা উচিত যা কেবলমাত্র এক ডিগ্রি দ্বারা সিস্টেমের বাইরে থাকতে পারে।


দ্রষ্টব্য: যদিও আমি মনে করি যে গৃহীত উত্তরগুলি সবচেয়ে বেশি মানদণ্ডে খাপ খায়, আমি উত্তরটি সত্যিই @ সিআরসি দ্বারা পছন্দ করি। এছাড়াও।

আমি গাছে (আমার) উপরে একটি প্রকৃত ব্যবহারকারীর উচ্চতর তৈরি করতে চাই তবে আমি অনুমান করি যে আমার যখন এটি বের করার সময় হবে তখনই আমাকে কেবল একদিন বসে থাকতে হবে।

অতিরিক্ত হিসাবে, আমি এখানে উবুন্টু বাছাই করার চেষ্টা করছি না; যদি আমি এটি সম্পর্কে নেতিবাচক বোধ করি তবে আমি এটি আমার প্রধান ডিস্ট্রো হিসাবে ব্যবহার করব না।


4
আপনি কোন ধরণের ফাইলের কথা বলছেন এবং কেন? " কিছু অযাচিত ফাইল ইনস্টল হতে বাধা দিন _" প্রস্তাব দেয় যে ফাইলগুলি (সাধারণত) উপস্থিত না থাকে এবং আপনি তাদের এগুলি থামাতে চান; তবে "_এটি আপডেটের সময় ফাইলটি প্রতিস্থাপন করা থেকে অস্বীকার করবে। " প্রস্তাবিত ফাইলগুলি ইতিমধ্যে রয়েছে (সম্ভবত, কাঙ্ক্ষিত সামগ্রী সহ) এবং আপনি নতুন সংস্করণ চান না।
ট্রিপহাউন্ড

6
সচেতন থাকুন যে কোনও পদ্ধতি যা aptফাইলগুলি (ওভার) লিখিতকরণ থেকে বাধা দেয় তাতে ত্রুটি হতে পারে, আপডেট প্রক্রিয়াটি বাতিল করে দেওয়া। aptতারপরে "সমস্যা" সমাধান না হওয়া অবধি কোনও আপডেট বা ইনস্টলেশন করতে অস্বীকার করবে।
দুবু

6
"এই সমস্যাটি সম্পর্কে কাজ করার জন্য কেবল ইনস্টলেশন প্রক্রিয়াটি পরিবর্তন করা আমার পক্ষে এখানে আগ্রহী নয়" " সম্ভবত তাই, তবে সমস্যা হিসাবে সমাধান হিসাবে বলা ঠিক যেমন সঠিক উপায়। রুট সীমাবদ্ধ করা যেতে পারে (আনুষ্ঠানিকভাবে, রুট-ইন-ইউজারল্যান্ড কার্নেল মোডের মতো অ্যাক্সেসের একই স্তরের নয়), এবং এটি সম্পাদন করার জন্য সিস্টেম রয়েছে তবে এটি ইউনিক্স দর্শন এবং মৌলিক সুরক্ষা নীতিগুলির পরিপন্থী। সাধারণভাবে, একবার কারও "আংশিক" শিকড় পরে গেলে, তারা "পূর্ণ" শিকড় পেতে তারা ব্যবহার করতে পারে এমন সমস্ত কিছুকে কালো তালিকাভুক্ত করা ব্যতিক্রমী কঠিন। বিশ্বস্ত কোডে কেবল রুট দেওয়া পছন্দ করুন।
কেভিন

8
@mchid: রুট হল পূর্ণ নিয়ন্ত্রণ। এটি এর পুরো বিষয়টি। এটির পুরো নিয়ন্ত্রণ না রাখার জন্য আপনাকে এতগুলি বিষয় অস্বীকার করতে হবে যা এটি আর মূলের মতো লাগে না (উদাঃ কার্নেল মডিউলগুলি ইনস্টল না করে, কোনও মাউন্টিং স্বেচ্ছাচারিতা ডিভাইস ইত্যাদি)। আপনি যদি জিনিসগুলিকে রুট হিসাবে চালাতে না চান তবে সেগুলি রুট হিসাবে চালাবেন না। পরিবর্তে, ক্ষমতাগুলি হস্তান্তর করুন (সমস্ত মূল সমতুল্য ব্যতীত , সেগুলি নিয়ে বিরক্ত করবেন না) বা পোলকিট্ডের মতো একটি ডেমন চালান যা মূল-নন প্রক্রিয়াগুলির পক্ষে রুট অপারেশন করে।
কেভিন

4
@ মিচিড: এটি সমস্যা: প্রোগ্রামগুলি আপনার বিধিনিষেধকে রোধ করার জন্য প্রচুর উপায় রয়েছে। আপনি যদি সেই সমস্ত উপায়ে কালো তালিকাভুক্ত না করেন তবে আপনি "সীমাবদ্ধ রুট" হিসাবে চালিত যে কোনও প্রোগ্রাম এখনও যখনই চাইবে পুরো রুটে পরিণত হতে পারে। সুতরাং আপনার পুরো স্কিমটি সুরক্ষা থিয়েটারের এক ছড়া ছাড়া আর কিছুই নয়।
কেভিন

উত্তর:


83

আপনি যে "ব্যবহারকারী" চান তার নাম এলএসএম: লিনাক্স সুরক্ষা মডিউল। সেলিনাক্স এবং অ্যাপআর্মার সর্বাধিক পরিচিত।

এটির মাধ্যমে আপনি নির্দিষ্ট বাইনারিগুলি (এবং তাদের শিশু প্রক্রিয়াগুলি) নির্দিষ্ট জিনিসগুলি (এমনকি তাদের ইউআইডি হ'ল root) করতে বাধা দিতে পারেন । তবে আপনি এই অপারেশনগুলিতে gettyএবং এর শিশু প্রক্রিয়াগুলিতে মঞ্জুরি দিতে পারেন যাতে আপনি এটি ম্যানুয়ালি করতে পারেন।


2
তবে যদি তাদের ইউআইডি রুট হয় তবে তারা কি সেলিনাক্স অনুমতিগুলি পরিবর্তন করতে পারবে না যা তাদের প্রথম স্থানে অ্যাক্সেস আটকাবে?
কৌতূহলী_ক্যাট

11
@ কুরিয়াস_ক্যাট: হ্যাঁ, অবশ্যই আপনাকে একটি "সীমিত রুট" প্রক্রিয়াটির নিজস্ব অনুমতি পরিবর্তন বা উত্থাপন করার ক্ষমতা অস্বীকার করতে হবে! SELinux যে লোকেরা লিখেছিল তারা ইতিমধ্যে তা ভেবেছিল ...
পিটার কর্ডস

8
@ কুরিয়াস_ক্যাট আপনি এলএসএমগুলি কনফিগার করতে পারেন যাতে রান সময়ে তাদের কনফিগারেশনটি পরিবর্তন করা সম্পূর্ণ অসম্ভব। আপনাকে পুনরায় বুট করতে হবে এবং তার পরে কার্নেল প্যারামিটার দিতে হবে।
হউক লেগেইন

5
@ জোশুয়া যদি আপনার আপ্ট-গেটের অনুলিপি রোহামার ব্যবহার করে থাকে তবে আপনার চিন্তার বড় সমস্যা রয়েছে।
ড্রাকনিস

3
@corsiKa প্রথমত, আপনি মানুষ যারা আসলে মেশিনের বুট করতে পারেন সীমাবদ্ধ করতে চান , মেশিন কারণ সিস্টেম প্রবন যখন তারা বুট হয়। নেট উপর একটি রিবুট ট্রিগার করা ঠিক আছে, কিন্তু বুট হিসাবে এটি নিয়ন্ত্রণের অনুমতি দেয় । দ্বিতীয়ত, কম্পিউটার সুরক্ষার একটি নিয়ম হ'ল একবার আক্রমণকারীর শারীরিক অ্যাক্সেস হয়ে গেলে আপনি কিছু করতে পারবেন না, কারণ তারা তখন LN2- এ সমস্ত কিছু নষ্ট করে দিতে পারে / হার্ডওয়্যার / ইত্যাদি পুনর্বিবেচনা করতে পারে। সুতরাং, হ্যাঁ, যে কেউ মেশিনের বুটিং পরিবর্তন করতে পারে তাকে সাধারণত মেশিনটি "জিতেছে" বলে মনে করা হয়।
HTNW

51

আপনি rootব্যবহারকারীর ধারণাটি ভুল বুঝছেন ।

সরল ইংরাজীতে, root"গাছের শীর্ষে" রয়েছে।

আপনি যদি একদিন "সুপার সুপার ব্যবহারকারী" রাখার সিদ্ধান্ত নেন এবং তার পরের মাসে, একটি "সুপার সুপার সুপার ব্যবহারকারী" (!) থাকে। আপনি গাছটি কতদূর যেতে চান? আপনি কীভাবে এই কাজটি করার জন্য সমস্ত অনুমতি এবং ক্রমবর্ধমান পরিবর্তন করবেন? সর্বদা শীর্ষে কে? কাউকে শীর্ষে থাকতে হবে, এবং এটি root। গল্পের শেষে.

এখানে দেওয়া সমাধানগুলি - অ্যাপএমার এবং সেলইনাক্স সহ - এটিকে সত্যিই পরিবর্তন করবেন না। তারা কেবল rootঅনুমতি এবং প্রক্রিয়াগুলির উপর সূক্ষ্ম দানা নিয়ন্ত্রণের অনুমতি দেয় ।

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

আমি জানি কিছু লোক এটিকে চিহ্নিত করবে, তবে ব্যবহারকারীর স্তরক্রমের তুলনায় কোনও স্তর উচ্চতর নেই, এবং অন্যান্য সমস্ত সমাধান কীভাবে rootঅনুমতিগুলি কাজ করে তার জন্য কিছুটা আলাদা নিয়ন্ত্রণ দেয় । তবে উচ্চতর অনুমতি নিয়ে তারা কোনও নতুন ব্যবহারকারী তৈরি করে না ।

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


আমি মূলের নয়, গল্পের শেষের দিকে থাকবে। যেহেতু ব্যবহারকারীর স্তরের স্তরের উচ্চতা নেই সে কারণেই আমি উচ্চতর ব্যবহারকারী তৈরি করতে চাই।
mchid

যদিও, এটি আমি যা চাই তা হ'ল: রুট অনুমতি এবং প্রক্রিয়াগুলির উপরে নিয়ন্ত্রণ করা যাতে আমি রুটের অনুমতি অস্বীকার করতে পারি। আমি যদি সেলইনাক্স বা অ্যাপআর্মার দিয়ে কোনও নতুন ব্যবহারকারী তৈরি না করে কোনওভাবে রুট করার অনুমতি অস্বীকার করতে পারি তবে আমার ধারণা যে আমার কোনও নতুন ব্যবহারকারীর প্রয়োজন নেই। আমি পুরো নিয়ন্ত্রণ চাই, মূলের চেয়ে আরও নিয়ন্ত্রণ চাই।
mchid

16
আপনার কাছে এমন "ব্যবহারকারী" এর চেয়ে বেশি অনুমতি থাকতে পারে না root। এটাই পুরো সমস্যা। আপনি যে ব্যবহারকারীটি তৈরি করতে চাইছেন তা মূলত মূল ব্যবহারকারী। আপনার এটি অন্যভাবে যেতে হবে যেমন rootঅধিকারের সাথে ব্যবহারকারী তৈরি করা এবং তারপরে আপনি আরও ভাল নিয়ন্ত্রণ চান এমন নির্দিষ্ট কিছুকে অস্বীকার করতে হবে। আপনি যা জিজ্ঞাসা করছেন ("মূলের চেয়ে আরও নিয়ন্ত্রণ") সম্ভব নয়, এমনকি একটি জিনিসও!
অ্যান্ডি

@ এমসিআইডি তাই আপনি যা করতে চান তা হ'ল বর্তমান রুট ব্যবহারকারীর নাম পরিবর্তন করে মিচিড করা, রুট নামে একটি নতুন ব্যবহারকারী তৈরি করা এবং অ্যাপট-গেট ইত্যাদি ব্যবহার করে আপনার নতুন, নন-রুট ব্যবহারকারীকে ব্যবহার করা?
ওডাল্রিক

কিছু সিস্টেমে, rootসরাসরি হার্ডওয়্যার অ্যাক্সেস করার অনুমতি নেই। যদি আপনি কার্নেল মডিউলগুলি লোড করা অক্ষম করেন তবে আপনি রুটটিকে হার্ডওয়্যার ( /dev/memএবং এর মতো স্টাফের) উপর সম্পূর্ণ নিয়ন্ত্রণের বাইরে রাখতে পারেন । ফাইল সিস্টেমের অনুমতিগুলির জন্য সত্যই প্রাসঙ্গিক নয়, যেহেতু আপনি নিজের অ্যাপ্লিকেশনটি ব্যবহার করবেন না যা আপনার SATA বা NVMe নিয়ামকের সাথে সরাসরি কথা বলেছে ... তবে প্রযুক্তিগতভাবে, root"রাষ্ট্রের চেয়ে আরও বেশি অনুমতি রয়েছে " এবং এটি কার্নেল মোড বলে। : পি
পিটার কর্ডস

26

আপনি যদি কেবল ফাইল বা ডিরেক্টরিগুলি পরিবর্তন / মুছে ফেলা থেকে বিরত রাখতে চান তবে কেবলমাত্র তাদের উপর অবিচ্ছেদ্য পতাকা স্থাপন করুন।

chattr +i <file>

এমনকি রুট এমনকি পতাকা মুছে ফেলা না হলে তাদের কিছু করতে সক্ষম হবে। রুট অ্যাক্সেস প্রতিরোধের জন্য ধারক / নেমস্পেস সিস্টেমটি ব্যবহার করা সম্ভব তবে এটি আপনার প্রয়োজনের জন্য ওভারকিলের মতো বলে মনে হচ্ছে।


11
তবে মূলটি পতাকাটি সরিয়ে ফেলতে পারে।
sebasth

10
প্রায় সবকিছুর মতো, এই পতাকাটি সরানোর জন্য চ্যাটার ব্যবহার করা হবে না।
সিআর

13
@ এসবাসথ: সঠিক, তবে এপটি, ডিপিকিজি এবং প্রতি প্যাকেজ ইনস্টলেশন স্ক্রিপ্টগুলি (সাধারণভাবে) ফাইলের বৈশিষ্ট্যগুলিকে পরিবর্তন করবে না। পরিবর্তে তারা কেবল ব্যর্থ হবে এবং যখন তারা অবিচ্ছেদ্য পতাকা দিয়ে ফাইলগুলি পরিবর্তন করার চেষ্টা করবে তখন অভিযোগ করবে।
ডেভিড ফোস্টার

4
@ ট্রাইপহাউন্ড সুতরাং ওপি apt-getফাইলটি প্রতিস্থাপনে সফল হতে চায় , তবুও ফাইলটি অক্ষত রয়েছে? আমি কিছুটা সাহসের সাথে বলতে চাই না।
দিমিত্রি গ্রিগরিয়েভ

3
@ দিমিত্রিগ্রিরিভ মনে হচ্ছে তারা সফল apt-getহতে পারে ভাবতে চায় তবে এক বা একাধিক ফাইল অপরিবর্তিত রেখে দেয়। তারা কোন ফাইল বা কেন তা বলে না, তবে আপনি যেমনটি বলেছেন কিছুটা পরস্পরবিরোধী - এবং ভবিষ্যতে "বিজোড় আচরণ" প্রবণ।
ট্রিপহাউন্ড

9
  • একটি সুপার-সুপার ব্যবহারকারী হিসাবে পরিবর্তে, আপনি রুট সীমাবদ্ধ করতে পারেন। gnu / linux এ ফাইল অনুমতি ইত্যাদির বিভিন্ন উপায় কী কী তা দেখুন

  • এছাড়াও রয়েছে অ্যাপআর্মার এবং সেলইনাক্স।

  • এবং / অথবা কনফিগার করুন sudo, যাতে আপনি সম্পূর্ণ রুট সুযোগগুলি না দিয়ে থাকেন। আপনি এটি সেট আপ করতে পারেন যাতে কোনও ব্যবহারকারী পূর্ব-সম্মতিযুক্ত যুক্তি সহ কেবল পূর্ব-সম্মত কমান্ডগুলি চালাতে পারে।

  • আপনি রুটকে সীমাবদ্ধ করতে ভার্চুয়ালাইজেশন ব্যবহার করতে পারেন:

    • সিগ্রুপস, নেমস্পেসস, ক্রুট ইত্যাদি (ডকার এটি করে)
    • xen
    • Virtualbox
  • আরও দেখুন etckeeper: এই সরঞ্জামটি পুনর্বিবেচনা /etcডিরেক্টরিটি নিয়ন্ত্রণ করে এবং অ্যাপের সাথে সিঙ্ক্রোনাইজ করে। ডিফল্টরূপে এটি সুরক্ষিত নয়, একটি দূষিত ইনস্টল এটি নাশকতা করতে পারে তবে আপনি এটি আগুনের প্রাচীরযুক্ত ব্যাকআপের ভাণ্ডারগুলিতেও পরিবর্তন আনতে পারেন।

  • ফায়ার-ওয়ালেড ব্যাকআপ রিপোজিটরি সহ সাধারণভাবে সংশোধন নিয়ন্ত্রণের ব্যবহার। দুর্ঘটনাজনিত, ইচ্ছাকৃত দুর্নীতি এবং হার্ডওয়্যার ব্যর্থতার সাথে এই সহায়তা।


ফায়ারওয়ালড ব্যাকআপ রিপোজিটরিগুলি অন্য কোনও মেশিনে, ইন্টারনেটে বা কোনও ভিন্ন ভার্চুয়াল মেশিনে (বা ভার্চুয়াল মেশিনের হোস্ট) থাকতে পারে।


8

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

আপনি কত সীমাবদ্ধতা রাখবেন তার উপর নির্ভর করে কিছু ইনস্টল স্ক্রিপ্ট ভাঙ্গার আশা করা যায়।

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

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

অ্যাপআর্মর নীতির ভাষা একটি অস্বীকার করার নিয়মকে সংজ্ঞায়িত করে , যা একটি ব্ল্যাকলিস্ট নীতি তৈরি করতে ব্যবহার করা যেতে পারে । অ্যাপআর্মার দিয়ে শুরু করার জন্য একটি ভাল জায়গা হ'ল অ্যাপআর্মার ম্যান পৃষ্ঠা , উইকি এবং এতে আপনার বিতরণটিতে বিদ্যমান কনফিগারেশনটি সন্ধান করা /etc/apparmor.d/

SELinux উইকিতে প্রচুর পরিমাণে সেলিনাক্স প্রশাসন ও বিকাশ সামগ্রী সরবরাহ করা হয় । সেলইনাক্স রেফারেন্স নীতিটি গিথুবে হোস্ট করা হয়।


7

আমি বিশ্বাস করতে পারি না যে কেউ পেন্টিংয়ের কথা বলেছেন না ...

কয়েক বছর আগে মাইক্রোসফ্ট একটি প্যাচ প্রকাশ করেছে যা উইন্ডোজ 10 মেশিনকে আমাদের পুরানো সাম্বা এনটি 4 ডোমেন কন্ট্রোলারদের সাথে কথা বলতে বিরতি করেছিল। যখন সমস্যাটি পাওয়া গেছে, আমরা বর্তমান সংস্করণে থাকার জন্য সাম্বা প্যাকেজটি পিন করেছি এবং aptএখনও সঠিকভাবে কাজ করেছি।

একটি সম্পূর্ণ ডেবিয়ান ওয়াকথ্রু প্রক্রিয়াটি ভালভাবে ব্যাখ্যা করে:

ইন /etc/apt/preferences(অথবা একটি নতুন ফাইল অধীনে /etc/apt/preferences.d/), যা প্যাকেজ এবং সংস্করণ উল্লেখ করার কিছু টেক্সট যোগ করুন:

Package: samba
Pin: release v=3.6.6-6+deb7u7
Pin-Priority: 900

সঠিক সিনট্যাক্সের জন্য ডকুমেন্টেশন চেক করুন, তবে এটি প্যাকেজ সংস্করণটি পিন করা দ্রুত এবং নোংরা উপায়। রুট এটিকে বাইপাস করতে পারে , যেমন রুট সর্বদা করতে পারে তবে এটি প্যাকেজ পরিচালকদের আপনার প্যাকেজগুলি স্বয়ংক্রিয়ভাবে প্যাকেজগুলি আপগ্রেড করার চেষ্টা করে।

দ্রষ্টব্য: এই উত্তরটি ধরে নিয়েছে যে আপনার একটি এক্সওয়াই সমস্যা আছে


আমি নিজেকে জিজ্ঞাসাবাদুতে বেশ কয়েকটি এক্সওয়াই সমস্যার উত্তর দিয়েছি। তবে, উপযুক্ত কেবল উদাহরণ এবং এটিই আমাকে ধারণার দিকে নিয়ে যায়। আমি পুরো বিষয়টির "শক্তি-দুর্নীতি-এবং-পরম-শক্তি-দুর্নীতি-একেবারে" দিকটিতে আরও আগ্রহী। আমার নিজের সিস্টেমে সম্পূর্ণ এবং নিখুঁত শক্তি হ'ল আমাকে প্রথম স্থানে লিনাক্সের দিকে নিয়ে যাওয়া। আমার শক্তি যে মূলের উপরে সর্বদা নিরঙ্কুশ নয় তা বুঝতে পেরে এক ধরণের উদ্বেগজনক; পরম শক্তির ধারণাটি আকর্ষণীয়।
এমচিড

এছাড়াও, আমি অনুমান করি এটি কিছুটা এক্সওয়াই সমস্যা তবে ওয়াই এখানে "রুট যখন সুপারভাইজার হয় তখন আমি রুট করার অনুমতি কীভাবে অস্বীকার করব?"
mchid

1
@ মিচিড এটি রুট করার অনুমতি অস্বীকার করার বিষয়ে নয়, তবে মূল হিসাবে চলমান কোনও প্রোগ্রামকে কিছু অস্বীকার করার কথা।
জন কেটস

6

এটি আসলে বেশ সহজ।

রুট আপনার "সুপার সুপার ব্যবহারকারী"

"অ্যাডমিন" নামে একটি অ্যাকাউন্ট তৈরি করুন এবং আপনি চান না তার বাদে তাকে মূলের সমস্ত অনুমতি দিন।

তারপরে বব নামে একটি ব্যবহারকারী তৈরি করুন এবং তাকে "প্রশাসক হয়ে উঠুন"। সু বা এমনকি সুডো ব্যবহার করে।

এখন আপনার কাছে একটি সাধারণ ব্যবহারকারী (বব) এমন একটি সুপার ব্যবহারকারী রয়েছে যা অ্যাডমিন স্টাফ (অ্যাডমিন) এবং একটি সুপার সুপার ব্যবহারকারী (মূল) করতে পারে।

আপনি যদি "রুট" নামটি অন্য কোনওটিতে পরিবর্তন করতে চান তবে আপনি এটি করতেও পারেন। প্রযুক্তিগতভাবে কেবল ব্যবহারকারীর আইডি (0) গুরুত্বপূর্ণ।


আমার যদি একটি সাধারণ ব্যবহারকারী (বব) থাকে, এমন একটি সুপার ব্যবহারকারী যা অ্যাডমিন স্টাফ (অ্যাডমিন) করতে পারে এবং একটি সুপার সুপার ব্যবহারকারী (মূল) এখনও রুট না করে সমস্ত পটভূমি প্রক্রিয়াগুলি, ক্রোনজবস এবং অ্যাডমিন স্টাফগুলি করে থাকে be অন্যান্য আইডি হিসাবে ব্যবহারকারীর আইডি (0)?
mchid

না যদি আপনি তাদের না চান। বেশিরভাগ পরিষেবা আপনাকে ব্যবহারকারী কী কাজ করে তা চয়ন করতে দেয়। আপনি এটিকে সেট আপ করতে পারেন যাতে প্রশাসক ব্যবহারকারী হ'ল প্রক্রিয়াগুলি চালাচ্ছেন। কয়েকটি ব্যতিক্রম আছে, তবে অনেকগুলি নয়।
কোটায়ার

আমি কি সমস্ত প্রক্রিয়াটি পৃথকভাবে সেট করে যেতে চাইছি না?
মিচিড

3
আপনি যখন স্ট্যান্ডার্ড কনভেনশনগুলি ভাঙার চেষ্টা করবেন তখনই এটি ঘটে। আমি মনে করি আপনার * * নিক্স পরিবেশে অনুমতিপ্রাপ্ত সিস্টেমগুলির হাওস এবং হুইস আরও ভালভাবে বুঝতে হবে।
শওনা

2
আমি শোনার সাথে একমত, আপনার কাছে * নিক্স অনুমতি ব্যবস্থা সম্পর্কে মৌলিক বোঝার অভাব বলে মনে হচ্ছে। এটি খুব শক্তিশালী, তবে এটি উইন্ডোর মতো কিছুই নয়।
কোটায়ার

3

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

আপনি যে আসল প্রশ্নটি জিজ্ঞাসা করতে চান তা হ'ল:

নির্দিষ্ট ফাইল ইনস্টল করা থেকে এপিটি রোধ করার কোনও উপায় আছে কি?

আপনি একাধিক স্তরে যা জিজ্ঞাসা করছেন তার থেকে এটি সম্পূর্ণ আলাদা।

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


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

ডিপি কেজি-ডাইভার্ট এটি করে: unix.stackexchange.com/a/157896/70847
mchid

1

একটি নিরাপদ স্থানে একটি ব্যাকআপ কপি রাখুন। যে কোনও ইনস্টল / আপডেটের পরে, তত্ক্ষণাত সেই ব্যাক-আপ থেকে নির্দিষ্ট ফাইলগুলি প্রতিস্থাপন করুন। সুতরাং, ইনস্টলটিকে স্ক্রু আপ করতে কোনও ত্রুটি নেই তবে আপনি যে ফাইল (গুলি) রাখতে চান তা ফিরে পেতে পারেন।


1

একটি মাউন্ট ড্রাইভ থেকে কাজ

নোট করুন যে এটি বেশিরভাগই একটি ধারণাগত উত্তর, তবে আমি মনে করি এটি কার্যকর করা উচিত এবং আপনি যা অর্জন করতে চান তার সাথে চেতনায় থাকতে হবে।

সিস্টেম এক্সকে আপনার ওয়ার্কিং সিস্টেম এবং সিস্টেম ওয়াইকে অন্য একটি সিস্টেম করুন যা আপনি নিয়ন্ত্রণ করেন

  1. এক্স থেকে ড্রাইভ হিসাবে ওয়াই থেকে একটি ডিরেক্টরি মাউন্ট করুন
  2. অধিকারগুলি এমনভাবে সেট আপ করুন যাতে এক্সের মূল ব্যবহারকারীটি কয়েকটি ব্যতিক্রম সহ এই মাউন্টড ড্রাইভের সমস্ত কিছুর উপর অধিকার পেতে পারে

এখন আপনার 'ওয়ার্কিং রুট' রয়েছে যা প্রায় সব কিছু করতে পারে এবং আপনার 'সুপার রুট' রয়েছে, সিস্টেম ওয়াইয়ের আসল রুট অ্যাকাউন্ট, যা সত্যই সবকিছু করতে পারে।


আমি ধারণাটি পছন্দ করি, যদিও আমি এটি একটি চলমান সিস্টেমে করতে চাই।
mchid

1

আপনি জেন হাইপারভাইজারের মতো টাইপ -১ হাইপারভাইজার চালাতে পারেন এবং আপনার নিয়মিত ওএসটিকে ভার্চুয়ালাইজ অতিথি হিসাবে হোস্ট করতে পারেন। হাইপারভাইজারটি ভার্চুয়াল গেস্ট ওএসকে মূলের থেকে আরও গভীরতর স্তরে নিয়ন্ত্রণ করে কারণ এটির (ভার্চুয়াল) হার্ডওয়্যারটিতে নিয়ন্ত্রণ রয়েছে যেখানে গেস্ট ওএস চালায়।

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

আমার ধারণা যে এই পদ্ধতির বোধহয় অতিরিক্ত দক্ষতা রয়েছে


কোনও হাইপারভাইজার কীভাবে কোনও অতিথির ভিএম-তে কোনও কিছু করতে রুট অনুমোদনের সাথে বাধা পেতে পারে?
এফএমপুরফি

এই উত্তরটি ঠিকঠাক শুরু হয়, তবে ব্যাকরণগতভাবে পথভ্রষ্ট হয়ে যায় (এটি তখন চারপাশে ভুল উপায়ে পড়া বা কমপক্ষে অস্পষ্ট)। আমি একটা ঠিক করেছি।
ctrl-alt-delor

1
@ fpmurphy1 একটি হাইপারভাইজার সিস্টেম ব্যবহারকারী কল করতে পারে, নীতি প্রয়োগ করতে পারে, ইত্যাদি রুট ব্যবহারকারী বা অতিথি ওএসের অন্য কোনও অংশে স্বেচ্ছাসেবক বিধিনিষেধ প্রয়োগ করতে। হতে পারে আমার উত্তরটি ভাল নয় কারণ আপনি যদি কোনও বাস্তব উদ্যোগ ব্যবহারের ঘটনা বা কিছু না পেয়ে থাকেন তবে এটি খুব বেশি কাজ ...
নাথান স্মিথ

@ ctrl-alt-delor আপনার স্থির করার জন্য ধন্যবাদ, তবে আমি মনে করি না যে ব্যাকরণটি সমস্যা ছিল। আমি যদিও বলতে চাইছিলাম তা আমি স্পষ্ট করে দিয়েছি, এবং আমি যে
নাথান স্মিথ

1
আপনার সম্পূর্ণ শিকড় গেস্টের মধ্যে @ fpmurphy1। তবে এটি হোস্টের মূলের মতো একই মূল নয়। সুতরাং এটি হোস্ট রুটের তুলনায় কম মূল root ডকার জিনিসগুলিকে আরও সংহত করার অনুমতি দেবে, তবে তবুও মূলকে বিধিনিষেধ প্রয়োগ করবে।
ctrl-alt-delor

1

কটাক্ষপাত Cgroups এবং লিনাক্স নামব্যবধান লক্ষ্য এই ধরনের, সেইসাথে সরঞ্জাম মত তাদের উপর ভিত্তি করে অর্জনের একটি বিকল্প পদ্ধতি হিসাবে Docker এবং lxd

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


0

আনইনস্টল sudo

কীভাবে আনইনস্টল করবেন sudoএবং এতে সিমিলিং /bin/suকরবেন /bin/false? দম্পতি যে এটি rootমাধ্যমে লগইন করতে পারবেন না sshএবং আপনি সিস্টেমটি লক করে রেখেছেন making

করে নির্মিত হয় rootসুপার * সুপার ব্যবহারকারী, এবং বাকিদের যে অধীনস্থ হয়।

আপডেটগুলির সময় প্রতিস্থাপন করা ফাইলগুলির জন্য, কেবল কোনও আপডেট করবেন না। আরও বাস্তবে, ফাইলগুলির অনুমতিগুলি পরিবর্তন করুন 440বা 444সেগুলি লেখা যায় না they বা এগুলিকে গিট স্টোরের মধ্যে রাখুন যাতে তারা ওভাররাইট হয়ে ওঠে তবে তা পুনরায় করা যাবে।


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

। । । দাদী এবং দাদা মা এবং বাবার মা এবং পিতা fathers আমি দাদাকে আমার সিস্টেমে লাইভ আসতে বলি, কারণ এখনই মূলটি হ'ল বাড়ির বাবা এবং দাদু বাবা কে কি করতে হবে তা বলতে পারেন কারণ দাদা বাবা বাবার বাবা :)
মিচিড

দেখে মনে হচ্ছে আপনি সুডো শক্তিযুক্ত অনেক লোককে যুক্ত করেছেন। sudoersফাইলটি সামঞ্জস্য করুন যাতে কেবলমাত্র নির্বাচিত ব্যবহারকারীরা প্রাক-নির্বাচিত কমান্ডগুলিতে sudo করতে পারেন।
ব্যবহারকারী 176717

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

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