В ubuntu 17.10 не запускаются приложения с помощью sudo

Почему gksu / gksudo или запуск графического приложения с sudo не работают с Wayland?

В Wayland часто бывает сложно запускать программные приложения GUI с повышенными разрешениями (sudo -H, gksu …). Это хорошая идея для выполнения таких задач с помощью средств командной строки.

Но есть обходные пути, если у вас есть инструмент GUI, который хорошо работает для вас и требует повышенных разрешений.

(Я использую два таких стандартных инструмента: диспетчер пакетов Synaptic, synaptic и инструмент разделения Gparted, gparted .

Я использую MakeUSB для создания загрузочных дисков USB, < strong> mkusb , но он может запускать части, требующие повышенных разрешений без графики.)

xhost и sudo -H

  1. Существует обходное решение, позволяющее графическим приложениям, принадлежащим другим пользователям, чем зарегистрированный пользователь в Wayland,

    xhost +si:localuser:root

  2. gksu и gksudo не связаны со стандартным Ubuntu и не работают здесь, но они работают в Xorg.

    Вместо этого вы можете использовать

    sudo -H

  3. Это хорошая идея предотвратить использование графических прикладных программ, принадлежащих другим пользователям, чем зарегистрированный пользователь,

    xhost -si:localuser:root

gvfs admin backend

В Ubuntu 17.10 (gvfs & gt; = 1.29.4) вы можете использовать брандмауэр администратора gvfs. Обратите внимание, что вам нужен полный путь,

gedit admin:///path/to/file

В теории, метод поддержки gvfs admin (который использует polkit) лучше и безопаснее (чем xhost и xudo -H ), независимо от используемого пользовательского интерфейса.

Вы не запускаете все приложение как root. Эскалация привилегий происходит только в случае крайней необходимости. См. Следующую ссылку и ссылки на нее,

Наутилус-админ

Также возможно использовать nautilus-admin для файловых операций с повышенными разрешениями и использовать gedit с повышенными разрешениями. Это описано в следующем ответе AskUbuntu,

  • Как запустить Nautilus как root?

Временный доступ для root для рабочего стола Wayland через функцию gks

Пожалуйста, избегайте sudo GUI-program .

Это может привести к тому, что система перезапишет файлы конфигурации для вашего обычного идентификатора пользователя с конфигурацией root и установит права собственности и разрешения для соответствия root и заблокирует ваш обычный идентификатор пользователя. Вы должны запустить GUI-приложения с sudo -H , который записывает файлы конфигурации в домашний каталог root /root . Пример:sudo -H gedit myfile.txt

Но существует риск того, что вы забудете -H . Вместо этого вы можете создать функцию, например gks

gks () { xhost +si:localuser:root; sudo -H «$@»; xhost -si:localuser:root; }

и сохраните его в ~/.bashrc рядом с псевдонимами. Затем вы можете запустить

gks gedit myfile.txt

таким же образом, как раньше вы использовали gksudo .

Тестирование

Вы можете проверить, как sudo , sudo -H и gks работают со следующими командами

sudodus@xenial32 ~ $ sudo bash -c «echo ~»
/home/sudodus
sudodus@xenial32 ~ $ sudo -H bash -c «echo ~»
/root
sudodus@xenial32 ~ $ gks () { xhost +si:localuser:root; sudo -H «$@»; xhost -si:localuser:root; }
sudodus@xenial32 ~ $ gks bash -c «echo ~»
localuser:root being added to access control list
/root
localuser:root being removed from access control list
sudodus@xenial32 ~ $

и, конечно,

gks gedit myfile.txt

в соответствии с примером в предыдущем разделе.

Метод, который работает через меню Alt-F2 и Gnome Shell

Вместо добавления простой однострочной функции в ~/.bashrc вы можете создать систему, которая также работает без bash. Это может быть удобно использовать, но сложнее настроить. Обратите внимание, что вы должны установить только один из альтернатив, потому что однострочная функция будет беспокоить, используя эту более сложную систему.

Три файла

Оболочка gks :

#!/bin/bash xhost +si:localuser:root if [ $# -eq 0 ]
then xterm -T «gks console — enter command and password» -fa default -fs 14 -geometry 60×4 -e bash -c 'echo «gks lets you run command lines with GUI programs
with temporary elevated permissions in Wayland.»;
read -p «Enter command: » cmd;
cmdfile=$(mktemp); echo «$cmd» > «$cmdfile»;
sudo -H bash «$cmdfile»; rm «$cmdfile»'
else xterm -T «gks console — enter password» -fa default -fs 14 -geometry 60×4 -e sudo -H «$@»
fi xhost -si:localuser:root;

Рабочий стол gks.desktop :

[Desktop Entry]
Version=1.0
Categories=Application;System;
Type=Application
Name=gks
Description=Run program with temporary elevated permissions in Wayland
Comment=Run program with temporary elevated permissions in Wayland
Exec=gks %f
Icon=/usr/share/icons/gks.svg
Terminal=false
StartupNotify=false
GenericName[en_US.UTF-8]=Run program with temporary elevated permissions in Wayland

Файл значка gks.svg выглядит следующим образом:

Вы можете загрузить файл значка или tarball со всеми тремя файлами по этой ссылке,

wiki.ubuntu.com/Wayland/gks

Скопируйте [извлеченный или скопированный & amp; вставляемых] в следующие места,

sudo cp gks /usr/bin
sudo cp gks.desktop /usr/share/applications/
sudo cp gks.svg /usr/share/icons

Выход / вход в систему или перезагрузка, и должен быть рабочий значок рабочего стола. Он будет работать в терминальном окне, например, с помощью простого решения с функцией.

Alt F2 :

Меню Gnome Shell:

консоль gks и gparted:

Пользовательский скрипт и рабочий стол

Если у вас есть только несколько графических приложений, для которых требуются повышенные права доступа, вы можете создать для них собственные скрипты и файлы рабочего стола и не вводить команду (имя приложения). Вы только вводите пароль, который не сложнее по сравнению с предыдущими версиями Ubuntu (вы все равно должны вводить пароль).

Пример с простой графической программой xlogo , которая поставляется с программным пакетом x11-apps :

Оболочка gkslogo (упрощенный по сравнению с gks ),

#!/bin/bash xhost +si:localuser:root xterm -T «gks console — enter password» -fa default -fs 14 -geometry 60×4 -e sudo -H xlogo xhost -si:localuser:root;

Рабочий стол gkslogo.desktop :

[Desktop Entry]
Version=1.0
Categories=Application;System;
Type=Application
Name=gkslogo
Description=Run program with temporary elevated permissions in Wayland
Comment=Run program with temporary elevated permissions in Wayland
Exec=gkslogo
Icon=/usr/share/icons/gks.svg
Terminal=false
StartupNotify=false
GenericName[en_US.UTF-8]=Run program with temporary elevated permissions in Wayland

Я ленился и использовал один и тот же файл значков gks.svg

Скопируйте [copy & amp; вставляемых] в следующие места,

sudo cp gkslogo /usr/bin
sudo cp gkslogo.desktop /usr/share/applications/

gks [logo] консоль и xlogo:

Источник: https://ubuntugeeks.com/questions/270413/sudo-password-and-x-display

Использование sudo в Ubuntu для начинающих пользователей

Библиотека сайта rus-linux.net

Оригинал: A beginner's guide to understanding sudo on Ubuntu Автор: Himanshu Arora Дата публикации: 13 февраля 2017 г. Перевод: А.Панин

Дата перевода: 22 марта 2017 г.

Вы когда-нибудь сталкивались с ошибкой «Permission denied» в процессе работы с интерфейсом командной строки Linux? Если это так, то велика вероятность того, что вы пытались выполнить операцию, требующую привилегий пользователя root. Например, на следующей иллюстрации показано сообщение об ошибке, выведенное после моей попытки копирования бинарного файла в одну из системных директорий.

Но в чем заключается решение данной проблемы? Все предельно просто: достаточно использовать команду sudo.

Пользователю, применяющему данную команду, обычно предлагается ввести его пароль. После ввода корректного пароля операция успешно выполняется.

Хотя команда sudo и является, без сомнения, одной из самых важных команд для любого, кто работает с интерфейсом командной строки в Linux, существует несколько важных аспектов (а также особенностей ее функционирования), о которых следует знать для того, чтобы пользоваться ею максимально ответственно и продуктивно. Именно их мы и обсудим в данной статье.

Но перед тем, как двигаться дальше, следует упомянуть о том, что все приведенные в статье команды и инструкции были протестированы в системе Ubuntu 14.04 LTS с командной оболочкой Bash версии 4.3.11.

Что такое sudo?

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

Для этой цели предназначен параметр -u. Так, в приведенном ниже примере я (himanshu) попытался переименовать файл из директории другого пользователя (howtoforge), но получил в результате ошибку «Permission denied». После этого я выполнил ту же команду mv с префиксом sudo, то есть, sudo -u howtoforge и на этот раз попытка переименования файла успешно завершилась.

С sudo может работать любой пользователь?

Нет. Для того, чтобы пользователь имел возможность работать с sudo, в файле /etc/sudoers должна присутствовать запись, соответствующая его учетной записи. Следующий текст, взятый с веб-сайта проекта Ubuntu, должен прояснить ситуацию:

Файл /etc/sudoers позволяет указать имена пользователей, команды которые эти пользователи могут исполнять от лица других пользователей, имена пользователей, от лица которых могут исполняться команды, названия машин, на которых они могут исполняться, а также задать специальные параметры, указывающие, к примеру, на необходимость запроса пароля при исполнении определенных команд. Этот файл состоит из псевдонимов (по своей сути являющихся переменными) и описаний пользователей (позволяющих указать команды, которые они могут исполнять).

Если вы используете Ubuntu, вы можете достаточно просто убедиться в том, что пользователь может работать с sudo: все, что вам нужно — это выбрать в качестве типа учетной записи данного пользователя вариант «Администратор». Это может быть сделано после перехода по системному меню Параметры системы… -> Учетные записи.

Для начала придется разблокировать элементы управления.

После этого следует выбрать интересующую учетную запись пользователя и сменить ее тип на «Администратор».

Однако, в том случае, если вы используете не Ubuntu или в вашем дистрибутиве нет подобной функции, вы можете добиться аналогичного эффекта путем ручного редактирования файла /etc/sudoers. Вам придется добавить в этот файл следующую строку:

[имя пользователя] ALL=(ALL:ALL) ALL

Думаю, не стоит лишний раз напоминать о том, что вместо строки «имя пользователя» должно использоваться реальное имя учетной записи пользователя, которому предоставляется возможность работы с sudo.

Важный нюанс, о котором стоит сказать отдельно, заключается в том, что в официальной документации для редактирования упомянутого файла рекомендуется использовать команду visudo — вам всего лишь придется выполнить следующую команду:

sudo visudo

Для того, чтобы понять причину данной рекомендации, вы можете прочитать приведенную ниже выдержку из руководства sudo:

Утилита visudo позволяет безопасно редактировать файл sudoers.

visudo блокирует файл sudoers для предотвращения одновременного редактирования несколькими пользователями, осуществляет простейшие проверки корректности инструкций и поиск синтаксических ошибок.

Если файл sudoers в текущий момент редактируется, вы получите сообщение о том, что следует предпринять попытку его редактирования через некоторое время.

Для получения дополнительной информации об утилите visudo вы можете перейти по .

Что такое сессия sudo?

Если вы периодически используете команду sudo, я уверен, что вы заметили особенность ее работы, заключающуюся в том, что после успешного ввода пароля вы можете использовать sudo еще несколько раз вообще без ввода пароля. Но по истечении некоторого времени команда sudo снова начинает запрашивать ввод пароля.

Это поведение никак не связано с количеством исполненных посредством sudo команд, но связано с временем. Да, по умолчанию sudo не будет запрашивать ввод пароля в течение 15 минут после его успешной проверки. По истечении этих 15 минут sudo снова попросит ввести пароль.

Однако, при желании вы можете изменить описанное поведение. Для этого следует открыть файл конфигурации /etc/sudoers с помощью следующей команды:

sudo visudo

После этого нужно перейти к строке

Defaults env_reset

и добавить в конец этой строки следующую переменную с новым значением (выделено жирным шрифтом):

Defaults env_reset,timestamp_timeout=[новое значение]

