iDebugAll / nextbox-ui-plugin

A topology visualization plugin for Netbox powered by NextUI Toolkit
MIT License
466 stars 59 forks source link

Permission denied - static files #133

Open 1v4N00 opened 1 year ago

1v4N00 commented 1 year ago

Hi all, I encountered a problem in using the plugin, in this case it concerns permissions on the static files, I wanted to ask if it turns out to be an already known problem or something new for you as well. I leave below some logs:

127.0.0.1 - - [10/May/2023:10:17:18 +0000] "GET /api/ HTTP/1.1" 200 510 "-" "curl/7.81.0"
IP - - [10/May/2023:10:17:30 +0000] "GET /api/dcim/regions/?brief=true HTTP/1.1" 200 340 "https://URL/plugins/nextbox-ui/topology/" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
127.0.0.1 - - [10/May/2023:10:17:33 +0000] "GET /api/ HTTP/1.1" 200 510 "-" "curl/7.81.0"
IP - - [10/May/2023:10:17:35 +0000] "GET /api/ipam/vlans/?brief=true HTTP/1.1" 200 2358 "https://URL/plugins/nextbox-ui/topology/" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
IP - - [10/May/2023:10:17:37 +0000] "GET /api/dcim/sites/?brief=true HTTP/1.1" 200 617 "https://URL/plugins/nextbox-ui/topology/" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
2023/05/10 10:17:37 [info] 31#38 *39 send(41, 7FF90A23A0B0, 118709) failed (32: Broken pipe)
IP - - [10/May/2023:10:17:37 +0000] "GET /plugins/nextbox-ui/topology/?site_id=1 HTTP/1.1" 200 245936 "https://URL/plugins/nextbox-ui/topology/" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
127.0.0.1 - - [10/May/2023:10:17:49 +0000] "GET /api/ HTTP/1.1" 200 510 "-" "curl/7.81.0"
127.0.0.1 - - [10/May/2023:10:18:04 +0000] "GET /api/ HTTP/1.1" 200 510 "-" "curl/7.81.0"
127.0.0.1 - - [10/May/2023:10:18:19 +0000] "GET /api/ HTTP/1.1" 200 510 "-" "curl/7.81.0"
127.0.0.1 - - [10/May/2023:10:18:35 +0000] "GET /api/ HTTP/1.1" 200 510 "-" "curl/7.81.0"
127.0.0.1 - - [10/May/2023:10:18:50 +0000] "GET /api/ HTTP/1.1" 200 510 "-" "curl/7.81.0"
IP - - [10/May/2023:10:18:54 +0000] "GET /plugins/nextbox-ui/topology/?region_id=1 HTTP/1.1" 200 364626 "https://URL/plugins/nextbox-ui/topology/" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
2023/05/10 10:18:54 [error] 31#38 *46 opening "/opt/netbox/netbox/static/nextbox_ui_plugin/next_sources/css/next.css" failed (13: Permission denied)
IP - - [10/May/2023:10:18:54 +0000] "GET /static/nextbox_ui_plugin/next_sources/css/next.css HTTP/1.1" 403 54 "https://URL/plugins/nextbox-ui/topology/?region_id=1" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
2023/05/10 10:18:54 [error] 31#38 *43 opening "/opt/netbox/netbox/static/nextbox_ui_plugin/next_sources/js/next.js" failed (13: Permission denied)
IP - - [10/May/2023:10:18:54 +0000] "GET /static/nextbox_ui_plugin/next_sources/js/next.js HTTP/1.1" 403 54 "https://URL/plugins/nextbox-ui/topology/?region_id=1" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
2023/05/10 10:18:54 [error] 31#38 *41 opening "/opt/netbox/netbox/static/nextbox_ui_plugin/jquery/jquery-3.4.1.min.js" failed (13: Permission denied)
IP - - [10/May/2023:10:18:54 +0000] "GET /static/nextbox_ui_plugin/jquery/jquery-3.4.1.min.js HTTP/1.1" 403 54 "https://URL/plugins/nextbox-ui/topology/?region_id=1" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
2023/05/10 10:18:54 [error] 31#38 *52 opening "/opt/netbox/netbox/static/nextbox_ui_plugin/jquery/jquery-3.5.1.min.js" failed (13: Permission denied)
IP - - [10/May/2023:10:18:54 +0000] "GET /static/nextbox_ui_plugin/jquery/jquery-3.5.1.min.js HTTP/1.1" 403 54 "https://URL/plugins/nextbox-ui/topology/?region_id=1" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
2023/05/10 10:18:54 [error] 31#38 *52 opening "/opt/netbox/netbox/static/nextbox_ui_plugin/next_sources/js/next.js" failed (13: Permission denied)
IP - - [10/May/2023:10:18:54 +0000] "GET /static/nextbox_ui_plugin/next_sources/js/next.js HTTP/1.1" 403 54 "https://URL/plugins/nextbox-ui/topology/?region_id=1" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
2023/05/10 10:18:54 [error] 31#38 *52 opening "/opt/netbox/netbox/static/nextbox_ui_plugin/next_sources/css/next.css" failed (13: Permission denied)
IP - - [10/May/2023:10:18:54 +0000] "GET /static/nextbox_ui_plugin/next_sources/css/next.css HTTP/1.1" 403 54 "https://URL/plugins/nextbox-ui/topology/?region_id=1" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
2023/05/10 10:18:55 [error] 31#38 *52 opening "/opt/netbox/netbox/static/nextbox_ui_plugin/jquery/jquery-3.4.1.min.js" failed (13: Permission denied)
IP - - [10/May/2023:10:18:55 +0000] "GET /static/nextbox_ui_plugin/jquery/jquery-3.4.1.min.js HTTP/1.1" 403 54 "https://URL/plugins/nextbox-ui/topology/?region_id=1" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
2023/05/10 10:18:55 [error] 31#38 *52 opening "/opt/netbox/netbox/static/nextbox_ui_plugin/jquery/jquery-3.5.1.min.js" failed (13: Permission denied)
IP - - [10/May/2023:10:18:55 +0000] "GET /static/nextbox_ui_plugin/jquery/jquery-3.5.1.min.js HTTP/1.1" 403 54 "https://URL/plugins/nextbox-ui/topology/?region_id=1" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0"
127.0.0.1 - - [10/May/2023:10:19:05 +0000] "GET /api/ HTTP/1.1" 200 510 "-" "curl/7.81.0"

below the permissions status of the files giving problems in the running container:

USER@netbox:~$ sudo docker exec -it dd0ad0dc7072 /bin/bash
unit@dd0ad0dc7072:/opt/netbox/netbox$ ls -lhai /opt/netbox/netbox/static/nextbox_ui_plugin/
total 284K
576443 drwxr-xr-x 6 root root 4.0K May 11 15:00 .
558101 drwxr-xr-x 1 root root 4.0K May 11 15:00 ..
576444 -rw-r--r-- 1 root root  80K May  9 12:17 bootstrap.bundle.min.js
576485 -rw-r--r-- 1 root root 153K May  9 12:17 bootstrap.min.css
576487 -rw-r--r-- 1 root root 1.5K May  9 12:17 button_utils.js
576488 drw-r--r-- 2 root root 4.0K May  9 15:04 img
576490 drw-r--r-- 2 root root 4.0K May  9 15:04 jquery
576492 drw-r--r-- 2 root root 4.0K May  9 15:04 jquery-ui-1.12.1
576494 -rw-r--r-- 1 root root  17K May  9 12:17 next_app.js
576495 drw-r--r-- 6 root root 4.0K May  9 15:04 next_sources
unit@dd0ad0dc7072:/opt/netbox/netbox$ ls -lhai /opt/netbox/netbox/static/nextbox_ui_plugin/jquery
jquery/           jquery-ui-1.12.1/ 
unit@dd0ad0dc7072:/opt/netbox/netbox$ ls -lhai /opt/netbox/netbox/static/nextbox_ui_plugin/jquery
ls: cannot access '/opt/netbox/netbox/static/nextbox_ui_plugin/jquery/..': Permission denied
ls: cannot access '/opt/netbox/netbox/static/nextbox_ui_plugin/jquery/jquery-3.5.1.min.js': Permission denied
ls: cannot access '/opt/netbox/netbox/static/nextbox_ui_plugin/jquery/.': Permission denied
total 0
? d????????? ? ? ? ?            ? .
? d????????? ? ? ? ?            ? ..
? -????????? ? ? ? ?            ? jquery-3.5.1.min.js
unit@dd0ad0dc7072:/opt/netbox/netbox$ ls -lhai /opt/netbox/netbox/static/nextbox_ui_plugin/img/
ls: cannot access '/opt/netbox/netbox/static/nextbox_ui_plugin/img/..': Permission denied
ls: cannot access '/opt/netbox/netbox/static/nextbox_ui_plugin/img/dead_node.png': Permission denied
ls: cannot access '/opt/netbox/netbox/static/nextbox_ui_plugin/img/.': Permission denied
total 0
? d????????? ? ? ? ?            ? .
? d????????? ? ? ? ?            ? ..
? -????????? ? ? ? ?            ? dead_node.png

Is this something that can be solved by forcing the correct permissions by editing the Dockerfile? RUN chmod -R 777 /opt/netbox/netbox/static/nextbox_ui_plugin

incoggnito commented 1 year ago

Hey, had the same problem. My solution was to change the Dockerfile:

ARG FROM_IMAGE=netboxcommunity/netbox
ARG FROM_TAG=latest
ARG FROM=${FROM_IMAGE}:${FROM_TAG}
FROM ${FROM}

ENV VIRTUAL_ENV=/opt/netbox/venv
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
COPY ./nextbox_ui_plugin /source/nextbox-ui-plugin/nextbox_ui_plugin/
COPY ./setup.py /source/nextbox-ui-plugin/
COPY ./MANIFEST.in /source/nextbox-ui-plugin/
COPY ./README.md /source/nextbox-ui-plugin/
COPY --chmod=775 ./nextbox_ui_plugin/static/nextbox_ui_plugin /opt/netbox/netbox/static/nextbox_ui_plugin
RUN pip3 install --no-cache-dir nextbox-ui-plugin
florent4014 commented 1 month ago

Same problem here, had to change the permissions in order for the plugin to work. Rather than 775 i used COPY --chmod=655