landfall 0.5.2 → 0.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -245,6 +245,7 @@ lf domains blog --add @ # blog also serves example.com
245
245
  lf server domain vps --add other.org # more main domains; the first stays primary
246
246
  lf server domain vps --primary other.org # switch the primary
247
247
  lf server domain vps --rm other.org # drop one; --clear drops all (back to sslip.io)
248
+ lf server domain vps --tunnel-only # new sites get no domain unless -d: reach them with lf tunnel (--no-tunnel-only undoes)
248
249
  ```
249
250
 
250
251
  `server domain` prints the A records to add: one for the domain and a wildcard `*.example.com`. With those in
@@ -416,6 +417,7 @@ lf server add web --host 198.51.100.5 -u admin # asks the password
416
417
  lf server config vps # landfall entry, Traefik settings, ssh login, keys, Host block
417
418
  lf server list --all
418
419
  lf server use vps
420
+ lf config --tunnel-only --keep 3 # defaults for every server; also lists where landfall puts things
419
421
  lf server rm vps # forget locally
420
422
  lf server uninstall vps # remove landfall from the server (type the name back)
421
423
  lf ssh vps -- docker ps
@@ -503,8 +505,9 @@ lf undo -s box -y # revert the last run
503
505
  | `lf server list [--all] [--json]` | Lists registered servers. `--all` adds every ssh alias. Alias: `servers`. |
504
506
  | `lf server info [name] [--json]` | Shows OS and release support, kernel, uptime, CPU, RAM, disk, addresses and containers. Alias: `info`. |
505
507
  | `lf server config [name] [--json]` | Shows everything landfall and ssh use for a server. Does not connect. |
506
- | `lf server domain [name] [domain...] [--add d] [--primary d] [--rm d] [--clear] [--json]` | Manages main domains (the first is primary) and checks their DNS. |
508
+ | `lf server domain [name] [domain...] [--add d] [--primary d] [--rm d] [--clear] [--tunnel-only] [--json]` | Manages main domains (the first is primary) and checks their DNS; `--tunnel-only` makes new sites deploy with no domain. |
507
509
  | `lf server use <name>` | Sets the default server. |
510
+ | `lf config [--tunnel-only] [--email e] [--keep n] [--default name] [--unset key] [--json]` | Shows or changes landfall's defaults for every server, and lists every place landfall writes to. A server's own setting wins. |
508
511
  | `lf server rm <name>` | Forgets a server locally. The server is untouched. |
509
512
  | `lf server uninstall <name> [--volumes] [--keep-setup] [--force]` | Deletes landfall's sites, Traefik and `/opt/landfall`, reverts setup (deploy user, ssh hardening, firewall), and forgets the server. Docker, packages and root's landfall key stay; adopted sites keep running. Alias: `uninstall`. |
510
513
  | `lf ssh [name] [-- cmd]` | Opens a shell or runs a one-off command. |
@@ -557,7 +560,7 @@ lf undo -s box -y # revert the last run
557
560
 
558
561
  | local file | content |
559
562
  |---|---|
560
- | `~/.config/landfall/config.json` | registered servers, default server, per-server settings |
563
+ | `~/.config/landfall/config.json` | registered servers, default server, per-server settings, landfall defaults (`lf config`) |
561
564
  | `~/.config/landfall/projects.json` | folders deployed from this machine (web UI *Recent*/*Redeploy*) |
562
565
  | `~/.config/landfall/ui-token` | web UI login token |
563
566
  | `~/.config/landfall/uploads/` | folders dropped into the web UI, removed after a day |
@@ -589,8 +592,13 @@ On the server:
589
592
  .env -> ../../.env
590
593
  current -> releases/<id>
591
594
  journal.log every change, with the shell that reverts it
595
+ /etc/ssh/sshd_config.d/00-landfall.conf ssh hardening from `lf setup`
592
596
  ```
593
597
 
598
+ `lf setup` also installs Docker with the compose plugin, ufw, fail2ban and unattended-upgrades, and creates the
599
+ `deploy` user (group docker). Before changing a file, landfall keeps a backup next to it as
600
+ `.<file>.landfall-<run>` (the newest 10). `lf config` and the web UI's *Defaults* dialog list all of these places.
601
+
594
602
  `cd -P /opt/landfall/sites/blog/current && docker compose ps` works as usual.
595
603
 
596
604
  ## Troubleshooting