I’m moving to a new machine soon and want to re-evaluate some security practices while I’m doing it. My current server is debian with all apps containerized in docker with root. I’d like to harden some stuff, especially vaultwarden but I’m concerned about transitioning to podman while using complex docker setups like nextcloud-aio. Do you have experience hardening your containers by switching? Is it worth it? How long is a piece of string?

  • asap@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    1 month ago

    Mainly for security. I was originally looking at CoreOS but I liked the additional improvements by the UBlue team. Since I only want it to run containers, it is a huge security benefit to be immutable and designed specifically for that workflow.

    The Ignition file is super easy to do, even for just one server (substitute docker for podman depending which you have):

    Take a copy of the UCore butane file:

    https://github.com/ublue-os/ucore/blob/main/examples/ucore-autorebase.butane

    Update it with your SSH public key and a password hash by using this command:

    # Get a password hash
    podman run -ti --rm quay.io/coreos/mkpasswd --method=yescrypt
    

    Then host the butane file in a temporary local webserver:

    # Convert Butane file to Ignition file
    podman run -i --rm quay.io/coreos/butane:release --pretty --strict < ucore-autorebase.butane > ignition.ign
    
    # Serve the Igition file using a temp webserver
    podman run -p 5080:80 -v "$PWD":/var/www/html php:7.2-apache
    

    During UCore setup, type in the address of the hosted file, e.g. http://your_ip_addr:5080/ignition.ign

    That’s it - UCore configures everything else during setup.___