Commit graph

54 commits

Author SHA1 Message Date
Russ Magee
cd9f7914e0 Dial() and Accept() again conform to net.Dial(), net.Accept() return signature 2018-09-29 12:15:53 -07:00
Russ Magee
e57d97d3e6 Changed many funcs to take *hkexnet.Conn to allow tracking of packets sent, total bytes sent and experimental moving avg chaff 2018-09-26 22:57:36 -07:00
Russ Magee
b810fa7f4a tightened up some const types 2018-09-17 23:07:04 -07:00
Russ Magee
8b0b833d6e Split hkexsh and hkexnet consts into separate files 2018-09-17 17:27:13 -07:00
Russ Magee
869dbf6e10 Bumped version 2018-09-16 23:54:25 -07:00
Russ Magee
19697d5164 Remote exit status now reflected in client->server copies 2018-09-16 17:14:50 -07:00
Russ Magee
e02764bf4b .hkexsh_id file supports multiple authtokens (multi remote hosts, aliases for same remote host) 2018-09-14 11:58:10 -07:00
Russ Magee
d9b34fa631 GenAuthToken() now uses client-supplied ConnHost 2018-09-14 01:13:14 -07:00
Russ Magee
c9eb6bcb38 Added -a authtoken feature for scripted use 2018-09-13 23:51:49 -07:00
Russ Magee
bee0bececf -Bumped version to 0.2pre to reflect protocol break w/0.1pre
-Added design principle note (no downgrade attack-enabling protocol features)
2018-09-10 20:28:41 -07:00
Russ Magee
075ca7521c Client now passes xterm-256color in Session 2018-09-07 20:37:47 -07:00
Russ Magee
9e803ffc19 -Moved recCmd out of hkexsh and hkexshd into hkexsession.go (now abstract Session type) 2018-09-07 15:35:33 -07:00
Russ Magee
bff56a2c61 -Added -z option back to tarpipes
-Moved remaining chatty fmt.Prints to log.Print
2018-09-06 16:37:17 -07:00
Russ Magee
b33e9de139 -Moved taunting of failed logins to client-side
-Added byte auth pass/fail stage prior to shell/copy session start
2018-09-06 16:23:57 -07:00
Russ Magee
9ff35a69fe -Converted exit status to uint32 (0-255: UNIX exit codes), above for OOB (out-of-band) status
-Failed auth for shell logins now returns extended code CSEBadAuth to client
2018-09-06 13:50:56 -07:00
Russ Magee
8a24fb113f client prints nonzero remote end exit status; comment cleanup 2018-09-06 11:40:13 -07:00
Russ Magee
db1b494d00 Fixed shell (interative & non-) exit status after cp status fixes 2018-09-06 00:16:44 -07:00
Russ Magee
a6979298fd Steps toward getting remote cp(tar) status back to client 2018-09-05 21:58:55 -07:00
Russ Magee
963d1c8eb2 Some comment/dead test code cleanup 2018-09-05 20:36:32 -07:00
Russ Magee
b419b2e002 File copy remote close signal to ensure completed tar pipe data 2018-09-04 22:24:16 -07:00
Russ Magee
52ea229118 Fixed errors in copy scatter/gather logic. Added block-chunking to hc.Write() to allow
writes of larger data blocks
TODO: copies of files > hc.Read() block size fails w/incomplete tarfile (last partial block
likely incorrectly written or client exits before data is flushed?)
2018-09-01 10:20:33 -07:00
Russ Magee
c3572d7c0c Fixed abs/relative path for client dest copies 2018-08-30 20:16:55 -07:00
Russ Magee
143990da34 Scatter/gather for client->server copy now functional 2018-08-30 20:06:42 -07:00
Russ Magee
1986ec6f0c Removed :port: from 'fancy' arg syntax; more improvements to src/dest file spec logic (esp. fixing bug in multiple src file/dir args to remote dest) 2018-08-25 23:38:58 -07:00
Russ Magee
ca2b6efd9b client->server and server->client file/dir copies minimally working 2018-08-24 23:22:07 -07:00
Russ Magee
7867f84b87 WIP: server->client copy primitively functional; TODO client->server copy 2018-08-24 18:50:45 -07:00
Russ Magee
0b9b8b8320 WIP tarpipe construction: server-side, TODOL client-side, -r behaviour 2018-08-23 11:03:19 -07:00
Russ Magee
5859131678 Continuing groundwork for cp mode - refactor main client code into shell/copy subroutines; -r option 2018-08-06 22:29:51 -07:00
Russ Magee
00e03c1d54 Misc. fixes to end-of-session conn handling. Outstanding bug w/client chaff enabled & truncated client data 2018-08-05 21:43:21 -07:00
Russ Magee
f48b0c17ed Prep for hkexsh alternate op mode via symlink/exe name: hkexcp - a secure remote file copier 2018-07-18 22:32:49 -07:00
Russ Magee
0d404470c1 Make hkexshd log IP not hostname to wtmp/lastlog 2018-07-14 13:15:58 -07:00
Russ Magee
f079b5b43d Fixed server root warning to output without -d flag to stdout 2018-07-13 20:26:48 -07:00
Russ Magee
9edcc5110c Fixed syntax errors from re-org 2018-07-04 22:06:07 -07:00
Russ Magee
216bfa3326 Exit status of remote commands now reflect in client exit 2018-06-29 19:23:11 -07:00
Russ Magee
c64797f2d9 Basic server-side recording of exitStatus of pty(cmd).
TODO: sending of exitStatus to client and client handling of said packet via
  a WritePacket() with unique existStatus op.
2018-06-29 16:54:20 -07:00
Russ Magee
011f6d161b #3: hkexshd: server should output error on startup if not run w/sufficient privileges
Signed-off-by: Russ Magee <rmagee@gmail.com>
2018-06-27 19:28:03 -07:00
Russ Magee
dac467c1e6 Corrected Println -> Printf logs for login/cmd tracking 2018-06-27 19:13:14 -07:00
Russ Magee
889203c9de host lookup for goutmp (wtmp) tracking 2018-06-27 19:09:35 -07:00
Russ Magee
11fad87345 Pass remote host lookup to goutmp 2018-06-27 17:32:26 -07:00
Russ Magee
f5a146255f Renamed go_login pkg to goutmp 2018-06-27 14:58:57 -07:00
Russ Magee
22da88af7d Attempts to handle disconnects better.. TODO: torture tests and implement exit status for -x commands 2018-06-26 20:14:43 -07:00
Russ Magee
ac28e5ef7a Proto login accounting via utmp(x) and lastlog 2018-06-01 20:34:49 -07:00
Russ Magee
0ba85e2ee8 Grr, added new Makefiles
Signed-off-by: Russ Magee <rmagee@gmail.com>
2018-05-26 23:46:55 -07:00
Russ Magee
f92085bb86 Further work on term resizing platform support for Linux and Windows/mintty 2018-05-26 13:43:09 -07:00
Russ Magee
8f087e9ca1 Added -v option (version) 2018-05-12 18:41:39 -07:00
Russ Magee
a1f4e0342a Added chaff cmdline options to client & server 2018-05-06 17:41:09 -07:00
Russ Magee
70448dda08 No need for custom hkexsh.Copy() 2018-05-04 23:31:06 -07:00
Russ Magee
c5498642fc Got client hangup working again. Security scrub auth vars. 2018-05-04 23:25:26 -07:00
Russ Magee
a49a5d4cc2 Locking in WritePacket() apparently working, client and server-side chaffing functional 2018-05-03 23:53:47 -07:00
Russ Magee
b8a07e9648 Chaff packets w/sync.Mutex to allow chaff & main goroutine to both input to server.
TODO: smart chaff, mutating or mimicking recent input.
2018-05-01 02:39:45 -07:00