Как изменить права пользователя pi sudo; Как добавить другие учетные записи с другими разрешениями?
Поскольку я иногда использую свой Pi поверх SSH, я понял, что опасно разрешать SSH доступ к командам sudo. Таким образом, я планирую отключить это разрешение в ближайшее время. Но когда я устанавливаю пакеты, мне обычно приходится перезагружаться. В настоящее время это разрешено только через суперпользователя.
Можно ли как-то отредактировать разрешения пользователя pi, чтобы он мог перезагружать (и устанавливать) пакеты?
Могу ли я иметь несколько учетных записей с разными разрешениями?
Для пояснения: нет никаких «команд sudo», есть только команды, которым для корректной работы требуются привилегии root, и sudo это команда для получения их для одной команды: sudo просто запускает данную команду как root (читается как «sudo» как императив предложение «суперпользователь, сделай что-нибудь!»). Правила, по которым пользователи могут это делать, записаны в /etc/sudoers . При установке по умолчанию в Raspbian пользователь по умолчанию «pi» получает свои разрешения из этой строки:
Это означает: «пользователю ‘pi’ на ВСЕХ хостах разрешено переключаться на ВСЕХ пользователей, и ему НЕ нужно вводить свой ПАРОЛЬ при использовании ВСЕХ (читай: любых) команд». (Я использовал сумасшедшую грамматику здесь, чтобы сохранить порядок строк. Примечание о том, почему существует способ различать хосты: таким образом, один и тот же файл sudoers может быть распределен по нескольким машинам в сети, поэтому у сетевого администратора меньше работы) ,
Может случиться так, что возможность запускать команды с использованием sudo без ввода пароля администратора — это причина, по которой вы считаете опасным использование sudo через SSH (я не слышал об общей проблеме с этим . так что вы могли бы объясните, какую именно опасность вы имеете в виду?).
Конечно, у вас может быть несколько пользователей с разными разрешениями. Но я боюсь, что использование sudo все еще является лучшим способом управления этими разрешениями.
Итак, я надеюсь, что этот маленький рецепт здесь то, что вам нужно:
Это создаст пользователя «admin», попросит пароль, создаст его домашний каталог и т. Д.
Это поместит пользователя «admin» в группы «sudo» и «adm». А поскольку разрешениями в Linux управляют путем добавления пользователей в группы пользователей, это дает пользователю «admin» все необходимые ему разрешения и разрешения. Есть строка, /etc/sudoers которая позволяет любому пользователю, входящему в группу «sudo», выполнять любую команду от имени пользователя root; и эта привилегия — то, что нам нужно для пользователя с правами администратора (добавление его в «adm» позволяет ему читать некоторые файлы журнала /var/log без использования sudo и некоторые другие вещи). Вам все еще нужно использовать, sudo когда вы вошли в систему как администратор — но теперь sudo снова и снова запрашивает пароль администратора, если вы не использовали sudo в течение пяти минут.
Теперь выйдите и войдите как пользователь «admin». Проверьте,
работает. Если это так, вы можете отозвать некоторые привилегии пользователя «pi», потому что теперь вы уверены, что у вашего администратора есть нужные привилегии:
Это выбрасывает пользователя «pi» из группы пользователей «sudo».
Это запустит редактор, который позволит вам редактировать /etc/sudoers . Поместите хэш-тег ( # ) перед строкой, начинающейся с «пи», закомментировав ее (или просто удалите). Затем сохраните и выйдите из редактора, visudo немедленно перезагрузит правила привилегий. Теперь пользователю «pi» больше не разрешено использовать sudo.
После этого вы можете повторно войти в систему как пользователь «пи». Если вы когда-нибудь захотите переключиться на администратора для некоторых команд, используйте su («переключить пользователя»):
Если вы хотите добавить больше пользователей: используйте, sudo adduser как указано выше, затем проверьте список групп пользователей, которые есть у пользователя «pi»:
Используйте, sudo adduser чтобы добавить своего нового пользователя в несколько из этих групп пользователей, позволяя ему использовать аудио, ускоренное видео, использовать подключаемые устройства и т. Д. Если не уверены, добавьте его во все эти группы пользователей (но не в «sudo»!).
Русские Блоги
Управление пользователями Raspberry Pi
Управление пользователем Raspberry Pi должно быть обработано на терминале командной строки. Имя пользователя по умолчанию — PI, а пароль — Raspberry. Вы можете добавить пользователей и изменить пароль каждого пользователя.
1. Измените пароль (измените пароль)
Когда вы входите в систему с пользователями PI, вы можете использовать команду PassWD для изменения своего пароля.
Введите Passwd в командную строку и нажмите Enter. Клемма командной строки позволит вам ввести текущий пароль для проверки. После проверки вам потребуется ввести новый пароль. После того, как проигрыш будет завершен, вам потребуется подтвердить новый пароль для подтверждения. Обратите внимание, что при вводе пароля в командной строке не будет отображаться символы. После того, как вы завершите подтверждение и не получите ошибок, командная строка будет распечатать успешную информацию (PassWD: пароль успешно обновлен), и новый пароль вступит в силу немедленно.
Если пользователи, которые вы используете, имеют разрешения SUDO, вы можете изменить их пароль через команду имени пользователя и PassWD других пользователей. Например, Sudo Passwd Bob позволит вам установить пароль пользователя BOB и параметров других пользователей (например, имена). Вы можете просто нажать на машину, чтобы пропустить эти варианты.
2. Удалить пароль использования (удалить пароль пользователя)
Вы можете удалить пароль пользователя BOB через команду sudo passwd bob -d.
3. Создайте нового пользователя (создайте нового пользователя)
Вы можете использовать команду Adduser для создания других пользователей на вашем устройстве Raspberry Pi.
Ввод Sudo Adduser Bob предложит вам ввести пароль нового пользователя Bob, или вы можете пройти через машину и оставить пробел, чтобы указать, что вы не установите пароль.
3.1 Домашняя папка (домашняя папка)
Когда вы создаете нового пользователя, новый пользователь создаст вашу собственную домашнюю папку в/Home/Directory. Домашняя папка пользователя PI расположена в/home/pi/.
3.2 SKEL
Новый пользователь создан выше, и файл в каталоге/etc/skel/skel также скопирует копию в домашнюю папку пользователя. Вы можете добавить или изменить файлы, аналогичные/и т. Д./Skel/Medium .bashrc, как ».
4. Sudoers (пользователь Sudo)
Пользователь PI по умолчанию в Raspberry Pi — это Sudoer (пользователь SUDO). Этот тип пользователя может ввести SUDO, прежде чем ввести команду, чтобы получить команду выполнения корневого разрешения перед входом в командную строку, а также может быть полностью переключен на пользователя ROOT через Sudo SU.
Чтобы добавить пользователя в группу Sudoer, вам необходимо использовать пользователя Sudo для ввода команды Sudo Visudo, чтобы открыть файл конфигурации и найти «Спецификация привилегии пользователя» в файле ». Root All = (All: All) все » ниже. Скопируйте эту строку и замените корень на соответствующее имя пользователя. Чтобы избежать проверки паролей, корневые разрешения используются для изменения его на NotAssWD: все. Следующий пример дает пользователям Боба доступ к разрешениям SUDO:
Сохраните и выйдите, чтобы завершить модификацию. Будьте осторожны, потому что эти операции могут случайно удалить ваши собственные разрешения SUDO.
Обратите внимание, что вы можете изменить редактор, используемый командой Visudo через следующую команду (редактор по умолчанию — Nano):
Приведенная выше команда изменяет редактор на VIM.
5. Удалить пользователя (удалить пользователя)
Вы можете использовать команду userdel для удаления одного пользователя в вашей системе. Дополнительные теги могут одновременно удалять свои домашние папки:
How to add new users and add users to groups
If multiple people are using the same raspberry pi you may want to add new users so each person has their own user account.
Adding a new user is simple enough, the following method was done whilst logged in as the default user ‘pi‘ which has the root or ‘sudo‘ privileges needed to add and modify user accounts.
For this example we will create a new user called ‘newuser‘, simply replace this with whatever name you want. To add the user ‘newuser‘ use the following command:
sudo adduser newuser
This will create a new user along with a group ‘newuser’ and new home directory. You’ll also be prompted to enter a password for the new user. If you ever need to change the password of the ‘newuser‘ you can do so with the command:
sudo passwd newuser
In order for the user to have the same privileges as the default account ‘pi‘ we’ll need to add the it to several user groups. To find out what groups the user ‘pi‘ belongs to type the following command:
You can see pi belongs to several groups such as ‘audio‘ and ‘video‘
Do the same for the ‘newuser’:
You’ll see it only belongs to one group ‘newuser‘
We need to add new user to the same groups as the user ‘pi‘ to enable him to use audio, accelerated video, pluggable devices, etc
To add a user to a group we use the command:
So to add ‘newuser‘ to the group ‘dialout‘ type:
sudo adduser newuser dialout
Now repeat this step for all the remaining groups apart from the group ‘pi‘. If you don’t want the new user to have admin or root (‘sudo‘) privileges then don’t add the user to the groups ‘sudo‘ or ‘adm‘.
You can check the user has been added to correct groups by using the command groups newuser again.
Deleting a user and removing a user from a group
If you want to remove a user from a group you can use the following command:
So to remove user ‘newuser‘ from the group ‘adm‘ you would type:
sudo deluser newuser adm
A similar command can be used to delete an entire user along with it’s home directory:
How to Add a New Raspberry Pi Group
Published by mitch on September 10, 2020 September 10, 2020
How do you add a new Raspberry Pi group?
You can create a new Raspberry Pi group with the addgroup command.
For an example of how to do that, see the steps below.
Step 1. Get to the command line
Remote login over ssh or open up a terminal window via the desktop.
Step 2. Add a new group
To add a new group, run this command (and give sudo your password when prompted):
You should see a response like this (the GID may be different on your system):
Step 3. Verify the group exists using getent
You can verify a group exists using the getent command:
You should see a response like this:
The last value should match the GID returned when you created the group.
For more information on how the getent command works, see may article How to List Raspberry Pi Users.
Step 4. Add a user to the new group
To add a user to the new group use the adduser command:
Don’t worry. It won’t create a new user if one already exists.
You should see a response like this:
Step 5. Verify the user has been added to the new group
To verify that the user has been added to the new group, use the groups command:
You should see a response like this:
Notice that the last group is the group created above.
Step 6. Add a user to groups using usermod
Another way to add a user is to use the usermod command.
The command above adds user luke to the audio and video groups.
You can verify that the user was added to the group using the groups command:
You should see a response like this:
Step 7. List members of a group
Once you have added users to a group, you can see who has been added to the group by again using the getent command:
You should see a response like this:
That shows that user luke and pi are members of the robots group.
Troubleshooting
If you would like to see all of the groups in the system, dump the contents of the /etc/group file:
You can filter down to non system groups using getent again:
You should see a response like this:
When a user is created, a group that matches their username is also created. So the values listed are actually all group names.
Conclusion
In this article you learned how to:
- Add a new group
- Verify the new group exists
- Add a user to a new group
- Verify that the user had been added to the group
- List and filter groups
What does each of the default groups on the raspberry pi do?
I need to create a more limited user for the raspberry pi. I can guess what some of these groups do (cdrom, sudo, i2c, spi) but what do some of these other groups do (adm, dialout, pi)?
Here is the list on my pi running jesse lite:
pi adm dialout cdrom sudo audio video plugdev games users input netdev gpio i2c spi
2 Answers 2
I did a little digging on this and tracked down the purpose for most of the user groups:
(Shamelessly cross-posting this from my blog.)
The pi group is the default group created for the pi user. Each user has a matching group name.
- dialout allows access to the serial ports.
- adm is used for system monitoring tasks and gives access to many of the log files in /var/log.
- netdev members can manage network interfaces.
- sudo group members can execute any command (If the goal is to have a lower privileged user, I would not suggest adding your new user to this group. Instead I would add a per command or usename based rule to the sudoers file).
In general you can use google to discover the purpose of a group, by doing something like this: google search, oviously changing the name of the group.
I would suggest that you create you new user without adding them to any additional groups (like the pi group they will be a member of the group with the same name as their username).
And as you find things the new user can not do add the user to specific groups. This is in keeping with the concept of least priviliges.