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

chmod -R 777 / в ubuntu - многочисленные проблемы

Клиент случайно предоставил всей файловой системе полные права доступа к своему серверу ubuntu 10.04.

chmod -R 777 httpdocs/cd /

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

Первым признаком проблемы была невозможность использовать su, что приводило к ошибке аутентификации. sudo также жаловался на отсутствующий бит setuid. Это было исправлено путем входа в систему как root с самого компьютера и запуска chmod + s / usr / bin / sudo.

теперь я могу sudo su и делаю то, что мне нужно, как root. su по-прежнему выдает ошибку аутентификации.

Я последовал совету здесь: http://swiss.ubuntuforums.org/showthread.php?t=1180661&page=2

chmod 0755 /
chmod 0755 /*
chmod 1777 /tmp
chmod 0750 /root
chmod 0700 /lost+found

Затем я попытался сбросить пароль root. Я все еще не могу su стать root, или su root.

Система работает нормально. Есть ли предложения по получению su работать еще раз? Где я могу найти другие проблемы?

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

В качестве альтернативы я бы сравнил разрешение со второй, возможно, недавно установленной машиной. Не должно быть слишком сложно с вашим любимым языком сценариев.

Вау ... со мной такое тоже однажды случилось ... к счастью, это была домашняя машина. Я решил принудительно переустановить все пакеты, так что все разрешения были возвращены. В любом случае это было на Debian. Я использую apt-get install --reinstall $ packages в скрипте, который получил список всех пакетов. Что говорят системный журнал или auth при попытке su?

Пирс

Может проблема в отсутствии бита SUID?

Вот файлы, в которых он должен быть:

ip@ip:~$ ls -al /bin | grep rws
-rwsr-xr-x  1 root root  27256 2010-01-28 20:32 fusermount*
-rwsr-xr-x  1 root root  78096 2009-10-23 07:28 mount*
-rwsr-xr-x  1 root root  35600 2009-05-12 00:43 ping*
-rwsr-xr-x  1 root root  31368 2009-05-12 00:43 ping6*
-rwsr-xr-x  1 root root  36864 2009-07-31 16:59 su*
-rwsr-xr-x  1 root root  56616 2009-10-23 07:28 umount*

ip@ip:~$ ls -al /usr/bin | grep rws
-rwsr-xr-x  1 root   root       14640 2009-05-12 00:43 arping*
-rwsr-sr-x  1 daemon daemon     52112 2009-09-16 01:29 at*
-rwsr-xr-x  1 root   root       41864 2009-07-31 16:59 chfn*
-rwsr-xr-x  1 root   root       37128 2009-07-31 16:59 chsh*
-rwsr-xr-x  1 root   root       59752 2009-07-31 16:59 gpasswd*
-rwsr-xr-x  1 root   lpadmin    14256 2010-03-02 17:16 lppasswd*
-rwsr-xr-x  1 root   root       62368 2008-11-05 15:24 mtr*
-rwsr-xr-x  1 root   root       32384 2009-07-31 16:59 newgrp*
-rwsr-xr-x  1 root   root       42856 2009-07-31 16:59 passwd*
-rwsr-xr-x  1 root   root       14880 2009-10-16 14:43 pkexec*
-rwsr-xr-x  2 root   root      143736 2010-04-13 20:31 sudo*
-rwsr-xr-x  2 root   root      143736 2010-04-13 20:31 sudoedit*
-rwsr-xr-x  1 root   root       18848 2009-05-12 00:43 traceroute6.iputils*
-rwsr-sr-x  1 root   root       10536 2009-11-10 12:48 X*

Попробуйте установить выполнение + SUID для всех (или хотя бы su) через

chmod u+xs file

UPD: обратите внимание, что для / usr / bin / at и / usr / bin / X вам также нужно сделать

chmod g+xs