Linux запуск команды от root

RootSudoRu

Думаете, с вами такого не случится? Даже опытные администраторы Linux рассказывают жуткие истории о том дне, когда они сделали роковую опечатку или не задумывались над тем, что они делают, работая под именем суперпользователя.

По умолчанию учетная запись суперпользователя отключена в Ubuntu. Это означает, что вы не сможете зайти в систему как root. Однако, инсталлятор настраивает sudo для пользователя, созданного во время установки. Команда sudo позволяет выполнять все приложения, требующие привилегий суперпользователя.

Когда sudo спрашивает пароль, вы должны ввести пароль ВАШЕГО пользователя ! То есть пароль root’a вам не нужен !

Заметки

  • Пароль сохраняется по умолчанию на 15 минут. По истечении этого времени, вам нужно будет ввести пароль снова.
  • Несмотря на то, что при вводе пароль не отображается на экране (даже в виде звездочек), он все-равно вводится!
  • Для выполнения графических конфигурационных утилит с sudo, просто запустите приложение через меню.
  • Для запуска программ через sudo, которые обычно запускаются под обычным пользователем (например gedit), нажмите Alt+F2 и введите gksudo gedit. В Kubuntu используйте вместо gksudo программу kdesu.
  • Использование sudo в командной строке:

Пример #1 — смена пользователя и группы для файлов в домашней папке пользователя

sudo chown bob:bob /home/bob/*

Пример #2 — перезапуск сетевых служб

sudo /etc/init.d/networking restart
  • Для запуска графических программ используйте gksudo или kdesu, иначе попытка входа может провалиться. Если это происходит и при входе вылазит ошибка: «Unable to read ICE authority file», войдите в безопасный терминал и выполните следующую команду, подставив своё имя пользователя:
  • Для запуска режима суперпользователя в терминале (root shell, т.е. командная строка, где вы можете выполнять команды под пользователем root), запустите терминал и выполните команду:
sudo -i (эквивалент команды "sudo su -")
sudo -s (эквивалент команды "sudo su")

Разрешение другим пользователям использовать sudo

Чтобы разрешить пользователю использовать sudo, откройте Система → Администрирование → Пользователи и группы. Затем выберите пользователя и нажмите на кнопке Свойства. В появившемся окне зайдите на вкладку Привилегии пользователя и поставьте галочку Администрировать систему.

Читайте также:  Build arm linux gnueabihf

Аналог этой же процедуры в терминале: sudo adduser $user admin, где $user — имя пользователя.

Преимущества использования sudo

  • Программа установки задаёт меньше вопросов.
  • Пользователям не нужно запоминать дополнительный пароль, который они могут забыть.
  • Перед тем как произойдёт выполнение команды, вас попросят ввести пароль. Это даст время подумать о возможных последствиях.
  • sudo добавляет в лог выполненные команды (/var/log/auth.log).
  • Все попытки взломщиков, пытающихся подобрать пароль к root, будут обречены на провал.
  • sudo позволяет легко предоставлять права администратора на долгий или короткий период другим пользователям, просто добавляя и удаляя их из группы, при этом не трогая корневую учетную запись.
  • sudo можно настроить с более fine-grained политикой безопасности.
  • Аутентификация автоматически истекает по окончании определенного промежутка времени.

Минусы использования sudo

  • Redirecting the output of commands run with sudo can catch new users out. For instance consider sudo ls > /root/somefile will not work since it is the shell that tries to write to that file. You can use ls | sudo tee -a /root/somefile to append, or ls | sudo tee /root/somefile to overwrite contents. You could also pass the whole command to a shell process run under sudo to have the file written to with root permissions, such as sudo bash -c "ls > /root/somefile".
  • Во многих офисных системах только один локальный пользователь в системе root. Все остальные пользователи импортируются через NSS технологии, такие как nss-ldap. Для настройки рабочей станции в случае повреждения сети, при поломке nss-ldap, необходим root. This tends to leave the system unusable unless cracked. An extra local user, or an enabled root password is needed here.

Заблуждения

  • Разве sudo не менее безопасно, чет su?
    • Основая модель безопасности одинакова в обоих случаях, поэтому и уязвимость будет одинаковой. Любой пользователь, использующий su или sudo рассматривается как привилегированный пользователь. If that user’s account is compromised attby an attacker, the attacker can also gain root privileges the next time the user does so. The user account is the weak link in this chain, and so must be protected with the same care as root. On a more esoteric level, sudo provides some features which encourage different work habits, which can positively impact the security of the system. sudo is commonly used to execute only a single command, while su is generally used to open a shell and execute multiple commands. The sudo approach reduces the likelihood of a root shell being left open indefinitely, and encourages the user to minimize their use of root privileges.
    • Вам потребуется ввести пароль для этого. Console users have access to the boot loader, and can gain administrative privileges in various ways during the boot process. For example, by specifying an alternate init(8) program. Linux systems are not typically configured to be secure at the console, and additional steps (for example, setting a root password, a boot loader password and a BIOS password) are necessary in order to make them so. Note that console users usually have physical access to the machine and so can manipulate it in other ways as well.

    Возврат к традиционной учетной записи root

    Info <! data-lazy-src=

    Запуск программ с правами администратора root в Linux. Режимы su и sudo.

    root в Linux

    Для запуска и корректной работы различных административных консольных и графических программ в GNU-Linux (просто Linux далее) могут потребоваться права администратора. Получить права root их можно при помощи нескольких основных способов.

    Вход с правами администратора root — режим «Super User» (su)

    Команда su , отданная в консоли Linux вызовет запрос пароля администратора root компьютера и, после его ввода, Ваш вход с правами администратора компьютера в той же консольной сессии. Это даёт возможность работать далее от имени администратора системы с любыми консольными командами и программами.

    Во многих современных дистрибутивах Linux, созданных для использования на персональном компьютере в первую очередь (Ubuntu Linux, например), авторизация администратора root бывает заблокирована, а пользователь root может отсутствовать в системе как таковой. В этом случае используйте алгоритм, не предусматривающий авторизации администратора root как такового — режим «Super User Do» (sudo)».

    Настоятельно не рекомендуется запускать графическую систему X11, рабочие столы Gnome, KDE и т.п. от имени администратора: это может стать угрозой безопасности ваших данных и, часто, причиной некорректной работы операционной системы.

    Права администратора без авторизации администратора root — режим «Super User Do» (sudo)

    Команда sudo , в качестве приставки к имени основной программы, предоставляет возможность пользователю выполнять команды от имени администратора, не авторизуясь непосредственно как root. В большинстве случаев наличие в системе настроенного режима sudo делает работу от имени администратора практически ненужной, а паролем для запуска sudo чаще всего становится пароль первого созданного в системе пользователя («sudoer‘а»).

    Запуск программ с правами администратора root из графического диалога

    Для того, чтобы запускать программы от имени администратора root, в том числе и в основном графические, можно использовать графические же утилиты kdesudo (программа, написанная на Qt для KDE) и gksu (программа с GTK-интерфейсом для Gnome, XFCE и т.п.). Использовать оба варианта запуска графических программ от имени администратора очень просто: через консоль путём ввода приставки kdesudo (или gksu ) перед именем программы, как в случае с sudo : gksu synaptic

    Источник

Оцените статью
Adblock
detector