Linux открыть программу с правами администратора

Те, кто работает с Unix, знают одного пользователя, который во всех *nix системах имеет одно и то же имя: root. Это так называемый «суперпользователь», который может сделать вообще все.

Однако хорошей практикой считается, и не без оснований, работа даже старшего системного администратора в Unix-системах не под root, а под своей учеткой. При этом, как минимум:

а) Всегда можно отследить — кто же именно сделал то или иное действие, даже если для этого запрашивались права root, причем отследить довольно точно;

б) Следует привыкать выполнять повседневные команды, не требующие прав root, от имени себя любимого. Тогда для выполнения какой-либо важной задачи, требующей прав root, Вам придется набрать 5 лишних символов для ввода команды «sudo» и пробелма за ней, что автоматически, почти на подсознании дернет за ниточку: «осторожно!» и даст полсекунды времени мозгу на додумывание, что может оказаться роковым — палец замрет над Enter.

Итак, выше я уже упомянул некую «sudo».

Sudo в Debian GNU/Linux. Права администратора

SUDO — утилита, позволяющая выполнять команды из командной строки от имени root пользвателем, который root не является, т.е. любым разрешенным пользователем.

При этом Вам не нужно логиниться под root — Вам достаточно войти в систему под своей учетной записью. И не нужно выполнять команду «su», чтобы стать «root».

Разграничением прав — кому можно выполнять sudo, а кому — нельзя, а так-же — кто имеет право выполнять sudo без ввода пароля, а от кого требуется повышенное внимание — занимается файл sudoers. В каждой ОС этот файл лежит в своем месте.

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

Установка

# cd /usr/ports/security/sudo
# make install clean

Файл sudoers лежит по адресу:

Linux Debian (или Ubuntu):

# aptitude install sudo

Файл sudoers лежит по адресу:

Linux CentOS (или RedHat):

# yum install sudo

Файл sudoers лежит по адресу:

Файл sudoers

В этом файле, в достаточно простой форме рассказывается — каким пользователям или группам можно выполнять команду sudo. Это значит, что рядовой пользователь Unix системы, даже если захочет выполнить команду от имени root, не заходя под «root» и не выполняя команду «su» (логично — пароль то он не знает), не сможет воспользоваться правами суперадмина.

Вот пример такого файла:

# /etc/sudoers
#
# This file MUST be edited with the ‘visudo’ command as root.
#
# See the man page for details on how to write a sudoers file.
#

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root ALL=(ALL) ALL

# Uncomment to allow members of group sudo to not need a password
# (Note that later entries override this, so you might need to move

Linux для Начинающих — Права Доступа и владения файлами и директориями


# it further down)
# %sudo ALL=NOPASSWD: ALL

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

Чтобы добавлять пользователей, которым можно использовать этот файл — прописывайте их в конце в таком формате:

username ALL=(ALL) ALL

А чтобы добавлять целые группы (например, группу wheel):

%groupname ALL=(ALL): ALL

При такой настройке пользователям можно будет использовать утилиту sudo, но каждый раз у них будет спрашиваться пароль:

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.

Читайте также:
Технология подготовка к школе программа

[sudo] password for username:

Пароль при этом нужно вводить пользователя, а не root. Т.е. если пользователь admin1 запускает sudo, то пароль этот пользователь вводит тот же, что и используется им для входа в саму систему.
Этакая подстраховка — лишние несколько секунд для мозга для того, чтобы успеть заметить ошибку в команде и отменить операцию.

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

но это не наш метод.

Если какому-то администратору или группе пользователей доверяется настолько, что это «контрольное» предупреждение с вводом его пароля не нужно — можно его отключить. Тогда пользователей нужно вводить таким образом:

username ALL=(ALL) NOPASSWD: ALL
%groupname ALL=(ALL) NOPASSWD: ALL

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

Вот второй пример файла sudoers:

# /etc/sudoers
#
# This file MUST be edited with the ‘visudo’ command as root.
#
# See the man page for details on how to write a sudoers file.
#

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root ALL=(ALL) ALL

# Uncomment to allow members of group sudo to not need a password
# (Note that later entries override this, so you might need to move
# it further down)
# %sudo ALL=NOPASSWD: ALL

stadmin ALL=(ALL) NOPASSWD: ALL
%wheel ALL=(ALL) ALL
proger ALL=(ALL) ALL

