TimVin

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

Например, у нас есть учетная запись пользователя с именем postgres (системная учетная запись суперпользователя PostgreSQL по умолчанию), мы хотим, чтобы каждый пользователь (обычно наша база данных PostgreSQL и системные администраторы) в группе с именем postgres переключался на учетную запись postgres с помощью команды su без ввода пароль.

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

Любому другому пользователю будет предложено ввести пароль учетной записи пользователя, на которую он переключается (или, если они используют команду sudo, им будет предложено ввести свой пароль), если они не предоставят правильный пароль, они получат ошибка «authentication failed»

Использование файла Sudoers

Вы можете использовать su для другого пользователя, не требуя пароля, внеся некоторые изменения в файл sudoers.

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

$ sudo visudo

Затем добавьте следующую конфигурацию под строкой «% sudo ALL = (ALL: ALL) ALL».

user ALL=NOPASSWD: /bin/su – postgres

Сохраните и закройте файл.

Теперь попробуйте выполнить su на учетную запись postgres от имени пользователя user, оболочка не должна запрашивать ввод пароля:

$ sudo su - postgres
Рубрики: Linux