[ prog / sol / mona ]

prog


The BCHS Stack

1 2020-01-30 12:58

what is it?

https://learnbchs.org/
A web development stack based upon BSD (Primarily OpenBSD), C (The program gets called as a cgi script), OpenBSD's httpd (Utilizing the fastcgi protocol, optionally with slowcgi behind it), and SQLite.

Whatdya guys think about the BCHS stack? I've been lightly using it lately, rewrote my personal landing site with it, (includes a very simple blog, dynamic lists of projects and such, random homepage image) I like it quite a bit! I'm additionally using kcgi on top, makes cgi parsing a lot more pleasant. Though, I'm not truly running the stack I guess, I've only got a Raspberry Pi server running FreeBSD, so I implemented the stack with ports (obhttpd, sqlite, slowcgi). While with this you miss out on some of the neat security features native to OpenBSD often utilized in the stack, like pledge(2), unveil(2), I figured a secure jail would be good enough.

2 2020-01-31 05:25

I have never heard of BCHS before. It's a nice view to approach modern development requirements while being sane therefore I don't see it being used at a company. Unfortunately.

What did you build, anon?

3 2020-02-04 13:14 *

ذهبت بجنون

4 2020-02-05 20:32

>>2
Besides my personal site, working on a textboard much like this, though trying to clone 2ch much much harder. Figure it's a super appropriate stack for a this, as 2ch is all cgi too (or was? not sure how it looks on the tech side now)

5 2020-12-26 15:59

>>1

like pledge(2), unveil(2), I figured a secure jail would be good enough.

Capsicum[0] is more similar to pledge(2) and unveil(2) than jails mitigations mechanism. OpenBSD don't have jail, so httpd executed in chroot(2).

0. https://wiki.freebsd.org/Capsicum

6 2020-12-27 17:42

My webdev friend showed this to me a while ago.
He said that it's a joke stack and no one really uses it.

Well, jokes on you motherfucker.

7 2020-12-28 11:38

Why not do your work in Lisp? I like r6rs and r7rs-large.

8 2020-12-28 15:25 *

>>7
You need to go back.

9 2020-12-29 01:01 *

>>8
This.
textboard.org is a site for C programmers, lispers need to go back to http://paulgraham.com and https://old.reddit.com

10 2020-12-29 02:56 *

>>8,9
You say that but when I read what's actually here, what you say is meaningless about the nature of textboard.

11 2020-12-29 11:52

>>8,9 I think that's unlikely since the board is written in MIT Scheme.

12 2020-12-29 12:59 *

>>11
Exactly, lispers and ceeeeeeeeeeeeeeeers need to go back.

13 2020-12-29 15:27 *

>>1
Why not use ObjectStore, and HTTP proxy (something like HAProxy). What's up with all the translation steps?

>>5
OpenBSD does now have vmm/vmd, it seems to have some issues, but may make sense for running personal projects. I seemed to recall there being some sort of explanation for why OBSD decided to not implement jails, the following is as close as I could find [0]. You can actually escape from FreeBSD Jails and chroots, so the explanation given there does track [1]. Further I guess it makes sense given the OpenBSD research program.

[0] https://marc.info/?l=openbsd-tech&m=101053310609914&w=2
[1] https://invidious.kavin.rocks/watch?v=hgN8pCMLI2U

14 2020-12-29 16:09 *

>>13
Keep in mind a big issue is that vmm is amd64 only right now.

15 2021-01-01 00:13 *

>>14
I'm not sure there is even any plan to address this, so far as I can tell there used to be support for i386 but this rotted, and was then dropped. They now seem to rely on vt-x and amd-v (I wouldn't be surprised if these had their own issues). There have been many vulnerabilities already discovered, and in general vmm/vmd seems to cause many problems. Some of these are documented on: https://openbsd.amsterdam/known.html (the only production use of vmm/vmd I'm aware of), some others can be seen in the 6.6 and 6.7 changelogs, many of the errors seem fatal to me.

16


VIP:

do not edit these