July 18th, 2024

Devzat – Chat over SSH, with some nice quality-of-life features

The "Devzat" GitHub project offers a unique SSH server redirecting users to a chat interface instead of a shell prompt. It supports various features like rooms, Markdown, syntax highlighting, direct messages, games, and emoji replacements. Additionally, it provides integration with Slack, Discord, and Twitter, along with a plugin API for customization.

Read original articleLink Icon
SecurityFunctionalityNostalgia
Devzat – Chat over SSH, with some nice quality-of-life features

The GitHub project "Devzat" is a custom SSH server redirecting users to a chat interface instead of a shell prompt. Users can connect via SSH apps on various platforms, enabling developer chat within their terminal. Instructions cover server connection, nickname login, port selection, and configuration setup. Features include rooms, Markdown support, syntax highlighting, direct messages, timezone support, games, and emoji replacements. The project details hosting instances, Slack, Discord, and Twitter integration, and a plugin API for custom features. It showcases stargazers, notable tech community members, and offers a GitHub repository for further exploration.

AI: What people are saying
The "Devzat" GitHub project, an SSH server redirecting users to a chat interface, has sparked various discussions.
  • Users share similar projects and experiences, such as using `wall` for chat or integrating IRC with SSH.
  • Concerns about security and usability are raised, including potential command execution vulnerabilities and issues with ASCII color filtering.
  • Some users report technical difficulties, such as server crashes and connection problems, likely due to high traffic.
  • There is interest in the project's source code and its readability, as well as its humorous elements.
  • Suggestions for improvements and related tools, like `ytalk` and `ssh-chat`, are discussed.
Link Icon 25 comments
By @hiAndrewQuinn - 7 months
I have a Raspberry Pi running a read-only server where some friends and I have a "poor man's IRC" chat, in that we all log in from Termux and post messages to one another using `wall`. It's absolutely ridiculous and I love it.
By @rwmj - 7 months
I wonder if you could do something similar with an ssh account which is hard-wired to run 'ytalk' (https://en.wikipedia.org/wiki/Talk_(software)).
By @qudat - 7 months
Pretty neat! We implemented something similar with an IRC chat app (senpai) in our SSH app (pico.sh). After the user creates an account, it lets users connect to our public IRC bouncer with a single command (`ssh pico.sh -t chat`).

ref: https://pico.sh/irc

By @codetrotter - 7 months
See also: ssh-chat by shazow from ~10 years ago written in Go

  ssh chat.shazow.net
The most amazing part is perhaps the fact that this one is still around, 10 years later! Try it yourself and you’ll see :)

Discussion at the time:

https://news.ycombinator.com/item?id=8743374

Source code in GitHub repo here:

https://github.com/shazow/ssh-chat

By @languagehacker - 7 months
I'd be curious whether there's any security concerns on this one. Could an attacker craft a message that gets access to execute commands into a client terminal?
By @codazoda - 7 months
I experimented with writing a shell replacement a while back. Turns out you can just run any old program. Here’s and example “hello world” shell replacement written in Go.

https://github.com/codazoda/goshell

By @quackduck - 7 months
so sorry for it being down right now. hn hug of death is real
By @yu3zhou4 - 7 months
There was a beginner friendly machine to hack on HackTheBox where you had to hack a Devzat instance
By @freedomben - 7 months
Cool, the source code is amazingly readable. Also love the sense of humor :-D such as https://github.com/quackduck/devzat/blob/main/commands.go#L1...
By @jasonjayr - 7 months
As a gentle reminder, if you are forwarding your ssh-agent by default, you should connect with:

    ssh -o 'ForwardAgent no' $host
So your secure identities are not exposed to a random ssh server ...
By @sdsd - 7 months
I love stuff like this. I made a widget for MacOS where you can see incoming |hi messages sent to your Urbit, as a kind of poor man's p2p chat. But I didn't add a feature to send hi messages, so you still need a CLI for that.

You can see what it looks like here: https://www.youtube.com/watch?v=_bAx4Jx39jE&t=384s

(it's the widget in the bottom right of the screen)

By @lynx23 - 7 months
Related: Does anyone by chance know how to configure an "anonymous" ssh account that always runs the same program? This would be great for making text mode games available to everyone without needing to support different platforms, now that windows actually ships with ssh.
By @xyst - 7 months
Is this working for anybody else?

I created a throwaway ed25519 key, reconfigured ssh config, and tried to connect with ‘ssh chat’

Nothing loads. ‘ssh -v chat’ isn’t helpful either. ping and nc (on both 22 and 443) show the server (or load balancer) is accessible for me.

Maybe a “hnfp DoS” (hacker news front page DoS)?

By @tcsenpai - 7 months
If you want to use my server, it might be a little more powerful than the current one. I would self host but to be honest I'd prefer helping out with the main instance. In case, I am here
By @Tepix - 7 months
Looks like ascii colors aren't being filtered correctly.. which is a pretty big issue. White on white isn't very readable... :-)
By @localfirst - 7 months
what sort of server resource usage is this like right now as you are getting a ton of traffic?

also noticed that people were able to run commands but permission denied. that kinda freaked me out. eventually somebody is going to figure out how to escape the go binary

By @nedpat - 7 months
This is actually cool!

But unless I'm missing something, what's the difference between this and IRC?

By @ipsum2 - 7 months
Doesn't seem to be working, the chat is frozen and I can't type anything.
By @aa-jv - 7 months
This is great, now we just need a way to host it on our mobile phones.
By @danslo - 7 months
I appear to have crashed the server with "tic 999", sorry guys!
By @tempestlxc - 7 months
Chatting via SSH has given me a lot of insights. Thank you.
By @ingen0s - 7 months
This makes my list for top of the year, nice work.
By @callwhendone - 7 months
ssh: connect to host devzat.hackclub.com port 22: Connection refused

PORT STATE SERVICE

22/tcp closed ssh

Nmap done: 1 IP address (1 host up) scanned in 1.18 seconds

----

overloaded?

By @styczen - 7 months
Normal talk in unices system can do that.

Irc have exange data between server and minimalize data trafic.

still irc is better, but meybe in future