Re: "Error! Unable to set executable context."

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jul 27, 2009 at 11:06 AM, Stephen Smalley<sds@xxxxxxxxxxxxx> wrote:
> On Mon, 2009-07-27 at 07:49 -0700, Larry Ross wrote:
>> On Mon, Jul 27, 2009 at 6:45 AM, Stephen Smalley <sds@xxxxxxxxxxxxx>
>> wrote:
>>         On Sat, 2009-07-25 at 12:41 -0700, Larry Ross wrote:
>>
>>         > I am trying to create a custom selinux user for the strict
>>         policy on
>>         > RHEL5.3
>>         > I want logins that are mapped to this user to be able to
>>         login via
>>         > gdm, but when they do I get an error "Error! Unable to set
>>         executable
>>         > context."
>>         >
>>         > What does this error message mean?
>>         >
>>         > I am able to login via gdm with logins that are mapped to
>>         user_u.  I
>>         > have run the AVCs generated when I login in permissive mode
>>         (which
>>         > succeeds) through audit2allow and gotten to the point where
>>         it doesn't
>>         > seem that I am getting any killer AVCs.  What am I missing
>>         that is
>>         > needed for a custom user to use X-Windows?  Is there some
>>         place I can
>>         > look to determine what is causing the error?
>>
>>
>>         I see that you've resolved the problem now, but could you
>>         describe what
>>         you had to do to get it to work for future reference?  That
>>         way the next
>>         time someone comes along with the same issue, they can find
>>         the answer
>>         in the mailing list archives.
>>
>> I think (and that is why I didn't say specifically) that it was
>> calling:
>> userdom_unpriv_user_template(app_user)
>>
>> I know I needed to add a default context to:
>> /etc/selinux/strict/contexts/default_contexts
>>
>> but although I added more per Dominicks suggestion, I think I already
>> had the ones that were needed.
>>
>>
>>
>>         BTW, "executable context" in the error message means that the
>>         attempts
>>         by gdm to invoke setexeccon(3) failed.  setexecon(3) is the
>>         libselinux
>>         interface to set the security context to which the process
>>         will
>>         transition upon the next execve(2) call.  Usually a
>>         setexeccon(3) error
>>         means that the security context was invalid under the current
>>         policy.
>>
>> This didn't seem to be well documented anywhere as to what the above
>> actually means.
>> My take is that there has to be an executable context (which is what I
>> think the userdom_unpriv_user_template gave me) which is listed in the
>> default contexts in the same row as the "current" context.  But I
>> could be wrong.
>
> Usually what happens is that it is unable to find any valid context for
> the user and thus falls back to trying a failsafe context defined for
> emergency logins, but that wasn't valid for that particular SELinux
> user.

Where is that behavior implemented?  I didn't see it.  Where are the
"failsafe" contexts defined, are they in the code somewhere?

When you say "wasn't valid for that particular SELinux user" I assume
you mean that the permissions required were not given to that selinux
user (which is what I think I fixed with the
userdom_unpriv_user_template).  Which would imply that there would be
no "failsafe context" for my custom selinux user.

  -- Larry

>
> --
> Stephen Smalley
> National Security Agency
>
>
> --
> This message was distributed to subscribers of the selinux mailing list.
> If you no longer wish to subscribe, send mail to majordomo@xxxxxxxxxxxxx with
> the words "unsubscribe selinux" without quotes as the message.
>


--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@xxxxxxxxxxxxx with
the words "unsubscribe selinux" without quotes as the message.

[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux