mirror of
https://github.com/narrrl/narl-workspace.git
synced 2026-11-03 16:41:27 +01:00
feat: mount spaces/folders over SFTP with SSH-key auth
Add an in-process SFTP server (russh) backed directly by the nodes table, so a space can be edited from nvim or synced with sshfs without a separate filesystem mirror. Access is authenticated by public key against a new ssh_keys table, managed via :sshkey in the app; the feature stays off until WORKSPACE_SFTP_BIND is set.
This commit is contained in:
1 parent
ab8712559e
commit
747332153c
12 files changed
+1950
-93
No files matched your search
@@ -45,6 +45,15 @@ proton-sdk = "0.6.2"
|
||||
rpassword = "7"
|
||||
hex = "0.4"
|
||||
|
||||
# SFTP mount: spaces and folders as a filesystem, authenticated by pubkey
|
||||
# instead of the cookie session. `ring` rather than the default `aws-lc-rs`
|
||||
# backend, because rustls (via lettre) already pulls `ring` in.
|
||||
russh = { version = "0.63", default-features = false, features = ["ring", "rsa"] }
|
||||
russh-sftp = "3"
|
||||
# Only for generating the host key at first boot — ssh-key needs an rng that
|
||||
# speaks rand_core 0.10, one major version past the `rand` used everywhere else.
|
||||
rand10 = { package = "rand", version = "0.10" }
|
||||
|
||||
[features]
|
||||
default = []
|
||||
# Keep the Proton session in the OS keyring instead of a 0600 file. Needs a
|
||||
|
||||
Reference in new issue
Block a user