Поле «[новое значение]» должно быть заменено на количество минут, в течение которых должна существовать ваша сессия sudo. К примеру, я использовал значение 40.

Если вы хотите, чтобы запрос пароля осуществлялся при каждом использовании команды sudo, вы можете установить значение 0 данной переменной. А если вам нужно, чтобы сессия sudo длилась вечно, вы можете установить значение -1 данной переменной.

Пожалуйста учтите, что использование значения -1 рассматриваемой переменной настоятельно не рекомендуется.

Пароль sudo

Как вы могли заметить, в процессе ввода пароля не отображается никаких символов, даже привычных звездочек. Хотя это и не является большой проблемой, некоторым пользователям по различным причинам хочется видеть хотя бы звездочки.

К счастью, соответствующий режим ввода пароля достаточно просто активировать. Все, что вам нужно сделать — это изменить следующую строку в файле /etc/sudoers:

Defaults env_reset

на строку

Defaults env_reset,pwfeedback

После этого нужно сохранить изменения в файле.

Теперь при вводе пароля в процессе работы с утилитой sudo будут отображаться звездочки.

Некоторые важные параметры команды sudo

Помимо параметра -u (который мы обсуждали в начале данной статьи) существует несколько других важных параметров команды sudo, которые достойны упоминания. Мы обсудим некоторые из них в данном разделе.

Параметр -k

Предположим, что вы только что выполнили команду посредством sudo и ввели свой пароль. Как вы знаете, по умолчанию sudo не будет спрашивать пароль в течение следующих 15 минут. А теперь предположим, что вам понадобилось предоставить кому-либо доступ к своему терминалу без возможности использования sudo. Что можно предпринять в этом случае?

К счастью, существует параметр -k, позволяющий принудительно завершить сессию sudo. А вот что написано о данном параметре на странице руководства sudo:

-k, —reset-timestamp

При использовании без команды позволяет сбросить кэшированные параметры пользователя. Другими словами, при следующем вызове sudo будет запрашиваться пароль. Данный параметр не требует ввода пароля и был добавлен специально для того, чтобы у пользователей имелась возможность убрать информацию о правах доступа sudo из файла .logout.

При использовании вместе с командой или требующим пароля параметром может потребоваться ввод пароля, так как в результате использования данного параметра кэшированная информация о правах доступа sudo игнорируется. В результате sudo снова предложит ввести пароль (в том случае, если это требуется политикой безопасности) и не будет обновлять кэшированную информацию о правах доступа.

Параметр -s

Может случиться так, что в процессе работы вам потребуется выполнить множество команд, требующих привилегий пользователя root, и вам не захочется вводить префикс sudo перед каждой из них. Также вам не захочется настраивать длительность сессии sudo путем редактирования файла конфигурации /etc/sudoers.

В этом случае вам может пригодиться параметр -s. Это описание данного параметра со страницы руководства sudo:

-s, —shell

Запустить командную оболочку, путь к бинарному файлу которой задан с помощью переменной окружения SHELL, если таковая существует, или командную оболочку, путь к бинарному файлу которой задан в параметрах учетной записи вызывающего пользователя.

В случае использовании команды, она будет передана в эту командную оболочку для последующего исполнения посредством стандартного параметра -c.

Если команды не задано, пользователю будет предоставлен доступ к запущенной интерактивной командной оболочке.

Итак, данный параметр выполняет следующие действия:

  1. Запускает новую командную оболочку, путь к бинарному файлу которой задан с помощью переменной окружения $SHELL. В том случае, если переменная окружения $SHELL имеет пустое значение, запускается командная оболочка, путь к бинарному файлу которой указан в строке с описанием параметров учетной записи текущего пользователя в файле /etc/passwd.
  2. Если вы передаете команду вместе с параметром -s (например, исполняя команду sudo -s whoami), то исполняется следующая команда: sudo /bin/bash -c whoami.
  3. Если вы не пытаетесь исполнить какую-либо свою команду (то есть, просто исполняете команду sudo -s), вы получаете доступ к интерактивной командной оболочке с привилегиями пользователя root.

Следует иметь в виду, что параметр -s предоставляет в ваше распоряжение командную оболочку с привилегиями пользователя root, но без окружения пользователя root — эта командная оболочка будет использовать ваш файл .bashrc. По сути, это означает, что, к примеру, при исполнении с помощью этой командной оболочки команды whoami будет выводиться ваше имя пользователя, а не root.

Параметр -i

Параметр -i похож на параметр -s, который мы только что обсуждали. Однако, между ними имеются некоторые отличия.

Одно из ключевых отличий заключается в том, что параметр -i также предоставляет вам окружение пользователя root, поэтому ваш (пользовательский) файл .bashrc игнорируется.

Это сравнимо с использованием учетной записи пользователя root без входа в систему под именем пользователя root. Кроме того, вам не придется вводить пароль пользователя root.

Важное замечание: помните о том, что существует также команда su, которая позволяет работать от лица других пользователей (по умолчанию вы становитесь пользователем root). Данная команда требует ввода пароля пользователя root.

Для того, чтобы избежать необходимости ввода пароля этого пользователя, вы можете также использовать префикс sudo (то есть, команду sudo su); в этом случае вам придется ввести ваш пароль.

Однако, команды su и sudo su имеют некоторые отличия; для того, чтобы разобраться с ними, а также ознакомиться со сравнением данных команд с командой sudo -i достаточно обратиться к обсуждению, доступному по .

Заключение

Я надеюсь, что вы хотя бы в общих чертах поняли принцип работы команды sudo, а также методику изменения ее стандартного поведения. Самостоятельно испытайте описанные модификации файла /etc/sudoers и ознакомьтесь с обсуждением (ссылка на которое приведена в предыдущем параграфе), если хотите узнать об этой команде немного больше.

Если вам понравилась статья, поделитесь ею с друзьями:

Источник: http://rus-linux.net/MyLDP/admin/sudo-beginners-guide.html

Ubuntu Sudo: Как выполнять административные задачи

Каждый компьютер должен системный администратор. Этот человек отвечает за первоначальную настройку и обслуживание вашего оборудования и операционной системы Ubuntu: Создание учетных записей пользователей, Установка программ, Конфигурация оборудования, и т.д.. Администратор является лицом с учетной записью пользователя с дополнительными привилегиями.

В Ubuntu, выполнение привилегированных работ (или административные задачи) осуществляется с помощью “фильтр” Мощный называется sudo . Ее принцип заключается в:

  • Все административные задачи могут быть выполнены только с помощью утилиты администрирования sudo. Выполненные закуски sudo, задача заблокирована;
  • Когда пользователь пытается выполнить административную задачу через фильтр sudo, утилита проверяет, что пользователь имеет право на выполнение этой задачи. В противном случае, Блокирует задачу.

1. Необходимые условия

Для выполнения административных задач с помощью утилиты sudo, Ваша учетная запись пользователя должна поощрять к роли администратора (также называется “супер пользователя”).

У вас есть учетная запись администратора при:

  • Ваша учетная запись пользователя является тот, который был создан при установке Ubuntu. По умолчанию, Эта учетная запись является привилегированной учетной записью, и это только привилегированной учетной записи;
  • или когда администратор вручную назначен учетной записи пользователя к роли администратора.

Принесите к разделу “Как назначить роль администратора для учетной записи пользователя?” чтобы узнать, как повысить существующей учетной записи пользователя к роли администратора, или см. “Добавление и удаление привилегий для учетной записи пользователя или группы пользователей” Чтобы настроить более точно привилегий, предоставленных программой sudo.

2. Использование Ubuntu Sudo

2.1. Запуск графических приложений (Ubuntu, Xubuntu)

  1. Утилита gksudo (или gksu ) не устанавливается по умолчанию в версиях Ubuntu Trusty 14.04 и на последующий период.

    Установка пакета gksu

  2. Пресса [Alt] + [F2] на вашей клавиатуре, чтобы открыть вызывает выполнение программы;
  3. Выполните следующую команду, чтобы запустить программу по вашему выбору через утилиту gksudo или gksu :

    gksudo «название программы»

  4. Появляется диалоговое окно ввода пароля. Введите пароль текущей учетной записи пользователя.