а) Пользователю stadmin позволяется выполнять sudo без ввода пароля
б) Группе wheel позволяется выполнять sudo, но с вводом пароля
в) Пользователю proger позволяется выполнять sudo, тоже с вводом пароля

Как видно — первичная настройка sudoers довольно проста.

Больше о sudo и файле sudoers можно прочитать, как всегда, в справке man:

$ man sudo
$ man sudoers

Очень рекомендуется к прочтению, т.к. есть некоторые полезные опции, которые в файле sudoers по-умолчанию просто не прописаны (их десятки).

Например, можно запретить определенным пользователям выполнять бинарники из-под sudo. Или обязательно требовать chdir пользователя в его домашнюю директорию во время выполнения sudo, и т.д.

Источник: intellect.icu

Как добавить «Открыть как Администратор» в Ubuntu

В этом простом руководстве показано, как добавить опцию «Открыть как Администратор» в контекстное меню менеджера файлов в Ubuntu.

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

Но все намного проще когда есть расширение nautilus-admin, которое поможет сделать работу за вас.

Для начала, давайте посмотрим как выглядит контекстное меню в nautilus до установки расширения

открыть как администратор в ubuntu

Как установить nautilus-admin в Ubuntu

1. Откройте терминал, нажав Ctrl+Alt+T на клавиатуре, или выполните поиск «терминал» в меню приложений.

2. Введите команду для установки расширения:

sudo apt install nautilus-admin

Вы можете заменить nautilus-admin на caja-admin или, peony-admin если вы работаете с рабочим столом MATE или UKUI.

После установки выполните команду

nautilus -q

открыть как администратор в ubuntu

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

Обратите внимание, что расширение добавляет только права администратора для открытия папок или редактирования файлов. У вас не будет опции «Запуск от имени администратора» для запуска программ с привилегиями суперпользователя. Но все же, это облегчит использование операционной системы Ubuntu.

В оригинальной версии операционной системы Ubuntu по умолчанию не реализована такая простая и нужная вещь простые вещи как эта. Но тем и хорош мир Linux что не связывает по рукам. Например, в операционной системе Ubuntu*Pack, которая основана на ванильном Ubuntu эта функция, а также много других необходимы, нужных и интересных вещей уже реализовано «из коробки».

Читайте также:
Программа приседаний для мужчин в домашних условиях таблица

Возможно Ubuntu не включает это из-за того, что огромное количество новичков пользуется их системой, и чтобы они случайно ее не сломали? А как вы думаете?

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

Источник: linuxthebest.net

Права пользователей в Linux. Команды sudo и su

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

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

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

linux

Команда sudo

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

Если вам необходимо изменить файл /etc/apt/sources.list:

sudo nano /etc/apt/sources.list

Если задать аналогичную команду, но без sudo (просто: nano /etc/apt/sources.list), текстовый редактор запустит файл, но сохранить внесенные изменения вы при этом не сможете, поскольку для завершения задачи не хватит полномочий.

Перед самым выполнением команды она обязательно затребует у вас личный пароль:

sudo nano /etc/apt/sources.list
Password:

Нужно ввести пароль, применяемый для входа в систему, но он должен отличаться от пароля root.

Использовать sudo могут не все, а только профили, внесенные в файл /etc/sudoers. Администратору системы позволено редактировать этот файл с помощью visudo.

На платформе Xelent виртуальные серверы (даже на базе Ubuntu) создаются с активной записью root. Следовательно, если вы хотите использовать sudo для обычного пользователя, то сначала нужно его создать, а затем добавить в /etc/sudoers. Далее рассмотрен весь процесс подробно — с момента создания на примере Ubuntu 18.04.
Первым делом добавим пользователя через adduser (рис. 1):

Команда добавит den и установит его пароль. Узнать права пользователя Linux с этим логином можно будет в любой момент.

 Создание пользователя в Ubuntu 18.04

Рис. 1. Создание пользователя в Ubuntu 18.04

В Ubuntu adduser не только добавляет в Linux права пользователя, но и создает пароль для него. В прочих дистрибутивах вам понадобится две команды — одна для создания новой пользовательской учетной записи, а вторая — для задания его пароля:

adduser den
passwd den

Затем den нужно добавить в файл /etc/sudoers для редактирования которого предназначена visudo. По умолчанию она использует текстовый редактор vi, который очень неудобен и понадобится еще одна статья, объясняющая как с ним работать. Гораздо проще установить переменную окружения EDITOR и задать более удобный текстовый редактор, например, nano.

