"An li element's end tag may be omitted if the li element is immediately followed by another li element or if there is no more content in the parent element."
If you send XHTML with the XHTML MIME type, the tags are case-sensitive.
If you send it as "text/html"... well, then presumably you're relying on XHTML 1.0 Appendix C and letting browsers parse your XHTML as HTML. And HTML is case-insensitive.
We used to call it bastion host but yes. Rent a few physical machines around the world, make production SSH firewalled off from everywhere except those ones. Now you only need to worry about all the security holes in your web app stack which are of course quite numerous... but at least you are not bothered by SSH bots.
The reason I don't believe it is because I doubt it has drivers for the latest graphics cards and modern desktop environments such as Gnome/KDE. Is Ryzen even supported? What about sleep/suspend and resume? What's the story on package management? Can you run VirtualBox / VMWare on it?
I've used OpenBSD primarily for network edge and utility services. Things such as a firewall, gateway, vpn/tunnel connector, ipv6 router, dns server, dhcpd, ntpd, lightweight httpd, imapd, SMTP forwarder, and ssh/shell access. I've also installed it for the sole purpose of playing atc, the air traffic controller game. Hardware support and raw performance are the only things that keep me on Linux in most server roles.
You can create a firewall handling a 1Gb/s link with OpenBSD, but passed that, it's quite limited.
Even with top end hardware, we could not go past ~5Gb/s with simple pf rules and after a lot of tweaking. With FreeBSD or Linux, we got the 10Gb/s out of the box with similar rules.
That's for the network part.
As for userland application, it's also slower than Linux or FreeBSD, I remember benching some OpenSSL/LibreSSL based application. On the same hardware I was at 200 transaction/s (transaction ~= RSA signature) with Linux/FreeBSD, with OpenBSD I was at 150 transaction/s, so significantly slower.
Anyone know why OpenBSD VMs aren't provisionable by the big cloud companies like AWS or DigitalOcean? I've always found it to be a curious omission given OpenBSDs sterling reputation for security.
In principle, if the provider does support full-virtualization and has a debug console, one could install any operating system of their choice, manually.
It may be possible even without one, if you can somehow figure out how the boot process works. The most crazy successful attempt I made was performing deletion of the entire Linux root filesystem with a busybox shell running in RAM over SSH, and replacing it with to another unsupported distribution, then rewrite the grub.cfg, configure the network settings and trigger a clean filesystem sync and reboot via proc. Finally pray you'll see the server coming online again soon. It worked.
But providing a template is all it needs for the provider to support OpenBSD, unfortunately it is still unavailable. Is it that hard to provide a template?
Now that Digital Ocean has added custom image support, it's at least potentially possible. No idea if OpenBSD supports all the cloud components needed but it does at least support ext2 which may be close enough.
While there isn't many companies supporting obsd officially it took me a little over 5 minutes to spin it on my own VPS at OVH.
So if your provider gives you the access to kvm console you just need to download bsd.rd, add GRUB entry and reboot. Do your install and you're a happy OpenBSD user in the cloud.
In the next step I think I'll automate that process with bash/ansible and autoinstall file.
Vultr has it but to be honest when I was considering to switch my personal server from Linux as it can be anything, I wanted to run OpenBSD for providing the leading tools like OpenSSH and I'm a fan of pf and to support them by running it but when I deployed, it just lacked packages which means you need to compile stuff from source but typically OpenBSD isn't in those deployment target and they just don't compile even though some support FreeBSD.
In the end I just settled with FreeBSD when most stuff I used to use in Linux worked fine.
I really wish I could stay with OpenBSD. I don't want to call it but it does feel like it's becoming more of a research OS.
40 comments
[ 1.0 ms ] story [ 66.1 ms ] thread"An li element's end tag may be omitted if the li element is immediately followed by another li element or if there is no more content in the parent element."
XML is designed for machines to read and write. SGML, humans. It's like the difference between JSON and Markdown.
(Addendum: TIL HTML5 is not parseable as SGML. Because, reasons.)
If you send it as "text/html"... well, then presumably you're relying on XHTML 1.0 Appendix C and letting browsers parse your XHTML as HTML. And HTML is case-insensitive.
Yes, those things work. You'll want to select hardware that is well supported though for the best experience.
Even with top end hardware, we could not go past ~5Gb/s with simple pf rules and after a lot of tweaking. With FreeBSD or Linux, we got the 10Gb/s out of the box with similar rules.
That's for the network part.
As for userland application, it's also slower than Linux or FreeBSD, I remember benching some OpenSSL/LibreSSL based application. On the same hardware I was at 200 transaction/s (transaction ~= RSA signature) with Linux/FreeBSD, with OpenBSD I was at 150 transaction/s, so significantly slower.
I thought there was an AWS AMI for OpenBSD though.
Vultr does let you boot up and install any ISO, so that's an option. Not a big provider, but...
It may be possible even without one, if you can somehow figure out how the boot process works. The most crazy successful attempt I made was performing deletion of the entire Linux root filesystem with a busybox shell running in RAM over SSH, and replacing it with to another unsupported distribution, then rewrite the grub.cfg, configure the network settings and trigger a clean filesystem sync and reboot via proc. Finally pray you'll see the server coming online again soon. It worked.
But providing a template is all it needs for the provider to support OpenBSD, unfortunately it is still unavailable. Is it that hard to provide a template?
https://blog.digitalocean.com/custom-images/
OpenBSD also has cloud-init support now[1] which makes interaction with terraform and ansible much simpler.
While the big three do not have officially supported templates, a few providers do, including Exoscale (disclaimer: CTO there).
[1]: https://github.com/exoscale/openbsd-cloud-init
So if your provider gives you the access to kvm console you just need to download bsd.rd, add GRUB entry and reboot. Do your install and you're a happy OpenBSD user in the cloud.
In the next step I think I'll automate that process with bash/ansible and autoinstall file.
In the end I just settled with FreeBSD when most stuff I used to use in Linux worked fine.
I really wish I could stay with OpenBSD. I don't want to call it but it does feel like it's becoming more of a research OS.