রুট অ্যাক্সেস যা রুট পাসওয়ার্ড পরিবর্তন করতে পারে না?


66

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

এটা কি সম্ভব?


32
আপনি sudoকেবলমাত্র নির্দিষ্ট রুট-সুবিধাযুক্ত অ্যাপ্লিকেশনের জন্য অনুমতি প্রদান করতে ব্যবহার করতে পারেন । এইভাবে, ব্যবহারকারীকে রুট পাসওয়ার্ড পরিবর্তন করতে দেওয়া হবে না
SHW

24
কেন আপনি প্রয়োজন sudoএই ব্যবহারকারীদের জন্য। আপনি যদি তাদের বিশ্বাস না sudoকরেন তবে প্রথমে তাদের অ্যাক্সেস দেবেন না । এছাড়াও লক্ষ করুন যে আদর্শভাবে, মূলের কোনও পাসওয়ার্ড থাকা উচিত নয় , তবে আপনার অনুমোদনের অন্যান্য উপায় ব্যবহার করা উচিত। (যা ব্যবহারকারী এখনও "হ্যাক" করতে সক্ষম হবেন, এমনকি যদি আপনি অনুমানও করেন /etc/passwd)
-

3
এই ব্যবহারকারীদের ঠিক কী করা দরকার?
অলিভিয়ার ডুলাক

4
তারা তাদের মূল-সুযোগগুলি নিয়ে কী করবে? আপনি যা ভাবেন তার থেকে ভাল সমাধান হতে পারে।
স্পার্টিকস

23
এটি তাদের মধ্যে একটি "Godশ্বর এত বড় একটি বোল্ডার তৈরি করতে পারেন যে তিনি নিজেও এটি তুলতে পারবেন না?" প্রশ্ন টাইপ করুন। আপনার যদি রুট অ্যাক্সেস থাকে তবে আপনি যে কোনও কিছু করতে পারেন, এজন্যই রুট অ্যাক্সেসটি যথাযথভাবে দেওয়া হয়। sudoএবং setuidবেশিরভাগ সমস্যার সমাধান করতে পারে।
বিএসডি

উত্তর:


57

আমরা চাই যে কিছু ব্যবহারকারীর উদাহরণস্বরূপ sudoএবং সক্ষম হতে সক্ষম হওয়া উচিত ,

ঠিক আছে, এটিই সমস্যাটি সমাধানের জন্য ডিজাইন করা হয়েছে যা সেই অংশটি যথেষ্ট সহজ।

তবে এই বিধিনিষেধের সাথে যে ব্যবহারকারী রুট পাসওয়ার্ড পরিবর্তন করতে পারে না।

আপনি, SHW একটি মন্তব্যে নির্দেশিত হিসাবে , sudo কনফিগার করে নির্দিষ্ট ব্যবহারকারীদের দ্বারা নির্দিষ্ট পদক্ষেপগুলি রুট হিসাবে গ্রহণের অনুমতি দেয়। যেমনটি, আপনি ভাড়া দেওয়া-যেমন-সিস্টেম-অ্যাডমিনিস্ট্রেটরকে করার অনুমতি দেওয়ার সময় sudo services apache2 restartআপনি ব্যবহারকারী 1 কে করতে , ব্যবহারকারী 2 কে sudo rebootআর কিছুই করার অনুমতি user3দিতে পারবেন sudo -i। এর মতো সুডো সেট আপ করতে কীভাবে পাওয়া যায়, বা আপনি এখানে অনুসন্ধান (বা জিজ্ঞাসা) করতে পারেন how এটি একটি সমাধানযোগ্য সমস্যা।

যাইহোক, কোনও ব্যবহারকারী যা শেল sudo -iবা তার sudoমধ্যে ( sudo bashযেমন, উদাহরণস্বরূপ) সক্ষমতা মঞ্জুরিপ্রাপ্ত হয়েছে সে কিছু করতে পারে। কারণ সুডো শেলটি চালু করার সময়, সুডো নিজেই চিত্রের বাইরে। এটি একটি পৃথক ব্যবহারকারীর সুরক্ষার প্রেক্ষাপট সরবরাহ করে (বেশিরভাগ সময় মূল), তবে মৃত্যুদন্ড কার্যকর হওয়া অ্যাপ্লিকেশনটি কী করে তাতে কোনও বক্তব্য নেই। যদি সেই অ্যাপ্লিকেশনটি চালু passwd rootহয় তবে সুডো এটির জন্য কিছুই করতে পারে না। নোট করুন যে এটি অন্যান্য অ্যাপ্লিকেশনগুলির মাধ্যমেও করা যেতে পারে; উদাহরণস্বরূপ, আরও অনেক উন্নত সম্পাদক শেলের মাধ্যমে একটি কমান্ড কার্যকর করার জন্য সুবিধাদি সরবরাহ করে, একটি শেল যা সেই সম্পাদক প্রক্রিয়াটির কার্যকর uid (যেটি মূল) দ্বারা কার্যকর করা হবে।

এটি একটি গ্যারান্টি যে আমরা এখনও সেই সার্ভারে লগইন করতে পারি এবং অন্যান্য ব্যবহারকারীরা কী করবে তা বিবেচনা করেই মূল হয়ে উঠতে পারি।

