FreeBSD 14 is what you reach for when you want a Unix that is not Linux — strict BSD licence, the original ZFS port, pf firewall, and a manual that is consistently the best in the industry.
Prerequisites
- A server, VM, or hypervisor slot with 2 vCPU, 2 GiB RAM, 20 GiB disk.
FreeBSD-14.x-RELEASE-amd64-disc1.isoor-bootonly.isofromfreebsd.org.- The matching
CHECKSUM.SHA256-FreeBSD-14.x-RELEASE-amd64file.
Step 1: Verify the ISO
sha256 FreeBSD-14.0-RELEASE-amd64-disc1.iso
# compare to the SHA256 file
Step 2: Boot bsdinstall
Boot the ISO; pick Install. Layout:
- Keymap: US (or your preference)
- Hostname:
bsd14.example.sa - Distribution: leave
lib32andkernel-dbgticked if you want them; for a slim server install neither
Step 3: Partitioning — choose ZFS
The installer offers Auto (ZFS) — accept it for production. Pick:
- Pool type: stripe (single disk) or mirror (two disks) or raidz1 (three+ disks)
- Force 4K sectors: yes
- Encrypt: optional, recommended for laptops, skip for typical servers
- Swap size: 2 GiB
- Pool name:
zroot(default)
ZFS gets you cheap snapshots, send/receive replication, and inline compression. Worth the few minutes to set up.
Step 4: Root password + first user
- Root password: 32+ chars.
- Add user: tick wheel group so you can
su -orsudolater.- Login shell:
/usr/local/bin/bashif you installed it, else stay withsh.
- Login shell:
Step 5: Network and services
Configure your NIC (static or DHCP). At the System Hardening screen tick:
- Hide processes running as other users
- Hide processes running as other groups
- Disable reading kernel message buffer for unprivileged users
- Disable process debugging facilities for unprivileged users
- Randomize the PID of newly created processes
- Clean the /tmp filesystem on system startup
- Disable Sendmail service
- Disable Sendmail message submission service
These are the no-regret defaults.
Step 6: First boot
Log in as your user, switch to root:
su -
pkg bootstrap -y
pkg update
pkg install -y vim curl htop sudo bash git
visudo # uncomment %wheel ALL=(ALL) ALL
Push your SSH key from your workstation:
ssh-copy-id ops@bsd14.example.sa
Edit /etc/ssh/sshd_config:
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
service sshd reload
Verify
uname -a # FreeBSD bsd14 14.x-RELEASE
zpool status # ZFS pool healthy
sockstat -4l # listeners on IPv4
sysctl kern.ostype kern.osrelease
Conclusion
FreeBSD 14 + ZFS gives you a stable Unix server you can run for a decade with confidence. Update with freebsd-update fetch install, package the rest with pkg, and snapshot the OS dataset before any major change.
Next steps
- Install daily software with the pkg + Ports collection.
- Lock inbound traffic down with pf firewall.
- For a Linux-shaped server experience see Install Debian 12 instead.
Comments
0 total · 0 threads