chcon : 레이블이없는 파일 '/ usr / sbin / xrdp'에 부분 컨텍스트를 적용 할 수 없습니다


9

튜토리얼 에서 xrdp를 설치하도록 SELinux를 구성하기 위해이 라인을 실행하려고 할 때마다 :

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

이 오류가 발생합니다.

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'

CentOS 7.2 64 비트를 사용하고 있습니다.

답변:


6

나는 또한 CentOS 7을 사용하고 있으며 이것은 나를 위해 작동합니다.

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

1
Thomas는 매우 포괄적 인 답변을했지만 해결책은 간단하지 않습니다. 실제로 작동하는이 두 명령에 도달 할 때까지 많은 시도와 오류를해야했습니다.
Adelin

그것은 CentOs 상자에서도 저에게 효과적이었습니다.
ramires.cabral

4

당신의 명령은 더 많은 정보를 제공해야합니다. 이전에 논의되었지만 중복 은 없습니다 .

예를 들어

예를 들어 ls -lZ샘플 목록에 다음 태그를 제공합니다.

$ 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

chcon같은 기대 unconfined_u:object_r:bin_t:s0의 인수를. A bin_t는 부분 정보 일뿐입니다.

참조 된 절차가 작동하고 chcon중복을 사용해야 합니다. CentOS7을 확인하면 xrdp설치 가 완료되고 목록이 표시됩니다

$ 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

system_u필드는 SELinux가 인 사용자 1, object_r필드는 것입니다 역할 , bin_t은 IS 유형s0(기본값)입니다 수준 . 파일은 다음 /usr/sbin과 같은 패턴으로 컨텍스트를 가져옵니다 semanage fcontext -l(그러나 많은 일치 항목이 있습니다). 가이드를 따르면, xrdp또는 패턴을 제거했을 수 있습니다 /usr/sbin. 그러나 다음을 사용하여 사용자 및 역할을 지정하여 명령에서보다 명확하게 설명 할 수 있습니다 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

또는 패턴이 손상되지 않았지만 (예를 들어) 파일을 설치하지 않고 이동 한 경우 다음을 사용하여 복구 할 수 있습니다.

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

더 읽을 거리 :


3
나는 아직도 그것을 얻지 못한다. 그렇다면 어떤 명령이 그에 대한 해결책이 될 수 있는지 말해 줄 수 있습니까? 나는 리눅스에 익숙하지 않다. SELinux :(
TheOnlyOne

2

누군가를 도울 수 있으므로 여기에 간단한 2 센트가 있습니다. selinux를 어떻게 든 비활성화하면이 문제가 발생할 수 있습니다. 이 문제를 해결하려면 selinux를 다시 정상으로 변경하십시오. / etc / selinux / config를 열고 변경하십시오

SELINUX = 사용 안함

돌아가다

SELINUX = 강제

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.