Commit Graph

575 Commits

Author SHA1 Message Date
kayos@tcp.direct dda92e633b
Sh3lls: add context, fix disconnects and backpressure 2022-05-07 22:44:08 -07:00
kayos@tcp.direct f172d5b74e Fix bitcask module path 2021-12-31 07:10:42 -08:00
kayos@tcp.direct 2194d1e3a3 Fix: Ban/Unban 2021-09-29 08:23:10 -07:00
kayos@tcp.direct bac6cae764 Fix: GetUser, Redo bans 2021-09-29 07:33:22 -07:00
kayos@tcp.direct 1f4cefd972 improve doc, more lint 2021-09-28 15:26:09 -07:00
kayos@tcp.direct c236f43e92 Tidy up 2021-09-28 14:08:24 -07:00
kayos@tcp.direct 729c3aee50 nice 2021-09-26 19:38:54 -07:00
kayos@tcp.direct f51786487b re-implement banning 2021-09-26 11:20:00 -07:00
kayos@tcp.direct 2a79031e89 basic authentication database works 2021-09-26 05:26:58 -07:00
kayos@tcp.direct 6c86627b7a add config 2021-09-26 04:05:20 -07:00
kayos@tcp.direct f64f335679 begin rebuild 2021-09-26 04:04:26 -07:00
mik2k2 7628a47c4c
set: Allow nil/expired items
Fixes #397
2021-07-03 13:37:09 -04:00
mik2k2 7413539965
main, sshd: Refactor authentication, add IP throttling, improve passphrase auth
* Move password authentication handling into sshd/auth (fixes #394).

Password authentication is now completely handeled in Auth. The normal
keyboard-interactive handler checks if passwords are supported and asks
for them, removing the need to override the callbacks.

Brute force throttling is removed; I'd like to base it on IP address
banning, which requires changes to the checks.

I'm not sure, but I think timing attacks against the password are fixed:
- The hashing of the real password happens only at startup.
- The hashing of a provided password is something an attacker can do
themselves; It doesn't leak anything about the real password.
- The hash comparison is constant-time.

* refactor checks, IP-ban incorrect passphrases, renames

- s/assword/assphrase/, typo fixes
- bans are checked separately from public keys
- an incorrect passphrase results in a one-minute IP ban
- whitelists no longer override bans (i.e. you can get banned if you're 
whitelisted)

* (hopefully) final changes
2021-05-31 10:08:30 -04:00
Akshay Shekher c3b589b286
tests: Fixed flaky test by using user joined callback. (#393)
Instead of relying on the go scheduler to do the expected thing >_>

Co-authored-by: Akshay <akshay.shekher@gmail.com>
2021-05-02 13:02:39 -04:00
Akshay Shekher e1e534344e
Fix SSHCHAT_TIMESTAMP env variables (#392)
* Fixes Env Vars to pass config to ssh-chat.

The env vars were beign parsed and set to the host
before the user was even added to the host and
hence ignored. This change moves the env var parsing
to after initializing the user.

TODO: tests, completeness+reliability

* cleaned up the test

* reduced test flakyness by adding wait instead of being optimistic

Co-authored-by: Akshay <akshay.shekher@gmail.com>
2021-05-02 12:18:31 -04:00
Andrey Petrov 46eaf037e3
Merge pull request #390 from shazow/shazow-patch-3
tests: Skip flakey TestHostNameCollision
2021-04-24 12:49:09 -04:00
Andrey Petrov 3c246777a1
tests: Skip flakey TestHostNameCollision 2021-04-24 12:22:42 -04:00
Andrey Petrov fef128b91f
Merge pull request #389 from shazow/shazow-patch-2
ci: Test all sub-packages
2021-04-24 12:18:44 -04:00
Andrey Petrov 1ef05d0c26
ci: Test all sub-packages 2021-04-24 12:16:10 -04:00
Andrey Petrov af502977e6
Merge pull request #388 from voldyman/ill-be-back
Added /back and tests for all away commands
2021-04-24 12:15:22 -04:00
Andrey Petrov c3dccfd3eb
chat: /back help formatting. 2021-04-24 12:14:24 -04:00
Akshay aae5bc8d2e Added /back and tests for all away commands 2021-04-24 07:54:50 -07:00
Andrey Petrov fb73ace458
Merge pull request #385 from sytranvn/build-apple-silocon
Add build script for apple silicon
2021-04-19 09:45:02 -04:00
Sy Tran 3557bf762d Add build script for apple silicon 2021-04-18 07:31:13 +07:00
Andrey Petrov fa3146c800 Makefile: Add deploy helper 2021-04-13 11:32:24 -04:00
Andrey Petrov badcaa6e3b /away: Fix output for admin whois
cc #377
2021-04-13 11:27:44 -04:00
Andrey Petrov 9bf66ea992
Merge pull request #383 from shazow/add-mute
chat: Add /mute command for op
2021-04-13 11:24:53 -04:00
Andrey Petrov 37b101c3c1 chat: Add /mute command for op 2021-04-13 11:21:16 -04:00
Andrey Petrov b73b45640c host: Fix /msg vs /reply message formatting
Closes #382
2021-04-06 09:28:48 -04:00
Andrey Petrov 7a783d46af sshd, chat/message: Add more debug logging for close failures 2021-04-05 11:06:44 -04:00
Andrey Petrov 3848014d41 main: Update host_test.go to pass vet, use errgroup 2021-03-26 12:49:08 -04:00
Andrey Petrov 3f81d84cf1 cmd/ssh-chat: Use x/term instead of howeyc/gopass, update prompt
Fixes #380
2021-03-26 12:26:18 -04:00
Andrey Petrov 4840634434 go mod update 2021-03-26 12:17:55 -04:00
Andrey Petrov 8257ada10d host: Factor out PM code, add away status 2021-03-15 11:07:52 -04:00
Andrey Petrov 9329227403 chat: /away tweaks 2021-03-15 10:53:00 -04:00
Akshay 0338cb824d chat: Added support for user away status, fixes #377
made away toggle status, like irc

updated /away feature

* added away message
* added broadcast away message as emote
* updated names list to show away users on the same line, with colors

added /away -> back message

Update away time to be time since marked away

reverted changes made for /list
2021-03-15 10:30:54 -04:00
Andrey Petrov c8bfc34704
Merge pull request #376 from medinae/reply-to-user-with-symbol-fix
Fix ~ Reply to user with symbol returning Err user not found
2021-03-13 10:08:49 -05:00
Abdelkader Bouadjadja ebbbc3b6d9 Fix ~ Reply to user with symbol returning Err user not found 2021-03-13 14:56:36 +04:00
Andrey Petrov d8183dd305
Update bug_report.md 2021-02-06 09:33:28 -05:00
Andrey Petrov 37c3e52309
Delete issue_template.md 2021-02-06 09:30:05 -05:00
Andrey Petrov 8eab0c9ead Update issue templates 2021-02-06 09:29:53 -05:00
Andrey Petrov 1a00bd81f2 go mod update 2020-11-11 15:44:24 -05:00
Andrey Petrov 5fb947fa6e
Merge pull request #366 from Niwla23/dockerfiles
Add Dockerfile and docker-compose.yml
2020-10-29 09:48:30 -04:00
Alwin Lohrie d42996c14b Add Dockerfile and docker-compose.yml 2020-10-28 16:19:16 +01:00
Andrey Petrov 4fe43746fe main: /rename should not complain when symbol is set and name is unchanged 2020-08-03 14:13:51 -04:00
Andrey Petrov 7461ca8e39 chat/message: Use user.ID() names for mono bot theme 2020-08-03 13:57:11 -04:00
Andrey Petrov 53ae43fb1b /motd: Add reload functionality when msg is @ 2020-08-03 13:26:12 -04:00
Andrey Petrov 0c7f325499 motd.txt: Sync up the latest motd 2020-08-03 12:34:43 -04:00
Andrey Petrov 512d38d86f
Update CODE_OF_CONDUCT.md 2020-08-03 12:32:03 -04:00
Andrey Petrov 5b2c6e7d8e
README: Add CoC link 2020-08-03 11:51:56 -04:00