Это нормально?
оказалось актуально прям сейчас
есть у sudo такой опций -s
почему-то о ней не все знают
это почти тоже самое, что sudo -i — но без смены каталога и шелла (шелл можно задать как аргумент)
очень полезно, если у рута баш, а у юзера другой логин шелл (разумеется, любой — при условии, что он Zsh)
там деталей много, но сапиентсы просапиентят, если потребуется, ага?
смайлики вместе с солью, перцем и сахаром
Всё, сдаюсь, я ничего не понял. ВНЕЗАПНО на этой неделе прекратили работать команды вида "sudo ip ad ...", которые запускали скрипты, которые запускал openvpn, запущенный в свою очередь через service.
Такие жэ команды от меня работают. После sudo su — — работают. Разумеется, с полным путём — sudo /sbin/ip ad ... — работают.
sudoers следующий (опуская комментарии и пустые строчки):
Defaults env_reset
root ALL=(ALL) ALL
%staff ALL=(ALL) ALL
ilan ALL=NOPASSWD: /usr/sbin/visudo, /usr/bin/apt-get, /usr/bin/qemu-system-i386
Версия sudo:
Установлен: 1.8.10p3-1
/etc/sudo.conf — отсутствет.
А теперь, внимание добавление secure_path — решает проблему!!
Сейчас
Defaults env_reset, secure_path="/bin:/usr/bin:/sbin:/usr/sbin"
и всё, sudo ip ad ... — работает.
При том, что вроде дефолтный secure_path — ещё и /usr/local/bin:/usr/local/sbin включает (ну, по исходникам вроде так). При том, что вообще не должно быть никакой разницы между мной и root (exempt_group не установлена).
Вроде неделю назад (в предыдущую перезагрузка) оно работало. Что случилось, и почему так — непонятно.
15 лет назад sudo был тяжэловат в понимании и сложэн. Сейчас к нему добавили прикольных фичек, дефолтиков, плагинчиков и прочего. Стало, конечно, хужэ.
штатное фаровское ctrl+alt+enter
csudo — батник из conemu
стороннее до кучи:
plugring.farmanager.com
sourceforge.net
решил сделать так (зря):
chown -R root:root /usr
в результате sudo перестал работать =) а пароль рута я благополучно забыл =) с livecd грузиться не хотелось и возиться с файлом /etc/shadow (можно конечно и проще), и я вспомнил пароль рута.
погуглил и нашел что файлы поврежденного sudo лечатся так:
chmod 0440 /etc/sudoers
chmod 4111 /usr/bin/sudo
в общем все вернулось на круги своя. но могут еще какие-нибудь программы начать жаловаться после того что я сделал с /usr
вот по теме:
unix.stackexchange.com
psychocats.net
1) лучше чтобы спрашивало пароль рута или пользователя?
2) целесообразно ли использовать сессии (ну, для работы без пароля если один раз ввел правильно)
3) как лучше настроить чтобы максимально безопасно было пользоваться sudo?
4) как сделать чтобы все команды кроме нескольких были под паролем?
Пока получилось так: отключены сессии, спрашивает пароль рута. А вот третье и четвертое пока не могу осилить... Может как-то не так пишу?
vvs ALL=(postgres) NOPASSWD: ALL
[14:24:48] vvs@vvs-pc ~ % sudo -u postgres psqlчяднт?
[sudo] password for vvs:
is.gd Убунтоводам на заметку.
sudo make me a sandwichэквивалентно (с небольшими оговорками)
sudo make me && sudo make a && sudo make sandwich
Ставим пакет, хотя обычно он уже стоит в системе
apt-get install sudo
далее открываем на редактирование файл /etc/sudoers
nano /etc/sudoers
Постле строки root ALL=(ALL) ALL дописываем:
user ALL=(ALL) NOPASSWD:ALL
где user — это название ваше учетки, а благодаря NOPASSWD:ALL не придется каждый раз вбивать пароль пользователя
# visudo
добавить строчку user ALL=(ALL) ALL
Defaults env_keep += "SSH_AUTH_SOCK"
На память:
1. Создать отдельного юзера.
2. RW-доступ к его папке из под основного юзера.
3. Настроить sudo, чтобы не спрашивал пароля на 2-го юзера.
4. Предварительно настроить дроп на том (2-м) акке. Т.е. чтобы создалась папка, где хранятся пасс, логин, кэш и прочие настройки.
5. Из под основного выполняем: $ sudo -u <имя_юзера> <полный_путь_к_бинарнику_дропа>
6. ?????
7. PROFIT!!!
$ sudo -s
Password:
Pauses for audience applause, not a sausage
Password:
You gotta go owwwww!
Password:
Your mind just hasn't been the same since the electro-shock, has it?
sudo: 3 incorrect password attempts