chcon: não é possível aplicar o contexto parcial ao arquivo não rotulado '/ usr / sbin / xrdp'

6

Sempre que eu estou tentando executar esta linha para configurar o SELinux para instalar o xrdp de este tutorial :

# chcon --type=bin_t /usr/sbin/xrdp
# chcon --type=bin_t /usr/sbin/xrdp-sesman

Eu recebo esses erros:

chcon: can't apply partial context to unlabeled file '/usr/sbin/xrdp'
chcon: can't apply partial context to unlabeled file '/usr/sbin/xrdp-sesman'

Estou no CentOS 7.2 de 64 bits.

    
por TheOnlyOne 05.04.2016 / 10:23

3 respostas

4

Seu comando precisa fornecer mais informações. Foi discutido antes (mas não vejo duplicatas ).

Por exemplo,

Por exemplo, ls -lZ fornece essas tags para uma listagem de amostra:

$ ls -lZ msginit msgmerge msgunfmt
-rwxr-xr-x. root root unconfined_u:object_r:bin_t:s0   msginit
-rwxr-xr-x. root root unconfined_u:object_r:bin_t:s0   msgmerge
-rwxr-xr-x. root root unconfined_u:object_r:bin_t:s0   msgunfmt

e chcon estão esperando algo como unconfined_u:object_r:bin_t:s0 em seu argumento. Um bin_t é apenas uma informação parcial.

O procedimento referenciado deve ter funcionado e o uso de chcon redundante. Verificando meu CentOS7, por acaso tenho xrdp instalado, e uma listagem mostra

$ ls -lZ xrdp xrdp-chansrv xrdp-sesman xrdp-sessvc
-rwxr-xr-x. root root system_u:object_r:bin_t:s0       xrdp
-rwxr-xr-x. root root system_u:object_r:bin_t:s0       xrdp-chansrv
-rwxr-xr-x. root root system_u:object_r:bin_t:s0       xrdp-sesman
-rwxr-xr-x. root root system_u:object_r:bin_t:s0       xrdp-sessvc

O campo system_u é o SELinux usuário , o campo object_r é o papel , bin_t é o tipo e s0 é o (padrão) nível . Os arquivos em /usr/sbin obtêm seu contexto de um padrão mostrado por semanage fcontext -l (mas há muitas correspondências). Seguindo o guia, você pode ter removido o padrão para o xrdp - ou mesmo para /usr/sbin . No entanto, você pode ser mais explícito no comando, especificando o usuário e a função usando chcon :

chcon -u system_u -r object_r --type=bin_t /usr/sbin/xrdp
chcon -u system_u -r object_r --type=bin_t /usr/sbin/xrdp-sesman

Alternativamente, se os padrões estão intactos, mas (por exemplo) você moveu os arquivos ao invés de instalá-los, você pode consertar coisas usando

restorecon -v /usr/sbin/xrdp
restorecon -v /usr/sbin/xrdp-sesman

Leitura adicional:

por 05.04.2016 / 10:35
2

Eu também estou no CentOS 7, e isso funciona para mim:

chcon -h system_u:object_r:bin_t:s0 /usr/sbin/xrdp
chcon -h system_u:object_r:bin_t:s0 /usr/sbin/xrdp-sesman
    
por 20.12.2017 / 05:49
-1

Pode ajudar alguém, então aqui estão os meus 2 centavos simples. Se você de alguma forma desativado selinux, você pode enfrentar esse problema. para resolver isso, basta alterar o selinux de volta ao normal. abrir / etc / selinux / config e mude

SELINUX = desativado

de volta para

SELINUX = impondo

Espero que isso ajude alguém.

    
por 19.11.2018 / 05:03