su: _secure_path: /nonexistent/.login_conf is not owned by uid 65534

This morning, on a FreeBSD 9.2-RELEASE #0 r255898 system, I saw this in /var/log/messages:

Jan 11 04:15:00 zuul su: _secure_path: /nonexistent/.login_conf is not owned by uid 65534

There was nothing around that entry to clue me in. I suspected a cronjob, based upon the time of day. I searched with Google and found only questions.

This next command confirms my cronjob suspicion:

$ grep _secure_path /var/log/messages
Jan  4 04:15:00 zuul su: _secure_path: /nonexistent/.login_conf is not owned by uid 65534
Jan 11 04:15:00 zuul su: _secure_path: /nonexistent/.login_conf is not owned by uid 65534

OK, it’s got to be a cronjob.

For the record, uid 65534 is the predefined user nobody/var/db/locate.database on several systems. The are all chmod 444 which makes me discount the possibility that this is a permissions issue.

Running the same command on another server gave the same output, but without the _secure_path warning in /var/log/messages.

I’ve run out of ideas, but I suspect the problem stems from line 100 of /usr/libexec/locate.updatedb:

# search locally
if $find -s $SEARCHPATHS $excludes -or -print 2>/dev/null |
        $mklocatedb -presort > $tmp
then
        if [ -n "$($find $tmp -size -257c -print)" ]; then
                echo "updatedb: locate database $tmp is empty" >&2
                exit 1
        else
                cat $tmp > $FCODES              # should be cp?
        fi
fi

I haven’t solved this problem, but the above should go a long way towards fixing it.

Follow up: 8:58 am:

zi asked me if that directory exists… it does:

$ ls -a /nonexistent/
.             ..            .cshrc        .login        .login_conf   .mail_aliases .mailrc       .profile      .rhosts       .shrc

zi went on to say: You probably added a new user at some point and set its homedir to /nonexistent

And I did; I had created the openvpn user.

Solution: rm -rf /nonexistant

For now, I’ll do a mv /nonexistant /nonexistant.DELETEME and monitor the situation.

Website Pin Facebook Twitter Myspace Friendfeed Technorati del.icio.us Digg Google StumbleUpon Premium Responsive

1 thought on “su: _secure_path: /nonexistent/.login_conf is not owned by uid 65534”

  1. This arose again today:

    $ grep 65534 /etc/passwd 
    nobody:*:65534:65534:Unprivileged user:/nonexistent:/usr/sbin/nologin
    
    $ ls -l  /nonexistent/.login_conf
    -rw-r--r--  1 openvpn  openvpn  161 Jul 20 04:47 /nonexistent/.login_conf
    

Leave a Comment

Scroll to Top