Live data from Hacker News

Show HN: I made Devzat – It's like Discord but in the terminal, over SSH

news.ycombinator.com

141–150 of 154 posts

Re: Show HN: I made Devzat – It's like Discord but in the terminal, over SSH

#141

Did you know you are exposing your identity for each "permission denied" error? SSH repeatedly tries all of your public keys to authenticate. Someone was able to harvest that and figure multiple github profiles of the client in past.

You are right. My personal method for testing such things is to ensure I do not have any of the default keys.

  mkdir --mode=00500 -p ~/.ssh_config_backup
  rsync -avH ~/.ssh/. ~/.ssh_config_backup/.
  rm ~/.ssh/id_*
Then I generate custom keys per-site and list them in ~/.ssh/config/

  ssh-keygen -q -t rsa -b 2048 -N "" -C "test" -f ~/.ssh/.id_devzat 
Then in ~/.ssh/config

  IdentitiesOnly yes
  SendEnv LANG LC_ALL
  ForwardAgent no
  ForwardX11 no
  ForwardX11Trusted no
  # [snip]
  #
  Host devzat chat
    Hostname devzat.hackclub.com
    Port 22
    User test
    IdentityFile ~/.ssh/.id_devzat
    LogLevel VERBOSE
Verbose to see debug if you are having issues.

If one needed to temporarily use the old key for a site until it is changed to a site-unique key, then

  rsync -av ~/.ssh_config_backup/id_rsa ~/.ssh/.id_somesite
Then make a note to change the key on that site and generate a site unique key.

Re: Show HN: I made Devzat – It's like Discord but in the terminal, over SSH

#142
post #74

> bans use that and a hash of IP Why hash it? There are <2^32 IP(v4) addresses, so it would be trivial to crack the hash.

the hash is only visible to me, but I'd rather have to spend 10 minutes cracking an IP than just be able to see them plaintext

There are examples to test with [1] Seems like if someone runs this server they are making those people admins unless they edit that file.

[1] - https://github.com/quackduck/devzat/blob/main/admins.json

Re: Show HN: I made Devzat – It's like Discord but in the terminal, over SSH

#146
post #36

Earlier quoted context omitted.

This is your week to learn about .ssh/config files.

this is mostly a certain crypto lib's fault (maybe stdlib, let me check)

Ugh. That’s not specific to one language either. Changing CA certs or enabling OCSP is often a case of configuring the same thing in several places or multiple libraries. Identity certs doubly so. If memory serves I spent more time on that than the rest combined.

Re: Show HN: I made Devzat – It's like Discord but in the terminal, over SSH

#147

Earlier quoted context omitted.

For one you're actually not making a discord server, so there is that.

That's an implementation detail. Having servers automatically provisioned for you is more convenient for users.

Everything is an implementation detail then ?

Re: Show HN: I made Devzat – It's like Discord but in the terminal, over SSH

#149
post #75

I'm in the terminal / chat right now. This is giving me major 90's nostalgia! Incredible.

Me too, using irssi.

yep, same. Just something about terminal chat clients. I wish Discord would allow you to create a terminal client where you didn't have to do all kinds of workarounds.

Re: Show HN: I made Devzat – It's like Discord but in the terminal, over SSH

#150

Earlier quoted context omitted.

idk if i wanna make this a TUI tbh, i've seen those libs before. I don't think they support output to an io.Writer / term.Terminal though

I believe https://github.com/charmbracelet/wish is the repo you're looking for! (and also the repo the person you replied to probably meant to post)

Argh, yap that's the one thank you :D
Post reply on HN