Автор Тема: Отключение автомонтирования флэшек  (Прочитано 48502 раз)

Оффлайн alt-klon

  • Начинающий
  • *
  • Сообщений: 23
Спорим на пиво Tactical Nuclear Penguin, что 99% современных пользователей Линукс сидят под админом?

не буду )))))) судя по вышесказанному - так оно и есть. Проверить свои учетки и группы, в которые они входят смогу чуть позже. Но инфа очень интересна и поучительна )))

Оффлайн alt-klon

  • Начинающий
  • *
  • Сообщений: 23
Зашел в графической оболочке в управление локальными пользователями.
Мой user ВХОДИТ В ГРУППУ АДМИНИСТРАТОРОВ !!!!
входит в группу wheel

Это как ? ))))))
Теперь что делать-то.
1.Убирать этого из админов
2. или создавать еще одного - не админа )))))
« Последнее редактирование: 19.02.2019 05:08:06 от alt-klon »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Так  теперь что, нужно трех создавать мне пользователей для безопасности? Странно. При установке система просила придумать пароль для админа (я так полагаю, но уже с сомнением - это пароль для СУПЕРадмина root ибо имя пользователя не запрашивалось )))) )

Суперпользователя.
root, это суперпользователь и в Unix-подобной системе его не может не быть.
Его UID=0 (User IDentificator)
В Unix-подобной системе, он царь и бог, его власть безгранична.

Далее система просила создать пользователя и придумать ему пароль, ничего не говоря а его "админности". Теперь оказывается этот пользователь есть тоже админ системы - этакий подаван root-a.

:-) Она молчит, но показывает пальцем:
$ grep wheel /etc/group
wheel:x:10:root,user1
Эта запись существует сразу после инсталляции системы:
Суперпользователь и первый созданный пользователь входят в административную группу.
И su, это не super user, это Switch User:
Администратор (группа wheel) получив права root со сменой окружения, может беспарольно войти в любую учётную запись:
$ whoami
user1
$ su - root
Password:
# su - builder
$ whoami
builder

И именно поэтому, после повышении прав, Slackware предупреждает:
- Уважайте частную жизнь пользователей;
- С большой властью приходит большая ответственность.


root входит в свою учётную запись (логинится как root) только тогда, когда ситуация экстраординарна.
Во всех остальных случаях он пользуется другой своей учётной записью первого созданного пользователя (не сиди под root -ом!!). И root и первый пользователь входят в группу администаторов, - wheel. И первый пользователь (администатор) сразу после инсталляции системы входит еще в под десяток групп.
Все остальные создаваемые пользователи, это непревилегированные пользователи, не обладающие какими-либо правами. И входят они только в одну группу, - свою. Как правило она имеет такое же имя как и логин пользователя. Суперпользователь или администратор могут при необходимости делегировать права этим пользователям, занося их в какие-либо группы.

ничего не говоря а его "админности".

