Я рекурсивно запускал chmod 777 в /var/ и больше не мог подключиться через SSH. Я читал, что chmod 600 это исправит. Я смог подключиться после этого, но это была плохая идея.

Можно ли как-нибудь найти режимы по умолчанию для папок в /var/ или как это исправить?

Работает на Debian-Squeeze.

1 ответ1

3

Это очень распространенная ошибка для людей, приходящих из ОС, у которых нет концепции прав доступа. Много

sudo chmod -R 777 /

и такие были выданы, возможно, с добрыми намерениями, но это также более или менее ошибка одного пользователя, которая может заставить меня рекомендовать "просто переустановить" для системы * nix.

Если вы просто chmod -R 755 , то вы, среди прочего, дадите разрешение на чтение и выполнение каждому файлу для всех. Если кто-то просто удаляет выполнение для каждого файла (каталоги должны быть доступны для просмотра), тогда он удаляет бит выполнения для некоторых файлов, которые должны были быть исполняемыми, и так далее.

В этом случае это, возможно, не так серьезно, как -R / , но, например, в /var/log есть много файлов, которые не должны иметь права на чтение для кого-либо. Небольшая выдержка:

-rw-r--r-- alternatives.log
drwxr-x--- apache2
drwxr-xr-x apt
-rw-r--r-- aptitude
-rw-r----- auth.log
-rw-r----- boot
-rw-rw---- btmp
drwxr-xr-x ConsoleKit
drwxr-xr-x cups
-rw-r----- daemon.log
drwxr-xr-x dbconfig-common
-rw-r----- debug
-rw-r----- dmesg
-rw-r--r-- dpkg.log
-rw-r--r-- duplicity-backup.0
drwxr-s--- exim4
-rw-r----- fail2ban.log
-rw-r--r-- faillog
-rw-r--r-- fontconfig.log
drwxr-xr-x fsck
drwxr-xr-x hp
drwxr-xr-x installer
-rw-r----- kern.log
-rw-rw-r-- lastlog
-rw-r--r-- lpr.log
-rw-r--r-- mail.err
-rw-r--r-- mail.info
-rw-r--r-- mail.log
-rw-r--r-- mail.warn
-rw-r----- messages
drwxr-x--- mrtg
drwxr-s--- mysql
-rw-r----- mysql.err
-rw-r----- mysql.log
drwxr-sr-x news
-rw-r--r-- popularity-contest
-rw-r--r-- pycentral.log
-rw-r--r-- rssdler.log
drwxr-xr-x samba
-rw-r----- shorewall-init.log
-rw-r----- syslog
drwxr-xr-x unattended-upgrades
-rw-r----- user.log
-rw-rw-r-- wtmp
-rw-r--r-- Xorg.0.log

Это не тривиально восстановить. И это был только один каталог.

В общем и целом: даже если вы снова включили SSH, у вас была некоторая нетривиально исправимая потеря информации о разрешениях. Если это касается сугубо личного сервера, последствия, вероятно, не такие страшные, но разрешения устанавливаются как можно более строгими по определенной причине. Например, в файлах журналов, о которых я упоминал выше, может храниться конфиденциальная информация, и теперь для эксплойта достаточно обычных прав пользователя, чтобы выяснить это и получить еще больше информации для атак с правами root.


Я в последний раз видел, как кто-то давал "Do chmod -R 777 !!!Подсказка вчера на местном форуме. Не верь интернету! :-)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .