34 Commits

Author SHA1 Message Date
Michael Stapelberg
77705dbe49 update README to use package config for authorized keys
Now that the host key is created automatically, this allows using breakglass
without ever creating or modifying a permanent partition.
2022-01-03 11:39:01 +01:00
andig
9bea6256b0
Create host key if not found (#8) 2021-12-19 18:50:16 +01:00
Michael Stapelberg
339c9ce56c GitHub Actions: trigger on all branches 2021-11-28 16:00:38 +01:00
Michael Stapelberg
83d59cddd7 recommend ed25519 host keys
Newer OpenSSH versions seem to have problems with (some?) older ssh-rsa keys,
so I figured we could switch to ed25519 and avoid any confusion regarding
ssh-rsa support.
2021-11-28 15:58:55 +01:00
Michael Stapelberg
21a04c8c8b pull in latest golang.org/x/crypto 2021-11-28 12:03:48 +01:00
Michael Stapelberg
d06342049c add GitHub Actions config 2021-10-24 18:19:34 +02:00
Michael Stapelberg
0c9f029ca2 upgrade to latest gokrazy/... packages 2021-10-24 18:19:06 +02:00
Michael Stapelberg
33834ea6fa allow overwriting the gokrazy URL prefix
The special syntax :1080 means “use the default, but force port to 1080”,
which is useful when you are running the gokrazy web interface on a different
port because you need port 80 for your web appliance.
2021-10-24 18:10:37 +02:00
Michael Stapelberg
9eab5f8b0d add -prepare and -ssh_config flags for usage in SSH ProxyCommand
E.g.:

Host router7
	ProxyCommand /bin/sh -c 'breakglass -prepare_only -ssh_config=/dev/null -debug_tarball_pattern=$HOME/gokrazy/debug-\${GOARCH}.tar %h; /usr/bin/nc %h %p'
2021-09-19 19:12:47 +02:00
Michael Stapelberg
b54c2f919e SSH: wire up SFTP subsystem 2021-06-06 13:54:30 +02:00
andig
1a4768ba69
Add port forwarding (-forward flag) (#7) 2021-01-18 09:46:20 +01:00
Michael Stapelberg
efff2172ee breakglass: use internal/config to read HTTP password 2020-05-27 18:38:58 +02:00
Michael Stapelberg
942ef7f559 README: update to use breakglass tool 2020-05-25 09:45:45 +02:00
Michael Stapelberg
8157f8ee60 add breakglass SSH wrapper tool (for convenience) 2020-05-25 09:31:54 +02:00
Michael Stapelberg
6a8318bdb5 pick up shell from github.com/gokrazy/serial-busybox if present
This allows users to use breakglass without having to upload their own shell (as
a fallback).
2020-05-25 08:58:37 +02:00
Michael Stapelberg
00ea9a7166 link to README section “installation” when keys are missing 2020-04-08 14:29:10 +02:00
Michael Stapelberg
3bc0b09635 README: ssh: any type works 2019-09-28 11:07:43 +02:00
Michael Stapelberg
f51c367b88 README: ssh: use a clearer example in the installation instructions 2019-09-28 11:07:07 +02:00
Michael Stapelberg
ae96dda1f3 declare a Go module 2019-03-21 09:37:16 +01:00
Michael Stapelberg
1cd81ed58b parse SSH keys line-wise, skip empty/comments
fixes #3
2019-03-21 09:36:40 +01:00
Michael Stapelberg
d3f89caa0a README: use sdx to prevent mistakes 2019-02-07 14:41:23 +01:00
Anisse Astier
9d10c020d8 ssh: fix shell payload string length (#2)
Using ssh.Unmarshal since commit c11ed6a015a8da means the "shell" payload should be propely formatted, with a specified string length. Otherwise, when attempting to connect, you'll see this message in the gokrazy stderr:
ssh: parse error in message type 0

that's because in x/crypto/ssh, the parseString() method expects a length before the string. If length is 0, there will be remaining unparsed data, and an error.
2018-12-28 16:20:43 +01:00
Michael Stapelberg
05fda29dea scp: don’t error out on directories in the tarball 2018-12-15 14:47:34 +01:00
Michael Stapelberg
c11ed6a015 use ssh.Unmarshal
Thanks to Merovius for the hint.
2018-10-29 18:42:56 +01:00
Axel Wagner
77088e03a7 Forward correct exit status to client (#1) 2018-10-25 12:49:32 +02:00
Michael Stapelberg
a1fd5f6920 ensure processes are killed when client disconnects 2018-07-22 23:04:18 +02:00
Michael Stapelberg
05c84e7002 ssh: run commands through sh -c if sh is present 2018-06-23 16:14:33 +02:00
Michael Stapelberg
b99b39b334 include the breakglass mountpoint in $PATH
That way, users don’t need to use the ./ prefix all the time.
2018-06-23 15:45:50 +02:00
Michael Stapelberg
a8f85f5027 ssh: default to starting "sh" on shell requests instead of erroring
This may still result in an error if sh is not present, but in case sh *is*
present, it results in the user just getting a shell without having to use
e.g. ssh -t gokrazy ./busybox sh
2018-06-23 15:44:41 +02:00
Michael Stapelberg
0d8462cfe7 ssh: send exit-status request for successful commands
The crypto/ssh client library requires this.
2018-06-23 15:42:41 +02:00
Michael Stapelberg
6184621747 exec: answer request once command is running 2018-06-11 23:18:11 +02:00
Michael Stapelberg
ae93fa3cab exec: write stderr to SSH stderr channel, not stdout 2018-06-11 23:17:46 +02:00
Michael Stapelberg
8eb60e64b7 use Fatalf 2018-06-11 21:42:45 +02:00
Michael Stapelberg
448a389515 Initial commit 2017-03-04 11:09:10 +01:00