Так же, как мы добавляем пользователя с привилегиями администратора или в локальную группу операторов сервера в Windows, чтобы он мог добавлять / редактировать / удалять файлы / папки на сервере, могу ли я предоставить такую привилегию пользователю в Linux?

Я хочу закрыть сетевой файл, который открыт и расположен на машине Linux с NetFileClose API. Здесь клиенты все машины Windows. Я успешно протестировал NetFileClose API в сети Windows, но мне пришлось добавить идентификаторы клиентов в группу администраторов на компьютере с Windows Server, в противном случае я получил ACCESS_DENIED_ERROR.

Поэтому в Linux, когда я пытался вызвать NetFileClose API с именем сервера / сервера в качестве имени / IP- адреса сервера Linux, он вернулся с ACCESS_DENIED_ERROR. Также есть сомнения по поводу второго параметра NetFileClose API, который является fileid, поскольку в Linux нет такой концепции, как идентификатор файла, вместо этого он использует номер индекса . Так можно ли принудительно закрыть файл, открытый на общем ресурсе Linux (samba) с использованием winapi NetFileClose?

1 ответ1

2

На самом деле это несколько вопросов в одном:


Q1: Как я могу дать права администратора (т.е. root) пользователю в Linux?

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

A1.2: Если этого недостаточно, sudo позволяет детализированный доступ к привилегированным командам для обычных пользователей.

A1.3: Если ничего не помогает, вы можете сделать ваши файлы / папки доступными для записи. Конечно, это "решение" примерно так же приемлемо, как и убийство всех ваших пользователей, так что вам больше не понадобятся общие файлы ... и это лишь незначительно лучше, чем создание другого пользователя с нулевым UID.


Q2: Как я могу дать привилегии администратора пользователю на сервере Samba?

A2.1: Вы этого не делаете - конфигурация Samba позволяет настраивать пользователей с правами администратора на основе общего ресурса - см. admin users = в файле конфигурации smb.conf .

A2.2: Если вам нужно, то любой пользователь с привилегиями root должен иметь полный доступ к серверу Samba.


В3: Как я могу использовать NetFileClose общего ресурса Samba?

A3.1: Если у вас достаточно свежая Samba, мне кажется, что она должна работать, по крайней мере, судя по количеству связанного кода в дереве исходников Samba. Кто-то более знакомый с Samba должен быть в состоянии проверить.

A3.2: Если вы используете старую версию Samba, скажем, более трех лет, то вам может не повезти, так как я могу проследить начало поддержки NetFilterClose() где-то в 2008 году ...

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .