Skip site navigation (1)Skip section navigation (2)
Date:      19 Feb 2004 20:15:49 -0000
From:      David Thiel <lx@redundancy.redundancy.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/63077: replacement port: security/osiris
Message-ID:  <20040219201549.83294.qmail@redundancy.redundancy.org>
Resent-Message-ID: <200402192020.i1JKKIQR047433@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         63077
>Category:       ports
>Synopsis:       replacement port: security/osiris
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Thu Feb 19 12:20:18 PST 2004
>Closed-Date:
>Last-Modified:
>Originator:     David Thiel <lx@redundancy.redundancy.org>
>Release:        FreeBSD 4.9-STABLE i386
>Organization:
>Environment:
System: FreeBSD redundancy.redundancy.org 4.9-STABLE FreeBSD 4.9-STABLE #15: Wed Nov 19 21:41:32 PST 2003 lx@redundancy.redundancy.org:/usr/obj/usr/src/sys/REDUNDANCY i386


>Description:

This is a port of Osiris 2.4.4, which is the current supported stable
version. I've conversed with the maintainer of the older 1.5.2 port,
and he is ok with removing it and replacing it with the newer one. I'll
be submitting Osiris 3, the development version, separately - having
osiris1, osiris2 and osiris3 seems like overkill, so I'd like to see
this become osiris and the dev version be osiris-devel.

>How-To-Repeat:
>Fix:


# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	osiris
#	osiris/Makefile
#	osiris/distinfo
#	osiris/pkg-descr
#	osiris/pkg-plist
#	osiris/files
#	osiris/files/patch-osirisd-in
#	osiris/files/patch-osirismd-in
#	osiris/pkg-deinstall
#	osiris/pkg-install
#
echo c - osiris
mkdir -p osiris > /dev/null 2>&1
echo x - osiris/Makefile
sed 's/^X//' >osiris/Makefile << 'END-of-osiris/Makefile'
X# New ports collection Makefile for: 	osiris
X# Date created:				2004-01-27
X# Whom:					David Thiel <lx@redundancy.redundancy.org>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	osiris
XPORTVERSION=	2.4.4
XCATEGORIES=	security
XMASTER_SITES=	http://osiris.shmoo.com/data/
XDISTFILES=	osiris-${PORTVERSION}-stable.tar.gz
X
XMAINTAINER=	lx@redundancy.redundancy.org
XCOMMENT=	The Shmoo client/server host integrity checker
X
XWRKSRC=		work/${PORTNAME}-${PORTVERSION}-stable
X
XUSE_LIBTOOL=	yes
XUSE_REINPLACE=	yes
X
XCONFIGURE_TARGET=	--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
X
X.if defined(WITH_OSIRISMD)
XPLIST_SUB+=	OSIRISMD=""
X.else
XPLIST_SUB+=	OSIRISMD="@comment "
X.endif
X
Xpre-everything::
X
X	@${ECHO_MSG}
X	@${ECHO_MSG} "Define WITH_OSIRISMD to enable build of the management daemon."
X	@${ECHO_MSG}
X
Xpre-install:
X	${SED} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/src/install/freebsd/osirisd.in > ${WRKSRC}/src/install/freebsd/osirisd.sh.sample
X.if defined(WITH_OSIRISMD)
X	${SED} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/src/install/freebsd/osirismd.in > ${WRKSRC}/src/install/freebsd/osirismd.sh.sample
X.endif
X
Xdo-install:
X	${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
X	${MKDIR} ${PREFIX}/osiris/configs
X.for os in bsdos darwin freebsd irix linux openbsd sunos unix-generic windows2000 windowsnt windowsxp
X	${INSTALL_DATA} ${WRKSRC}/src/configs/default.${os} ${PREFIX}/osiris/configs
X.endfor
X	${CHOWN} -R osiris:osiris ${PREFIX}/osiris
X	${INSTALL_PROGRAM} ${WRKSRC}/src/cli/osiris ${PREFIX}/sbin
X	${INSTALL_PROGRAM} ${WRKSRC}/src/osirisd/osirisd ${PREFIX}/sbin
X	${INSTALL_SCRIPT} ${WRKSRC}/src/install/freebsd/osirisd.sh.sample ${PREFIX}/etc/rc.d
X.if defined(WITH_OSIRISMD)
X	${INSTALL_PROGRAM} ${WRKSRC}/src/osirismd/osirismd ${PREFIX}/sbin
X	${INSTALL_SCRIPT} ${WRKSRC}/src/install/freebsd/osirismd.sh.sample ${PREFIX}/etc/rc.d
X.endif
X.if !defined(NOPORTDOCS)
X	${MKDIR} ${DOCSDIR}
X.for f in docs/OsirisUserGuide.pdf docs/OsirisUserGuide.rtf
X	${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
X.endfor
X.endif
X
X.include <bsd.port.mk>
END-of-osiris/Makefile
echo x - osiris/distinfo
sed 's/^X//' >osiris/distinfo << 'END-of-osiris/distinfo'
XMD5 (osiris-2.4.4-stable.tar.gz) = 1f99f157c65505fe81530037c7a5347f
XSIZE (osiris-2.4.4-stable.tar.gz) = 4647083
END-of-osiris/distinfo
echo x - osiris/pkg-descr
sed 's/^X//' >osiris/pkg-descr << 'END-of-osiris/pkg-descr'
XOsiris is a Host Integrity Management System that periodically monitors
Xone or more hosts for change. It maintains detailed logs of changes to
Xthe file system, user and group lists, resident kernel modules, and
Xmore. Osiris can be configured to email these logs to the administrator.
XHosts are periodically scanned and, if desired, the records can be
Xmaintained for forensic purposes. Osiris keeps an administrator apprised
Xof possible attacks and/or nasty little trojans. The purpose here is
Xto isolate changes that indicate a break-in or a compromised system.
XOsiris makes use of OpenSSL for encryption and authentication in all
Xcomponents.
X
XWWW: http://osiris.shmoo.com/
END-of-osiris/pkg-descr
echo x - osiris/pkg-plist
sed 's/^X//' >osiris/pkg-plist << 'END-of-osiris/pkg-plist'
Xsbin/osiris
Xsbin/osirisd
X%%OSIRISMD%%sbin/osirismd
Xetc/rc.d/osirisd.sh.sample
X%%OSIRISMD%%etc/rc.d/osirismd.sh.sample
Xosiris/configs/default.bsdos
Xosiris/configs/default.darwin
Xosiris/configs/default.freebsd
Xosiris/configs/default.irix
Xosiris/configs/default.linux
Xosiris/configs/default.openbsd
Xosiris/configs/default.sunos
Xosiris/configs/default.unix-generic
Xosiris/configs/default.windows2000
Xosiris/configs/default.windowsnt
Xosiris/configs/default.windowsxp
X@dirrm osiris/configs
X@dirrm osiris
X%%PORTDOCS%%%%DOCSDIR%%/OsirisUserGuide.pdf
X%%PORTDOCS%%%%DOCSDIR%%/OsirisUserGuide.rtf
X%%PORTDOCS%%@dirrm %%DOCSDIR%%
END-of-osiris/pkg-plist
echo c - osiris/files
mkdir -p osiris/files > /dev/null 2>&1
echo x - osiris/files/patch-osirisd-in
sed 's/^X//' >osiris/files/patch-osirisd-in << 'END-of-osiris/files/patch-osirisd-in'
X--- src/install/freebsd/osirisd.in.old	Tue Jan 27 18:23:16 2004
X+++ src/install/freebsd/osirisd.in	Tue Jan 27 18:24:07 2004
X@@ -1,11 +1,11 @@
X #!/bin/sh
X 
X-OSIRISD=@INSTALLDIR@/osirisd
X+OSIRISD=%%PREFIX%%/sbin/osirisd
X 
X case "$1" in
X 	start)
X 		if [ -x ${OSIRISD} ]; then
X-			${OSIRISD} -r @OSIRISDIR@ -l2 && echo -n ' osirisd'
X+			${OSIRISD} -r %%PREFIX%%/osiris -l2 && echo -n ' osirisd'
X 		fi
X 		;;
X 	stop)
END-of-osiris/files/patch-osirisd-in
echo x - osiris/files/patch-osirismd-in
sed 's/^X//' >osiris/files/patch-osirismd-in << 'END-of-osiris/files/patch-osirismd-in'
X--- src/install/freebsd/osirismd.in.old	Tue Jan 27 18:25:27 2004
X+++ src/install/freebsd/osirismd.in	Tue Jan 27 18:26:01 2004
X@@ -1,12 +1,12 @@
X #!/bin/sh
X 
X-OSIRISMD=@INSTALLDIR@/osirismd
X+OSIRISMD=%%PREFIX%%/sbin/osirismd
X 
X case "$1" in
X 	start)
X 		if [ -f ${SUDO} ]; then
X 	    	    if [ -x ${OSIRISMD} ]; then
X-			${OSIRISMD} -r @OSIRISDIR@ && echo -n ' osirismd'
X+			${OSIRISMD} -r %%PREFIX%%/osiris && echo -n ' osirismd'
X 		    fi
X                 else
X 		    echo ""
END-of-osiris/files/patch-osirismd-in
echo x - osiris/pkg-deinstall
sed 's/^X//' >osiris/pkg-deinstall << 'END-of-osiris/pkg-deinstall'
X#! /bin/sh
X#
X# $FreeBSD$
X#
X
X
Xask() {
X    local question default answer
X
X    question=$1
X    default=$2
X    if [ -z "${PACKAGE_BUILDING}" -a -z "${BATCH}" ]; then
X	read -p "${question} [${default}]? " answer
X    fi
X    echo ${answer:-${default}}
X}
X
Xyesno() {
X    local question default answer
X
X    question=$1
X    default=$2
X    while :; do
X	answer=$(ask "${question}" "${default}")
X	case "${answer}" in
X	[Yy]*)	return 0;;
X	[Nn]*)	return 1;;
X	esac
X	echo "Please answer yes or no."
X    done
X}
X
Xdelete_account() {
X    local u
X
X    u=$1
X    if yesno "Do you want me to remove user and group \"${u}\"" n; then
X	pw userdel -n ${u}
X	echo "Done."
X    fi
X}
X
Xcase $2 in
X
XDEINSTALL)
X
X    delete_account osiris
X    ;;
X
Xesac
END-of-osiris/pkg-deinstall
echo x - osiris/pkg-install
sed 's/^X//' >osiris/pkg-install << 'END-of-osiris/pkg-install'
X#!/bin/sh
X#
X# $FreeBSD$
X#
X
Xask() {
X    local question default answer
X
X    question=$1
X    default=$2
X    if [ -z "${PACKAGE_BUILDING}" -a -z "${BATCH}" ]; then
X	read -p "${question} [${default}]? " answer
X    fi
X    echo ${answer:-${default}}
X}
X
Xyesno() {
X    local question default answer
X
X    question=$1
X    default=$2
X    while :; do
X	answer=$(ask "${question}" "${default}")
X	case "${answer}" in
X	[Yy]*)	return 0;;
X	[Nn]*)	return 1;;
X	esac
X	echo "Please answer yes or no."
X    done
X}
X
Xmake_account() {
X    local u g gcos
X
X    u=$1
X    g=$2
X    gcos=$3
X
X    if pw group show "${g}" >/dev/null 2>&1; then
X	echo "You already have a group \"${g}\", so I will use it."
X    else
X	echo "You need a group \"${g}\"."
X	if which -s pw && yesno "Would you like me to create it" y
X	then
X	    pw groupadd ${g} || exit
X	    echo "Done."
X	else
X	    echo "Please create it, and try again."
X	    exit 1
X	fi
X    fi
X    
X    if pw user show "${u}" >/dev/null 2>&1; then
X	echo "You already have a user \"${u}\", so I will use it."
X    else
X	echo "You need a user \"${u}\"."
X	if which -s pw && yesno "Would you like me to create it" y
X	then
X	    pw useradd ${u} -g ${g} -h - -d /usr/local/etc/osiris -s /sbin/nologin -c "${gcos}" || exit
X	    echo "Done."
X	else
X	    echo "Please create it, and try again."
X	    exit 1
X	fi
X    fi
X}
X
Xcase $2 in
X
XPRE-INSTALL)
X    make_account osiris osiris "Osiris"
X    ;;
Xesac
END-of-osiris/pkg-install
exit


>Release-Note:
>Audit-Trail:
>Unformatted:



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