LINUX.ORG.RU
ФорумAdmin

Nignx Permission denied

 


0

3

Добрый день друзья!

Помогите победить проблему. Centos 7 установлен nginx

Сейчас я уже для тестов все сбросил на дефолт

Вот конфиг nginx

# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log;
#error_log  /var/log/nginx/error.log  notice;
#error_log  /var/log/nginx/error.log  info;

pid        /run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    index   index.html index.htm;

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;

    server {
        listen       80 default_server;
        server_name  localhost;
        root         /usr/share/nginx/html;

        #charset koi8-r;

        #access_log  /var/log/nginx/host.access.log  main;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
        }

        # redirect server error pages to the static page /40x.html
        #
        error_page  404              /404.html;
        location = /40x.html {
        }

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
        }
    }
}

Вот права на папку уже до абсурда 777

[root@c2-04-s14-01 nginx]# ls -ld /usr/share/nginx/html
drwxrwxrwx 2 nginx nginx 4096 Apr 29 08:54 /usr/share/nginx/html
[root@c2-04-s14-01 nginx]# ls -la /usr/share/nginx/html
total 28
drwxrwxrwx 2 nginx nginx 4096 Apr 29 08:54 .
drwxrwxrwx 3 root  root  4096 Apr  9 22:59 ..
-rwxrwxrwx 1 nginx nginx 3650 Apr  9 22:58 404.html
-rwxrwxrwx 1 nginx nginx 3693 Apr  9 22:58 50x.html
-rwxrwxrwx 1 nginx nginx 3700 Apr  9 22:58 index.html
-rwxrwxrwx 1 nginx nginx  370 Apr  9 22:58 nginx-logo.png
-rwxrwxrwx 1 nginx nginx 3034 Apr  9 22:58 poweredby.png
[root@c2-04-s14-01 nginx]#

SeLinux выключен

[root@c2-04-s14-01 nginx]# sestatus
SELinux status:                 disabled
[root@c2-04-s14-01 nginx]#

В логах Nginx

2015/04/29 09:12:41 [error] 13290#0: *1 "/usr/share/nginx/html/index.html" is forbidden (13: Permission denied), client: xx.xx.xx.xx, server: localhost, request: "GET / HTTP/1.1", host: "xx.xx.xx.xx"

2015/04/29 09:12:41 [error] 13290#0: *1 open() "/usr/share/nginx/html/favicon.ico" failed (13: Permission denied), client: xx.xx.xx.xx, server: localhost, request: "GET /favicon.ico HTTP/1.1", host: "xx.xx.xx.xx"

на сайте соответственно

403 Forbidden

Что ему еще то надо от меня? Подскажите советом. Спасибо.

Ответ на: комментарий от TDrive

Спасибо за ответ

[root@c2-04-s14-01 nginx]# ls -ld /usr
drwxr-xr-x 13 root root 4096 Jul 21  2014 /usr
[root@c2-04-s14-01 nginx]# ls -ld /usr/share
drwxr-xr-x 83 root root 4096 Apr 29 08:53 /usr/share
[root@c2-04-s14-01 nginx]# ls -ld /usr/share/nginx
drwxrwxrwx 3 root root 4096 Apr  9 22:59 /usr/share/nginx
zloyyyyyy ()
Ответ на: комментарий от TDrive

Не могу понять, проблема в пользователе?

[root@c2-04-s14-01 nginx]# su nginx
su: failed to execute /sbin/nologin: Permission denied
[root@c2-04-s14-01 nginx]# sudo nginx
sudo: unable to stat /etc/sudoers: Permission denied
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
[root@c2-04-s14-01 nginx]#
zloyyyyyy ()
Ответ на: комментарий от TDrive
 
[root@c2-04-s14-01 nginx]# grep nginx /etc/passwd
nginx:x:998:997:Nginx web server:/var/lib/nginx:/sbin/nologin
[root@c2-04-s14-01 nginx]# grep nginx /etc/group
nginx:x:997:
[root@c2-04-s14-01 nginx]# su - nginx -s /bin/bash
Last login: Wed Apr 29 09:39:48 MSK 2015 on pts/1
su: warning: cannot change directory to /var/lib/nginx: Permission denied
su: failed to execute /bin/bash: Permission denied
[root@c2-04-s14-01 nginx]# chown -R nginx:nginx /var/lib/nginx
[root@c2-04-s14-01 nginx]# su - nginx -s /bin/bash
Last login: Wed Apr 29 09:42:59 MSK 2015 on pts/1
su: warning: cannot change directory to /var/lib/nginx: Permission denied
su: failed to execute /bin/bash: Permission denied
zloyyyyyy ()
Ответ на: комментарий от alozovskoy
[root@c2-04-s14-01 nginx]# ls -ld /var/
drwxr-xr-x 23 root root 4096 Apr 29 08:45 /var/
[root@c2-04-s14-01 nginx]# ls -ld /var/lib
drwxr-xr-x 26 root root 4096 Apr 29 08:53 /var/lib
[root@c2-04-s14-01 nginx]# ls -ld /var/lib/nginx
drwx------ 3 nginx nginx 4096 Apr 29 09:52 /var/lib/nginx
[root@c2-04-s14-01 nginx]# ls -la /var/lib/nginx
total 12
drwx------  3 nginx nginx 4096 Apr 29 09:52 .
drwxr-xr-x 26 root  root  4096 Apr 29 08:53 ..
drwxrwxrwx  7 nginx nginx 4096 Apr  9 22:59 tmp
[root@c2-04-s14-01 nginx]#
zloyyyyyy ()
Ответ на: комментарий от zloyyyyyy

/var/lib/nginx это домашняя директория nginx, если даже в нее нет доступа явно что то глобальное с правами не так. Не силен в SeLinux но я бы в его сторону копал.

TDrive ★★★★★ ()
Ответ на: комментарий от TDrive

В этом и главный вопрос ) Сервер стоит в стандарте, только после установки.

Если кто-то может подсказать то дайте совет. Пока покопаю в сторону SeLinux хотя он и по все показателям выключен.

zloyyyyyy ()

любым другим пользователем попробуй посмотреть содержимое директории /usr/share/nginx/html.

Собственно ls -la /usr/share/nginx/html

Проблема заключалась в том, что когда пользователем просматриваешь директорию, то появляется следующая картина: «d????????? ? ? ? ? ? .»

anonymous ()
Ответ на: комментарий от TDrive

Создал пользователя test пробую зайти под ним пишет

 
[root@c2-04-s14-01 ~]# su test
su: failed to execute /bin/bash: Permission denied

Ясно что-то в системе не так,

zloyyyyyy ()
Ответ на: комментарий от zloyyyyyy
[root@c2-04-s14-01 nginx]# ls -la /bin
lrwxrwxrwx 1 root root 7 Jul 21  2014 /bin -> usr/bin
[root@c2-04-s14-01 nginx]# ls -la /bin/bash
-rwxr-xr-x 1 root root 960384 Mar  6 02:06 /bin/bash
[root@c2-04-s14-01 nginx]#
zloyyyyyy ()
Ответ на: комментарий от zloyyyyyy

Я первый раз работаю с CentOS 7, всегда 6,5

Оказалось дело вот в чем, проверим права, я понял что практически везде ошибка доступа. Проблема оказалась глобальна.

Проверив права на корень /

[root@c2-04-s14-01 audit]# ls -la /
total 117
drwx------  18 root root  4096 Apr 28 18:22 .

Стало понятно что с такими правами ничего не разаботает

Сделал

chmod a+rx /

И все завилось.. логика не понятная, зачем и почему? Напомню что это сервер reg.ru в стандарте, тоесть ничего не менялось.

Может я конечно не профи и чего то не понимаю, но права сомнительны.

Всем спасибо!

zloyyyyyy ()
Ответ на: комментарий от zloyyyyyy

Это проблемы reg.ru

По дефолту у установленной centos 7 права не такие

trofk ★★★ ()

Попрбуй сделать так, для честности:

# su - nginx
$ less /usr/share/nginx/html/index.html

И да, останови в режиме демона и запусти nginx из терминала + strace. посмотри что выводит при обращении к страничке.

Infra_HDC ★★★★★ ()
Последнее исправление: Infra_HDC (всего исправлений: 2)
Ответ на: комментарий от Infra_HDC

У nginx nologin.

Правильнее так:

sudo -u nginx -H ls тра-та-та

trofk ★★★ ()
Ответ на: комментарий от zloyyyyyy

Отличный способ потролить кого нибудь) надо запомнить)

TDrive ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.