Unix никогда не говорит "пожалуйста!" («Unix never says `please.'») (C) Роб Пайк
Linux, это Unix, но не UNIX.

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

:-) Да.

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

:-) Ну не скажите, очень даже можно работать:
# elinks <url>
# links2 -g <url>
и т.д.. Но не нужно.
Ранние альты даже позволяли входить в учётную запись root через GUI в DE, но при этом грозно предупреждали сообщением. А на рабочем столе root-а красовалась обоина ядовито-красного цвета с чёрной жирной надписью: root.

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

Не могут. В альтлинукс пользователи с UID от 501 и выше (в debian, devuan, slackware от 1001 и выше), вызвать оболочку другого пользователя не могут, - они не входят в группу wheel (а также в другие группы) и не обладают никакими правами:
# su - builder
$ whoami
builder
$ su - user1
-bash: /bin/su: Отказано в доступе

используя тот самый пароль root-а.

Если root раззвонит кому-то свой пароль, то этого root -а нужно гнать с работы ссаной тряпкой.
Первую учётную запись пользователя, при инсталляции системы, root создаёт для себя, поэтому он и знает свой пароль root-а.
Но все остальные пользователи в Unix-подобных системах, грубо говоря, идут лесом.
« Последнее редактирование: 19.02.2019 07:53:11 от Speccyfighter »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Зашел в графической оболочке в управление локальными пользователями.
Мой user ВХОДИТ В ГРУППУ АДМИНИСТРАТОРОВ !!!!
входит в группу wheel

:-)
О сколько нам открытий чудных готовят просвещенья дух
И опыт, сын ошибок трудных, И гений, парадоксов друг


Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
я то до сих пор считал, что в Linux есть один админ - это root. и это весьма условная учетка под которой невозможно работать. Нет  она существует но ее никто никогда не видел. Просто когда-то при инсталяции придумывается для нее пароль - и все.

Ну почему не видел, - очень даже видел.
Но никогда так не делайте того что на скриншоте. :-)
« Последнее редактирование: 19.02.2019 07:06:05 от Speccyfighter »

Оффлайн squire

  • Завсегдатай
  • *
  • Сообщений: 1 609
Зашел в графической оболочке в управление локальными пользователями.
Мой user ВХОДИТ В ГРУППУ АДМИНИСТРАТОРОВ !!!!
входит в группу wheel
Это как ? ))))))
Теперь что делать-то.
1.Убирать этого из админов
2. или создавать еще одного - не админа )))))
1. Нет. Кто-то же должен администрировать, настраивать, обновлять систему. Это и есть первый пользователь, тот, кто установил систему и  у которого есть возможность, зная пароль root, войти в систему как root.
В остальных случаях он такой же обычный пользователь и может наломать дров только в своем домашнем каталоге. Не получив права root, он не сможет ничего изменить в корневом каталоге.
2. Если хотите – создайте (для детей, домочадцев и др.)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
я то до сих пор считал, что в Linux есть один админ - это root. и это весьма условная учетка под которой невозможно работать. Нет  она существует но ее никто никогда не видел. Просто когда-то при инсталяции придумывается для нее пароль - и все.

Вот нечто подобное:
Обоина предупреждающая об активной GUI-сессии root, - вложение.

$ rpm -qf /usr/share/design/children/backgrounds/root.png
design-graphics-children-4.0.0-alt4.qa1
$ rpm -qf /usr/share/design/current/backgrounds/root.png
branding-basealt-starterkit-graphics-p8-alt0.M80P.1


Оффлайн alt-klon

  • Начинающий
  • *
  • Сообщений: 23
Огромное спасибо за информацию!
Интересно.

Пошел создавать пользователя №3, чтоб он не был в группе wheel и попробую получить права root-a )))))
нужно же проверить ))))

--------

Проверил. так и есть.
Пользователями управлять научился ))))
« Последнее редактирование: 20.02.2019 03:46:21 от alt-klon »

Оффлайн alt-klon

  • Начинающий
  • *
  • Сообщений: 23
Еще раз проверил второй скрипт.

Обычному юзеру запрещает монтирование флешек.
Для монтирования - перегружаюсь под пользователем из группы wheel.
Если зашел пользователем из группы wheel то после подключения флешки система просит ввести пароль и потом монтирует.

Что и было нужно.
Спасибо.

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
1. Нет. Кто-то же должен администрировать, настраивать, обновлять систему. Это и есть первый пользователь, тот, кто установил систему и  у которого есть возможность, зная пароль root, войти в систему как root.
Да вот оказалось, что и своего пароля достаточно в некоторых случаях: https://bugzilla.altlinux.org/35763

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Еще раз проверил второй скрипт.

Обычному юзеру запрещает монтирование флешек.
Для монтирования - перегружаюсь под пользователем из группы wheel.
Если зашел пользователем из группы wheel то после подключения флешки система просит ввести пароль и потом монтирует.

Что и было нужно.
Спасибо.

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

Преамбула:
Здесь следует принять тот факт, что при инсталляции системы создаются две учётных записи, root и user1. И обе они принадлежат пользователю устанавливающему систему, грубо говоря root-у. Тут нужно понять, что root (физическое лицо), тоже человек, а не ломовая лошадь которая обязана администрировать систему и разгребать за пользователями. Ему тоже хочется расслабиться и послушать потоковое, но делать это из под root-овой учётки в корне неправильно. Т.о. после инсталляции системы, в системе существуют две учётных записи (root и user1) и обе они принадлежат одному и тому же человеку, - других пользователей в системе ещё нет.
Но в больших организациях возникает проблема: одного админа мало, нужен ещё один админ с ограниченными превилегями (user2). Он тоже будет в группе wheel, но паролей от аккаунтов root и user1 принадлежащих root (человеку), он не знает. Ограниченно его права можно реализовать через sudo.

Так вот:
Может возникнуть ситуация, когда например требуется разрешить монтирование флешек человеку (администратору) с аккаунтами root и user1, но запретить второму администратору (user2) и всем остальным.
Этого, вариант 2 рулеза не может, - он разрешает обеим администраторам.

Но это может вариант 3 рулеза:
Только пользователи входящие в системную группу storage, имеют право монтировать флешки.

По-умолчанию, в альтлинукс группа storage не существует.
Создаём её:
# groupadd -r storage

Добавляем в неё пользователя которому разрешено монтировать флешки:
# gpasswd --add ПОЛЬЗОВАТЕЛЬ storage

Для этой ситуации будет работать правило:
# cat /media/alt-live-storage/etc/polkit-1/rules.d/60-mount-other-seat.rules
polkit.addRule(function(action, subject) {
    if (action.id.indexOf("org.freedesktop.udisks2.filesystem-mount") == 0) {
        if (subject.isInGroup("storage")) {
            return polkit.Result.AUTH_SELF;
        } else {
            return polkit.Result.NO;
        }
    }
});


polkit.addRule(function(action, subject) {
    if (action.id.indexOf("org.freedesktop.udisks2.filesystem-mount-other-seat") == 0) {
        if (subject.isInGroup("storage")) {
            return polkit.Result.AUTH_SELF;
        } else {
            return polkit.Result.NO;
        }
    }
});


У пользователя которому разрешено монтировать флешки
$ udisksctl mount -b /dev/sdc1 # unmount для размонтирования

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

На системах с sysvinit придётся однозначно использовать не AUTH_SELF, а YES, поскольку авторизация в альтлинукс на sysv сломана.
(Для работы рулеза вариантом 3 на sysv (sysv-xfce), также необходимо изъять правила с этими экшнами из файла 60-sysvinit-mount.rules)
« Последнее редактирование: 20.02.2019 15:35:47 от Speccyfighter »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Ещё раз для понимания:
Пользователь user1 (он же wheel) при 'su -' вводит пароль root не потому что root раззвонил ему свой пароль, а потому что учётка root принадлежит ему же, - root-у.

Оффлайн alt-klon

  • Начинающий
  • *
  • Сообщений: 23
Все по полочкам.
Спасибо.
Учту и даже, скорее всего, реализую.

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

Оффлайн Paver

  • Давно тут
  • **
  • Сообщений: 188
Пользователь user1 (он же wheel) при 'su -' вводит пароль root не потому что root раззвонил ему свой пароль, а потому что учётка root принадлежит ему же, - root-у.
Чуток офтопа. А насколько опасно иметь один пароль для user1 и root? Я традиционно использую разные, но может это как раз дополнительный риск?

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Пользователь user1 (он же wheel) при 'su -' вводит пароль root не потому что root раззвонил ему свой пароль, а потому что учётка root принадлежит ему же, - root-у.
Чуток офтопа. А насколько опасно иметь один пароль для user1 и root? Я традиционно использую разные, но может это как раз дополнительный риск?

Риск иметь один мастер-пароль на всё. Появляется риск потерять контроль над системой.
Более того:
Архитектура Линукс предусматривает ограничение срока действия пароля вплоть до принудительной смены пароля. Но по-умолчанию в альтлинукс это отключено. Тут смотреть /etc/login.defs и man login.defs на предмет PASS*.
В каких-то случаях могут оказаться полезными LOGIN_RETRIES и LOGIN_TIMEOUT. Они могут отбить охоту у любителей перебирать пароли.