21:40 

Администрирование?!

deadlymercury
An original idea. That can't be too hard. The library must be full of them. (c)Stephen Fry
Жалоба - "не работает plesk (500 internal server error), спасите-помогите!"
Ну, на момент, когда руки дошли - посмотреть, что там случилось с плеском, не получилось. Контейнер не отвечал в принципе и не пинговался. Захожу внутрь - не запущен сетевой интефрейс. Пожал плечами, запустил. Вроде там что-то про "ребут поможет?" в заявке было, ну да ладно. Так, а вот и ошибка плеска. А вот лог службы, которая отвечает за его работу:

[root@3346 /]# tail /var/log/sw-cp-server/error_log
/usr/share/sw-cp-server/applications-conf.sh: line 4: /etc/sw-cp-server/applications.d/*.conf: Permission denied
Cannot find config item ["global/SERVERsocket==:8443", ".php", 0]
2014-08-06 10:16:57: (mod_fastcgi.c.1068) the fastcgi-backend /usr/bin/sw-engine-cgi -c /usr/local/psa/admin/conf/php.ini -d auto_prepend_file=auth.php3 -u psaadm failed to start:
2014-08-06 10:16:57: (mod_fastcgi.c.1072) child exited with status 1 /usr/bin/sw-engine-cgi -c /usr/local/psa/admin/conf/php.ini -d auto_prepend_file=auth.php3 -u psaadm
2014-08-06 10:16:57: (mod_fastcgi.c.1075) If you're trying to run your app as a FastCGI backend, make sure you're using the FastCGI-enabled version.
If this is PHP on Gentoo, add 'fastcgi' to the USE flags.
2014-08-06 10:16:57: (mod_fastcgi.c.1171) [ERROR]: spawning fcgi failed.

Хм, понятного мало, но хоть понятно, как воспроизвести :)
[root@3346 /]# /usr/bin/sw-engine-cgi -c /usr/local/psa/admin/conf/php.ini -d auto_prepend_file=auth.php3 -u psaadm
Could not open Repository at "/etc/sw/keys": Cannot open file
PHP Warning: file(/etc/psa/psa.conf) [function.file]: failed to open stream: Permission denied in /usr/local/psa/admin/plib/class.Conf.php3 on line 27
Content-type: text/html
Unable to read Control Panel configuration file: date_default_timezone_get() [function.date-default-timezone-get]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Volgograd' for 'VOLST/4.0/DST' instead

Эээ... эээ? Не, с правами к конфигу psa.conf все в порядке, а вот права на /etc/psa/ - 0664. Странно. Ладно, поправим. Так, а что это за ругать на /etc/sw/keys/? С keys опять все в порядке, а вот /etc/sw/ - права 0664. Хм, странно, но поправим. А еще на что-то ругань была... А, "/etc/sw-cp-server/applications.d/*.conf". Хм, и опять с конфигами все в порядке. А /etc/sw-cp-server/ - 0664. Окей, попра...
"Штирлиц долго смотрел в одну точку... Потом в другую... - Двоеточие! - наконец-то догадался Штирлиц."

Ну да, в /etc/ все обладает правами 0664. Не удивительно, что ничего не работает :) Ну что ж, поправим, подглядев у соседнего сервера.

[root@3346 /]# find /etc -maxdepth 1 -type d -exec chmod 0755 {} \;
[root@3346 /]# chmod 0700 /etc/cron.d
[root@3346 /]# chmod 0750 /etc/audisp /etc/audit
[root@3346 /]# find /etc -maxdepth 1 -type f -exec chmod 0644 {} \;
[root@3346 /]# chmod 0600 /etc/securetty /etc/shadow- /etc/passwd- /etc/.pwd.lock /etc/group- /etc/inittab
[root@3346 /]# chmod 0400 /etc/shadow
[root@3346 /]# chmod 0440 /etc/sudoers
[root@3346 /]# chmod 0640 /etc/libaudit.conf

Вроде все? Ребут для проверки и... все лежит, ничего не запускается. Что такое?

[root@3346 /]# ls -alh /etc/ | grep -v -- 'rwxr-xr-x' | grep -v -- '-rw-r--r--'
total 2.6M
drwxr-x--- 3 root root 4.0K Jun 11 2009 audisp
drwxr-x--- 2 root root 4.0K Jun 11 2009 audit
drwx------ 2 root root 4.0K Jul 28 2013 cron.d
-rw------- 1 root root 952 Aug 6 10:29 group-
lrwxrwxrwx 1 root root 11 Jul 21 2010 init.d -> rc.d/init.d
-rw------- 1 root root 1.5K Jun 21 2009 inittab
-rw-r----- 1 root root 191 Sep 17 2008 libaudit.conf
lrwxrwxrwx 1 root root 36 Dec 22 2010 localtime -> /usr/share/zoneinfo/Europe/Volgograd
lrwxrwxrwx 1 root root 12 Jul 21 2010 mtab -> /proc/mounts
lrwxrwxrwx 1 root root 34 Aug 20 2013 named.conf -> /var/named/run-root/etc/named.conf
-rw------- 1 root root 2.6K Jul 25 2013 passwd-
lrwxrwxrwx 1 root root 27 Jul 21 2010 php.ini_z -> /usr/local/Zend/etc/php.ini
-rw------- 1 root root 0 May 18 2009 .pwd.lock
lrwxrwxrwx 1 root root 7 Jul 21 2010 rc -> rc.d/rc
lrwxrwxrwx 1 root root 10 Jul 21 2010 rc0.d -> rc.d/rc0.d
lrwxrwxrwx 1 root root 10 Jul 21 2010 rc1.d -> rc.d/rc1.d
lrwxrwxrwx 1 root root 10 Jul 21 2010 rc2.d -> rc.d/rc2.d
lrwxrwxrwx 1 root root 10 Jul 21 2010 rc3.d -> rc.d/rc3.d
lrwxrwxrwx 1 root root 10 Jul 21 2010 rc4.d -> rc.d/rc4.d
lrwxrwxrwx 1 root root 10 Jul 21 2010 rc5.d -> rc.d/rc5.d
lrwxrwxrwx 1 root root 10 Jul 21 2010 rc6.d -> rc.d/rc6.d
lrwxrwxrwx 1 root root 13 Jul 21 2010 rc.local -> rc.d/rc.local
lrwxrwxrwx 1 root root 15 Jul 21 2010 rc.sysinit -> rc.d/rc.sysinit
lrwxrwxrwx 1 root root 33 Aug 20 2013 rndc.conf -> /var/named/run-root/etc/rndc.conf
-rw------- 1 root root 122 Feb 17 2003 securetty
-r-------- 1 root root 1.5K Jul 31 2013 shadow
-rw------- 1 root root 1.6K Jul 9 2013 shadow-
-r--r----- 1 root root 3.2K Mar 25 2009 sudoers

А, ну да, про линки забыл. Из-за них и не работает init, из-за этого и после ребута на сервере отсутствовала сетка.
[root@3346 /]# chmod 0755 /etc/rc.d/*
[root@3346 /]# chmod 0644 /usr/share/zoneinfo/Europe/Volgograd
[root@3346 /]# chmod 0644 /var/named/run-root/etc/named.conf
[root@3346 /]# chmod 0644 /usr/local/Zend/etc/php.ini
[root@3346 /]# chmod 0644 /var/named/run-root/etc/rndc.conf

Вот теперь все работает :) В любом случае до сих пор не известно, что именно сподвигло человека на выполнение команды вида " chmod 0664 /etc/* ".

@темы: будни, маразмы

URL
   

Записки безумного саппорта

главная