adventuresinbsd

Free/Libre computer science journal focusing on the OpenBSD platform; self-learning organization scheme for the author Free Man. > adventuresinbsd@mail.com <

by Free Man

Well, the day has finally come that I may own a completely open/free laptop capable of running OpenBSD < https://www.openbsd.org >, the proactively secure UNIX-like operating system utilizing the iconic Berkeley Systems Distribution kernel.

Lenovo Thinkpad T400 – ebay, refurbished $140 USD

https://ibin.co/4VZ68goW5F7j.jpg https://ibin.co/4VZs7VFjpurA.jpg

The machine has had it's bios flashed with libreboot. https://libreboot.org/ Now the machine's proprietary bios and any Intel hidden engines or kernels have been hopefully* purged. The new open source bios only supports hardware with open source drivers. The wifi card is an Atheros AR model and has free/open drivers.

Installing OpenBSD

Libreboot supports OpenBSD/LibertyBSD. https://libreboot.org/docs/bsd/openbsd.html

At first glance the grub2 menu implemented by libreboot seems to only look for Linux and will not automatically load an OpenBSD (install64.fs) install usb. Press c for the grub command shell.

grub> kopenbsd (usb0,openbsd1)/6.4/amd64/bsd.rd grub> boot

Install to the hard drive, and reboot. You will have to manually boot the first time you load OpenBSD,

grub> kopenbsd -r sd0a (ahci0,openbsd1)/bsd grub> boot

And then, once you've logged in as root. Create a grub menu entry in /grub

mkdir /grub ; cd /grub vi libreboot_grub.cfg

default=0 timeout=3

menuentry “OpenBSD” { kopenbsd -r sd0a (ahci0,openbsd1)/bsd }

And voilà. Reboot and you'll now be greeted with an OpenBSD menu entry.

Now that the system is totally freed, it would seem logical to run LibertyBSD instead of OpenBSD because the system no longer requires non-free firmware. However the LibertyBSD project might as well be called the LazyBSD project because their latest release was 6.1 and we're about to see 6.5 released. OpenBSD puts out a new release every six months. So that's about two years behind, and almost 50 security/reliability bug-fixes behind. With Intel's meltdown and spectre debacle last year, I have no problem using the latest Intel firmware with all the current security mitigations in effect. I'm not “oppressed” or “disrespected” by making it harder for hackers to “pwn” me.

Why free software/hardware is important.

To sum it up without boring people. Open Source/Free/Libre software gives power back to the user. As the user, I payed money for my hardware, however, I desire to be the total boss of my machine in and out. I want my software to be transparent, extensible, easily modifiable and up-to-date. Now the operating system, the programs, and even the machine itself, has to do what I tell it to, it will never stop me. If I'm unhappy with any function, I can change the source code and implement a new feature or remove an undesired one. The look, feel of the system and how it functions are all up to me. This does not apply to a standard Windows 10 machine, or Apple OSX machine (desktop/laptop/tablet). This doesn't apply to your phone either. Not only that, the concepts of free software boost security and privacy in a machine. While modern Windows machines are more secure than ever, the privacy is basically non-existent. Microsoft can anytime remotely access and modify your machine, without you even knowing it. In an open source operating system, this backdoor could be seen in the source code and easily removed.

Take a look at OpenBSD's source code and judge for yourself

http://cvsweb.openbsd.org/cgi-bin/cvsweb/ https://www.openbsd.org/goals.html

It's about time we start pushing back against Silicon Valley and gain our freedoms back. I've been adopting https://duckduckgo.com for searches. However I still use youtube and gmail. Gmail will be obsoleted once I can build my own httpd web server and mail server. Youtube is too useful for learning and entertainment purposes, however you can be totally anonymous there and it really can't data mine too much from you except for your taste in music. I use it's algorithms to my advantage though, and you should too.

That's all. In my next post we're gonna turn this OpenBSD laptop into a lean/mean self-learning working machine.

Customary r/unixporn scrot:

https://ibin.co/4VZVrBf7d4G0.png

My personal dotfiles -

https://gitlab.com/unixisawesome/OpenBSD-Dotfiles/

Hello, my name is Free Man. This will be a blog/diary of my computer science education. The main topics will be:

  • OpenBSD command line kung fu
  • Improved workflow through the i3 tiling window manager
  • Improved workflow through the use of shell scripts
  • Extensive use Joe's Own Editor aka joe
  • Turning GNU Emacs into a full-fledged workstation
  • Turning Vim into a stealth IDE
  • Basic C11 programming
  • Networking in OpenBSD using ssh, pf, and httpd
  • Installation and maintenance of an OpenBSD -stable system
  • FSF philosophy and BSD/MIT licence thinkpeices
  • Basic Perl scripting
  • xmonad and haskell in OpenBSD
  • Grep and regular expressions
  • Basic html, css and javascript
  • Creating a minimalist website and setting up a home web/mail server
  • Let's get certs in CompTIA security and networking
  • FreeBSD/HardenedBSD basics (networking/jails/zfs)
  • Self learning disciplines
  • Development of an “Adventures in OpenBSD” youtube channel with screencasting via ffmpeg; video editing via ffmpeg; thumbnail creation via gimp.