Назад | Перейти на главную страницу

Linux / домашняя конфиденциальность

Предупреждение: это, вероятно, противоречит философии и дизайну Unix, но я все равно спрошу об этом.

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

Шифрование не кажется хорошим решением, потому что, когда вы хотите получить доступ к папке, вам нужно расшифровать ее и смонтировать где-нибудь, и тогда другие могут получить доступ, верно?

Может быть, отключение учетной записи root и написание некоторых правил sudoers?

Любая помощь будет принята.

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

root является root. root для всех намерений и целей Бог на этой коробке; все видят, все знают и могут делать все, что им нравится.

Однако в зависимости от того, чего вы пытаетесь достичь, аналогичный эффект может быть получен путем добавления учетных записей обычных пользователей в root группа в сочетании с очень ограниченным белым списком в sudoers. Однако помните, что вы добавляете в этот белый список, поскольку @dresende указывает, что существует почти бесконечное количество способов получить оболочку из sudo, если вы не будете осторожны. Когда у вас есть оболочка, вы можете делать все, что захотите.

Однако имейте в виду, что кому-то где-то понадобится доступ к root учетная запись. Вы можете настроить возможность установки и управления программным обеспечением или всевозможными вещами, но я могу почти гарантировать вам, что в какой-то момент кому-то что-то понадобится chownd, или даже просто chmoded, пока у них нет на это разрешения.

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

Помимо этого, существует множество файлов конфигурации системы, которые представляют собой сценарии оболочки. Сценарии оболочки могут быть изменены для работы за пределами служб настройки. В этом суть, но также и потенциальное слабое место в системе, которую вы предлагаете. cp -a /home/user1 /home/user2/user1-home будет разрушительным для вашей схемы, и может быть вставлен, запущен и удален, чтобы никто не заметил. Есть много способов проявить злобу, если это то, что они собираются делать, с очень небольшой слабостью.

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

Если бы вы сделали это, у вас не было бы прав root.

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

Конечно, кому-то нужно будет иметь привилегии root - я полагаю, это может быть администратор VPS в хостинговой компании.

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

Имейте в виду, что некоторые правила sudo могут вас укусить. Например, предоставление пользователю доступа для редактирования файла с помощью vim может позволить пользователю делать :sh и запускать что угодно от имени root.