Если вы не ввели неправильный пароль, Ваша программа загружает в привилегированном режиме. Если ошибка в вашем пароле, Повторите указанные выше шаги. После успешной проверки подлинности, административные задачи будут освобождены в течение 15 минут: Ваш пароль не будет в следующем 15 минут для выполнения других административных задач.

2.2 Запуск графических приложений (Kubuntu)

  1. Пресса [Alt] + [F2] на вашей клавиатуре, чтобы открыть вызывает выполнение программы;

  2. Выполните следующую команду, чтобы запустить программу по вашему выбору через утилиту sudo :

    KdeSudo «название программы»

    Используйте кавычки, чтобы заключить имя программы, особенно, если он использует несколько аргументов.

  3. Появляется диалоговое окно ввода пароля. Введите пароль текущей учетной записи пользователя.

Если вы не ввели неправильный пароль, Ваша программа загружает в привилегированном режиме. Если ошибка в вашем пароле, Повторите указанные выше шаги. После успешной проверки подлинности, административные задачи будут освобождены в течение 15 минут: Ваш пароль не будет в следующем 15 минут для выполнения других административных задач.

2.3 Запуск графических приложений как 14.04 и позже

В терминале , Введите следующую команду:

env pkexec ДИСПЛЕЙ = $ ДИСПЛЕЙ = $ XAUTHORITY XAUTHORITY «имя программы»

2.4 Запуск приложения или команды консоли (все варианты)

  1. Откройте окно терминала ;
  2. Выполните следующую команду, чтобы выполнить команду консоли через утилиту sudo , затем нажмите [Введите] ключ на вашей клавиатуре:

    sudo <команда>

    Введите ваш заказ без скобок, даже если ваш заказ содержит несколько аргументов.

  3. Появляется диалоговое окно ввода пароля. Введите пароль текущей учетной записи пользователя. Знак не появляется при вводе символов на клавиатуре; Это нормально. Хотя ничего не появляется на экране, Ваш пароль считается.

Если вы не ввели неправильный пароль, Ваш заказ будет выполнен непосредственно в привилегированном режиме. Если ошибка в вашем пароле, Повторите указанные выше шаги. После успешной проверки подлинности, административные задачи будут освобождены в течение 15 минут: Ваш пароль не будет в следующем 15 минут для выполнения других административных задач.

2.5 Когда следует использовать sudo / gksudo / KdeSudo?

Правило простое:

  • Чтобы запустить программу в моде графика , Использование gksudo (Ubuntu и Xubuntu) или KdeSudo (Kubuntu)
  • Для выполнения команды в режиме консоли, Использование sudo .

Только администраторы могут выполнять административные задачи с помощью утилиты sudo. Для повышения привилегий учетной записи пользователя, Вы сами должны сначала быть администратором. Чтобы назначить роль администратора учетной записи другого пользователя:

  • В Ubuntu и Xubuntu: Использование модуля управления пользователя из панели управления системы для изменения своих привилегий;
  • В Kubuntu: Используйте модуль управления учетной записи для пользователей панели управления KDE, чтобы изменить свои привилегии;
  • В режиме консоли: Откройте терминал и выполните следующую команду:

    sudo adduser <имя пользователя> sudo

    что необходимо заменить имя пользователя учетной записи пользователя (без ) к которому должны быть предоставлены дополнительные привилегии.

Обратите внимание, что привилегии изменения не применяются при регистрации. Они применяются, только когда все текущие сеансы будут закрыты для этой ставки. При следующем входе в систему для этой учетной записи, новые привилегии принимаются во внимание.

Принесите к разделу “Добавление и удаление привилегий для учетной записи пользователя или группы пользователей” Чтобы настроить более точно привилегий, предоставленных программойsudo.

sudoможно установить точно, чтобы разрешить или запретить выполнение привилегированных задач.

Больше, чем просто разрешить выполнение всех административных задач для группы пользователей по паролю sudoможно настроить для конкретного пользователя или определенной группы пользователей для выполнения одной или нескольких конкретных задач, с или без ввода пароля.

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

  • Расширенные настройки / и т.д. / sudoers

Преимущества занятости sudo, в отличие от непосредственного использования одной корневой учетной записи ( root), Многие из них для использования в домашних условиях или малого и среднего Бизнеса / SMI:

  • Установки Ubuntu должен задавать меньше вопросов. Это особенно важно для нового прибытия, кто может не знать о полезности учетной записи root и опасные потенциал;
  • Администраторы не должны помнить дополнительный пароль, они могут легко забыть, или поставить под угрозу безопасность учетной записи rootот вредных привычек;
  • Это предотвращает поведение “Я могу делать все на моей машине” перед выполнением административных действий Ubuntu запрашивает пароль, которые должны отражать директора последствий их действий;
  • sudoотслеживает за каждой команды run. При возникновении проблемы, Вы всегда можете проверить газеты, чтобы найти команду, которая вызвала проблемы;
  • Все хакеры пытаются прорваться через грубой силы системы знают, что называется счет rootи попытаться взломать его первый. Они не знают, идентификаторы других пользователей вашего компьютера;
  • Это позволяет быструю передачу административных прав, как длинный и на короткий срок, просто добавление или удаление пользователей из административной группы. Все это без ущерба для безопасности вычислительной среды путем совместного использования одного пароля для учетной записи root ;
  • sudo можно настроить с помощью более совершенной политики.

Модель базовой безопасности равно, и обе модели имеют же слабость. Любой пользователь с помощью su rootили sudoдля выполнения административных задач должны рассматриваться в качестве привилегированного пользователя.

Если пользователь ’ s учетная запись скомпрометирована атакующим, последний может также получить повышенные привилегии и операционной системой.

Пользователи с правами администратора должны быть защищены с уходу же, как учетной записи root.

На более эзотерические заметки, Обратите внимание, что sudoпоощряет изменение рабочих привычек, что может вызвать положительное воздействие на безопасность операционной системы.

sudoобычно используется для выполнения одной команды, то, что su rootчасто используется для запуска терминала rootи выполнять несколько команд.

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

Все действия, выполняемые через утилиту sudo– мопеду с успех или провал – регистрируются. Они записываются в файл журнала / var / Журнал / auth.log .

Использование sudoдля выполнения одной команды не вызывает реальные неудобства, но это может быть неприятно использовать его для запуска долгий процесс, требующий несколько выступлений в режим супер-пользователя ( root).

Открытие терминала режим rootпозволяет избежать вызова sudoна каждом этапе этой процедуры, без необходимости предоставления доступа к учетной записи пользователя root.

Недостатком этого метода является то нет записи о мерах, принятых не регистрируется в журналеsudo(Если открытие терминала rootсам). Это не рекомендуется, чтобы открыть терминал root.

Чтобы использовать терминал root:

  1. Откройте окно терминала ;
  2. Введите следующую команду:

    @ Компьютер пользователя: ~ $ sudo -i

  3. Введите свой пароль в строке ввода пароля;
  4. Запустите ваш набор административных команд;
  5. Выйдите из системы root:

    корень @ компьютер: ~ # выход

    или Ctrl+D

sudoпозы приори проблемы для перенаправления потока в консоли. Например, следующие перенаправление не будет работать:

@ Компьютер пользователя: ~ $ sudo echo 2> / proc / ACPI / thermal_zone / ATF0 / polling_frequency

Причиной этой ошибки является то, что sudoвыполняется только первая задача ( echo 2) с заимствовали удостоверением; перенаправление, Это делается в пользовательском режиме только.

Решение для преодоления этого ограничения является вызов новой оболочки и сделать его запустить перенаправление потоков. Например :

@ Компьютер пользователя: ~ $ sudo sh — c ' Эхо 2> / proc / ACPI / thermal_zone / ATF0 / polling_frequency'

Таким образом, Это переводчик shи передается как аргумента команда выполняется с заимствовали удостоверением.

Некоторые программы или службы требуют супер-учетных записей пользователей. Это обычно бывает с системами баз данных (Например, MySQL).

Обратите внимание, что эта учетная запись root не зависит от операционной системы: Это только для конкретной программы или службы.

Если программа или служба требует супер учетной записи пользователя, необходимо настроить учетную запись с инструментами, которые он предоставляет. В этой связи, Принесите к справочной документации для каждого из ваших приложений.

Источник: https://www.ubuntudoc.com/ubuntu-sudo-perform-administrative-tasks/?lang=ru

Ссылка на основную публикацию