Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Nov 2001 19:02:15 -0800
From:      "Crist J. Clark" <cristjc@earthlink.net>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        current@FreeBSD.org, Alexander Leidinger <Alexander@Leidinger.net>
Subject:   Re: daily run output & passwd diff
Message-ID:  <20011112190215.C45158@blossom.cjclark.org>
In-Reply-To: <XFMail.011112080837.jhb@FreeBSD.org>; from jhb@FreeBSD.org on Mon, Nov 12, 2001 at 08:08:37AM -0800
References:  <20011110231511.G69195@blossom.cjclark.org> <XFMail.011112080837.jhb@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Nov 12, 2001 at 08:08:37AM -0800, John Baldwin wrote:
> 
> On 11-Nov-01 Crist J. Clark wrote:
> > On Fri, Nov 09, 2001 at 02:55:55PM +0100, Alexander Leidinger wrote:
> >> Hi,
> >> 
> >> I think the CVS tag shouldn't be interpreted as an entry which contains
> >> a password.
> >> 
> >> ---snip---
> >> Backup passwd and group files:
> >> 
> >> 1c1
> >> < # $FreeBSD:(password):09:07 peter Exp $
> >> ---
> >> > # $FreeBSD:(password):27:16 ache Exp $
> >> 16a17
> >> > www:(password):80:80::0:0:World Wide Web Owner:/nonexistent:/sbin/nologin
> >> Magelan.Leidinger.net group diffs:
> >> 1c1
> >> < # $FreeBSD: src/etc/group,v 1.21 2001/10/18 16:53:20 sheldonh Exp $
> >> ---
> >> > # $FreeBSD: src/etc/group,v 1.22 2001/10/25 03:27:16 ache Exp $
> >> 20a21
> >> > www:*:80:
> >> ---snip---
> > 
> > Makes sense. No need to hide the revision number.
> > 
> > Committed to -CURRENT. MFC 1 week.
> > 
> > Index: 200.backup-passwd
> > ===================================================================
> > RCS file: /home/ncvs/src/etc/periodic/daily/200.backup-passwd,v
> > retrieving revision 1.8
> > diff -u -r1.8 200.backup-passwd
> > --- 200.backup-passwd   2000/09/14 17:19:10     1.8
> > +++ 200.backup-passwd   2001/11/11 07:09:49
> > @@ -42,7 +42,7 @@
> >                 [ $rc -lt 1 ] && rc=1
> >                 echo "$host passwd diffs:"
> >                 diff $bak/master.passwd.bak /etc/master.passwd |\
> > -                       sed 's/^\([<>] [^:]*\):[^:]*:/\1:(password):/'
> > +                       sed 's/^\([<>] [^#][^:]*\):[^:]*:/\1:(password):/'
> >                 mv $bak/master.passwd.bak $bak/master.passwd.bak2
> >                 cp -p /etc/master.passwd $bak/master.passwd.bak || rc=3
> >             fi
> 
> What if someone comments out a line in the password file of a user?  Then this
> won't hide that password.  When this originally went in, it took a long while
> to get a sed line people were happy with.  Replacing the version number is a
> minor thing, but getting it to work perfectly may be a bit difficult.  If you
> do this, I'd rather you make sed handle the $FreeBSD$ case as a completely
> separate case, so something like:
> 
> sed -e '/\$FreeBSD\$/; //s/blah blah/blah/' or some such (I forget how sed does
> multiple expressions).

I thought about this, but then thought, "Who ever just comments out
password entries without clearing the password too?" I guess the
answer is, some people do.

How about,

  sed -E 's/^([<>] [^:]*):[^:]*:(([0-9]+:){2}[^:]*(:[0-9]+){2}(:[^:]*){3}$)/\1:(password)\2/'

Which only touches entries that match the password format exactly, but
includes commented out ones?
-- 
Crist J. Clark                     |     cjclark@alum.mit.edu
                                   |     cjclark@jhu.edu
http://people.freebsd.org/~cjc/    |     cjc@freebsd.org

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011112190215.C45158>