hidepid. Скрыть процессы в системе.

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

Для сокрытия процессов, при монтировании директории /proc применяется параметр hidepid, который может иметь три значения:

  • hidepid=0 — все пользователи имеют доступ к файлам в /proc/pid (это значение по умолчанию)
  • hidepid=1 — пользователи получают доступ, только к собственному каталогу в /proc/pid, но io, status, cmdline, sched* остаются доступны всем.
  • hidepid=2 — каталоги в /proc/pid скрыты от пользователей.

Просто перемонтируем /proc с нужным параметром для того, что бы ограничить пользователей на сервере:

# mount -o remount,rw,hidepid=2 /proc

Для сохранения изменений при перезагрузке, внесём соответствующие изменения в fstab:

proc /proc proc defaults,hidepid=2 0 0

При этом, нужно учитывать, что некоторым приложениям доступ к /proc таки может понадобиться. Для того что бы такой доступ им дать, предусмотрен параметр gid=. Значением параметра может быть имя группы в системе, членам которой доступ к процессам будет разрешён, как при hidepid=0. Монтирование при этом будет выглядеть так:

proc /proc proc defaults,hidepid=2,gid=admin 0 0

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

@SysadminNotes | https://sysadmin.pm

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *