221 points by jaypatelani 46 days ago | 12 comments
naguam 43 days ago
Hi, author of the article here.

After reading all the comments, I believe I must precise, that I am aware of most of the mentioned alternative techniques.

Most of these only work as long as remote screen/keyboard control access is possible throughout a cloud panel (VNC).

My goal with this article was to avoid any third party control and making it to works even on a remote linux desktop pc used as a server.

Thanks for all the feedbacks, I appreciate it.

dgfitz 43 days ago
I think it’s a neat idea and shows a very solid understanding of many different concepts. I also have a lot of this kind of knowledge, but fuck me if I would have been able to put all the pieces together like this without a specific need/driver.

Very neat, thanks for sharing.

DocChi77 46 days ago
Similarly, I've used a project called nixos-infect(1) to install NixOS on cloud providers that don't natively offer it. It's worked well on the handful of boxes I've ran it on.

(1): https://github.com/elitak/nixos-infect

johnklos 45 days ago
This will come in very handy, since many providers don't natively provide NetBSD.

I've played similar tricks mounting a ramdisk, copying things in to it, starting daemons from it, then force-remounting rootfs read-only, then doing things you can't normally do. This takes things quite a bit further, and I like it.

I've never quite understood the details of Linux boot methods. This article is wonderful because it doesn't just say what to do, but explains what's going on, and in detail. Can't wait to try!

indigodaddy 43 days ago
“This will come in very handy, since many providers don't natively provide NetBSD.”

I think prgmr.com (now known as Tornado VPS apparently) still does:

https://tornadovps.com/about

Edit: looks like no more Netbsd dom0’s with prgmr, but their docs on netinstalling netbsd don’t look entirely headache-inducing..

indigodaddy 43 days ago
I’d like to note that there are a lot of cheap, reliable providers that support BSD, either with KVM templates already, installation with an available ISO, or many have custom ISO where you can upload or give the URI to any iso you wish to use. Obviously this will usually be KVM virtualization.

Some providers off the top of my head:

prgmr.com (now tornado vps apparently) - long-standing provider - they used to have netbsd dom0’s but now it’s all Linux based it looks like so appears you have to netinstall netbsd in your vm now)

buyvm.net - reasonable pricing and have bsd available to install (can’t remember if template or iso ready to mount/install)

https://www.netcup.eu/vserver/ - excellent value / been around forever (they offer custom iso)

I will add more here as I think of them..

ecliptik 42 days ago
OpenBSD Amsterdam [1] provides OpenBSD VMs running on vmm [2].

1. https://openbsd.amsterdam/

2. https://man.openbsd.org/vmm.4

naguam 43 days ago
Thanks for this comprehensive list which I hope will help people in search of such offerings. I've been told panix.com does also provides such service.

I wrote that article because in specific locations that are out of the US and Europe, the offering might be even narrower.

This was not made out of despair finding a nice provider, but because I found the technical challenge interesting (enough to share).

indigodaddy 42 days ago
Comprehensive haha :) I get your point, but there are plenty. I should start a list somewhere I guess..
christophilus 43 days ago
Vultr
doubled112 46 days ago
I've installed Debian (on ZFS with debootstrap and chroot) from inside a CentOS install over SSH before, but this is different.
Tepix 46 days ago
Cute and scary. Reminds me of a time where i manually converted a remote Linux box to full disk encryption via SSH about 15 years ago. It worked, despite bugs in the debian start scripts. But it was, once again, very scary.
darkhelmet 43 days ago
One of the things I've done in the past that is quick and easy is to use grub to chainload another bootable volume. Scp an iso or other disk image over, chainload to that, run the installer inside it as though it had just been pxebooted or booted from a flash drive. If you can netinstall from there, then you're good to go with the OS of your choice.

There's lots of ways if you have access to common cloud primatives (replacement root volume, etc) and have some creativity.

I did appreciate this post though because it's for a way I haven't used before.

xolox 43 days ago
Compliments to the author for clearly explaining all of the steps involved. I've never gone this deep, although I have previously converted remote headless Linux servers to full disk encryption using similar techniques. Thanks for sharing!
gslin 43 days ago
This reminds me some other interesting things (but from Linux to FreeBSD) around 15-20 years ago:

* https://www.daemonology.net/depenguinator/

lagniappe 46 days ago
Im watching the asciinema and wondering whats that first `ls` move? is that expanding files with `ls` somehow?
thedanbob 46 days ago
The top-level “takeover.sh” is actually a directory.
lagniappe 43 days ago
That's a dirty trick, I'm not sure how to feel about this. I don't like being hoodwinked.
naguam 43 days ago
Hi author here,

I must say I made the basic git clone on Marcan's repository (named like this) without changing the default name.

Then I just put my additions next to and into it.

This did not look bad to me. Otherwise I would have done it differently.

I made the two ls commands to show all files and avoid any confusion.

Brian_K_White 43 days ago
Oh the humanity!

Obviously the only reason they even wrote a shell script in the first place was so that they could name a repo after it, so that it would have the side effect of making a directory of the same name, so that they could enact their plan to trick you into...something.

Really dude?

45 days ago
j_not_j 45 days ago
Offtopic:

OpenBSD has an installation ramdisk. Just boot that.

See https://raby.sh/installing-openbsd-on-ovhs-vps-2016-kvm-mach...

I've also seen "dd if=path/to/install/ramdisk /dev/sd0" and reboot; depends on being classic BIOS not uefi. Can't find the link tho.

naguam 45 days ago
Hi, author (of cloudbsd.xyz) here,

The method mentioned in the link you shared is indeed interesting and probably also works with NetBSD among others, but relies on having third party controls

(such as having to select a grub entry and run the installer steps from a cloud control panel).

The reason I experimented and wrote this article was because I thought interesting to find a way to avoid having to rely on any external controls.

Thus this works even on bare metal servers and thanks to QEMU to install absolutely any OS that can boot on QEMU.