discord.org Home Page Home Publications Text Files Blog Skeptical Links

Jim Lippard's Security Software

These are some software tools, all in Perl, which I've developed for my own use. Others are welcome to use them for noncommercial use, with no warranty. All were originally written for OpenBSD but most also work on Linux and macOS.

In the absence of other license information within each package, assume that each is copyrighted by Jim Lippard, with all rights reserved, with license granted for noncommercial use. Assume a BSD-3 license.

Also see Github: https://github.com/lippard661, which has more extensive documentation for each repo but not all of the tools below.

  • discord.org-2026-pkg.pub: signify public key for verifying signed packages
  • discord.org-2025-pkg.pub: signify public key for verifying signed packages
  • accttools.tgz: Process accounting tools (written for *BSD) for generating a baseline and auditing for divergences from the baseline. Current version is a beta (really more of a proof-of-concept), 0.5, 2012-12-23.
  • add_host-1.3.tgz: add_host/remove_host, Perl script for adding and removing IPs from files used for firewalling (and from pf tables). Current version is 1.3, 2023-01-29.
  • arpwatch-3.6 OpenBSD package. This is Lawrence Livermore Labs' arpwatch, patched for OpenBSD to use unveil and _arpwatch user. The patches are approximately equivalent to the standard OpenBSD package, which uses arpwatch-2.1a15 and does not use unveil. (I attempted to use pledge as well, but the restricted mode of pledge doesn't allow the bpf-related system calls, such as BIOCSETF.)
  • distribute-1.2a.tgz and install-1.3b.tgz, perl scripts to distribute files to multiple hosts and install them. distribute includes gendoas.pl to generate per-host doas.conf files from a template and a sample distribute.conf file; install includes pkg_info.pl, a minimal implementation of OpenBSD's pkg_info to go with the built-in minimal pkg_add and pkg_delete functionality in install. While intended primarily for OpenBSD hosts that use immutable file systems (integrated with syslock, also available below), but also works with Linux (using the signify-openbsd package) and macOS (using signify from Homebrew). Current versions: 1.2a 2026-05-20 (distribute) with gendoas.pl 1.4 2026-05-18; 1.3b 2026-06-06 (install) with 2026-05-18 pkg_info.pl. OpenBSD packages (which can be installed with install.pl on Linux and macOS) for distribute-1.2a.tgz and install-1.3b.tgz available here or on Github.
  • faild.pl: Monitors an Internet connection for uptime, fails over to an alternate connection if one is available. Current version is 1.21, 2026-05-16.
  • portcheck.pl: Updates OpenBSD ports tree. Current version 1.5, 2025-01-25.
  • reportnew-1.35b.tgz: Monitors logs for new entries and generates email reports for entries matching certain criteria. Works for syslog, cyclog, and multilog formats, for BSD (and macOS pre-Tahoe) and Linux process accounting logs, and for Linux journal logs. Current version is 1.35b, 2026-05-16. Available here or on Github as an OpenBSD-style package.
  • rsync-client.pl: Managed synchronization of files between systems via an unprivileged user. Current version is 2026-05-17. Packaged together with some other rsync tools as rsync-tools-20260530.tgz. The latter is available here or on Github as an OpenBSD-style package.
  • sha2_create.pl/sha2_compare.pl/sha3_create.pl/sha3_compare.pl: Creates databases of SHA2/SHA3 digests and compares against them. Also supports SHA1, but that is deprecated. Intended for setting baselines for use in forensic analysis, similar to the Sun Solaris Fingerprint Database, and for finding and removing unused files after an upgrade -- that use case now obsoleted by OpenBSD's sysclean. Old databases of SHA2/SHA3 digests for OpenBSD 3.8 through 6.9 are available upon request.
  • Signify-1.2a.tgz: Signify.pm, perl module wrapper for OpenBSD signify. Current version is 1.2a, 2026-05-19. Available here or on Github as an OpenBSD-style package. Works on Linux with signify-openbsd package and on macOS with signify-osx (via Homebrew).
  • sigtree-1.24c.tgz: Tripwire/Samhain-like program, monitors file system integrity. Written for *BSD, macOS, and Linux. Current version is 1.24c, 2026-05-17. Available here or on Github as an OpenBSD-style package. v1.19c and later allow child forks with Parallel::ForkManager and uses Signify.pm.
  • syslock/sysunlock: Sets system files immutable, so that they cannot be changed by root unless the system is brought into single-user mode. Written for OpenBSD, but will work for *BSD, Linux, and macOS. (May require changes to the locations of commands (e.g. chflags) for other BSD). Current version: 1.18a, 20 May 2026. Available here or on Github as an OpenBSD-style package.
1 2 3 4