Step-by-step: two single-node SeaweedFS 4 boxes on FreeBSD 15.1 — a public write target and an internal pull mirror over NAT, deletions replayed upstream, then point PhotoSync at it.
How to set up cross-site S3 sync with SeaweedFS on FreeBSD: a public box takes uploads from anywhere, a box at home pulls a full copy over NAT — one node per site, no split-brain, no port-forwarding at home.
Compact guide for building an OpenClaw workspace focused on child protection, minimal retention, local models, direct-message-only behavior, and guardian escalation.
OpenClaw is not just for automation. With strict guard rails and local models, it can become a private daily helper and a protection layer for children in chats.
For those you haven’t heard of Sylve:
Sylve is pretty new VM and Jailmanager for FreeBSD.
As stated on the projects page: 
 
 [!WARNING]
This project is still in development so expect breaking changes! 
 
 Sneak peek:
 
 1. Prerequisites 
 Make sure you have Sylve installed and configured correctly. 
Repository:…
If you want to try it on MacOS you can use this tutorial https://hackacad.net/post/2025-07-12-local-chatbot-rag-with-freebsd-knowledge/ 
 Out of multiple conversations with people at BSD conferences, I noticed that many would love to see a chatbot that provides precise information on FreeBSD—for users, admins, and developers. 
 I strongly believe that there should not be an official…
If you want to try it on MacOS you can use this tutorial https://hackacad.net/post/2025-07-15-local-chatbot-rag-with-freebsd-knowledge-freebsd-host/ 
 Out of multiple conversations with people at BSD conferences, I noticed that many would love to see a chatbot that provides precise information on FreeBSD—for users, admins, and developers. 
 I strongly believe that there should not be an…
Overview 
 This tutorial walks you through downloading and configuring the FreeBSD 14.2 image for Raspberry Pi Compute Module 4 (CM4). You’ll enable SSH access, configure the system, and install a custom EFI loader. If you are using a Compute Blade, this guide will work for you as well. 
 Prerequisites 
 
 Raspberry Pi CM4 or a system with an eMMC/SD card. 
 FreeBSD…
If you want to test OpenSearch Data Prepper on FreeBSD. 
 Optional 
 bastille create dataprepper 14.0-RELEASE 192.168.0.222/24
bastille console dataprepper
 
 Install dependencies and load the source files 
 pkg install openjdk17 bash
fetch https://artifacts.opensearch.org/data-prepper/2.7.0/opensearch-data-prepper-jdk-2.7.0-linux-x64.tar.gz
tar xvzf…
Since I wasn’t happy with my hosting provider anymore I chose to switch to a local data center. 
 Migrating multiple hosts with multiple jails isn’t very scalable, so here’s a script to help you with that. 
 You can easily automate that using ansible if have a larger number of hosts. 
 I suggest you use ZFS, otherwise change the compression format from .xz to .txz (in…
How to create secure remote access with zero trust policy 
 This short how-to should give you some ideas on how to create secure web access to your web services without VPN. 
 First of all: You can stop reading (and probably using Internet after all) if you don’t trust any content providers.
I will use Cloudflare, OPNsense, Solokeys and Github for this Demo. You need a fixed…
UPDATE 21/09/19: 
 Everything has been comitted and merged upstream.
So you can simply run: 
 pkg install opensearch
 
 STALE 
 Want to try out OpenSearch on FreeBSD? 
 Right now there is no official support or port for OpenSearch on FreeBSD, so I created a small hotfix for a demo installation.
As I like to run everything on BastilleBSD I added basic support for…
In case your poudriere ports are no longer beeing updated via poudriere ports -u : 
 Did you hear about the Git migration? 
 The easiest way should be deleting the old ports tree and refetch it. 
 poudriere ports -d default
poudriere ports -c -m git+https
 
 Done.
Upgrade BastilleBSD jails from source 
 Using bastille upgrade 12.1-RELEASE 12.2-RELEASE is the prefered way of upgrading.
If you need to do that air-gapped or with a special release (like -HEAD ) you can use this tutorial. 
 before you start: make sure your host system is not behind the jails release 
 svnlite checkout https://svn.freebsd.org/base/head /usr/src
 
 If you…
Create a jailed Ubuntu Linux with Bastille on FreeBSD 12.2 
 Make sure Bastille is installed and configured. click here 
 This is not offically supported, so don’t use it in production! 
 update 2021/02/11: Auto Installer 
 You could try the following POC for automated jail creation: 
 DO NOT USE THIS IN PRODUCTION! 
 THIS MIGHT BREAK YOUR RUNNING INSTALLATION 
…
HowTo create jails with Bastille 0.8 
 TDLR of https://github.com/BastilleBSD/bastille/ (updated for Bastille 0.8.20210115) 
 install bastille 
 Bastille is very active so make sure you switch to latest pkg mirror 
 vim /etc/pkg/FreeBSD.conf
 
 FreeBSD: {
 url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
 mirror_type: "srv",
 signature_type: "fingerprints",
…
This a short how-to for creating a FreeBSD pkg mirror using BastilleBSD and Poudriere. 
 Two things: 
 Yes! This is not a full how to for creating a mirror, but I assume you’re able to spawn a webserver and move files on the filesystem. 
 Yes! You could do more automation using templates. At the time we started playing with poudriere with bastille didn’t have the features…
If you want/need to add password authentication to your FreeBSD Elasticsearch cluster (this should work on any FreeBSD with elasticsearch7) 
 TLDR; (again) 
 Add the following lines to your /usr/local/etc/elasticsearch/elasticsearch.yml : 
 xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
 
 and restart elasticsearch. 
 service elasticsearch…
This is a short how-to for securing Saltstack communication via spiped. 
(most of it is based on the how-to I wrote on securing Elasticsearch with spiped) 
 
 At first: install spiped 
 FreeBSD 
 pkg install spiped
 
 Debian/Ubuntu 
 apt install spiped
 
 CentOS (fo those who haven’t migrated yet) 
 vim /etc/yum.repos.d/spiped.repo
 
…
OpenSSH 8.2p1 with FIDO2 support was recently added to MacOS (via Homebrew) and FreeBSD (via ports/pkg). 
 Here’s a short how-to securely login to your FreeBSD servers via FIDO2 (Yubikey, Solokey et. al.). 
 
 On your MacOS client: 
 Open a terminal and install libfido2 and openssh (8.2p1) 
 brew install openssh libfido2
 
 Generate you ecdsa key with libfido2.…
Stop the running jail and export it: 
 iocage stop jailname
iocage export jailname
 
 Move the backup files (.zip and .sha256) into Bastille backup dir (default: /usr/local/bastille/backups/): 
 mv /iocage/images/jailname_2020-03-26.* /usr/local/bastille/backups/
 
 for remote systems you could use rsync: 
 rsync -avh /iocage/images/jailname_2020-03-26.*…
Go to 2021 version 
 HowTo create jails with Bastille 
 TDLR of https://github.com/BastilleBSD/bastille/ 
 install bastille 
 Bastille is very active so make sure you switch to latest pkg mirror 
 vim /etc/pkg/FreeBSD.conf
 
 FreeBSD: {
 url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
 mirror_type: "srv",
 signature_type: "fingerprints",
 fingerprints:…
TLDR for Redmine on FreeBSD 11.2 
 install redmine and a bunch of dependencies 
 
 UPDATE 2019/03/11 redmine pkg is currently not available on quaterly mirror (make sure you use latest branch in /etc/pkg/FreeBSD.conf) 
 
 pkg install redmine apache24 mysql56-server mysql56-client rubygem-passenger-apache
 
 vim /usr/local/etc/apache24/httpd.conf
 
…
HowTo Secure Elasticsearch using spiped on FreeBSD, Debian and CentOS
Spiped makes it really easy to secure connections between clients and Elasticsearch databases.
 
Keep in mind that the symmetric key (once compromised) can be used to intercept/mitm all connections. 
 install spiped 
 FreeBSD 
 pkg install spiped
 
 Debian/Ubuntu 
 apt install spiped
…
If your Salt Minion fails to start with
[salt.utils.process:754 ][ERROR ][5542] An un-handled exception from the multiprocessing process > ‘SignalHandlingMultiprocessingProcess-1:59’ was caught:
Traceback (most recent call last):
File “/usr/local/lib/python3.5/dist-packages/salt/utils/process.py”, line 747, in _run
return…
If you try to run Elasticsearch in a Jail without an external IP address you might get an error like: 
 No up-and-running loopback addresses found, got [name:lo1 (lo1)]
 
 How to solve it? 
 You need to bind your Elasticsearch to your primary IP address: 
 vim /usr/local/etc/elasticsearch/elasticsearch.yml:
 
 network.host: 10.10.10.2

If you see the following error after pkg upgrade or pkg install
Shared object “libdl.so.1” not found 
 Your FreeBSD version might be outdated. This currently happens on FreeBSD 11.1 if you use the latest/qarterly pkg mirror. 
 How to fix it? 
 freebsd-update -upgrade -r 11.2-RELEASE 
reboot 
freebsd-update install 
pkg update && pkg upgrade