File permissions source installation

Infos:

  • Used Zammad version: Latest (6.3.2)
  • Used Zammad installation type: source
  • Operating system: Ubuntu 22.04 LTS
  • Browser + version: Chrome (latest)

Expected behavior:

  • Download and Extract .tar.gz file with proper file permissions

Actual behavior:

  • All directories are world readable, writable and executable (chmod 777)
  • All normal files are world readable, writable and executable (chmod 666)
  • Some files are executable, that shouldn’t be i think (font.css / bootstrap-tokenfield.css) (chmod 777)
root@web01:/opt/zammad_6.3.2# ls -alh
total 17M
drwxrwxrwx 16 root root 4.0K Aug  5 03:03 .
drwxr-xr-x 18 root root 4.0K Aug  5 11:47 ..
drwxrwxrwx 14 root root 4.0K Aug  5 03:03 app
drwxrwxrwx  2 root root 4.0K Aug  5 03:03 bin
-rw-rw-rw-  1 root root   60 Aug  5 03:03 browserlist
-rw-rw-rw-  1 root root 4.2K Aug  5 03:03 CHANGELOG.md
-rw-rw-rw-  1 root root 5.4K Aug  5 03:03 CODE_OF_CONDUCT.md
drwxrwxrwx  9 root root 4.0K Aug  5 03:03 config
-rw-rw-rw-  1 root root  314 Aug  5 03:03 config.ru
drwxrwxrwx  8 root root 4.0K Aug  5 03:03 contrib
drwxrwxrwx  4 root root 4.0K Aug  5 03:03 db
drwxrwxrwx  2 root root 4.0K Aug  5 03:03 doc
-rw-rw-rw-  1 root root  892 Aug  5 03:03 Dockerfile
... snip ...

root@web01:/opt/zammad_6.3.2# ls -alh app/assets/stylesheets/
total 460K
drwxrwxrwx 4 root root 4.0K Aug  5 03:03 .
drwxrwxrwx 4 root root 4.0K Aug  5 03:03 ..
drwxrwxrwx 2 root root 4.0K Aug  5 03:03 addons
-rw-rw-rw- 1 root root  702 Aug  5 03:03 application.css
-rw-rw-rw- 1 root root   48 Aug  5 03:03 application-print.css
-rw-rw-rw- 1 root root 103K Aug  5 03:03 bootstrap.css
-rwxrwxrwx 1 root root 4.7K Aug  5 03:03 bootstrap-tokenfield.css
-rw-rw-rw- 1 root root  16K Aug  5 03:03 codemirror.css
-rw-rw-rw- 1 root root 4.9K Aug  5 03:03 cropper.css
drwxrwxrwx 2 root root 4.0K Aug  5 03:03 custom
-rw-rw-rw- 1 root root 3.8K Aug  5 03:03 fineuploader.css
-rwxrwxrwx 1 root root 1.3K Aug  5 03:03 font.css
... snip ..

Steps to reproduce the behavior:

Notes

I’ve did a find and replace on the directories, that was all oké,
but also did it on the files, but there where some files that probably needed the execute flag, so it was a little too much…

find /opt/zammad_6.0.0 -type d -exec chmod 755 {} \;
## find /opt/zammad_6.0.0 -type f -exec chmod 644 {} \; # Don't use this one

First time noticed the permissions on the 6.0.0 branch.

644 should me good enough on these diretories.