Узнаем, где находится текстовый редактор nano:

which nano
/bin/nano

Установим переменную окружения:

Установка переменной окружения EDITOR

Рис. 2. Установка переменной окружения EDITOR

Если облака для вас
не просто теория
Широкий спектр услуг
по выделенным северам
и мультиклауд-решениям
Конфигурация VPS и бесплатный тест уже через 2 минуты
Организация вашей IT-инфраструктуры на основе мультиклауд-решения

После этого можно выполнить visudo и дать права пользователю Linux, отредактировав необходимый файл, добавив в него den. Добавьте в него строчку:

den ALL=(ALL:ALL) ALL

Читайте также:
Работала по программе характеристика студента медика

Данная строка объясняет, что den можно выполнять со всех (первый ALL) терминалов, работая как любой (второй ALL) все команды (третий ALL) с максимальными правами. Конечно, его можно и более ограничить, например:

den ALL= /sbin/poweroff

Эта запись означает, что вышло дать права пользователю Linux den и он может с любого терминала вводить команду завершения работы. Руководств по файлу sudoers в Интернете предостаточно, поэтому вы без проблем найдете дополнительные примеры ограничения прав через этот файл, чтобы настроить сервер так, как вам нужно.

Редактирование /etc/sudoers

Рис. 3. Редактирование /etc/sudoers

Для сохранения изменений нажмите сначала Ctrl + O, а затем Ctrl + X, чтобы выйти из редактора.

Теперь проверим, все ли у нас получилось. Превратимся в den:

Попытаемся с максимальными правами выполнить любую команду, например, ls:

Команда sudo запросит пароль den — введите его. Если бы мы допустили ошибку при настройке, sudo сообщила бы, что он не имеет права ее использовать. А поскольку она запросила пароль, мы все сделали правильно.

Sudo в действии

Рис. 4. Sudo в действии

Каждую команду, которая требует максимальных прав, вам придется выполнять через sudo. Порой нужно выполнить продолжительную настройку и вводить каждый раз sudo не хочется. В этом случае можно запустить командный интерпретатор bash через sudo и вы получите полноценную консоль root. Вот только не забудьте по окончанию настройки ввести exit:

sudo bash
выполняем настройку
exit

Через sudo у вас не получится использовать перенаправление задач категории ввода/вывода, то есть команда вида sudo ls /etc > /root/somefile не сработает. Для этого требуется ввести sudo bash и использовать систему как обычно.

Каждая команда, которая была введена в систему непосредственно с помощью sudo, фиксируется в учетном журнале, находящемся по адресу /var/log/auth.log, и у вас сохранится история введенных задач с полномочиями root, а вот при работе под администратором root журнал вовсе не ведется. Кроме того, если пойдет не так, можно будет понять, что случилось, изучив данный журнал. Посмотрите на рис. 5. На нем видно, что den вводил ls через sudo.

Журнал auth.log

Рис. 5. Журнал auth.log

Команда su

Su дает доступ к консоли с полными правами администратора root любому (даже если он изначально не был вписан в файл /etc/sudoers). Единственное условие — он должен иметь пароль root. Понятно, что в большинстве случаев ним будет сам root, — не станете же вы всем доверять свой пароль? Поэтому su предназначена, в первую очередь, для администратора системы, в Linux права пользователя у него не ограничены, а sudo — для остальных, им тоже иногда требуются права root (чтобы они меньше отвлекали администратора от своей работы).

Использовать su просто:
su

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

Чтобы закрыть сессию su нужно или ввести слово exit, или закрыть окно терминала.

С помощью su можно работать от имени любого пользователя. Ранее было показано, как мы с помощью su den смогли выполнять команды от имени пользователя den.

Популярные услуги
Linux сервер

Высокопроизводительные VPS сервера Linux на без KVM-виртуализации идеально подходят для крупных интернет-проектов. В сочетании с этой операционной системой серверные компьютеры демонстрируют хорошую производительность, а SSD хранилища данных способствуют увеличению их быстродействия. У нас вы сможете взять в аренду VPS и VDS Linux сервера.

Аренда выделенного сервера в России

Аренда сервера и СХД необходимой производительности. Все оборудование размещается в собственном отказоустойчивом ЦОДе с зарезервированными системами энергоснабжения, охлаждения и каналами связи.

Источник: www.xelent.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru