Fresh install on Debian 12: can't apply partial context to unlabeled file

Infos:

  • Used Zammad version: 6.2.0-1702975436.87754a02.bookworm
  • Used Zammad installation type: package
  • Operating system: Debian 12
  • Browser + version: Not applicable as this is all console work (firefox 120.0.1 (64-bit))

Expected behavior:

  • I’m not sure exactly what the expected output should be, but probably not an error.

Actual behavior:

  • changing security context of ‘/opt/zammad/public/500-mobile[dot]html’

chcon: can’t apply partial context to unlabeled file ‘500-mobile[dot]html’

changing security context of ‘/opt/zammad/public/’

chcon: can’t apply partial context to unlabeled file ‘/opt/zammad/public/’

Steps to reproduce the behavior:

  • On fresh Debain 12 installation, i’m following the official documentation (https[collon][slash][slash]docs[dot]zammad[dot]org/en/latest/install/package[dot]html)

apt install curl apt-transport-https gnupg

[output good, no issues]

locale |grep “LANG=”

output indicated the locale was “C.UTF-8” or similar, so i followed this to change it

apt install locales

[output good, no issues]

locale-gen en_US.UTF-8

[output good, no issues]

echo “LANG=en_US.UTF-8” > /etc/default/locale

[output showed no errors]

curl -fsSL https[collon][slash][slash]dl[dot]packager[dot]io/srv/zammad/zammad/key | \

gpg --dearmor | tee /etc/apt/trusted[dot]gpg[dot]d/pkgr-zammad[dot]gpg> /dev/null

[output good, no issues]

echo “deb [signed-by=/etc/apt/trusted[dot]gpg[dot]d/pkgr-zammad[dot]gpg] https[collon][slash][slash]dl[dot]packager[dot]io/srv/deb/zammad/zammad/stable/debian 12 main”| \

tee /etc/apt/sources[dot]list[dot]d/zammad[dot]list > /dev/null

[output good, no issues]

apt update

[output good, no issues]

apt install zammad

[error complaining that elasticsearch has no installation candidate, followed this to install it: https[collon][slash][slash]www[dot]elastic[dot]co/guide/en/elasticsearch/reference/current/deb[dot]html and it went well]

wget -qO - https[collon][slash][slash]artifacts[dot]elastic[dot]co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring[dot]gpg

[output good, no issues]

sudo apt-get install apt-transport-https

[output good, no issues]

echo “deb [signed-by=/usr/share/keyrings/elasticsearch-keyring[dot]gpg] https[collon][slash][slash]artifacts[dot]elastic[dot]co/packages/8[dot]x/apt stable main” | sudo tee /etc/apt/sources[dot]list[dot]d/elastic-8[dot]x[dot]list

[output good, no issues]

sudo apt-get update

[output good, no issues]

apt install zammad

[no errors this time]

chcon -Rv --type=httpd_sys_content_t /opt/zammad/public/

[many errors, this is a snippet since they are all the same issue]

chcon: can’t apply partial context to unlabeled file ‘403-mobile[dot]html’

changing security context of ‘/opt/zammad/public/favicon[dot]ico’

chcon: can’t apply partial context to unlabeled file ‘favicon[dot]ico’

changing security context of ‘/opt/zammad/public/500-mobile[dot]html’

chcon: can’t apply partial context to unlabeled file ‘500-mobile[dot]html’

changing security context of ‘/opt/zammad/public/’

chcon: can’t apply partial context to unlabeled file ‘/opt/zammad/public/’

This is where I stopped following the documentation[dot] I’ve searched the forum and found only one post(https[collon][slash][slash]community[dot]zammad[dot]org/t/502-bad-gateway-nginx/7729/5) who mentioned it, but looking through the post, it seems to be an unrelated issue about port 3000 being unavailable. While googling it, I found that i may have to do something with needing to label them first with the semanage command (https[collon][slash][slash]unix[dot]stackexchange[dot]com/questions/23610/chcon-cant-apply-partial-context-to-unlabeled-file-while-installing-nagios-wit & https[collon][slash][slash]unix[dot]stackexchange[dot]com/questions/438509/chcon-cant-apply-partial-context-to-unlabeled-file) and put this together after many different posts:

apt install semanage-utils

[output good, no issues]

semanage fcontext -a -s system_u -t httpd_sys_content_t /opt/zammad/public/

semanage: command not found

I didnt go through the process of installing SELinux (this being the best resource i found, but its for debian 10 https[collon][slash][slash]www[dot]linode[dot]com/docs/guides/how-to-install-selinux-on-debian-10/) until I consulted with y’all, because it’s a log rabbit hole to fall down.

So I’m posting here to see if any of y’all would be able to help out. Thanks :slight_smile:

P.S. I’m sorry for all the [dot]'s and [collon][slash][slash]'s, the forum was not allowing me to post links directly but i felt that it was important to show what resources I was accessing.

SELinux needs to be enabled and installed in order to apply these kind of settings.
The documentation explicitly states that this is optional if needed.

But I must also say that your post is so extremely unreadable that I skipped very huge portions.

This topic was automatically closed 360 days after the last reply. New replies are no longer allowed.