Из этого связанного сообщения (ответил @dmourati
): Как сделать пользователя и предоставить доступ только для чтения?
В коробке с CentOS
При попытке создать учетную запись только для чтения команда
chmod -R o+rx /
был выполнен под пользователем root.
Перед тем, как команда была быстро остановлена с помощью команды "Операция запрещена", всплыла куча ошибок.
^C
После этого события ящик все еще работает (приложения все еще работают), но мы больше не можем использовать SSH через PuTTY или WinSCP. Я думаю, что служба SSH была остановлена или сломана. Я начинающий пользователь Linux, но похоже, что для пользователя root в верхнем каталоге пытались изменить разрешения.
Мы думали о перезагрузке компьютера на месте, но обеспокоены тем, что в противном случае он вообще не вернется (приложения все еще работают).
Есть ли другой подход, который следует предпринять, чтобы обратить вспять предпринятые действия? Спасибо за любые советы здесь. Это очень ценится.
ssh не работает, потому что выполненная вами команда сделала закрытые ключи хоста ssh и файл конфигурации доступными для чтения всем. ssh отказывается разрешать соединения в этом случае из-за нарушения безопасности.
Да, это нужно рассматривать как нарушение безопасности. Не только из-за ssh, но и из-за того, что chmod
Команда сделала все в системном мире доступным для чтения, что она могла делать до того, как была остановлена.
Правильные разрешения выглядят примерно так (из реальной системы CentOS 7):
[root@farshire ~]# ls -al /etc/ssh
total 624
drwxr-xr-x. 3 root root 4096 Apr 10 16:21 .
drwxr-xr-x. 98 root root 8192 Jul 1 05:51 ..
-rw-r--r--. 1 root root 577388 Apr 10 15:32 moduli
-rw-r--r--. 1 root root 1716 Apr 10 15:32 ssh_config
drwxr-xr-x. 2 root root 28 Apr 10 16:20 ssh_config.d
-rw-------. 1 root root 4748 Apr 10 16:21 sshd_config
-rw-------. 1 root root 3907 Apr 11 2018 sshd_config.20043.2018-12-02@04:15:14~
-rw-------. 1 root root 1159 Dec 2 2018 sshd_config.5202.2019-04-13@19:12:50~
-rw-r-----. 1 root ssh_keys 480 Apr 10 16:21 ssh_host_ecdsa_key
-rw-r--r--. 1 root root 162 Apr 10 16:21 ssh_host_ecdsa_key.pub
-rw-r-----. 1 root ssh_keys 387 Dec 2 2018 ssh_host_ed25519_key
-rw-r--r--. 1 root root 82 Dec 2 2018 ssh_host_ed25519_key.pub
-rw-r-----. 1 root ssh_keys 1679 Dec 2 2018 ssh_host_rsa_key
-rw-r--r--. 1 root root 382 Dec 2 2018 ssh_host_rsa_key.pub
Исправление разрешений должно позволить sshd снова начать работать, хотя для дополнительной безопасности вы должны просто удалить все ключи хоста и перезапустить sshd для их восстановления. Каждый, кто входит в этот ящик, должен быть уведомлен об изменении ключа хоста.
Затем вы можете работать над восстановлением остальной системы, хотя, как заметил один из комментаторов, вам, скорее всего, придется сдуть и переустановить ОС.
Я никогда не пробовал это делать и никому не советую, но предполагаю, что вы изменили права доступа к некоторым важным файлам в / dev / sys / proc или / run. Кто-то более опытный сможет точно ответить, почему ваша система сломалась.
Если вы пытаетесь создать файловую систему, доступную только для чтения, вы можете просто смонтировать диск как доступный только для чтения. Вы можете найти множество руководств, просто выполнив поиск «корневая файловая система только для чтения»
Вот только один, который я нашел для Debian: https://wiki.debian.org/ReadonlyRoot