4 ms·
I run a similar thing [0] using GoTTY, but just switch user IDs after the GoTTY connection starts -- this way I don't have to use multiple ports. [0] https://r
by rkeene2 4y ago
I run a similar thing [0] using GoTTY, but just switch user IDs after the GoTTY connection starts -- this way I don't have to use multiple ports.
[0] https://rkeene.dev/js-repl/?arg=bash https://rkeene.dev/js-repl/?arg=bash
- shantnutiwari 4y agoInteresting. Do you have any blog that describes how you set the whole thing up? (ie, more details than your comment)
- rkeene2 4y agoHmm... Not a combined description of fitting the pieces together. There wasn't anything too special about making it work except for writing a small security shim [0] that changes UID and drop privileges (which lots of people just use firejail for -- but I wanted a bit more control over which system calls are permitted). The rest is really similar to this story's blog post, running GoTTY and setting up a webserver to pass stuff to it (I use Apache, so the exact configuration differs, but that's just trivia). I did write a blog post about part of that shim [1], which I use for a bunch of different things ([2] being the most recent). [0] https://chiselapp.com/user/rkeene/repository/play-tcl-lang-org/file?name=src/secure-wrap.c&ci=e8b70bc4aef761f2c6dc00b4ff411eb076ead5d87d5eca54701a6a78dcdffb0b https://chiselapp.com/user/rkeene/repository/play-tcl-lang-o... [1] https://dev.to/rkeene/a-dsl-for-seccomp-rules-nk0 https://dev.to/rkeene/a-dsl-for-seccomp-rules-nk0 [2] https://tcl.rkeene.org/ https://tcl.rkeene.org/