দুঃখিত; যদি আপনার সত্যিকারের অর্থ যদি হয় তবে নিশ্চিত হয়ে নিন যে "রুট অ্যাক্সেসওয়ালা কেউ এর সাথে কিছু করুক না কেন আমরা লগ ইন করতে এবং সিস্টেমটি ব্যবহার করতে সক্ষম হবো", যা (সমস্ত উদ্দেশ্য এবং উদ্দেশ্যে) করা যায় না। একটি দ্রুত "sudo rm / etc / passwd" বা "sudo chmod -x / bin / bash" (বা শেল রুট যা কিছু ব্যবহার করে) এবং আপনি যেভাবেই হোক না কেন বেশ আটকানো। "প্রিটি হট হজ" এর অর্থ "আপনাকে ব্যাকআপ থেকে পুনরুদ্ধার করতে হবে এবং আশা করা যায় যে তারা আঙ্গুলের স্লিপের চেয়ে খারাপ কিছু করেনি"। অপ্রয়োজনীয় সিস্টেমে দুর্ঘটনাজনিত দুর্ঘটনার ঝুঁকি কমাতে আপনি কিছু পদক্ষেপ নিতে পারেন , তবে আপনি সিস্টেমটিকে স্ক্র্যাচ থেকে পুনর্গঠন করার প্রয়োজনের বিন্দু বা খুব কম জানা থেকেও খুব মারাত্মক সমস্যা দেখা দেওয়া থেকে বিরত রাখতে পারবেন না known ভাল ব্যাকআপ।

কোনও ব্যবহারকারীর সিস্টেমে নিরক্ষর রুট অ্যাক্সেস দেওয়ার মাধ্যমে আপনি সেই ব্যবহারকারীকে বিশ্বাস করেন (কোনও সফ্টওয়্যার যা তারা কার্যকর করতে বেছে নিতে পারে এমনকি লস হিসাবে জাগতিক কিছু হিসাবেও) দূষিত অভিপ্রায় না রাখতে এবং দুর্ঘটনাক্রমে গণ্ডগোল না করে trust এটি রুট অ্যাক্সেসের প্রকৃতি।

যেমন সুডোর মাধ্যমে সীমাবদ্ধ রুট অ্যাক্সেস কিছুটা ভাল, তবে আপনাকে কোনও আক্রমণ আক্রমণকারীকে না খোলার জন্য সতর্ক থাকতে হবে। এবং রুট অ্যাক্সেসের সাথে, সুবিধাবদ্ধতা বৃদ্ধির আক্রমণে প্রচুর সম্ভাব্য আক্রমণকারী ভেক্টর রয়েছে।

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


3
আমি দুঃখিত আমার উত্তরটি সমস্ত হাইপ পেয়েছে (আমি এটি যথেষ্টই পাই না!)। আপনার উত্তরটি চমৎকার পয়েন্ট উত্থাপন করে এবং আমি আশা করি এটি গৃহীত হবে। আপনাকে +1, স্যার।
জোসেফ আর।

@JosephR। কখনও কখনও একটি সংক্ষিপ্ত উত্তর পছন্দ করা হয়।
ডেভিড কাউডেন

@ ডেভিডকাউডেন হ্যাঁ, মনে হয় এটি এখানেই ঘটেছে ...
জোসেফ আর।

1
@JosephR। আমার কোন চিন্তা নেই। স্ট্যাক এক্সচেঞ্জ সম্প্রদায়টি সর্বদা অনুমানযোগ্য নয় এবং ইতিমধ্যে প্রচুর পরিমাণে উত্স পাওয়া প্রশ্নগুলি আরও বেশি আকর্ষণ করে। যদিও উত্সাহের জন্য ধন্যবাদ। :)
একটি সিভিএন

92

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

আপনার দৃশ্যে, আপনাকে আদেশগুলি এবং কমান্ডগুলিতে অ্যাক্সেস সীমাবদ্ধ করতে হবে suএবং passwdঅন্য সব কিছুর জন্য অ্যাক্সেসকে খোলা রাখতে হবে। সমস্যাটি হ'ল, আপনার ব্যবহারকারীদের সরাসরি সম্পাদনা করা থেকে /etc/shadowবা ( /etc/sudoersহাইজ্যাকের মূল প্রতিস্থাপনের রুট পাসওয়ার্ড বাদ দেওয়া) থেকে আপনার ব্যবহারকারীদের বাধা দেওয়ার মতো কিছু নেই । এবং এটি কেবলমাত্র সবচেয়ে সম্ভবত সম্ভব "আক্রমণ" পরিস্থিতি। এক বা দুটি কমান্ড ব্যতীত সীমাবদ্ধ শক্তিযুক্ত সুডোয়াররা সম্পূর্ণ রুট অ্যাক্সেস হাইজ্যাকের বিধিনিষেধের আশেপাশে কাজ করতে পারে।

মন্তব্যগুলিতে এসএইচডাব্লু দ্বারা প্রস্তাবিত একমাত্র সমাধান হ'ল sudoআপনার ব্যবহারকারীদের পরিবর্তে সীমাবদ্ধ কমান্ডের সেটগুলিতে অ্যাক্সেস দেওয়ার জন্য ব্যবহার করা।


হালনাগাদ

আপনি যদি প্রমাণীকরণের জন্য কার্বেরোস টিকিট ব্যবহার করেন তবে এটি সম্পাদনের একটি উপায় থাকতে পারে। ফাইলটির ব্যবহার ব্যাখ্যা করে এই দস্তাবেজটি পড়ুন .k5login

আমি সম্পর্কিত অংশ উদ্ধৃত:

ধরুন যে ব্যবহারকারী এলাইসের নীচের লাইনটি রয়েছে তার হোম ডিরেক্টরিতে একটি .k5 লগিন ফাইল রয়েছে:
bob@FOOBAR.ORG
এটি ববকে কার্বেরোস টিকিট ব্যবহার করে কার্সেরোস নেটওয়ার্ক অ্যাপ্লিকেশন যেমন ssh (1) ব্যবহার করতে পারে al
...
নোট করুন যেহেতু বব তার নিজস্ব অধ্যক্ষের জন্য কার্বেরোস টিকিট ধরে রাখে, তাই এলিসের টিকিটের bob@FOOBAR.ORGপ্রয়োজন এমন কোনও সুযোগসুবিধা যেমন তার কোনও সাইটের হোস্টে রুট অ্যাক্সেস, বা এলিসের পাসওয়ার্ড পরিবর্তন করার ক্ষমতা থাকবে না।

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


আপনি কীভাবে একটি মন্তব্যে এই দুর্দান্ত রেফারেন্সটি করেছিলেন? আমি আপনার উত্তরের উত্সের দিকে তাকিয়ে দেখেছি () এটি ঘিরে আছে। শীতল গোপন টুপি!
জো

@ জো যে মন্তব্য পোস্ট করা হয়েছিল তা আসলে মন্তব্যের লিঙ্ক।
জোসেফ আর।

@ জো <tr id="thisistheid"...মন্তব্যে আইডি ( ) সন্ধান করুন (যেমন ক্রোমে ডান ক্লিক করুন এবং Inspect element), তারপরে এটি পূর্ববর্তী সহ থ্রেড লিঙ্কে যুক্ত করুন #। আপনার ক্ষেত্রে (আইডি = comment-162798) দেখতে এটির মতো দেখাচ্ছে: unix.stackexchange.com/questions/105346/…
পলিম

1
উত্তরের জন্য ধন্যবাদ, আমি জানতাম না যে আমাকে এটি গ্রহণ করতে হবে বা
@ মিশেল কেজারলিংয়ের

@ 244an কোন উদ্বেগ নেই। আমি নিজেও একই পরামর্শ দেওয়া উচিত। :)
জোসেফ আর

17

আমি ধরে নিচ্ছি যে আপনার প্রকৃত প্রশাসক স্ক্রু আপ করা সত্ত্বেও আপনি "জরুরি প্রশাসক" অ্যাক্সেস পেয়েছেন কিনা তা নিশ্চিত করতে চান (তবে এটি বাদে আপনি মূল প্রশাসককে পুরোপুরি বিশ্বাস করেন)।

একটি জনপ্রিয় পদ্ধতির (যদিও খুব হ্যাকিশ) দ্বিতীয় ব্যবহারকারীরuid=0 নাম রাখা হয় , সাধারণত নামকরণ করা হয় toor(মূলটি পিছনের দিকে)। এটির একটি আলাদা পাসওয়ার্ড রয়েছে এবং এটি ব্যাকআপ অ্যাক্সেস হিসাবে পরিবেশন করতে পারে। যোগ করার জন্য, আপনাকে সম্ভবত সম্পাদনা করতে হবে /etc/passwdএবং /etc/shadow( rootলাইনগুলি অনুলিপি করতে হবে )।

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

বিকল্পভাবে, আপনি বিকল্প প্রমাণীকরণ প্রক্রিয়া, অর্থাত্ sshকী libnss-extrausers, এলডিএপি ইত্যাদি সন্ধান করতে পারেন want

নোট করুন যে অ্যাডমিন এখনও খারাপভাবে স্ক্রু করতে পারে। উদাহরণস্বরূপ, ফায়ারওয়াল ব্লক করে।

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


6
এটি ব্যবহারকারীকে toorমূল পাসওয়ার্ড পরিবর্তন করতে বাধা দেয় না ; এটির সাথে রুট হওয়ার জন্য কেবল একটি দ্বিতীয় পাসওয়ার্ড সরবরাহ করে।
অ্যালেক্সিস

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

2
যে @alexis কি লেখক এই প্রোগ্রামটিতে হয় প্রশ্ন চাইলেন। এর জন্য কেন -১ দেবেন? toorপুনরুদ্ধার অ্যাকাউন্টগুলি কয়েক দশক ধরে ইউনিক্সে একটি সাধারণ অনুশীলন (যদিও তা ভ্রান্ত হয়)।
অ্যানি-মউসে

9
যদি একমাত্র লক্ষ্য দুর্ঘটনাযুক্ত পাসওয়ার্ড পরিবর্তনের বিরুদ্ধে প্রতিরোধ করা হয় তবে এটি একটি ভাল উত্তর। যদি লক্ষ্যটি দূষিত কিছু রোধ করা হয় তবে এটি খুব বেশি সহায়তা করে না। ওপি যেহেতু লক্ষ্যটি কী তা বলে নি, তাই আমরা জানি না।
ববসন

2
এই কারণেই আমি আমার প্রথম বাক্যে বলেছি: "স্ক্রু আপ ... এগুলি বাদে আপনি বিশ্বাস করেন ... পুরোপুরি"। এটি সত্যই কেবল একটি "সহায়তা অ্যাক্সেস" সমাধান; কোনও সুরক্ষা বৈশিষ্ট্য নয়। অতিরিক্ত রুট এসএসএস কীগুলি হ্যাকিশ না হয়ে একই অর্জন করে।
অ্যানি-মৌসে

11

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

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

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

গীত। পাসওয়ার্ড ছাড়াই নিজের জন্য রুট অ্যাক্সেসের ব্যবস্থা করার বিভিন্ন উপায় রয়েছে; একটির জন্য, আপনি যদি /etc/sudoers(সীমাবদ্ধতা ছাড়াই) থাকেন তবে আপনার রুট হয়ে উঠতে কেবল নিজের পাসওয়ার্ড প্রয়োজন, যেমন এর সাথে sudo bash। তবে আপনার কেবল সেখানে যাওয়ার দরকার নেই।


তবে সমস্যাটি হ'ল আপনি আক্রমণকারীকে শোষণের মাধ্যমে শিকড় অর্জন থেকে বিরত রাখতে পারবেন না, সেলইনাক্স গভীরভাবে প্রতিরক্ষা সরবরাহ করে।
টিমোথি লেউং

11

কমপক্ষে তত্ত্বে, সেলইনাক্স ব্যবহার করে এটি করা সম্ভবত সম্ভব । এটি আপনাকে ব্যবহারকারী বা প্রক্রিয়াটি কি করতে বা অনুমোদিত নয় সে সম্পর্কে অনেক বেশি সুনির্দিষ্ট নিয়ম স্থির করতে দেয়। এমনকি সেলইনাক্সের সাথেও ব্যবহারকারীর পক্ষে মূল পাসওয়ার্ড পরিবর্তন করা অসম্ভব হয়ে ওঠা সম্ভব হলেও তবুও তাদের যা করার প্রয়োজন তা করতে সক্ষম able

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


8
সেলেনাক্সের সাথে এটি করার সময় তাত্ত্বিকভাবে সম্ভব হতে পারে (এবং আমি নিশ্চিত নই) দাবি করে যে এটি বাস্তব নিয়ম না দেখিয়ে কাউকে সাহায্য করবে না।
গিলস

@ গিলস আসলে ভাল , এটিই সেলইনাক্সের জন্য ডিজাইন করা হয়েছিল। SELinux হ'ল স্ট্যান্ডার্ড POSIX অনুমতি ছাড়াও অনুমতিগুলির একটি স্তর । সঠিকভাবে কনফিগার করা SELinux মেশিনে, রুট অ্যাক্সেস অর্থহীন, কারণ আপনার প্রকৃত অনুমতিগুলি সুরক্ষা প্রসঙ্গ এবং অবজেক্ট লেবেলিং দ্বারা নির্ধারিত হয়।
টাইলার

2
আপনি যদি এটি করতে জানেন তবে দয়া করে মিথ বা বাস্তবের
গিলস

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

7

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


এটি অনেকগুলি আইএমএইচওর তুলনায় নিরাপদ হবে।
প্রবীণ গীক

5

আমি জানি না এটি ব্যবহারিকভাবে সম্ভব হবে তবে এখানে একটি নোংরা হ্যাক রয়েছে:

  1. /etc/passwdআসল কল করার আগে একটি মোড়ক স্ক্রিপ্ট / প্রোগ্রাম লিখুন যা ফাইলটি অন্য কোনও স্থানে অনুলিপি করবেsudo
  2. সাধারণ ব্যবহারকারীকে ব্যবহার করার অনুমতি দিন sudo
  3. একবার তার কাজ শেষ হয়ে গেলে, বা যখন তিনি সুডো থেকে বেরিয়ে আসেন, /etc/passwdফাইলটি পুনরুদ্ধার করুন

আমি জানি, এটি অর্জনের জন্য আপনাকে অনেকগুলি প্লাস-বিয়োগ জিনিস বিবেচনা করতে হবে। সর্বোপরি, এটি একটি নোংরা হ্যাক


3
সবসময়ই সম্ভাবনা থাকে যে কোনও দূষিত ব্যবহারকারী এই স্ক্রিপ্টটি পড়বে এবং ব্যাকআপ অনুলিপিটি নাক করে দেবে।
জোসেফ আর।

vipwবন্ধুরা ইতিমধ্যে এটিও বেশ কার্যকর ।
একটি সিভিএন

এটি প্রোগ্রামটি বিবেচনা করুন এবং কেবলমাত্র রুট অ্যাক্সেস রয়েছে
SHW

1
rootএর পরে "অন্যান্য অবস্থান" সম্পাদনা করতে পারেন sudo
অ্যানি-মৌসে

5
আপনি কেন কোনও সম্ভাব্য দূষিত ব্যবহারকারীর অ্যাক্সেসের মূল অনুমতি পাবেন ??? মূল হিসাবে, পিছনের দরজাটি ইনস্টল করা তুচ্ছ এটি যা sudo এবং / অথবা মোড়কের মধ্য দিয়ে যাওয়ার উপর নির্ভর করে না ...
অ্যালেক্সিস

5

যে বক্তব্যটি sudoকেবলমাত্র শিকড় দেওয়ার জন্য এবং এর পরে কোনও সুরক্ষা নেই তা সম্পূর্ণরূপে মিথ্যা।

আপনি visudosudoers ফাইল পরিবর্তন করতে ব্যবহার করুন। এখানে একটি উদাহরণ লাইন:

redsandro ALL=(ALL:ALL) NOPASSWD:/path/to/command
  • redsandroআমরা যে ব্যবহারকারীর নামটি অনুমতি দিচ্ছি তা হল। একটি রাখুন %সামনে এটি একটি গ্রুপ ক্ষেত্রে প্রযোজ্য হবে।
  • ALLএই নিয়মের একটি নাম। সুডোয়াররা কেবল বৈশ্বিক অনুমতি প্রদানের চেয়ে আরও অনেক কিছু করতে পারে। এটি যদিও জটিল হয়ে ওঠে।
  • = কোন ব্যাখ্যা প্রয়োজন
  • ALL:ALL(কে_আর_রুন_সী_ কী: কী_গোষ্ঠী_তো_রুন_ইট_ হিসাবে) পড়েছেন। এইভাবে আপনি একটি কমান্ড চালানোর অনুমতি দিতে পারবেন তবে কেবলমাত্র নির্দিষ্ট ব্যবহারকারী বা গোষ্ঠীর প্রসঙ্গে।
  • NOPASSWD: এটি পাসওয়ার্ড প্রম্পট বন্ধ করতে বলে।
  • /path/to/command আপনাকে নির্দিষ্ট কমান্ডগুলি path_to_commmand, অন্য_কম্যান্ড নির্দিষ্ট করতে দেয়

মনে রাখার বিষয়টি sudoহ'ল মূলত বাড়ির ব্যবহারকারীরা মূল সুবিধার দিকে এগিয়ে যাওয়ার জন্য ব্যবহৃত হয়, এটি নির্দিষ্ট কমান্ডের অ্যাক্সেসকে আরও বেশি দানাদারভাবে নিয়ন্ত্রণ করতে ব্যবহৃত হতে পারে এবং ব্যবহৃত হয়।

তথ্যসূত্র


এই উত্তরটি ব্যাখ্যা করে যে কীভাবে সীমিত রুট অ্যাক্সেসের জন্য sudo সেটআপ করা যায়, তবে উত্তরটি যদি তাই বলে থাকে এবং এটি কোথায় যেতে হবে তা আরও ভাল।
একটি সিভিএন

@ মাইকেল
Kjörling

3
"সুডো যে বিবৃতি দিয়েছে তা কেবলমাত্র শিকড় দেওয়ার জন্য এবং এর পরে কোনও সুরক্ষা পাওয়া যায়নি তা স্পষ্টতই মিথ্যা।" যাক আমি sudo viকোনও ব্যবহারকারীর অ্যাক্সেস মঞ্জুর করি কারণ আমি চাই তারা সিস্টেম কনফিগারেশন ফাইলগুলি সম্পাদনা করতে সক্ষম হয়। তারপরে ব্যবহারকারীটি :!/bin/bashএকটি sudo viসেশনের মধ্যেই কাজ করে । কোনও পরিস্থিতিতে কীভাবে কোনও ব্যবহারকারী সুডোর মাধ্যমে কার্যকর করতে পারে সেই আদেশগুলিকে সীমাবদ্ধ করার সুডোর ক্ষমতা কীভাবে আমার সিস্টেমকে সুরক্ষিত করতে সহায়তা করে? (কেউই বলেনি যে সুডো একটি সমস্ত-বা-কিছুই নয় এমন sudo -iপদ্ধতির চেয়ে আরও শক্তভাবে কনফিগার করা যায় না ))
সিভিএন

6
কোনও পদ্ধতির সীমাবদ্ধতা বোঝা কোনও কাজটি কীভাবে সম্পাদন করতে হয় তা জানার জন্য সহজেই গুরুত্বপূর্ণ।
একটি সিভিএন

1
@ মাইকেলকিজারলিং, আমি মনে করি এটি কেবল একটি উদাহরণ is তবে স্পষ্টতই, ব্যবহারকারীদের সিস্টেম কনফিগারেশন ফাইলগুলি সম্পাদনা করার সঠিক উপায় হ'ল তাদের চালনা দেওয়া sudoedit। কোন ফাইলগুলিতে তাদের সক্ষম হওয়া উচিত তা আপনি নির্দিষ্ট করে সনাক্ত করতে পারেন sudoedit। এই ভিতরে man sudoers
ম্যাথু ফ্ল্যাশেন

3

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

আপনি যদি পাসওয়ার্ডটি পরিবর্তন না করার জন্য তাদের উপর যথেষ্ট পরিমাণে বিশ্বাস না করেন তবে আপনার সম্ভবত তাদের রুট অ্যাক্সেস দেওয়া উচিত নয়। অন্যথায় আমি অনুমান করব আপনি দুর্ঘটনা এড়ানোর চেষ্টা করছেন।

আপনি যদি কেবলমাত্র রুটটিতে আপনার অ্যাক্সেস রক্ষা করার চেষ্টা করছেন, এমন একটি প্রোগ্রাম সেটআপ করুন যা রুট পাসওয়ার্ড পুনরুদ্ধার করতে পারে, তবে এটি পরিবর্তিত হলেও ন্যূনতম অ্যাক্সেসের সাথে পুনরুদ্ধার করা যায়। (সুডো নিজে থেকে ভাল করে)


3

আপনার প্রয়োজনীয়তা হ'ল:

