mirror of https://github.com/CISOfy/lynis.git
Updated spec file and build script
This commit is contained in:
parent
67dce7ad34
commit
7a2daf92ad
|
@ -0,0 +1,2 @@
|
|||
.bzr
|
||||
.bzrignore
|
|
@ -0,0 +1,34 @@
|
|||
lynis for Debian
|
||||
----------------
|
||||
|
||||
When execute Lynis from Debian menu, the program runs with the following
|
||||
parameter:
|
||||
|
||||
lynis --no-colors
|
||||
|
||||
It makes a full system check, with the default profile file
|
||||
(/etc/lynis/default.prf). Please adjust this config file with your needs.
|
||||
|
||||
For better perform, launch Lynis from a terminal, as root user, with your best
|
||||
configuration.
|
||||
Lynis can be executed directly:
|
||||
|
||||
# lynis -c
|
||||
or
|
||||
# lynis
|
||||
|
||||
After Lynis runs the system check, it creates the following two files with the
|
||||
session log and the results of tests.
|
||||
|
||||
/var/log/lynis.log
|
||||
/var/log/lynis-report.dat
|
||||
|
||||
See the manual page for more info.
|
||||
Read Lynis documentation web site [1],[2] for more info.
|
||||
|
||||
|
||||
[1] http://www.rootkit.nl/files/lynis-documentation.html
|
||||
[2] http://cisofy.com/documentation/lynis/
|
||||
|
||||
-- Francisco Manuel Garcia Claramonte <francisco@debian.org> Sun, 11 Dec 2013 12:47:07 +0200
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
lynis (1.6.2-1) utopic; urgency=low
|
||||
|
||||
* Release 1.6.2
|
||||
|
||||
-- Michael Boelen <michael.boelen@cisofy.com> Sun, 14 Sep 2014 20:11:00 +0200
|
||||
|
||||
lynis (1.6.1-5) utopic; urgency=low
|
||||
|
||||
* Added 755 to Lynis
|
||||
|
||||
-- Michael Boelen <michael.boelen@cisofy.com> Thu, 11 Sep 2014 21:12:19 +0200
|
||||
|
||||
lynis (1.6.1-4) utopic; urgency=low
|
||||
|
||||
* Added lintian-overrides
|
||||
|
||||
-- Michael Boelen <michael.boelen@cisofy.com> Thu, 11 Sep 2014 19:56:11 +0200
|
|
@ -0,0 +1 @@
|
|||
8
|
|
@ -0,0 +1,22 @@
|
|||
Source: lynis
|
||||
Section: utils
|
||||
Priority: optional
|
||||
Maintainer: Michael Boelen <michael.boelen@cisofy.com>
|
||||
Build-Depends: debhelper (>= 8.0.0)
|
||||
Standards-Version: 3.9.2
|
||||
Homepage: http://cisofy.com/lynis/
|
||||
#Vcs-Git: git://git.debian.org/collab-maint/lynis.git
|
||||
#Vcs-Browser: http://git.debian.org/?p=collab-maint/lynis.git;a=summary
|
||||
|
||||
Package: lynis
|
||||
Architecture: any
|
||||
Depends: ${misc:Depends}
|
||||
Recommends: menu
|
||||
Suggests: dnsutils
|
||||
Description: security auditing tool for Linux systems
|
||||
Lynis is an auditing tool for Unix based systems. It helps
|
||||
with discovering vulnerabilities and configuration
|
||||
weaknesses.
|
||||
.
|
||||
Lynis can be used in addition to other software, like security
|
||||
scanners, system benchmarking and fine-tuning tools.
|
|
@ -0,0 +1,13 @@
|
|||
Format: http://dep.debian.net/deps/dep5
|
||||
Upstream-Name: lynis
|
||||
Source: http://cisofy.com/lynis/
|
||||
|
||||
Files: *
|
||||
Copyright: 2007-2014 Michael Boelen <michael.boelen@cisofy.com
|
||||
<years> <likewise for another author>
|
||||
License: GPL-3
|
||||
<Put the license of the package here indented by 1 space>
|
||||
<This follows the format of Description: lines in control file>
|
||||
.
|
||||
<Including paragraphs>
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
FAQ
|
||||
INSTALL
|
||||
README
|
||||
README.md
|
|
@ -0,0 +1,45 @@
|
|||
#! /bin/sh -e
|
||||
# /usr/lib/emacsen-common/packages/install/lynis
|
||||
|
||||
# Written by Jim Van Zandt <jrv@debian.org>, borrowing heavily
|
||||
# from the install scripts for gettext by Santiago Vila
|
||||
# <sanvila@ctv.es> and octave by Dirk Eddelbuettel <edd@debian.org>.
|
||||
|
||||
FLAVOR=$1
|
||||
PACKAGE=lynis
|
||||
|
||||
if [ ${FLAVOR} = emacs ]; then exit 0; fi
|
||||
|
||||
echo install/${PACKAGE}: Handling install for emacsen flavor ${FLAVOR}
|
||||
|
||||
#FLAVORTEST=`echo $FLAVOR | cut -c-6`
|
||||
#if [ ${FLAVORTEST} = xemacs ] ; then
|
||||
# SITEFLAG="-no-site-file"
|
||||
#else
|
||||
# SITEFLAG="--no-site-file"
|
||||
#fi
|
||||
FLAGS="${SITEFLAG} -q -batch -l path.el -f batch-byte-compile"
|
||||
|
||||
ELDIR=/usr/share/emacs/site-lisp/${PACKAGE}
|
||||
ELCDIR=/usr/share/${FLAVOR}/site-lisp/${PACKAGE}
|
||||
|
||||
# Install-info-altdir does not actually exist.
|
||||
# Maybe somebody will write it.
|
||||
if test -x /usr/sbin/install-info-altdir; then
|
||||
echo install/${PACKAGE}: install Info links for ${FLAVOR}
|
||||
install-info-altdir --quiet --section "" "" --dirname=${FLAVOR} /usr/share/info/${PACKAGE}.info.gz
|
||||
fi
|
||||
|
||||
install -m 755 -d ${ELCDIR}
|
||||
cd ${ELDIR}
|
||||
FILES=`echo *.el`
|
||||
cp ${FILES} ${ELCDIR}
|
||||
cd ${ELCDIR}
|
||||
|
||||
cat << EOF > path.el
|
||||
(setq load-path (cons "." load-path) byte-compile-warnings nil)
|
||||
EOF
|
||||
${FLAVOR} ${FLAGS} ${FILES}
|
||||
rm -f *.el path.el
|
||||
|
||||
exit 0
|
|
@ -0,0 +1,15 @@
|
|||
#!/bin/sh -e
|
||||
# /usr/lib/emacsen-common/packages/remove/lynis
|
||||
|
||||
FLAVOR=$1
|
||||
PACKAGE=lynis
|
||||
|
||||
if [ ${FLAVOR} != emacs ]; then
|
||||
if test -x /usr/sbin/install-info-altdir; then
|
||||
echo remove/${PACKAGE}: removing Info links for ${FLAVOR}
|
||||
install-info-altdir --quiet --remove --dirname=${FLAVOR} /usr/share/info/lynis.info.gz
|
||||
fi
|
||||
|
||||
echo remove/${PACKAGE}: purging byte-compiled files for ${FLAVOR}
|
||||
rm -rf /usr/share/${FLAVOR}/site-lisp/${PACKAGE}
|
||||
fi
|
|
@ -0,0 +1,25 @@
|
|||
;; -*-emacs-lisp-*-
|
||||
;;
|
||||
;; Emacs startup file, e.g. /etc/emacs/site-start.d/50lynis.el
|
||||
;; for the Debian lynis package
|
||||
;;
|
||||
;; Originally contributed by Nils Naumann <naumann@unileoben.ac.at>
|
||||
;; Modified by Dirk Eddelbuettel <edd@debian.org>
|
||||
;; Adapted for dh-make by Jim Van Zandt <jrv@debian.org>
|
||||
|
||||
;; The lynis package follows the Debian/GNU Linux 'emacsen' policy and
|
||||
;; byte-compiles its elisp files for each 'emacs flavor' (emacs19,
|
||||
;; xemacs19, emacs20, xemacs20...). The compiled code is then
|
||||
;; installed in a subdirectory of the respective site-lisp directory.
|
||||
;; We have to add this to the load-path:
|
||||
(let ((package-dir (concat "/usr/share/"
|
||||
(symbol-name flavor)
|
||||
"/site-lisp/lynis")))
|
||||
;; If package-dir does not exist, the lynis package must have
|
||||
;; removed but not purged, and we should skip the setup.
|
||||
(when (file-directory-p package-dir)
|
||||
(setq load-path (cons package-dir load-path))
|
||||
(autoload 'lynis-mode "lynis-mode"
|
||||
"Major mode for editing lynis files." t)
|
||||
(add-to-list 'auto-mode-alist '("\\.lynis$" . lynis-mode))))
|
||||
|
|
@ -0,0 +1,154 @@
|
|||
#!/bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: lynis
|
||||
# Required-Start: $network $local_fs
|
||||
# Required-Stop:
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: <Enter a short description of the sortware>
|
||||
# Description: <Enter a long description of the software>
|
||||
# <...>
|
||||
# <...>
|
||||
### END INIT INFO
|
||||
|
||||
# Author: Michael <mbo@earth.rootkit.nl>
|
||||
|
||||
# PATH should only include /usr/* if it runs after the mountnfs.sh script
|
||||
PATH=/sbin:/usr/sbin:/bin:/usr/bin
|
||||
DESC=lynis # Introduce a short description here
|
||||
NAME=lynis # Introduce the short server's name here
|
||||
DAEMON=/usr/sbin/lynis # Introduce the server's location here
|
||||
DAEMON_ARGS="" # Arguments to run the daemon with
|
||||
PIDFILE=/var/run/$NAME.pid
|
||||
SCRIPTNAME=/etc/init.d/$NAME
|
||||
|
||||
# Exit if the package is not installed
|
||||
[ -x $DAEMON ] || exit 0
|
||||
|
||||
# Read configuration variable file if it is present
|
||||
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
|
||||
|
||||
# Load the VERBOSE setting and other rcS variables
|
||||
. /lib/init/vars.sh
|
||||
|
||||
# Define LSB log_* functions.
|
||||
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
|
||||
. /lib/lsb/init-functions
|
||||
|
||||
#
|
||||
# Function that starts the daemon/service
|
||||
#
|
||||
do_start()
|
||||
{
|
||||
# Return
|
||||
# 0 if daemon has been started
|
||||
# 1 if daemon was already running
|
||||
# 2 if daemon could not be started
|
||||
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
|
||||
|| return 1
|
||||
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
|
||||
$DAEMON_ARGS \
|
||||
|| return 2
|
||||
# Add code here, if necessary, that waits for the process to be ready
|
||||
# to handle requests from services started subsequently which depend
|
||||
# on this one. As a last resort, sleep for some time.
|
||||
}
|
||||
|
||||
#
|
||||
# Function that stops the daemon/service
|
||||
#
|
||||
do_stop()
|
||||
{
|
||||
# Return
|
||||
# 0 if daemon has been stopped
|
||||
# 1 if daemon was already stopped
|
||||
# 2 if daemon could not be stopped
|
||||
# other if a failure occurred
|
||||
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
|
||||
RETVAL="$?"
|
||||
[ "$RETVAL" = 2 ] && return 2
|
||||
# Wait for children to finish too if this is a daemon that forks
|
||||
# and if the daemon is only ever run from this initscript.
|
||||
# If the above conditions are not satisfied then add some other code
|
||||
# that waits for the process to drop all resources that could be
|
||||
# needed by services started subsequently. A last resort is to
|
||||
# sleep for some time.
|
||||
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
|
||||
[ "$?" = 2 ] && return 2
|
||||
# Many daemons don't delete their pidfiles when they exit.
|
||||
rm -f $PIDFILE
|
||||
return "$RETVAL"
|
||||
}
|
||||
|
||||
#
|
||||
# Function that sends a SIGHUP to the daemon/service
|
||||
#
|
||||
do_reload() {
|
||||
#
|
||||
# If the daemon can reload its configuration without
|
||||
# restarting (for example, when it is sent a SIGHUP),
|
||||
# then implement that here.
|
||||
#
|
||||
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
|
||||
return 0
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME"
|
||||
do_start
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
stop)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
status)
|
||||
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
|
||||
;;
|
||||
#reload|force-reload)
|
||||
#
|
||||
# If do_reload() is not implemented then leave this commented out
|
||||
# and leave 'force-reload' as an alias for 'restart'.
|
||||
#
|
||||
#log_daemon_msg "Reloading $DESC" "$NAME"
|
||||
#do_reload
|
||||
#log_end_msg $?
|
||||
#;;
|
||||
restart|force-reload)
|
||||
#
|
||||
# If the "reload" option is implemented then remove the
|
||||
# 'force-reload' alias
|
||||
#
|
||||
log_daemon_msg "Restarting $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1)
|
||||
do_start
|
||||
case "$?" in
|
||||
0) log_end_msg 0 ;;
|
||||
1) log_end_msg 1 ;; # Old process is still running
|
||||
*) log_end_msg 1 ;; # Failed to start
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
# Failed to stop
|
||||
log_end_msg 1
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
|
||||
echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
|
||||
exit 3
|
||||
;;
|
||||
esac
|
||||
|
||||
:
|
|
@ -0,0 +1,4 @@
|
|||
#
|
||||
# Regular cron jobs for the lynis package
|
||||
#
|
||||
0 4 * * * root [ -x /usr/bin/lynis_maintenance ] && /usr/bin/lynis_maintenance
|
|
@ -0,0 +1,10 @@
|
|||
# Defaults for lynis initscript
|
||||
# sourced by /etc/init.d/lynis
|
||||
# installed at /etc/default/lynis by the maintainer scripts
|
||||
|
||||
#
|
||||
# This is a POSIX shell fragment
|
||||
#
|
||||
|
||||
# Additional options that are passed to the Daemon.
|
||||
DAEMON_OPTS=""
|
|
@ -0,0 +1,12 @@
|
|||
[Desktop Entry]
|
||||
Name=Lynis auditing tool
|
||||
Name[es]=Herramienta de auditoría Lynis
|
||||
Comment=Security auditing tool (root)
|
||||
Comment[es]=Herramienta de auditoría de seguridad (root)
|
||||
Exec=su-to-root -c '/usr/sbin/lynis --no-colors'
|
||||
Terminal=true
|
||||
Type=Application
|
||||
Categories=System;
|
||||
StartupNotify=true
|
||||
Keywords=security;auditing;monitoring;issues;test;
|
||||
Keywords[es]=seguridad;auditoría;monitorizar;incidencias;test;
|
|
@ -0,0 +1,20 @@
|
|||
Document: lynis
|
||||
Title: Debian lynis Manual
|
||||
Author: <insert document author here>
|
||||
Abstract: This manual describes what lynis is
|
||||
and how it can be used to
|
||||
manage online manuals on Debian systems.
|
||||
Section: unknown
|
||||
|
||||
Format: debiandoc-sgml
|
||||
Files: /usr/share/doc/lynis/lynis.sgml.gz
|
||||
|
||||
Format: postscript
|
||||
Files: /usr/share/doc/lynis/lynis.ps.gz
|
||||
|
||||
Format: text
|
||||
Files: /usr/share/doc/lynis/lynis.text.gz
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/lynis/html/index.html
|
||||
Files: /usr/share/doc/lynis/html/*.html
|
|
@ -0,0 +1,2 @@
|
|||
lynis: non-standard-file-perm
|
||||
lynis: script-not-executable
|
|
@ -0,0 +1 @@
|
|||
lynis.8
|
|
@ -0,0 +1,59 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH LYNIS SECTION "September 11, 2014"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.SH NAME
|
||||
lynis \- program to do something
|
||||
.SH SYNOPSIS
|
||||
.B lynis
|
||||
.RI [ options ] " files" ...
|
||||
.br
|
||||
.B bar
|
||||
.RI [ options ] " files" ...
|
||||
.SH DESCRIPTION
|
||||
This manual page documents briefly the
|
||||
.B lynis
|
||||
and
|
||||
.B bar
|
||||
commands.
|
||||
.PP
|
||||
.\" TeX users may be more comfortable with the \fB<whatever>\fP and
|
||||
.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
|
||||
.\" respectively.
|
||||
\fBlynis\fP is a program that...
|
||||
.SH OPTIONS
|
||||
These programs follow the usual GNU command line syntax, with long
|
||||
options starting with two dashes (`-').
|
||||
A summary of options is included below.
|
||||
For a complete description, see the Info files.
|
||||
.TP
|
||||
.B \-h, \-\-help
|
||||
Show summary of options.
|
||||
.TP
|
||||
.B \-v, \-\-version
|
||||
Show version of program.
|
||||
.SH SEE ALSO
|
||||
.BR bar (1),
|
||||
.BR baz (1).
|
||||
.br
|
||||
The programs are documented fully by
|
||||
.IR "The Rise and Fall of a Fooish Bar" ,
|
||||
available via the Info system.
|
||||
.SH AUTHOR
|
||||
lynis was written by <upstream author>.
|
||||
.PP
|
||||
This manual page was written by Michael <mbo@earth.rootkit.nl>,
|
||||
for the Debian project (and may be used by others).
|
|
@ -0,0 +1,154 @@
|
|||
<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
|
||||
|
||||
<!-- Process this file with docbook-to-man to generate an nroff manual
|
||||
page: `docbook-to-man manpage.sgml > manpage.1'. You may view
|
||||
the manual page with: `docbook-to-man manpage.sgml | nroff -man |
|
||||
less'. A typical entry in a Makefile or Makefile.am is:
|
||||
|
||||
manpage.1: manpage.sgml
|
||||
docbook-to-man $< > $@
|
||||
|
||||
|
||||
The docbook-to-man binary is found in the docbook-to-man package.
|
||||
Please remember that if you create the nroff version in one of the
|
||||
debian/rules file targets (such as build), you will need to include
|
||||
docbook-to-man in your Build-Depends control field.
|
||||
|
||||
-->
|
||||
|
||||
<!-- Fill in your name for FIRSTNAME and SURNAME. -->
|
||||
<!ENTITY dhfirstname "<firstname>FIRSTNAME</firstname>">
|
||||
<!ENTITY dhsurname "<surname>SURNAME</surname>">
|
||||
<!-- Please adjust the date whenever revising the manpage. -->
|
||||
<!ENTITY dhdate "<date>September 11, 2014</date>">
|
||||
<!-- SECTION should be 1-8, maybe w/ subsection other parameters are
|
||||
allowed: see man(7), man(1). -->
|
||||
<!ENTITY dhsection "<manvolnum>SECTION</manvolnum>">
|
||||
<!ENTITY dhemail "<email>mbo@earth.rootkit.nl</email>">
|
||||
<!ENTITY dhusername "Michael">
|
||||
<!ENTITY dhucpackage "<refentrytitle>LYNIS</refentrytitle>">
|
||||
<!ENTITY dhpackage "lynis">
|
||||
|
||||
<!ENTITY debian "<productname>Debian</productname>">
|
||||
<!ENTITY gnu "<acronym>GNU</acronym>">
|
||||
<!ENTITY gpl "&gnu; <acronym>GPL</acronym>">
|
||||
]>
|
||||
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
<address>
|
||||
&dhemail;
|
||||
</address>
|
||||
<author>
|
||||
&dhfirstname;
|
||||
&dhsurname;
|
||||
</author>
|
||||
<copyright>
|
||||
<year>2003</year>
|
||||
<holder>&dhusername;</holder>
|
||||
</copyright>
|
||||
&dhdate;
|
||||
</refentryinfo>
|
||||
<refmeta>
|
||||
&dhucpackage;
|
||||
|
||||
&dhsection;
|
||||
</refmeta>
|
||||
<refnamediv>
|
||||
<refname>&dhpackage;</refname>
|
||||
|
||||
<refpurpose>program to do something</refpurpose>
|
||||
</refnamediv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>&dhpackage;</command>
|
||||
|
||||
<arg><option>-e <replaceable>this</replaceable></option></arg>
|
||||
|
||||
<arg><option>--example <replaceable>that</replaceable></option></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsect1>
|
||||
<title>DESCRIPTION</title>
|
||||
|
||||
<para>This manual page documents briefly the
|
||||
<command>&dhpackage;</command> and <command>bar</command>
|
||||
commands.</para>
|
||||
|
||||
<para>This manual page was written for the &debian; distribution
|
||||
because the original program does not have a manual page.
|
||||
Instead, it has documentation in the &gnu;
|
||||
<application>Info</application> format; see below.</para>
|
||||
|
||||
<para><command>&dhpackage;</command> is a program that...</para>
|
||||
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>OPTIONS</title>
|
||||
|
||||
<para>These programs follow the usual &gnu; command line syntax,
|
||||
with long options starting with two dashes (`-'). A summary of
|
||||
options is included below. For a complete description, see the
|
||||
<application>Info</application> files.</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-h</option>
|
||||
<option>--help</option>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>Show summary of options.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-v</option>
|
||||
<option>--version</option>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>Show version of program.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>SEE ALSO</title>
|
||||
|
||||
<para>bar (1), baz (1).</para>
|
||||
|
||||
<para>The programs are documented fully by <citetitle>The Rise and
|
||||
Fall of a Fooish Bar</citetitle> available via the
|
||||
<application>Info</application> system.</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>AUTHOR</title>
|
||||
|
||||
<para>This manual page was written by &dhusername; &dhemail; for
|
||||
the &debian; system (and may be used by others). Permission is
|
||||
granted to copy, distribute and/or modify this document under
|
||||
the terms of the &gnu; General Public License, Version 2 any
|
||||
later version published by the Free Software Foundation.
|
||||
</para>
|
||||
<para>
|
||||
On Debian systems, the complete text of the GNU General Public
|
||||
License can be found in /usr/share/common-licenses/GPL.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:2
|
||||
sgml-indent-data:t
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:nil
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
-->
|
|
@ -0,0 +1,291 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
|
||||
<!--
|
||||
|
||||
`xsltproc -''-nonet \
|
||||
-''-param man.charmap.use.subset "0" \
|
||||
-''-param make.year.ranges "1" \
|
||||
-''-param make.single.year.ranges "1" \
|
||||
/usr/share/xml/docbook/stylesheet/docbook-xsl/manpages/docbook.xsl \
|
||||
manpage.xml'
|
||||
|
||||
A manual page <package>.<section> will be generated. You may view the
|
||||
manual page with: nroff -man <package>.<section> | less'. A typical entry
|
||||
in a Makefile or Makefile.am is:
|
||||
|
||||
DB2MAN = /usr/share/sgml/docbook/stylesheet/xsl/docbook-xsl/manpages/docbook.xsl
|
||||
XP = xsltproc -''-nonet -''-param man.charmap.use.subset "0"
|
||||
|
||||
manpage.1: manpage.xml
|
||||
$(XP) $(DB2MAN) $<
|
||||
|
||||
The xsltproc binary is found in the xsltproc package. The XSL files are in
|
||||
docbook-xsl. A description of the parameters you can use can be found in the
|
||||
docbook-xsl-doc-* packages. Please remember that if you create the nroff
|
||||
version in one of the debian/rules file targets (such as build), you will need
|
||||
to include xsltproc and docbook-xsl in your Build-Depends control field.
|
||||
Alternatively use the xmlto command/package. That will also automatically
|
||||
pull in xsltproc and docbook-xsl.
|
||||
|
||||
Notes for using docbook2x: docbook2x-man does not automatically create the
|
||||
AUTHOR(S) and COPYRIGHT sections. In this case, please add them manually as
|
||||
<refsect1> ... </refsect1>.
|
||||
|
||||
To disable the automatic creation of the AUTHOR(S) and COPYRIGHT sections
|
||||
read /usr/share/doc/docbook-xsl/doc/manpages/authors.html. This file can be
|
||||
found in the docbook-xsl-doc-html package.
|
||||
|
||||
Validation can be done using: `xmllint -''-noout -''-valid manpage.xml`
|
||||
|
||||
General documentation about man-pages and man-page-formatting:
|
||||
man(1), man(7), http://www.tldp.org/HOWTO/Man-Page/
|
||||
|
||||
-->
|
||||
|
||||
<!-- Fill in your name for FIRSTNAME and SURNAME. -->
|
||||
<!ENTITY dhfirstname "FIRSTNAME">
|
||||
<!ENTITY dhsurname "SURNAME">
|
||||
<!-- dhusername could also be set to "&dhfirstname; &dhsurname;". -->
|
||||
<!ENTITY dhusername "Michael">
|
||||
<!ENTITY dhemail "mbo@earth.rootkit.nl">
|
||||
<!-- SECTION should be 1-8, maybe w/ subsection other parameters are
|
||||
allowed: see man(7), man(1) and
|
||||
http://www.tldp.org/HOWTO/Man-Page/q2.html. -->
|
||||
<!ENTITY dhsection "SECTION">
|
||||
<!-- TITLE should be something like "User commands" or similar (see
|
||||
http://www.tldp.org/HOWTO/Man-Page/q2.html). -->
|
||||
<!ENTITY dhtitle "lynis User Manual">
|
||||
<!ENTITY dhucpackage "LYNIS">
|
||||
<!ENTITY dhpackage "lynis">
|
||||
]>
|
||||
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
<title>&dhtitle;</title>
|
||||
<productname>&dhpackage;</productname>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<firstname>&dhfirstname;</firstname>
|
||||
<surname>&dhsurname;</surname>
|
||||
<contrib>Wrote this manpage for the Debian system.</contrib>
|
||||
<address>
|
||||
<email>&dhemail;</email>
|
||||
</address>
|
||||
</author>
|
||||
</authorgroup>
|
||||
<copyright>
|
||||
<year>2007</year>
|
||||
<holder>&dhusername;</holder>
|
||||
</copyright>
|
||||
<legalnotice>
|
||||
<para>This manual page was written for the Debian system
|
||||
(and may be used by others).</para>
|
||||
<para>Permission is granted to copy, distribute and/or modify this
|
||||
document under the terms of the GNU General Public License,
|
||||
Version 2 or (at your option) any later version published by
|
||||
the Free Software Foundation.</para>
|
||||
<para>On Debian systems, the complete text of the GNU General Public
|
||||
License can be found in
|
||||
<filename>/usr/share/common-licenses/GPL</filename>.</para>
|
||||
</legalnotice>
|
||||
</refentryinfo>
|
||||
<refmeta>
|
||||
<refentrytitle>&dhucpackage;</refentrytitle>
|
||||
<manvolnum>&dhsection;</manvolnum>
|
||||
</refmeta>
|
||||
<refnamediv>
|
||||
<refname>&dhpackage;</refname>
|
||||
<refpurpose>program to do something</refpurpose>
|
||||
</refnamediv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>&dhpackage;</command>
|
||||
<!-- These are several examples, how syntaxes could look -->
|
||||
<arg choice="plain"><option>-e <replaceable>this</replaceable></option></arg>
|
||||
<arg choice="opt"><option>--example=<parameter>that</parameter></option></arg>
|
||||
<arg choice="opt">
|
||||
<group choice="req">
|
||||
<arg choice="plain"><option>-e</option></arg>
|
||||
<arg choice="plain"><option>--example</option></arg>
|
||||
</group>
|
||||
<replaceable class="option">this</replaceable>
|
||||
</arg>
|
||||
<arg choice="opt">
|
||||
<group choice="req">
|
||||
<arg choice="plain"><option>-e</option></arg>
|
||||
<arg choice="plain"><option>--example</option></arg>
|
||||
</group>
|
||||
<group choice="req">
|
||||
<arg choice="plain"><replaceable>this</replaceable></arg>
|
||||
<arg choice="plain"><replaceable>that</replaceable></arg>
|
||||
</group>
|
||||
</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>&dhpackage;</command>
|
||||
<!-- Normally the help and version options make the programs stop
|
||||
right after outputting the requested information. -->
|
||||
<group choice="opt">
|
||||
<arg choice="plain">
|
||||
<group choice="req">
|
||||
<arg choice="plain"><option>-h</option></arg>
|
||||
<arg choice="plain"><option>--help</option></arg>
|
||||
</group>
|
||||
</arg>
|
||||
<arg choice="plain">
|
||||
<group choice="req">
|
||||
<arg choice="plain"><option>-v</option></arg>
|
||||
<arg choice="plain"><option>--version</option></arg>
|
||||
</group>
|
||||
</arg>
|
||||
</group>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsect1 id="description">
|
||||
<title>DESCRIPTION</title>
|
||||
<para>This manual page documents briefly the
|
||||
<command>&dhpackage;</command> and <command>bar</command>
|
||||
commands.</para>
|
||||
<para>This manual page was written for the Debian distribution
|
||||
because the original program does not have a manual page.
|
||||
Instead, it has documentation in the GNU <citerefentry>
|
||||
<refentrytitle>info</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</citerefentry> format; see below.</para>
|
||||
<para><command>&dhpackage;</command> is a program that...</para>
|
||||
</refsect1>
|
||||
<refsect1 id="options">
|
||||
<title>OPTIONS</title>
|
||||
<para>The program follows the usual GNU command line syntax,
|
||||
with long options starting with two dashes (`-'). A summary of
|
||||
options is included below. For a complete description, see the
|
||||
<citerefentry>
|
||||
<refentrytitle>info</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</citerefentry> files.</para>
|
||||
<variablelist>
|
||||
<!-- Use the variablelist.term.separator and the
|
||||
variablelist.term.break.after parameters to
|
||||
control the term elements. -->
|
||||
<varlistentry>
|
||||
<term><option>-e <replaceable>this</replaceable></option></term>
|
||||
<term><option>--example=<replaceable>that</replaceable></option></term>
|
||||
<listitem>
|
||||
<para>Does this and that.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-h</option></term>
|
||||
<term><option>--help</option></term>
|
||||
<listitem>
|
||||
<para>Show summary of options.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-v</option></term>
|
||||
<term><option>--version</option></term>
|
||||
<listitem>
|
||||
<para>Show version of program.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<refsect1 id="files">
|
||||
<title>FILES</title>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><filename>/etc/foo.conf</filename></term>
|
||||
<listitem>
|
||||
<para>The system-wide configuration file to control the
|
||||
behaviour of <application>&dhpackage;</application>. See
|
||||
<citerefentry>
|
||||
<refentrytitle>foo.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</citerefentry> for further details.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><filename>${HOME}/.foo.conf</filename></term>
|
||||
<listitem>
|
||||
<para>The per-user configuration file to control the
|
||||
behaviour of <application>&dhpackage;</application>. See
|
||||
<citerefentry>
|
||||
<refentrytitle>foo.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</citerefentry> for further details.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<refsect1 id="environment">
|
||||
<title>ENVIONMENT</title>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><envar>FOO_CONF</envar></term>
|
||||
<listitem>
|
||||
<para>If used, the defined file is used as configuration
|
||||
file (see also <xref linkend="files"/>).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<refsect1 id="diagnostics">
|
||||
<title>DIAGNOSTICS</title>
|
||||
<para>The following diagnostics may be issued
|
||||
on <filename class="devicefile">stderr</filename>:</para>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><errortext>Bad configuration file. Exiting.</errortext></term>
|
||||
<listitem>
|
||||
<para>The configuration file seems to contain a broken configuration
|
||||
line. Use the <option>--verbose</option> option, to get more info.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<para><command>&dhpackage;</command> provides some return codes, that can
|
||||
be used in scripts:</para>
|
||||
<segmentedlist>
|
||||
<segtitle>Code</segtitle>
|
||||
<segtitle>Diagnostic</segtitle>
|
||||
<seglistitem>
|
||||
<seg><errorcode>0</errorcode></seg>
|
||||
<seg>Program exited successfully.</seg>
|
||||
</seglistitem>
|
||||
<seglistitem>
|
||||
<seg><errorcode>1</errorcode></seg>
|
||||
<seg>The configuration file seems to be broken.</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
</refsect1>
|
||||
<refsect1 id="bugs">
|
||||
<!-- Or use this section to tell about upstream BTS. -->
|
||||
<title>BUGS</title>
|
||||
<para>The program is currently limited to only work
|
||||
with the <package>foobar</package> library.</para>
|
||||
<para>The upstreams <acronym>BTS</acronym> can be found
|
||||
at <ulink url="http://bugzilla.foo.tld"/>.</para>
|
||||
</refsect1>
|
||||
<refsect1 id="see_also">
|
||||
<title>SEE ALSO</title>
|
||||
<!-- In alpabetical order. -->
|
||||
<para><citerefentry>
|
||||
<refentrytitle>bar</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</citerefentry>, <citerefentry>
|
||||
<refentrytitle>baz</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</citerefentry>, <citerefentry>
|
||||
<refentrytitle>foo.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</citerefentry></para>
|
||||
<para>The programs are documented fully by <citetitle>The Rise and
|
||||
Fall of a Fooish Bar</citetitle> available via the <citerefentry>
|
||||
<refentrytitle>info</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</citerefentry> system.</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
?package(lynis):needs="X11|text|vc|wm" section="Applications/see-menu-manual"\
|
||||
title="lynis" command="/usr/bin/lynis"
|
|
@ -0,0 +1,39 @@
|
|||
#!/bin/sh
|
||||
# postinst script for lynis
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postinst> `configure' <most-recently-configured-version>
|
||||
# * <old-postinst> `abort-upgrade' <new version>
|
||||
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||
# <new-version>
|
||||
# * <postinst> `abort-remove'
|
||||
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||
# <failed-install-package> <version> `removing'
|
||||
# <conflicting-package> <version>
|
||||
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
configure)
|
||||
;;
|
||||
|
||||
abort-upgrade|abort-remove|abort-deconfigure)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postinst called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
|
@ -0,0 +1,37 @@
|
|||
#!/bin/sh
|
||||
# postrm script for lynis
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postrm> `remove'
|
||||
# * <postrm> `purge'
|
||||
# * <old-postrm> `upgrade' <new-version>
|
||||
# * <new-postrm> `failed-upgrade' <old-version>
|
||||
# * <new-postrm> `abort-install'
|
||||
# * <new-postrm> `abort-install' <old-version>
|
||||
# * <new-postrm> `abort-upgrade' <old-version>
|
||||
# * <disappearer's-postrm> `disappear' <overwriter>
|
||||
# <overwriter-version>
|
||||
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postrm called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
|
@ -0,0 +1,35 @@
|
|||
#!/bin/sh
|
||||
# preinst script for lynis
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <new-preinst> `install'
|
||||
# * <new-preinst> `install' <old-version>
|
||||
# * <new-preinst> `upgrade' <old-version>
|
||||
# * <old-preinst> `abort-upgrade' <new-version>
|
||||
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
install|upgrade)
|
||||
;;
|
||||
|
||||
abort-upgrade)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "preinst called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
|
@ -0,0 +1,38 @@
|
|||
#!/bin/sh
|
||||
# prerm script for lynis
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <prerm> `remove'
|
||||
# * <old-prerm> `upgrade' <new-version>
|
||||
# * <new-prerm> `failed-upgrade' <old-version>
|
||||
# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
|
||||
# * <deconfigured's-prerm> `deconfigure' `in-favour'
|
||||
# <package-being-installed> <version> `removing'
|
||||
# <conflicting-package> <version>
|
||||
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
remove|upgrade|deconfigure)
|
||||
;;
|
||||
|
||||
failed-upgrade)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "prerm called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
|
@ -0,0 +1,59 @@
|
|||
#!/usr/bin/make -f
|
||||
|
||||
build: build-arch build-indep
|
||||
build-arch: build-stamp
|
||||
build-indep: build-stamp
|
||||
build-stamp:
|
||||
dh_testdir
|
||||
touch build-stamp
|
||||
|
||||
|
||||
clean:
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
rm -f build-stamp
|
||||
dh_clean
|
||||
|
||||
|
||||
install: build
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_prep
|
||||
|
||||
# Add here commands to install the package into debian/lynis.
|
||||
install -D -m 0755 $(CURDIR)/lynis $(CURDIR)/debian/lynis/usr/sbin/lynis
|
||||
install -D -m 0644 $(CURDIR)/default.prf $(CURDIR)/debian/lynis/etc/lynis/default.prf
|
||||
install -d $(CURDIR)/include/ $(CURDIR)/debian/lynis/usr/share/lynis/include/
|
||||
install -m 0644 $(CURDIR)/include/* $(CURDIR)/debian/lynis/usr/share/lynis/include/
|
||||
install -d $(CURDIR)/plugins/ $(CURDIR)/debian/lynis/etc/lynis/plugins/
|
||||
install -m 0755 $(CURDIR)/plugins/custom_plugin.template $(CURDIR)/debian/lynis/etc/lynis/plugins/
|
||||
install -m 0644 $(CURDIR)/plugins/README $(CURDIR)/debian/lynis/etc/lynis/README
|
||||
install -d $(CURDIR)/db $(CURDIR)/debian/lynis/usr/share/lynis/db/
|
||||
install -m 0644 $(CURDIR)/db/* $(CURDIR)/debian/lynis/usr/share/lynis/db/
|
||||
mkdir -p $(CURDIR)/debian/lynis/usr/share/applications/
|
||||
#install -m 0644 $(CURDIR)/debian/lynis.desktop $(CURDIR)/debian/lynis/usr/share/applications/
|
||||
|
||||
|
||||
|
||||
# Build architecture-dependent files here.
|
||||
binary-arch: build install
|
||||
binary-indep: build install
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_installchangelogs CHANGELOG
|
||||
dh_installdocs
|
||||
dh_installmenu
|
||||
dh_installman
|
||||
dh_install
|
||||
dh_link
|
||||
dh_compress
|
||||
dh_fixperms -Xinclude
|
||||
dh_lintian -plynis
|
||||
dh_installdeb
|
||||
dh_gencontrol
|
||||
dh_md5sums
|
||||
dh_builddeb
|
||||
|
||||
binary: binary-indep binary-arch
|
||||
.PHONY: build clean binary-indep binary-arch binary install configure
|
||||
|
|
@ -0,0 +1 @@
|
|||
3.0 (quilt)
|
|
@ -0,0 +1,23 @@
|
|||
# Example watch control file for uscan
|
||||
# Rename this file to "watch" and then you can run the "uscan" command
|
||||
# to check for upstream updates and more.
|
||||
# See uscan(1) for format
|
||||
|
||||
# Compulsory line, this is a version 3 file
|
||||
version=3
|
||||
|
||||
# Uncomment to examine a Webpage
|
||||
# <Webpage URL> <string match>
|
||||
#http://www.example.com/downloads.php lynis-(.*)\.tar\.gz
|
||||
|
||||
# Uncomment to examine a Webserver directory
|
||||
#http://www.example.com/pub/lynis-(.*)\.tar\.gz
|
||||
|
||||
# Uncommment to examine a FTP server
|
||||
#ftp://ftp.example.com/pub/lynis-(.*)\.tar\.gz debian uupdate
|
||||
|
||||
# Uncomment to find new files on sourceforge, for devscripts >= 2.9
|
||||
# http://sf.net/lynis/lynis-(.*)\.tar\.gz
|
||||
|
||||
# Uncomment to find new files on GooglePages
|
||||
# http://example.googlepages.com/foo.html lynis-(.*)\.tar\.gz
|
|
@ -14,9 +14,8 @@
|
|||
#
|
||||
# Options:
|
||||
|
||||
echo "[*] Activity [V] Succesful [X] Error [=] Result"
|
||||
echo ""
|
||||
|
||||
echo "[*] Activity [V] Succesful [X] Error [=] Result"
|
||||
echo ""
|
||||
|
||||
# Umask used when creating files/directories
|
||||
OPTION_UMASK="027"
|
||||
|
@ -27,10 +26,12 @@ echo ""
|
|||
# Binary to test
|
||||
OPTION_BINARY_FILE="../lynis"
|
||||
|
||||
# Check number of parameters
|
||||
if [ $# -eq 0 ]; then
|
||||
echo "[X] This build tool needs at least a version number (--version). Use --help for all parameters."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check parameters
|
||||
case $1 in
|
||||
--help)
|
||||
|
@ -56,7 +57,7 @@ echo ""
|
|||
# Clean temporary files up
|
||||
CleanUp()
|
||||
{
|
||||
if [ ! ${TMPDIR} = "" -a -d ${TMPDIR} ]; then
|
||||
if [ ! "${TMPDIR}" = "" -a -d "${TMPDIR}" ]; then
|
||||
rm -rf ${TMPDIR}
|
||||
fi
|
||||
}
|
||||
|
@ -81,34 +82,127 @@ echo ""
|
|||
#
|
||||
#########################################################################
|
||||
#
|
||||
MYUSER=`whoami`
|
||||
if [ "${MYUSER}" = "" ]; then
|
||||
echo "[X] Could not determine user"
|
||||
fi
|
||||
if [ "${MYUSER}" = "root" ]; then
|
||||
echo "[X] This script should not be executed as root"
|
||||
fi
|
||||
|
||||
# Set umask
|
||||
echo -n "- Setting umask to ${OPTION_UMASK} "
|
||||
|
||||
MYWORKDIR=`pwd | awk -F / '{ for (i=1;i<=NF-2;i++){ printf $i"/" }; printf "\n"}' | sed 's./$..'`
|
||||
if [ ! -d ${MYWORKDIR} ]; then
|
||||
echo "[X] Could not determine workdir (result: ${MYWORKDIR} seems invalid)"
|
||||
ExitFatal
|
||||
else
|
||||
echo "[=] workdir: ${MYWORKDIR}"
|
||||
fi
|
||||
|
||||
|
||||
MYBUILDDIR="/home/${MYUSER}/lynis-build"
|
||||
if [ ! -d ${MYBUILDDIR} ]; then
|
||||
echo "[X] ${MYBUILDDIR} not found"
|
||||
echo " Hint: create it with mkdir ${MYBUILDDIR}"
|
||||
ExitFatal
|
||||
else
|
||||
echo "[=] builddir: ${MYBUILDDIR}"
|
||||
fi
|
||||
|
||||
NEEDED_DIRS="debbuild rpmbuild rpmbuild/BUILD rpmbuild/BUILDROOT rpmbuild/RPMS rpmbuild/SOURCES rpmbuild/SRPMS"
|
||||
for I in ${NEEDED_DIRS}; do
|
||||
if [ ! -d "${MYBUILDDIR}/${I}" ]; then
|
||||
echo "[X] Missing directory: ${MYBUILDDIR}/${I}"
|
||||
echo " Hint: create subdirs with cd ${MYBUILDDIR} && mkdir -p ${NEEDED_DIRS}"
|
||||
ExitFatal
|
||||
fi
|
||||
done
|
||||
|
||||
DEBWORKDIR="${MYBUILDDIR}/debbuild"
|
||||
RPMWORKDIR="${MYBUILDDIR}/rpmbuild"
|
||||
echo "[=] RPM workdir: ${RPMWORKDIR}"
|
||||
#echo "Use: cd ${MYBUILDDIR} && mkdir rpm"
|
||||
|
||||
|
||||
# Check binaries
|
||||
|
||||
BZRBINARY=`which bzr`
|
||||
if [ ! "${BZRBINARY}" = "" ]; then
|
||||
echo "[=] bzr = ${BZRBINARY}"
|
||||
else
|
||||
echo "[X] Can not find bzr binary"
|
||||
echo " Hint: install bzr"
|
||||
ExitFatal
|
||||
fi
|
||||
|
||||
RPMBUILDBINARY=`which rpmbuild`
|
||||
if [ ! "${RPMBUILDBINARY}" = "" ]; then
|
||||
echo "[=] rpmbuild = ${RPMBUILDBINARY}"
|
||||
else
|
||||
echo "[X] Can not find rpmbuild binary"
|
||||
echo " Hint: install rpmbuild"
|
||||
ExitFatal
|
||||
fi
|
||||
|
||||
|
||||
# Set umask
|
||||
umask ${OPTION_UMASK}
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "OK"
|
||||
echo "[V] Setting umask to ${OPTION_UMASK}"
|
||||
else
|
||||
echo "BAD"
|
||||
exit 1
|
||||
echo "[X] Could not set umask"
|
||||
ExitFatal
|
||||
fi
|
||||
|
||||
# Check if we are in dev directory
|
||||
if [ -f ../lynis -a -f ./build-lynis.sh ]; then
|
||||
echo "[V] Active in proper directory"
|
||||
else
|
||||
echo "[X] This script should be executed from dev directory itself"
|
||||
ExitFatal
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
#=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
||||
|
||||
# Build root
|
||||
echo -n "- Creating BUILDROOT "
|
||||
# Create temporary build directory
|
||||
TMPDIR=`mktemp -d /tmp/lynis-BUILDROOT.XXXXXX`
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "OK"
|
||||
echo " BUILDROOT: ${TMPDIR}"
|
||||
echo "[V] Creating temporary build directory"
|
||||
#echo " BUILDROOT: ${TMPDIR}"
|
||||
else
|
||||
echo "BAD"
|
||||
exit 1
|
||||
echo "[X] Could not create temporary build directory"
|
||||
ExitFatal
|
||||
fi
|
||||
|
||||
#=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
||||
|
||||
echo "[*] Starting with building tarball"
|
||||
|
||||
TARBALL="${MYBUILDDIR}/lynis_${LYNIS_VERSION}.orig.tar.gz"
|
||||
#if [ -f ${TARBALL} ]; then
|
||||
# echo "[X] Tarball already exists "
|
||||
# echo " Hint: remove ${TARBALL}"
|
||||
# ExitFatal
|
||||
#fi
|
||||
|
||||
# Create tarball
|
||||
tar -C ${MYWORKDIR} --exclude=.bzr* --exclude=.git* -c -z -f ${TARBALL} lynis 2> /dev/null
|
||||
|
||||
if [ -f ${TARBALL} ]; then
|
||||
echo "[V] Tarball created"
|
||||
else
|
||||
echo "[X] Tarball ${TARBALL} could not be created"
|
||||
ExitFatal
|
||||
fi
|
||||
|
||||
|
||||
echo "[*] Starting with RPM building process"
|
||||
|
||||
# RPM creation
|
||||
SOURCEFILE_RPM="/root/rpmbuild/SOURCES/lynis-${LYNIS_VERSION}.tar.gz"
|
||||
SOURCEFILE_RPM="${RPMWORKDIR}/SOURCES/lynis-${LYNIS_VERSION}.tar.gz"
|
||||
if [ -f ${SOURCEFILE_RPM} ]; then
|
||||
if [ -f lynis.spec ]; then
|
||||
# adjust version in spec file
|
||||
|
@ -119,26 +213,61 @@ echo ""
|
|||
ExitFatal
|
||||
fi
|
||||
echo "[*] Start RPM building"
|
||||
rpmbuild --quiet -ba lynis.spec 2> /dev/null
|
||||
#${RPMBUILDBINARY} --quiet -ba -bl lynis.spec 2> /dev/null
|
||||
else
|
||||
echo "[X] lynis.spec not found"
|
||||
ExitFatal
|
||||
fi
|
||||
|
||||
RPMFILE="/root/rpmbuild/RPMS/noarch/lynis-${LYNIS_VERSION}-1.noarch.rpm"
|
||||
RPMFILE="${RPMWORKDIR}/RPMS/noarch/lynis-${LYNIS_VERSION}-1.noarch.rpm"
|
||||
if [ -f ${RPMFILE} ]; then
|
||||
echo "[V] Building RPM succesful!"
|
||||
echo " File: ${RPMFILE}"
|
||||
else
|
||||
echo "[X] Could not find RPM file, most likely failed"
|
||||
echo " Expected: ${RPMFILE}"
|
||||
ExitFatal
|
||||
fi
|
||||
else
|
||||
echo "[X] Could not find source file (${SOURCEFILE})"
|
||||
echo "[X] Could not find source file (${SOURCEFILE_RPM})"
|
||||
echo " Hint: cp <lynis.tar.gz> ${SOURCEFILE_RPM}"
|
||||
ExitFatal
|
||||
fi
|
||||
|
||||
echo "[*] Starting with DEB building process"
|
||||
|
||||
BZRSTATUS=`${BZRBINARY} status . 2>&1 > /dev/null; echo $?`
|
||||
if [ "${BZRSTATUS}" = "0" ]; then
|
||||
echo "[V] bzr has proper directory tree"
|
||||
DEBCHANGELOGFULLVERSION=`head -1 debian/changelog | awk '{ print $2 }' | sed 's/(//' | sed 's/)//'`
|
||||
DEBCHANGELOGVERSION=`echo ${DEBCHANGELOGFULLVERSION} | awk -F- '{ print $1 }'`
|
||||
DEBCHANGELOGVERSIONREV=`echo ${DEBCHANGELOGFULLVERSION} | awk -F- '{ print $2 }'`
|
||||
echo "[=] Version in Debian changelog: ${DEBCHANGELOGVERSION} (revision: ${DEBCHANGELOGVERSIONREV})"
|
||||
if [ "${LYNIS_VERSION}" = "${DEBCHANGELOGVERSION}" ]; then
|
||||
echo "[V] Debian/changelog up-to-date"
|
||||
else
|
||||
echo "[X] Debian/changelog outdated"
|
||||
ExitFatal
|
||||
fi
|
||||
# execute command
|
||||
# bzr builddeb . --build-dir ${DEBWORKDIR}/build-area/ --result-dir ${DEBWORKDIR}
|
||||
elif [ "${BZRSTATUS}" = "3" ]; then
|
||||
echo "[X] Tree is not initialized for BZR"
|
||||
echo " Hint: run bzr init while being in lynis directory (or bzr init ..)"
|
||||
ExitFatal
|
||||
else
|
||||
echo "[X] Unknown error"
|
||||
echo "Output: ${BZRSTATUS}"
|
||||
fi
|
||||
|
||||
|
||||
echo "[V] Done"
|
||||
echo ""
|
||||
echo "---------------------------------------------"
|
||||
echo "Tarball: ${TARBALL}"
|
||||
echo "RPM file: ${RPMFILE}"
|
||||
echo ""
|
||||
|
||||
|
||||
|
||||
#=====================================================================
|
||||
|
||||
|
|
|
@ -5,14 +5,21 @@
|
|||
#
|
||||
# Usage:
|
||||
# - Adjust version number (Version:)
|
||||
# - Check if you have the directories in your home directory (or adjust topdir)
|
||||
# - rpmbuild -ba lynis.spec
|
||||
#
|
||||
# If RPM building fails, check the required tools to build packages.
|
||||
#
|
||||
#################################################################################
|
||||
# http://cisofy.com/
|
||||
#
|
||||
# (c) 2014 Michael Boelen
|
||||
#
|
||||
# Website: http://cisofy.com/
|
||||
#
|
||||
#################################################################################
|
||||
|
||||
# Build in home directory of the user
|
||||
%define _topdir %{getenv:HOME}/lynis-build/rpmbuild
|
||||
%define _includedir /usr/share/lynis/include
|
||||
%define _pluginsdir /usr/share/lynis/plugins
|
||||
%define _dbdir /usr/share/lynis/db
|
||||
|
@ -88,7 +95,7 @@ install db/* ${RPM_BUILD_ROOT}%{_dbdir}
|
|||
%files
|
||||
%defattr(644,root,root,755)
|
||||
# Binaries
|
||||
%{_bindir}/lynis
|
||||
%attr(755, root, root) %{_bindir}/lynis
|
||||
# Man page and docs
|
||||
%doc CHANGELOG FAQ LICENSE README
|
||||
%doc %{_mandir}/man8/lynis.8.gz
|
||||
|
@ -98,8 +105,6 @@ install db/* ${RPM_BUILD_ROOT}%{_dbdir}
|
|||
%{_dbdir}/*
|
||||
%{_includedir}/*
|
||||
%{_pluginsdir}/*
|
||||
# Lynis binary should be executable
|
||||
#%attr(755, root, root) %{_bindir}/lynis
|
||||
#%attr(644, root, root) %{_dbdir}/*
|
||||
#%attr(644, root, root) %{_includedir}/*
|
||||
#%attr(644, root, root) %{_plugindir}
|
||||
|
|
Loading…
Reference in New Issue