কমান্ড লাইন থেকে ব্যবহারকারীকে sudo অনুমতি অক্ষম করুন


18

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


আপনি কীভাবে আপনার গোষ্ঠীগুলি সেট আপ করেন তার উপর নির্ভর করে ভিসুডো টাইপ করুন
ওয়েজক্স

উত্তর:


14

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

বিকল্পভাবে, আপনি প্রশাসক গোষ্ঠী থেকে ব্যবহারকারীকে সরাতে পারেন। স্ক্রিনমুখী viযদি কমান্ড লাইনকে যথেষ্ট হিসাবে বিবেচনা করা vigrহয় তবে উপযুক্ত লাইন থেকে ব্যবহারকারীর নামটি চালান এবং মুছুন।

"খাঁটি" কমান্ড লাইন সমাধানের জন্য চেষ্টা করুন gpasswd, এটি / ইত্যাদি / গোষ্ঠী পরিচালনা করে এবং গোষ্ঠী থেকে ব্যবহারকারীদের যোগ করতে এবং মুছতে পারে।

root@toki:~# id -Gn username
username adm dialout cdrom plugdev lpadmin admin sambashare
                                         # ^- the group to remove
root@toki:~# gpasswd -d username admin
Removing user username from group admin

root@toki:~# id -Gn username
username adm dialout cdrom plugdev lpadmin sambashare
                                        # ^- username not a member
root@toki:~# gpasswd -a username admin
Adding user username to group admin
root@toki:~# id -Gn username
username adm dialout cdrom plugdev lpadmin admin sambashare

নীচে আমার প্রথম উত্তরটি উপলব্ধি করার আগে এটি করার মতো কম বোবা উপায় ছিল।

আপনি যদি আরও জটিল উপায় এটি করতে চান তবে আপনি এটি ব্যবহার করতে পারেন usermod

usermodম্যান পৃষ্ঠার একটি উদ্ধৃতি এখানে :

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
    A list of supplementary groups which the user is also a member of.
    Each group is separated from the next by a comma, with no intervening
    whitespace. The groups are subject to the same restrictions as the
    group given with the -g option.

    If the user is currently a member of a group which is not listed, the
    user will be removed from the group. This behaviour can be changed via
    the -a option, which appends the user to the current supplementary group
    list.

সুতরাং আপনাকে বাদে ব্যবহারকারীর জন্য সমস্ত গ্রুপ নির্দিষ্ট করতে হবে admin

root@toki:~# id username
uid=1000(username) gid=1000(username) groups=1000(username),4(adm),20(dialout),24(cdrom),46(plugdev),111(lpadmin),119(admin),122(sambashare)

root@toki:~# usermod -G 4,20,24,46,111,122 username

root@toki:~# id username
uid=1000(username) gid=1000(username) groups=1000(username),4(adm),20(dialout),24(cdrom),46(plugdev),111(lpadmin),122(sambashare)

শেষ পর্যন্ত, এটি প্রশ্নের চেতনা লঙ্ঘন করে তবে users-adminব্যবহারকারী এবং গোষ্ঠীগুলিকে সংশোধন করতে কমান্ড লাইন থেকে টাইপ করা যেতে পারে ।


দেখে মনে হচ্ছে গ্রুপটি sudo
যথার্থতার অপসারণের

2

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

প্রথমে রুট অ্যাকাউন্টটি সক্ষম করুন:

$ sudo passwd root

উবুন্টু ডকুমেন্টেশন আরও তথ্য ।

তারপর:

  • রুট হয়ে
  • ব্যাকআপ এবং তারপরে / ইত্যাদি / গ্রুপ সম্পাদনা করুন
  • পরিবর্তনগুলি পরীক্ষা করতে আবার ব্যবহারকারী হন

এটাই:

$ su
# cp /etc/group /etc/group.bak
# nano /etc/group               # find a line like 'sudo:x:27:guest', remove the
                                # user name (i.c. 'guest') and save the file
# exit,
$ [try any sudo command]

ব্যবহারকারী 'অতিথি' এখন sudoers ফাইল থেকে সরানো হয়েছে। যদি সবকিছু ঠিকঠাক হয় তবে কোনও সুডোর কমান্ডের মতো একটি বার্তা ফিরে আসা উচিত:

guest is not in the sudoers file.  This incident will be reported.

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

চিয়ার্স!

- লিনাক্স্রেভ

(উবুন্টু 12.04)


1

সতর্কতা

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

soduers

অন্য উত্তরে বর্ণিত হিসাবে । /etc/sudoersশেলের মধ্যে ভিজুডো আহ্বান করে সম্পাদনা করুন :

sudo select-editor # this is optional. it will allow you to select your default editor in shell
sudo visudo

তারপরে লাইনটি পরিবর্তন করুন যা এর সাথে অনুরূপ কিছু বলে:

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

এটি:

# root may gain root privileges
root ALL=(ALL) ALL

অথবা লাইনটি মুছুন, আপনি যদি নিশ্চিত হন তবে আপনার মূল ব্যবহারকারী অ্যাকাউন্টটি সক্ষম করা আছে।

গ্রুপ

ডিফল্ট ব্যবহারকারী 'প্রশাসক' গোষ্ঠীর সদস্য। আপনি যদি এটি পছন্দ করেন তবে আপনি সেই সাথে সেই গোষ্ঠীর ব্যবহারকারীদের সদস্যপদটি প্রত্যাহার করতে পারেন। কি যে আমার শেষ লিঙ্কটি অনুসরণ করে বা লাইন থেকে তার নাম মুছে ফেলার admin:x:120:defaultuserমধ্যে /etc/groupফাইল:

cp -n /etc/group /etc/group.bak && \
sed -i 's/\(admin:x.*\)defaultuser\(.*\)/\1\2/g' /etc/group

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