একটি সার্ভারে আমাদের কিছুটা সমস্যা হচ্ছে [...] এটি হ'ল গ্যারান্টি যে আমরা এখনও সেই সার্ভারে লগইন করতে পারি এবং অন্যান্য ব্যবহারকারীরা কী করবে তা বিবেচনা করে মূল হয়ে উঠতে পারি।

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

  1. ভার্চুয়াল পরিবেশের মধ্যে সার্ভারটি চালান। আপনি সার্ভারের ফাইল সিস্টেমটি মাউন্ট করতে এবং পরিচিত-ভাল সংস্করণগুলির সাথে পরিবর্তিত ফাইলগুলি প্রতিস্থাপন করতে সক্ষম হবেন। আপনি যে সম্ভাব্য ক্ষতির আশঙ্কা করছেন তার উপর নির্ভর করে আপনি সমস্ত সমালোচনামূলক ডিরেক্টরিগুলির (/ বিন, / সবিন, / ইত্যাদি, / usr, / var ইত্যাদি) স্ন্যাপশট নিতে পারেন এবং বাকীটি রেখে যাওয়ার পরে ক্ষতিগ্রস্থ ফাইলগুলিকে ওভাররাইট করতে স্ন্যাপশটটি প্রসারিত করতে পারেন অক্ষত সিস্টেম

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

  3. কার্নেল মডিউলগুলি। কার্নেলের লিনাক্স সুরক্ষা মডিউলগুলি (এলএসএম) নিরাপদ মডিউল তৈরির জন্য ভিত্তি সরবরাহ করে। এলএসএমটি সেলইনাক্স ব্যবহার করে তবে স্ম্যাক, টোমায়ো এবং অ্যাপঅর্মার মতো বেশ কয়েকটি স্বল্প-পরিচিত ও সহজ পদ্ধতিতেও এটি ব্যবহৃত হয়। এই নিবন্ধটি অপশনগুলির একটি ভাল ওভারভিউ আছে। / Etc / passwd, / etc / ছায়া, বা আপনি যে কোনও ফাইল (গুলি), এমনকি মূলের মাধ্যমে লিখতে পারা রোধ করার জন্য বাক্সের বাইরে-র কনফিগার করা যায় এমন সম্ভাবনাগুলি।

  4. # 1 হিসাবে একই ধারণা, কিন্তু যখন সার্ভারটি ভার্চুয়াল পরিবেশে নেই। আপনার কাছে কেবলমাত্র পঠনযোগ্য ওএস যেমন সার্ভিস চেইন-লোড একটি লাইভ সিডি হতে পারে যা স্বয়ংক্রিয়ভাবে সার্ভারের ফাইল সিস্টেমটি মাউন্ট করবে এবং জ্ঞাত-ভাল কপি সহ প্রতিটি বুটে বেস সিস্টেমটি ওভাররাইট করে। পঠনযোগ্য ওএস এর পরে মূল ওএসে বুট হবে।

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

আপনার প্রয়োজনীয়তার উপর ভিত্তি করে আপনি অনুসন্ধান করতে পারেন অন্যান্য প্রযুক্তি:


2

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

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


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

@ জোসেফআর সম্মত; ক্ষতি আবিষ্কার করা এবং ফিক্সিং জটিল, এবং আমি খুব পুনরায় ইনস্টল করব। তবে আমি অনুমান করছি যে কোনও ব্যক্তি দুর্ঘটনাক্রমে তাদের লক আউট সম্পর্কে ওপির উদ্বেগটি ছিল ... ইচ্ছাকৃতভাবে কোনও কাজ বা স্কুলের পরিস্থিতি হ্যাক করা কিছুটা আত্মঘাতী। ;-)
ড্যারেন কুক

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

2

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

অবশ্যই, নিরক্ষর রুট অ্যাক্সেস দেওয়া এখনও সঠিক সমাধান নাও হতে পারে: যদি ডেটা সুরক্ষা কোনও সমস্যা বা আপনার দায়িত্বে থাকে তবে আপনি রুট অ্যাক্সেসকে দূরে দিতে পারবেন না।


2

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

যাইহোক, ধরে নিলে আপনি আপনার ব্যবহারকারীদের অনিচ্ছাকৃত না হওয়ার বিষয়ে বিশ্বাস করতে পারেন, আপনি নীতি সম্পর্কিত কোনও বিষয়ে পাসওয়ার্ড পরিবর্তন করার ক্ষেত্রে বিধিনিষেধ তৈরি করতে পারেন । আপনি passwdপ্রোগ্রামের জন্য একটি মোড়ক তৈরি করতে পারেন যা তাদের "দয়া করে রুট পাসওয়ার্ড পরিবর্তন করবেন না" মনে করিয়ে দেবে। এই সমস্যার উত্সটি ধরে নিয়েছে যে যে ব্যবহারকারীরা মূল পাসওয়ার্ড পরিবর্তন করছেন তারা ভুল বোঝাবুঝির কারণে এটি করছেন (যেমন ভেবেছিলেন যে তারা নিজের পাসওয়ার্ডটি সম্পন্ন করার পরে পরিবর্তন করছেন sudo bash)।

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

মনিটরিং এবং আবিষ্কারের দিকটি অন্য কোনও প্রশ্ন থেকে উপকৃত হওয়া শক্ত প্রযুক্তিগত সমস্যা হ'ল আপনি যদি সেই পথে চলার সিদ্ধান্ত নেন। এটা আমাদের প্রয়োজন হবে বলে মনে হয়

  1. যখন ব্যবহারকারী কোনও পরিচয়কে রুটে পরিবর্তন করে এবং যে কোনও তৈরি প্রক্রিয়া অনুসরণ করে;
  2. তখন থেকে প্রতিটি প্রক্রিয়াটির জন্য দায়ী মূল ব্যবহারকারী কে এবং প্রারম্ভিক হোস্ট ব্যবহার করে যেখানে অর্ধ-বিশ্বস্ত ব্যবহারকারীদের লগগুলি প্রেরণে অ্যাক্সেস নেই সেগুলি দেখার জন্য প্রক্রিয়া তৈরিগুলি লগ করুন;
  3. যা ঘটছে তা লগ করতে কোনও ধরণের সিস্টেম ট্রেসিং ব্যবহার করুন এবং পরে নীতি লঙ্ঘনের পিছনে কে ছিলেন তা আবিষ্কার করতে সক্ষম হন।

আমাদের কমপক্ষে লেখার, প্রক্রিয়া তৈরির জন্য exec(), এবং নেটওয়ার্কিং পরিবর্তন করার যে কোনও প্রয়াসের জন্য ফাইলগুলির নিরাপদ সেট ব্যতীত অন্য খোলার লগইন করতে হবে।

বাস্তবায়ন পরিবর্তিত libc বা (আরও ভাল) সিস্টেম কল ট্রেসিংয়ের মাধ্যমে করা যেতে পারে ।

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


1

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

সমস্যাটি হ'ল: যদি মালিকের বাক্সটিতে শারীরিক অ্যাক্সেস থাকে তবে এটি সহজেই সিস্টেমে লজিক্যাল অ্যাক্সেসগুলি পুনরুদ্ধার করতে পারে (প্রদান করে এটি এখনও জীবিত :)। যদি তা না হয় - রুট পাসওয়ার্ড রাখা যেমন sshd ডাউন বা খারাপ নেটওয়ার্ক সেটআপ থেকে উদ্ধার পাবে না, সুতরাং সিস্টেমটি এখনও যাইহোক অ্যাক্সেসযোগ্য নয়।

প্রশাসনিক সুযোগ-সুবিধাগুলি সহ কোনও ব্যক্তির দ্বারা সিস্টেমকে ক্ষয়ক্ষতি থেকে কীভাবে রোধ করা যায় সে বিষয়টি এসই প্রশ্নের ফর্ম্যাটে ফিট করার পক্ষে খুব বিস্তৃত বলে মনে হয়।

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

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


0

আপনি আপনার /etc/sudoersফাইলটিতে সুডোর অ্যাক্সেস সীমাবদ্ধ করতে পারেন

/ ইত্যাদি / sudoers এর বাক্য গঠন পুরোপুরি ব্যাখ্যা করতে, আমরা একটি নমুনা নিয়ম ব্যবহার করব এবং প্রতিটি কলামটি ভেঙে দেব:

jorge  ALL=(root) /usr/bin/find, /bin/rm

প্রথম কলামটি এই সুডোর নিয়মটি প্রযোজ্য ব্যবহারকারী বা গোষ্ঠীটিকে সংজ্ঞায়িত করে। এই ক্ষেত্রে এটি ব্যবহারকারীর জর্জি। যদি এই কলামে শব্দটি% চিহ্ন দ্বারা আগে থাকে, তবে এটি এই মানটিকে ব্যবহারকারীর পরিবর্তে একটি গ্রুপ হিসাবে চিহ্নিত করে, যেহেতু কোনও সিস্টেমে একই নামের ব্যবহারকারী এবং গোষ্ঠী থাকতে পারে।

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

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

সর্বশেষ মান (/ usr / bin / find, / bin / rm) হ'ল কমা দ্বারা পৃথক করা কমান্ডগুলির তালিকা যা প্রথম কলামে ব্যবহারকারী তৃতীয় কলামে ব্যবহারকারী (গুলি) হিসাবে চালাতে পারে। এই ক্ষেত্রে, আমরা জর্জিটি চালাতে এবং রুট হিসাবে আরএম চালানোর অনুমতি দিচ্ছি। এই মানটি সমস্ত ওয়াইল্ডকার্ডেও সেট করা যেতে পারে, যা জর্জিটিকে সিস্টেমে সমস্ত কমান্ডকে রুট হিসাবে চালানোর অনুমতি দেয়।

এটি মাথায় রেখে আপনি এক্স কমান্ডগুলিকে কমাতে বিস্মৃত ফ্যাশনে অনুমতি দিতে পারবেন এবং যতক্ষণ আপনি এতে যোগ না করেন ততক্ষণ passwdআপনার ভাল হওয়া উচিত


-1

কোনও 1/2 টি মূল নেই :) একবার আপনি রুট সুবিধাগুলি দিলে তারা যা খুশি তাই করতে পারে। বিকল্পভাবে আপনি একটি সীমিত বাশ শেল চালাতে sudo ব্যবহার করতে পারেন বা রুট সুবিধাগুলি ছাড়াই rbash চালাতে পারেন।

আপনি যদি সার্ভারে রুট হিসাবে লগইন করতে ব্যর্থ সাফ ব্যবস্থা করতে চান তবে আপনি অন্য কোনও ব্যবহারকারী তৈরি করতে পারেন uid=0বা একটি সাধারণ ক্রোন তৈরি করতে পারেন যা পর্যায়ক্রমে রুট পাসওয়ার্ড পুনরায় সেট করবে।


সীমাবদ্ধ বাশ থেকে বাঁচা সহজ, এই সানস ব্লগটি দেখুন
ফ্রাঙ্কলিন পিয়াত

-1

Sudo ব্যবহার না করে একটি চাকা গ্রুপ যুক্ত করার চেষ্টা করুন। sudo একটি ব্যবহারকারীকে নির্বাহ করতে দেয় যেমন তারা মূল হয় যার অর্থ এটি চালানোর চেয়ে আলাদা নয়:

su -

