ব্যবহারকারী পাই সুডো অনুমতিগুলি কীভাবে পরিবর্তন করবেন; কিভাবে বিভিন্ন অনুমতি সহ অন্যান্য অ্যাকাউন্ট যুক্ত করবেন?


14

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

sudo reboot

আমি কি পাই ব্যবহারকারীর প্যাকেজগুলি পুনরায় বুট করার (এবং ইনস্টল) অনুমতি দেওয়ার অনুমতিগুলি সম্পাদনা করতে পারি?

আমার কি বিভিন্ন অনুমতি সহ একাধিক অ্যাকাউন্ট থাকতে পারে?

ধন্যবাদ


1
প্রদত্ত উত্তরগুলির মধ্যে কোনটি সহায়ক হয়েছে? আপনি যে উত্তরটি চেয়েছিলেন সেগুলির মধ্যে কি কেউ আছেন? দয়া করে উত্তর হিসাবে চিহ্নিত করুন।
Anders

হ্যাঁ. আপনি যদি এখনও আগ্রহী হন, আমি তাদের জুন 2017 এ আপডেট করেছি - 4 বছর 2 মাস আগে এই প্রশ্ন জিজ্ঞাসা করা হয়েছিল, এবং আমাকে আজ সমস্যার সমাধানের পথে নিয়ে গেছে। নীচের উত্তরগুলি দেখুন:
এসডসোলার

উত্তর:


22

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

pi ALL=(ALL) NOPASSWD: ALL

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

এটি হতে পারে যে অ্যাডমিন পাসওয়ার্ড জারি না করে সুডো ব্যবহার করে কমান্ড চালাতে সক্ষম হওয়াই হ'ল এসএসএইচ-র মাধ্যমে সুডো ব্যবহার করা বিপজ্জনক বলে আপনি মনে করেন (এটি করার ক্ষেত্রে আমি কোনও সাধারণ সমস্যা শুনিনি ... তাই আপনি কি করতে পারেন আপনার বিপদটি ঠিক কী বোঝাতে চান?)।

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

সুতরাং, আমি আশা করি এখানে এই ছোট্ট রেসিপিটি আপনার যা প্রয়োজন:

$ sudo adduser admin

এটি একটি ব্যবহারকারী "অ্যাডমিন" তৈরি করবে, একটি পাসওয়ার্ড জিজ্ঞাসা করবে, তার হোম ডিরেক্টরি তৈরি করবে etc.

$ sudo adduser admin sudo
$ sudo adduser admin adm

এটি "অ্যাডমিন" ব্যবহারকারীকে "সুডো" এবং "অ্যাডমিন" ব্যবহারকারীদের মধ্যে রাখবে put এবং যেহেতু লিনাক্সে ব্যবহারকারীগণকে ব্যবহারকারী গোষ্ঠীতে যুক্ত করে অনুমতিগুলি পরিচালিত হয়, এটি "অ্যাডমিন" ব্যবহারকারীকে তার সমস্ত সুযোগ-সুবিধা এবং অনুমতি দেয়। এর মধ্যে একটি লাইন রয়েছে /etc/sudoersযা ব্যবহারকারীগোষ্ঠী "sudo" এ থাকা যে কোনও ব্যবহারকারীকে কোনও কমান্ডকে রুট হিসাবে চালানোর অনুমতি দেয়; এবং এই অধিকারটি আমাদের কোনও অ্যাডমিন ব্যবহারকারীর জন্য প্রয়োজন (তাকে "অ্যাডমিতে যোগ করা" তাকে কিছু লগ ফাইল /var/logব্যবহার না করে sudoএবং কয়েকটি অন্যান্য জিনিস পড়তে দেয় )। আপনি sudoঅ্যাডমিন হিসাবে লগ ইন করার পরে আপনাকে এখনও ব্যবহার করতে হবে - তবে আপনি যখন প্রায় পাঁচ মিনিটের জন্য সুডো ব্যবহার করেন না তখন sudo বার বার প্রশাসকের পাসওয়ার্ডের জন্য জিজ্ঞাসা করে।

এখন লগ অফ এবং ব্যবহারকারী "অ্যাডমিন" হিসাবে লগ ইন করুন। কি না তা পরীক্ষা

$ sudo apt-get update
$ sudo apt-get upgrade

কাজ করে। যদি এটি হয় তবে আপনি "পাই" ব্যবহারকারীর কিছু সুযোগ-সুবিধাকে প্রত্যাহার করতে পারেন, কারণ আপনি এখন নিশ্চিত যে আপনার প্রশাসকের ব্যবহারকারীর অধিকার রয়েছে:

$ sudo deluser pi sudo
$ sudo deluser pi adm

এটি ব্যবহারকারী "পাই" ব্যবহারকারী গোষ্ঠী "সুডো" এর বাইরে ফেলে দেয় of

$ sudo visudo

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

এর পরে, আপনি ব্যবহারকারী "পাই" হিসাবে পুনরায় লগইন করতে পারেন। আপনি যদি কিছু আদেশের জন্য প্রশাসকের কাছে যেতে চান তবে su("ব্যবহারকারী স্যুইচ করুন") ব্যবহার করুন:

$ su - admin

আপনি যদি আরও ব্যবহারকারী যুক্ত করতে চান: sudo adduser <name>উপরের মতো ব্যবহার করুন , তারপরে ব্যবহারকারী "পাই" ব্যবহারকারীর গোষ্ঠীগুলির তালিকাটি পরীক্ষা করুন:

$ groups pi
pi : pi dialout cdrom audio video plugdev games users netdev input

ব্যবহারের sudo adduser <username> <groupname>এই ইউজারগ্রুপ বিভিন্ন আপনার নতুন ব্যবহারকারী যোগ করার জন্য, তাকে অডিও ব্যবহার করতে সক্ষম, ভিডিও ত্বরিত, প্লাগেবল ডিভাইস, ইত্যাদি ব্যবহার যদি নিশ্চিত না হন, এই ইউজারগ্রুপ সব তাকে জুড়ুন (কিন্তু "উবুন্টু" না!)।


2
visudoএকটি কমান্ড যা sudoers ফাইল সম্পাদনা করতে আপনার ডিফল্ট সম্পাদক ব্যবহার করবে। এটি ছাড়াই এই ফাইলটি সম্পাদনা করা ব্যথা হতে পারে এবং এটির প্রস্তাব দেওয়া হয় না । আপনি sudo update-alternatives --config editor
20.38

অথবা আপনি VISUAL=vim visudoএই সময়ের জন্য এটি চেষ্টা করতে পারেন । সম্পাদক হিসাবে ডিফল্ট প্রোগ্রাম পরিবর্তন করার দুর্দান্ত উদাহরণ।
Anders

6

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

ডিফল্ট সিস্টেম ইনস্টলেশনতে আপনার এমন লাইনটি খুঁজে পাওয়া উচিত:

pi ALL=(ALL) NOPASSWD: ALL

এটি ব্যবহারকারীকে এমনকি পাসওয়ার্ড না দিয়েই সমস্ত ক্যাম্যান্ডগুলি ব্যবহারকারী হিসাবে চালানোর sudoঅনুমতি দেওয়ার জন্য বলে । আপনি সর্বশেষ পরিবর্তন করতে পারেন এবং কমা চালানোর অনুমতিপ্রাপ্ত কমান্ডের সীমানাঙ্কিত তালিকা (তাদের সম্পূর্ণ পথ সহ) নির্দিষ্ট করতে পারেন। আপনার ক্ষেত্রে আপনার এই লাইনটি এতে পরিবর্তন করা উচিত:pirootALL

pi ALL=(ALL) NOPASSWD: /usr/bin/apt-get, /sbin/shutdown

মনে রাখবেন যে ব্যবহারকারীকে sudoersপ্রভাবিত করার ক্ষেত্রে আরও একটি লাইন রয়েছে pi:

%sudo   ALL=(ALL:ALL) ALL

এই লাইনটি সমস্ত ব্যবহারকারীকে গ্রুপে sudo( %নামের সামনের চরিত্রের অর্থ এটি ব্যবহারকারীর নামের পরিবর্তে একটি গ্রুপ নাম) সমস্ত OWN পাসওয়ার্ড জানে এমন সমস্ত পাসওয়ার্ড চালাতে দেয় । আপনি যদি এই লাইনটি ছেড়ে দেন তবে ব্যবহারকারী অন্য সমস্ত কমান্ড চালাতে সক্ষম হবে তবে তার পাসওয়ার্ডের জন্য জিজ্ঞাসা করা হবে।pi

আপনি যদি এটিটি ঘটে থেকে আটকাতে চান তবে আপনি এই লাইনটি সরাতে পারেন বা ব্যবহারকারীকে দল piথেকে অপসারণ করতে পারেন sudo

/etc/sudoersফাইলটিতে পরিবর্তন করার পরে আপনি পরিদর্শন করতে চাইতে পারেন যে sudo -l -U piকমান্ড কল করে এটি যা চায় তা সত্যই করে ।

অবশ্যই আপনি বিভিন্ন অ্যাকাউন্ট তৈরি করতে পারেন এবং sudoersতাদেরকে বিভিন্ন কমান্ডে অ্যাক্সেস দেওয়ার কনফিগার করতে পারেন ।


1

মে 2018, এটি এখনও ধারণায় নির্ভুল তবে পরবর্তী সংস্করণগুলির সাথে পদ্ধতিটি পরিবর্তিত হয়েছে:

প্রথমত, ফাইলগুলি vi বা ন্যানো বা লিপপ্যাড বা ইম্যাক্সে সরাসরি সম্পাদনা করা উচিত - যে কোনও আপনার প্রিয় পাঠ্য সম্পাদক editor

এই ফাইলটিতে pi ব্যবহারকারীর নাম উল্লেখ করা হয়নি:

/etc/sudoers

এবং ফাইলের শেষ লাইনটি হ'ল:

#includedir /etc/sudoers.d

এটি একটি ডিরেক্টরি যা নামের একটি ফাইল রয়েছে

010_pi-nopasswd

যে এই একক লাইন রয়েছে

pi ALL=(ALL) NOPASSWD: ALL

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

এটা অসাধারণ.

গ্রুপ লাইন %sudo ALL=(ALL:ALL) ALLএখনও হিসাবে আছে

সুতরাং প্রশ্নের প্রথম অংশের উত্তর দিতে:

আমি যখন /etc/sudoers/sudoers.d/010_pi-nopasswd ফাইলটি সরানোর জন্য একটি ডিরেক্টরি স্তর আপ করতে পেরেছি তখন অন্তর্ভুক্তটিকে ব্যর্থ করতে, তারপরে 15 মিনিট অপেক্ষা করেছিল, এটি আমার রাস্পবিয়ান সিস্টেমটিকে সুডো ব্যবহারের পরে আমার নিজের পাসওয়ার্ডের জন্য অনুরোধ জানায়, ঠিক আমার উবুন্টুর মতো 14.04 এলটিএস সিস্টেম করত।

তারপরে যখন আমি এটিকে এটি যেখানে ফিরিয়ে আনি, 10 মিনিটের পরেও এটি আমাকে আর অনুরোধ করে না।

পুনরায় বুট করার দরকার নেই। ভয়েলা, sudo ব্যবহার করার সময় কোনও পাসওয়ার্ডের জন্য অনুরোধ জানানো হবে না

010_pi-nopasswd ফাইলটি উপস্থিত ছিল না তা ছাড়া আমার লুবুন্টু 14.04 এলটিএস পরীক্ষা সিস্টেমে একই সেটআপ রয়েছে। লুবন্তু মূল ব্যবহারকারী হিসাবে পাই সহ ইনস্টল করা হয়েছিল। এটি প্রতিবার যখন আমি সুডো ব্যবহার করতাম তখন আমাকে অনুরোধ জানায়, তারপরে 10 মিনিটের পরে আমাকে অনুরোধ জানায় না।

এই একই ফাইলটি আমি উবুন্টু সিস্টেমে যুক্ত করেছি ঠিক যেমনভাবে রাস্পবিয়ান সেটআপ করা হয়েছে, (আপনি এখনও 10 মিনিটের উইন্ডোতে থাকাকালীন এই ফাইলটিতে 0440 chmod মনে রাখবেন) - এবং

ভয়েলা, আমি 15 মিনিটের পরেও পাই হিসাবে লগ ইন করলে এটি আর আমার নিজের পাসওয়ার্ডের জন্য আমাকে অনুরোধ করে না।

আবার কোনও পরিবর্তন পুনরায় বুট না করে তাত্ক্ষণিকভাবে পরিবর্তন ঘটে

মূল ব্যবহারকারী পাই হিসাবে লগ ইন করার সময় sudo কমান্ডটি ব্যবহারের অনুরোধটি কীভাবে অক্ষম করতে এবং সক্ষম করতে যায় তার জন্য মে 2018 এর উত্তর। অন্যান্য ব্যবহারকারী এবং গোষ্ঠীগুলি একই ফ্যাশনে কনফিগার করা যায়।

- উবুন্টু 16.04 এলটিএস-এর জন্য আপডেট এই সিস্টেমটিও খুব একই। তবে, বৃহত্তম পার্থক্যটি হল 16.04 এর অনেক বেশি শক্ত ফাইল অনুমতি রয়েছে তাই কাজটি suমোডে করা আবশ্যক । আপনি যদি নিজের মূল পাসওয়ার্ডটি ভুলে গিয়ে থাকেন তবে আপনি এটি ব্যবহার করে এটি আপনার সাধারণ প্রম্পট থেকে পুনরায় সেট করতে পারেন sudo passwd rootতারপরে suকমান্ডটি কাজ করবে এবং আপনি সেখান থেকে যেতে পারেন।


গুগলের মাধ্যমে এটি সবেমাত্র পাওয়া গেছে - সুতরাং যদি আমি এটি অনুসরণ করি তবে ব্যবহারকারীর এখনও সূডার গ্রুপে থাকা দরকার, তবে /etc/sudo.d নির্দিষ্ট ব্যবহারকারীকে কতবার পাসওয়ার্ডের জন্য জিজ্ঞাসা করা হয় তা নিয়ন্ত্রণ করে?
দীর্ঘতম

1
হাঁ। আপনি এটা পেয়েছেন. সদস্য হওয়া sudoersসাধারণত ব্যবহারকারী তৈরির সময় করা হয়। উদাহরণ ব্যবহার করুন: আপনি নোট করবেন যে sudo apt-get update && sudo apt-get upgradeকমনাল কমান্ড স্ট্রিং সুডোকে দু'বার আহ্বান জানায় তা বিরক্তিজনক যে এটি আপগ্রেডের আগে আবার থামিয়ে পাসওয়ার্ড চাইতে পারে। সুতরাং আমি আমার একটি লগইন নাম (পাই) কখনও প্রম্পট না করার জন্য আমার সেট করেছিলাম এবং তারপরেও sudo apt-get update -y && sudo apt-get upgrade -yএটি ব্যবহার করি যাতে এটি একইভাবে বড় পরিবর্তনগুলি করতে ঠিক আছে বলে জিজ্ঞাসা করা বন্ধ করে না। এটি আরও ইউনিক্স-মতো করতে। আমি যা চাই তা কেবল করুন, এবং আমি যদি দূরে চলে যাই তবে আমি এটি শেষ করতে চাই।
এসডসোলার

0

কোনও ব্যবহারকারীকে প্যাকেজ ইনস্টল করার অনুমতি দেওয়ার চেয়ে এসএসএইচের মাধ্যমে সুডো অ্যাক্সেসের অনুমতি দেওয়া আরও নিরাপদ। আপনি যদি সত্যিই এটি সম্পর্কে উদ্বিগ্ন হন তবে /etc/sudoersএখান থেকে লাইনটি পরিবর্তন করুন :

pi ALL=(ALL) NOPASSWD: ALL

প্রতি

pi ALL=(ALL) PASSWD: ALL

এর অর্থ আপনি কোনও সেশনে প্রথমবার sudo ব্যবহার করার পরে এবং কয়েক মিনিটের সময়সীমা পেরিয়ে যাওয়ার পরে আপনাকে একটি পাসওয়ার্ডের জন্য অনুরোধ জানানো হবে। আপনি /etc/sudoersসরাসরি সম্পাদনা করতে পারবেন না ; এটি করতে ব্যবহার করুন sudo visudo

দেখে মনে হচ্ছে ক্রিজিসটফ ঠিক উত্তর পেয়েছে। আপনি কি নিশ্চিত যে প্রতিবার নতুন প্যাকেজ ইনস্টল করার সময় আপনাকে পুনরায় বুট করা দরকার? আপনি যদি কোনও নতুন কার্নেল বা ফার্মওয়্যার ইনস্টল না করেন তবে অন্য কোনওটিকে পুনরায় বুট করার দরকার নেই। এটি একটি মানের ওএস যা আমরা এখানে পেয়েছি ...


3
timestampটাইমআউট উল্লেখ করা একটি ভাল ধারণা। এটি ডিফল্টরূপে 15 মিনিট, বিটিডাব্লু। নোটটি PASSWDডিফল্ট (যদি NOPASSWDএই কমান্ড তালিকায় আগে নির্দিষ্ট না করা হত)। /etc/sudoersআপনি কী করছেন তা যদি জানেন তবে সমস্যা ছাড়াই সরাসরি সম্পাদনা করা যেতে পারে তা নোট করুন । ব্যবহারের visudoফলে অস্থায়ী ফাইলের পরিবর্তনের মধ্যবর্তী স্থানে ফাইলটি রোধ করা যায় (যা সিনট্যাক্স ত্রুটিগুলি এবং / অথবা সুরক্ষা সমস্যার সমাধান করতে পারে), এটি একাধিক যুগপত সম্পাদনার বিরুদ্ধে এই ফাইলটি লক করে এবং ফাইলটি লেখার আগে কিছু বাক্য গঠন পরীক্ষা করে।
ক্রিজিসটোফ অ্যাডামস্কি

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

এই মন্তব্যটির জন্য টিএনএক্স, @ ক্রিজিসটফ। আমি আমার উত্তরে সংশোধন করেছি। এবং আপনি সম্পাদনা সম্পর্কে ঠিক বলেছেন। প্রকৃতপক্ষে, আমার 16.04 মেশিনে, আমি কেবল পাই লাইনটি সরাসরি sudoers ফাইলে রেখেছি, কারণ sudoers.d এ একটি রিডমি রয়েছে। আমি এটি কেবল 'কারণে ফেলে রেখেছি, তবে কমপক্ষে পাইয়ের অনুমতিগুলি প্রক্রিয়া করা হচ্ছে। (আমার পছন্দের সম্পাদকটি VI ষ্ঠ / ভিআইএম, বিটিডব্লিউ, তবে কখনও কখনও লিফপ্যাড বা আইডল ব্যবহার করবেন e ইম্যাকগুলিতে আর আয়ত্ত করা হয়নি - ১৫ বছর দীর্ঘ সময় - এবং আমি ইমাকের চেয়ে ভিএম-তে আরও অনেক বেশি কিছু করতে পারি) , এখন পর্যন্ত।) আপনাকে আবার ধন্যবাদ।
এসডসোলার

0

যা যা স্ক্রস করেছে তার একটি বিকল্প, /etc/sudoers.d/010_pi-nopasswdচালিয়ে ফাইলটি মুছুন sudo rm /etc/sudoers.d/010_pi-nopasswd। অনেক সহজ এবং নিরাপদ তারপরে মূল সুডোর ফাইল সম্পাদনা করুন যা sudo ভেঙে দিতে পারে।

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