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

Журнал sudoer и отчеты по электронной почте

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

Это плохая идея. В этом плане есть несколько недостатков.

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

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

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

Что вам нужно сделать, так это сесть с пользователем и точно определить, что он делает, используя эту систему, и наметить, какие права доступа это повлечет за собой. Здесь действительно сложно определить, что им нужно делать, а не то, как они это делают. Некоторые из типов вопросов, с которых вам следует начать, - это такие вопросы, как нужно ли редактировать системные файлы, перезапускать службы, просматривать файлы журналов и т. Д.

После того, как вы каталогизируете эту информацию, вы можете начать выяснять, стоит ли вам что-то делать вместо этого. Например, если необходимо изменить файл в / etc / sysconfig, должен ли пользователь подготовить изменение, а затем передать его системному администратору для развертывания? Или, если им нужно иметь возможность управлять службами, какие команды на самом деле требуются для этого, и должно ли это выполняться как root или как учетная запись службы?

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

Самый простой способ сделать это - настроить журнал на вашей машине. По умолчанию logwatch генерирует электронное письмо каждую ночь, которое включает различные сведения о системе и важные сообщения журнала. По умолчанию он также включает в себя все зарегистрированные команды sudo.

Затем просто установите адрес электронной почты logwatch в /etc/logwatch.conf на ваш адрес, и вы будете получать эти письма каждую ночь.

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