রুট হয়ে। মূল ইউড = 0; চাকা uid = 10। লোকেরা নাম ব্যবহার করে তবে ওএস ইউআইডি ব্যবহার করে। কিছু কমান্ড হুইল গ্রুপের সদস্য দ্বারা চালিত হতে পারে না। (আপনি যদি হুইল ব্যবহার করেন তবে হুইল গ্রুপের সদস্য হিসাবে রুট যুক্ত করার ভুল করবেন না)। চাকা কী তা আপনি যদি না জানেন তবে রেড হ্যাট ডকুমেন্টেশনটি একবার দেখুন।

অন্য বিকল্পটি হ'ল পাসওয়ার্ডের পরিবর্তে একটি এসএস কী ব্যবহার করা। ধরে নিলে আপনি নিশ্চিত হতে পারেন যে sudo ব্যবহার করে লোকেরা তাদের পাবলিক কীগুলি ~ / .ssh / অনুমোদিতকিস ফাইলে যোগ করবেন না এটি রুট পাসওয়ার্ড পরিবর্তনের যে কোনও উদ্বেগের আশেপাশে আসে কারণ রুট পাসওয়ার্ড কার্যকরভাবে উপেক্ষা করা হয়।

যদি আপনি বরং এই ব্যবহারকারীদের (তাদের নিজস্ব পাবলিক কী যোগ না করার জন্য) বিশ্বাস বাড়িয়ে তুলতে চান তবে বর্ধিত ফাইল বৈশিষ্ট্যগুলি ব্যবহার করে এবং বিট বিট ব্যবহার করার চেষ্টা করুন। আপনার ~ / .ssh /uthorkeys ফাইল তৈরি করার পরে, এবং / etc / ssh / sshd_config এবং / etc / ssh / ssh_config আপনার পছন্দমতো কনফিগার করার পরে অনিয়মিত বিট সেট করুন। অবশ্যই, এটির সাথেও স্ক্রু করার উপায় রয়েছে - কিছুই নিখুঁত নয়।

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

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

-জন ক্রাউট


sudoহয় অতিশয় থেকে আলাদা su -। এই উদাহরণস্বরুপ বারবার উল্লেখ করা হয়েছে, SHW , জোসেফ আর , নিজেকে , hbdgaf এবং বেশ সম্ভবত বিভিন্ন আরোও নতুন মন্তব্য ক্ষেত্রটি অত্যন্ত অন্তর্ভুক্ত করা ছোট ...
একটি CVn

সব সত্য, তবে অপ্রাসঙ্গিক। আপনি রুট হওয়ার বিকল্প উপায় এবং রুট অ্যাক্সেস দেওয়ার ঝুঁকি নিয়ে আলোচনা করছেন, তবে "রুট পাসওয়ার্ড পরিবর্তন করতে পারে না এমন রুট অ্যাক্সেস" এর কোনও প্রভাব নেই।
গিলস

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

-3

একটি উপায় /etcহ'ল তা লিখিতযোগ্য নয় তা নিশ্চিত করা । কারও দ্বারা, যতক্ষণ না sudoerচারপাশে থাকতে পারে ।

এটি নেটওয়ার্কের উপর দিয়ে মাউন্ট করে এবং অন্যদিকে ডিভাইসটি লেখা যায় না তা নিশ্চিত করেই করা যেতে পারে।

এটি এমন কোনও স্থানীয় ডিভাইস ব্যবহার করে করা যেতে পারে যা এতে লেখার অ্যাক্সেসকে বাধা দেয়। ( write blockerহার্ডওয়্যার দেখুন )

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

এটি নিশ্চিত হওয়ার জন্য যে ব্যবহারকারী আপনার লগইন ক্ষমতাগুলিও পঠন করতে পারে না আপনার কেবল পঠনযোগ্য পঠন থাকতে হবে /binএবং /sbin

এবং আপনার কাছে এমন একটি স্ক্রিপ্ট থাকতে হবে যা পর্যায়ক্রমে নেটওয়ার্ক সংযোগ পুনরুদ্ধার করে।

(একটি বিভক্ত হিসাবে: আপনি যদি sudoer কে কেবলমাত্র খুব সীমিত কমান্ডের অনুমতি দেন এবং তাদের প্রত্যেকের জন্য তারা সুরক্ষিত থাকে যে তারা সেগুলি ভেঙে ফেলতে পারে না বা তাদের প্রতিস্থাপন করতে পারে না ইত্যাদি), তবে আপনি /etcলেখার সময় এটিকে আটকাতে পারবেন ..)


কেবল মাউন্টিং / ইত্যাদি কেবল পঠনযোগ্য, সম্ভবত সম্ভব (আপনার যেমন initrd এর বুট স্ক্রিপ্টগুলিতে পাইভট-রুটের সময় সতর্কতা অবলম্বন করতে হবে), বরং ভঙ্গুর সেটআপ হওয়ার ঝুঁকিটি চালায় runs এছাড়াও, রুট অ্যাক্সেস সহ ব্যবহারকারী এমন অনেকগুলি কাজ করতে পারে যা অন্যান্য ব্যবহারকারীর মূল বৈশিষ্ট্যগুলি অর্জন করার ক্ষমতাকে পঙ্গু করে দেয় যা / ইত্যাদিতে পরিবর্তনগুলি জড়িত না।
একটি সিভিএন

@ মাইকেলKjörling সেটআপটি ভঙ্গুর নয়, আমি প্রায়শই এটি ব্যবহার করি (কেবলমাত্র পঠনযোগ্য স্থানীয় মাউন্ট হিসাবে)।
অ্যাঞ্জেলো ফুকস

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

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

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