[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Проблема с правами доступа в Debian



19.03.2018 10:56, Galina Anikina пишет:
В Пн, 19/03/2018 в 08:37 +0300, Grigory Fateyev пишет:
Это не проблема, а фича! Тут не в имени дело, а в UID. Посмотрите
вывод id, по умолчанию в Debian, при установке, создаётся первый юзер
с UID 1000. Похоже эти юзеры были созданны первыми при инсталяции
системы и соответственно юзеры rimma и tobik имеют одинаковый UID.

19 марта 2018 г., 7:43 пользователь Galina Anikina <merilaga@yandex.r
u> написал:
Кто поможет составить bug-рапорт на английском о "Проблеме с
правами
доступа в Debian"? 
Вот ещё написал на эту тему -
Sergey Alyoshin <alyoshin.s@gmail.com
Кому:Debian-L10N-russian <debian-l10n-russian@lists.debian.org>


По выводу ls ясно, что владелец /mnt/home/rimma tobik, а не rimma.

      
Видимо у вас разные идентификаторы пользователя на разных системах,
а проверка прав по идентификатору пользователя, не по имени.

      
Скажем, на старой системе tobik UID 1000, rimma UID 1001, а на новой
наоборот,
потому что один пользователь был создан раньше другого. UID можно 
поменять.

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

rimma@tamrik:~$ ls -All /mnt/home/tobik/
итого 100
-rw------- 1 rimma rimma     6 мар 15 16:21  .bash_history
......................

rimma@tamrik:~$

Ха а "чужого" - tobik-а разрешает просмотреть!
Потому что владелец "чужого" тут rimma.


Хотела написать об этой проблеме ещё пару лет назад, но поскольку
надо
было писать на английском ....
Короче подумала, что кто-то заметит и напишет. Вот прошло время и
"воз
и ныне там"!

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


---------------------

Да пользователи там и там были созданы в разное время-
то есть наоборот
На одном разделе допустим ввели 1-го и 2-го пользователя, при этом 1-ый 
пользователь получил (на мой взгляд) излишние права - как первый и
поэтому на второй системе они были созданы наоборот.
НО !  Как может производиться монтирование только по UID? Не учитывая
имени пользователя? Получается, что производится усечённая проверка
прав пользователей на соседнем разделе только по UID. Сейчас подумаю,
какой аналог привести, чтобы было понятно. Например - в юридическом
смысле не будет являться полной идентификация человека только по
отпечатку пальца, без паспорта (в нашей стране) или другого документа
(в другой стране) и личного физически присутствия (как в банке при
получении кредита записывают на видео). То есть это не совсем
полноценная идентификация (с возможностью компроментаций).
Так и в этом случае - подмонтированная система монтируется получается
кое-как, с минимальной проверкой прав.

В данном случае вопрос шифрования находится ещё на стадии изучения, а
две системы установлены в качестве эксперимента на компе, где сам себе
хозяин.

Насчёт поменять UID - спасибо сделаю, но всё же хотелось бы, чтобы
проверялось не только по UID а и по имени пользователю и если они не
совпадают, то программа должна уведомить root-а в момент монтирования и
возможно предложить какое-то решение.
Это был бы логичный разумный вариант разрешения данного вопроса.
Кстати вот ещё пример на тему - обоснования зачем это надо-

Представьте школу и учитель информатики установил на один компьютер в
сети систему и ввёл пользователей 1 и 2. (Ну или если школа или кружок
маленькие - то установил на разных разделах одного компьютера разные
системы, чтобы продемонстрировать детям разные операционные системы)
Далее через некоторое время или учитель сменился или заболел и его
подменяли (причин может быть много) - другой человек установил систему
на другом компьютере - в этой же сети ввёл двух пользователей, но в
обратном порядке. Один ученик (любопытный) примонтирует соседний раздел
и попадёт к примеру в каталог учителя...

Или ещё пример - на домашнем компьютере установлены две системы -для
работы и для домашних развлечений, и там введены два пользователя -
муж-жена, брат-сестра, два соседа по съёмной квартире и тд, Я думаю
смысл понятен.
И предположим в описываемых ситуациях так же будут введены пользователи
наоборот (кроме этого надо учитывать тот факт, что не все учителя или
сопровождающие компьютерную технику в школах и в других учреждениях 
знают на пятёрку, назубок, все команды и последствия их неправильного
ввода). Что мы в итоге имеем? Один (более продвинутый пользователь)
примонтирует соседний раздел и с удивлением обнаружит, что имеет доступ
к разделу жены и тд. Я думаю последствия очевидны.
Таким образом происходит компрометация другого человека, к которому вот
 таким образом "незаконно" кто-то вломился (то есть вломился в его
виртуальный дом и узнал много чего лишнего).
Я сознательно привела "такой" пример. Таким образом я пытаюсь всё же
доказать очевидное. Хотя я понимаю, что проще сделать вид, что проблемы
не существует. 
Или если пользователь 2-ой хочет просмотреть каталог 1-го - где у них
совпадают UID, но не совпадают имена - надо выдать окно предупреждения
- что поскольку UID и имя пользователя не совпадают на 100 проентов, то
эту операцию может сделать только суперпользователь и отказать этому
желающему.
Такой вариант решения был был компромиссным и правильным.
Это не в адрес читателей нашей рассылки, а в адрес разработчиков.


 


Бардак.

Если необходима приватность данных - необходимо использовать шифрование. Точка. В любом другом случае, особенно если возможен dual boot, или есть права root (Administrator) - данные любого пользователя доступны. И под linux, и под windows.

В  вашем случае, чтобы UID'ы не пересекались - в файле /etc/login.defs есть параметр UID_MIN. Установите его на разных системах в разное значение (1000,2000,3000) - и диапазоны UID'ов будут разными.


Reply to: