This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: bug in csih?
- From: Andrey Repin <anrdaemon at yandex dot ru>
- To: Len Giambrone <Leonard dot Giambrone at intersystems dot com>, cygwin at cygwin dot com
- Date: Sat, 21 Feb 2015 03:47:40 +0300
- Subject: Re: bug in csih?
- Authentication-results: sourceware.org; auth=none
- References: <54E7C402 dot 80306 at intersystems dot com>
- Reply-to: cygwin at cygwin dot com
Greetings, Len Giambrone!
> Running the latest version:
> $ cygcheck -c cygwin openssh csih
> Cygwin Package Information
> Package Version Status
> csih 0.9.8-5 OK
> cygwin 1.7.34-6 OK
> openssh 6.7p1-2 OK
> When I run
> ssh-host-config -y -w XXXXX
> I get this:
> *** Query: Create new privileged user account 'WX64LG\cyg_server'
> (Cygwin name: 'cyg_server')? (yes/no) yes
> *** Info: User 'cyg_server' has been created with password 'XXXXX'.
> *** Info: If you change the password, please remember also to change the
> *** Info: password for the installed services which use (or will soon use)
> *** Info: the 'cyg_server' account.
> *** Warning: Expected privileged user 'cyg_server' does not exist.
> *** Warning: Defaulting to 'SYSTEM'
> Even though it successfully creates the account, it refuses to use it.
> I believe this is because of the following code in
> csih_service_should_run_as()
> if csih_privileged_account_exists "$csih_PRIVILEGED_USERNAME" 1>&2
> then
> # it already existed before this script was launched
> echo "$csih_PRIVILEGED_USERNAME"
> return
> elif /usr/bin/getent passwd "${csih_PRIVILEGED_USERNAME}"
>>/dev/null 2>&1
> then
> # we probably just created it
> echo "$csih_PRIVILEGED_USERNAME"
> return
> else
> # a failure somewhere
> csih_warning "Expected privileged user
> '${csih_PRIVILEGED_USERNAME}' does not exist." 1>&2
> csih_warning "Defaulting to 'SYSTEM'" 1>&2
> echo "SYSTEM"
> return
> fi
> I am on a machine in a domain. /usr/bin/getent passwd cyg_server
> returns nothing:
> $ getent passwd cyg_server
That's not right. But setting up SSH in a domain environment is problematic.
You'd need an /etc/passwd file with one line mentioning local cyg_server
account.
Try
mkpasswd -l | grep cyg_server
or, perhaps,
getent -w passwd cyg_server
Sorry, I don't have AD on hand right now, can't help with tests.
> Running it through strace, I see it's looking for DOMAIN\cyg_server, and
> not the local account.
That's expected, and as far as I know unavoidable. Please see above for a
workaround.
--
WBR,
Andrey Repin (anrdaemon@yandex.ru) 21.02.2015, <03:43>
Sorry for my terrible english...
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple