Run OpenBSD on DigitalOcean for $4/month

Aug 26, 2026 12:23 AM - 1 hour ago 1

OpenBSD 7.9 Puffy dude

My homepage now runs connected OpenBSD with httpd(8) and Let's Encrypt via acme-client(1). I previously hosted it connected GitHub Pages and then eventually moved to Cloudflare Pages because both options were free and easy.and easy is cool, and I understand that penning package full-time leaves america wanting perfectly nothing to do pinch computers aft we punch out, but lately I person been missing the do-it-yourself web that I grew up with. Some of my favorite times increasing up included installing and configuring UNIX-based operating systems and spending hours trying to understand how computers worked. I moreover met 1 of my closest friends online through a FreeBSD UNIX shell account forum much than 20 years ago.

So, successful that vein, I wanted to constitute thing connected really you tin get up and moving connected OpenBSD pinch DigitalOcean for $4 a month. Well, really, it's $4.24 aft taxation but that's still beautiful good!

Download OpenBSD

There are a fewer different options erstwhile it comes to downloading OpenBSD, but the quickest method is to drawback the miniroot image.

curl -O -O https://cdn.openbsd.org/pub/OpenBSD/7.9/arm64/{miniroot79.img,SHA256}

Confirm that the checksum of the image is correct.

sha256sum -c --ignore-missing SHA256 miniroot79.img miniroot79.img: OK

Sign Up for DigitalOcean and Upload miniroot79.img

Once you are signed up and logged successful to DigitalOcean, spell to Backups & Snapshots nether the STORAGE conception successful the left-hand navigation. Click Upload an Image. Select the miniroot79.img record we downloaded earlier. Select a datacenter that makes consciousness for you. Select Other for the distribution (Hey, DigitalOcean, why nary BSD distribution?). Give the civilization image a name, thing clever for illustration "OpenBSD miniroot79". Finally, click the Add Custom Image button.

Note connected Custom Images

DigitalOcean will complaint you for hosting civilization images. Make judge you travel back to this page to delete the image aft your server is up and running.

Upload civilization image connected DigitalOcean

Create a Droplet

Click Droplets nether the COMPUTE conception successful the left-hand nav. We are going to create the basic droplet that includes 512MB memory, 1vCPU, 500GB transfer, and 10GB of disk space.

Select a datacenter region that makes consciousness for you.

Choose the miniroot79.img record we uploaded earlier nether the Custom Images tab.

Select civilization miniroot79.img record connected DigitalOcean

Choose the Basic plan.

Select Basic / Regular SSD tier Droplet connected DigitalOcean

Under the Authentication conception adhd an SSH Key. DigitalOcean does not really adhd this cardinal but it is required to create the droplet. Follow the instructions connected really to create and adhd an SSH key.

The remainder of the options are up to you. Just a heads up, though, I have noticed that it won't fto you create the droplet pinch IPv6 enabled. Finally, springiness your droplet a sanction and click Create Droplet.

Notice the full costs of $4.00/month... nice, dude.

Droplet creation summary showing $4.00/month connected DigitalOcean

Install OpenBSD

Go to your recently created droplet and click the Web Console fastener at the apical right. You will spot a modal pop-up astir updating the droplet console. Just click the Launch Recovery Console button.

Top of Droplet page showing Web Console fastener connected DigitalOcean

This opens a caller browser model that drops you into a console of the booted up miniroot79.img. Look astatine the bluish connected achromatic text. Beautiful.

Web Console booting up miniroot79.img connected DigitalOcean

Type one and property return.

For astir of these questions we tin spell pinch the default option. Please select whatever makes consciousness for you, but I will effort to locomotion you done a very basic setup. Just make judge you springiness your server a cool hostname.

Web Console showing OpenBSD installation options

  • Select the vio0 web interface.
  • Select autoconf for IPv4 and IPv6 addresses. Select [done] afterwards because we tin configure different interfaces later.
  • Make judge you create a unafraid password for the guidelines account.
  • We do want to commencement sshd(8) by default truthful we tin SSH into the server aft installation.
  • We do not expect to tally the X Window System. This is simply a basal server, dude. Type no.
  • Don't alteration the default console to com0.
  • Create a non-root personification for yourself. Make judge you create a unafraid password. Type successful your username.
  • Do not let guidelines SSH login.
  • Select the clip area due for you.
  • Select disk sd0 for the guidelines disk. You tin type ? if you wish to spot the size of the disks.
  • If you want afloat disk encryption, prime p to encrypt the disk pinch a passphrase.

Note connected Full Disk Encryption

This will require you to log successful to DigitalOcean and motorboat the web console on the droplet to type successful the passphrase each clip you reboot the server. As far as I cognize location is nary fdesetup authrestart equivalent connected OpenBSD truthful installing kernel patches that require a reboot involve a small much work. To maine this isn't a large inconvenience. There whitethorn besides be arguments astir the information of typing into the web console.

Web Console showing OpenBSD disk setup

  • Use the (W)hole disk MBR.
  • Type successful your unafraid passphrase for the afloat disk encryption.
  • Use the (A)uto layout.
  • No request to initialize sd1. Press return for [done].
  • Install the sets!
  • Use http.
  • We astir apt don't request a proxy but it's up to you.
  • Use ? to spot a database of mirrors. Find the number for the reflector closest to the datacenter you selected for the droplet.
  • Press q to get retired of the pager.
  • Type successful the number of the reflector and property return. You should spot the reflector successful the brackets. Press return.
  • Use the default directory pub/OpenBSD/7.9/amd64.

Since this is going to beryllium a bare-bones web server we tin region most of the sets. You tin type successful -x* to region each of the X server sets. Let's besides region the crippled -gam* and compiler -com* sets too. This should time off america pinch bsd, bsd.rd, base79.tgz, and man79.tgz. Press return since we are done. You should spot signatures verified for the sets arsenic they download. After the sets instal we can select [done].

Web Console showing sets installing and verifying

OpenBSD is now installed! Press return to reboot.

Web Console showing OpenBSD instal has been successfully completed!

If you decided to usage afloat disk encryption you will beryllium prompted for the passphrase now. You should spot the boot> punctual after successfully entering the passphrase. You tin either property return to boot aliases hold for the strategy to footwear automatically. From present you can either proceed to usage the Web Console aliases SSH into the server. I would recommend SSH since a terminal is simply a spot much comfy. Go to the droplet and transcript the nationalist IP reside and SSH in! Make judge you use the non-root personification we created during installation since we turned off root SSH login.

macOS Terminal pinch SSH relationship to caller OpenBSD Droplet server

You are now SSH'd into your beautiful OpenBSD server moving on DigitalOcean for $4/month.

Now would beryllium a awesome clip to caput complete to OpenBSD Handbook and publication up on Post-Installation Configuration. I would besides urge taking a look astatine OpenBSD's FAQ Page. Finally, I would recommend copying your nationalist SSH cardinal to the server and turning off PasswordAuthentication as a bare minimum.

If you person immoderate questions please do not hesitate to scope retired to me, even if it's conscionable to opportunity hello! You tin find my interaction specifications connected my cool homepage https://wallyjones.com, running connected a cool OpenBSD server.

More