Cron перевірити (і виправити) всі дозволи кореневого файлу?


0

Тому я нещодавно пройшов чудову пригоду виправлення /usr/bin/sudoфайлу після зміни його прав. Це було в системі, де вона була навмисно налаштована, щоб ускладнити отримання кореня через інші нормальні маршрути.

Тепер, щоб запобігти цьому в майбутньому, я міг би просто запустити ці команди на завдання root root:

chown root:root /usr/bin/sudo
chmod 4755 /usr/bin/sudo

Однак в ідеалі цей набір команд не тільки виправить файл sudo, але й усі файли, необхідні для ефективного root.

Моє запитання: Чи існує сценарій чи бібліотека, яку я можу встановити, щоб забезпечити збереження ефективного кореня?

 

Це для Fedora 26, що працює на VM.


Як зауваження, я усвідомлюю, що зараз я також хочу продовжувати ще одну чудову пригоду, де я вивчаю, які ще файли /usr/binмають спеціальні дозволи, які зараз потрібно виправити.
Ніколас Саммерс

Вам ніколи не потрібно цього робити. За замовчуванням єдиною особою, яка може видалити права доступу root, є root. У вас набагато більша проблема, якщо люди змінюють дозволи на файлову систему як корінь, якщо вони не передбачаються.
djsmiley2k

Я був тим, хто допустив помилку, я просто не зрозумів, поки не вийшов з корінця.
Ніколас Саммерс

@NicholasSummers У минулому я вже бачив питання щодо виправлення виправлених дозволів на корені, і консенсус було перевстановлено або відновлено з резервного копіювання. З наявними зображеннями його насправді не має бути великою справою. Також консенсус ухиляється від того, щоб НЕ був сценарієм, якого ви шукаєте.
Деймон

Відповіді:


1

Ви скидаєте всі дозволи та власність користувача / групи на RPM за rpmдопомогою , відповідно --setpermsта --setugidsвідповідно.

Отже, з командного рядка запустіть:

$ sudo rpm --setperms -a
$ sudo rpm --setugids -a

Або ви можете кинути сценарій, який виконує ці дії, /etc/cron.daily- але здається надзвичайним, що вам це знадобиться. Натомість будьте трохи обережнішими під час запуску як root (і використовуйте рятувальні засоби завантаження, якщо вам трапиться колись помилитися в майбутньому).


Наскільки я це розумію, це не зовсім те, що я шукаю. Тут велике занепокоєння викликає дозволи / право власності на файли у бінарних файлах кореневого рівня Fedora. Якщо це теж не виправить?
Ніколас Саммерс

Крім того, порція кронів здебільшого стосується перевірки хімічних речовин. Я планував зробити скрипт доступним як сервіс, що працює під керуванням root при запуску. Сервіс суворо використовував би попередньо визначені команди, тому жоден користувач не міг би видавати власні команди, але будь-який користувач міг застосувати виправлення.
Ніколас Саммерс

@NicholasSummers Це дозволить виправити дозволи на всі бінарні файли, встановлені у вигляді пакунків (тобто, на все програмне забезпечення, яке надає Fedora). Я не знаю точно, що ви маєте на увазі під "бінарними файлами кореневого рівня", але /usr/bin/sudo, наприклад, було б затуманено.
mattdm

1
Я більш-менш маю на увазі файли, які потребують спеціальних дозволів, як-от 4755. У будь-якому випадку ця відповідь - це те, що я шукаю.
Ніколас Саммерс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.