8 ms·
Seashells – Pipe output from command-line programs to the web in real time
- Beltiras 7y agoThis idea is pretty neat. You can bulk upload some log file or conditionally pipe output to a service like that and send the URI via SMS. I'd think that most of services like those would like to use federated logins and be on premise only.
- giancarlostoro 7y agoAwesome, just wish I could install the server locally, would rather link someone at work to an internal URL. Some of the output at work would be too sensitive to trust to any third party. This is the first I see software like this, has anybody seen other similarly useful utilities? I think it's invaluable to be able to share your console output with coworkers in real time so they can also help to troubleshoot.
- vfinn 7y ago>I think it's invaluable to be able to share your console output with coworkers in real time so they can also help to troubleshoot. You can use tmux's shared sessions via ssh for that, no?
- r3dey3 7y agoI've never tried any of the following, but have come across them: * https://github.com/vitorbaptista/shellshare https://github.com/vitorbaptista/shellshare * https://tmate.io/ https://tmate.io/ * https://github.com/yudai/gotty https://github.com/yudai/gotty - actually gives you a tty in a browser * https://github.com/dtinth/ttycast https://github.com/dtinth/ttycast (edit: formatting)
- miguelmota 7y agotmate is awesome for pair programming
- giancarlostoro 7y agoBut it goes through a third party server instead of locally at least by default.
- jheuel 7y agoEven nicer because it does not need a third party server is https://github.com/maxmcd/webtty https://github.com/maxmcd/webtty Communication is done using webrtc
- janekm 7y agoGreat idea. For my usecase it appears to be missing support for unicode (emoji) though...
- vitorbaptistaa 7y agoNeat! Congratulations on launching, it looks amazing. I built a similar tool a while ago, but to share your entire (read-only) shell session interactively: https://shellshare.net/ https://shellshare.net/. Might be useful for some looking at this.
- godot 7y agoI think this is a great idea, like others said it's the first time I've seen it. The problem is that almost any use case where this is useful for, is almost surely data that people wouldn't want publicized. A self-hosted version of this is ideal (for businsesses). At the very least, allow for API tokens and require a login to see your output (for personal projects uses) instead of just relying on a short random string for security of output. (Understood that it wasn't meant to be secure)
- heavenlyblue 7y agoHow is random string not a password?
- matt-attack 7y agoI think the point is that it's secure from 3rd parties, but not to the owner/operator of the service itself.
- tannhaeuser 7y agoPiping output from shell into HTTP response bodies is exactly what CGI programming is about. What am I missing that this is considered innovative?
- alexchamberlain 7y agoThis uses the cloud... In all seriousness, isn't the use case here more temporary? You're running a script that you want some else to see the output of without the faff of copy & paste to a gist.
- rakoo 7y agoIn this case you're piping output from shell into HTTP _requests_. It's the mirrored version of CGI.
- m45t3r 7y agoNo support for encryption? It would be interesting to support HTTPS, even if the initial setup would be harder than "nc".
- icebraining 7y agoIn fact, there's ncat, which is a spiritual successor to netcat, created by the nmap project, and which supports tls: https://nmap.org/ncat/ https://nmap.org/ncat/
- matt-attack 7y agoCouldn't it use curl just as easily?
- Timucin 7y agoLooks nice. This could be quite useful to demonstrate/teach/explain simple stuff to people but I am not so sure if I would like to expose anything else from my console in this way.
- miguelmota 7y agoI created something similar years ago and it's open source: https://stream.ht/ https://stream.ht/ Try it out, you can pipe your terminal: exec > >(nc stream.ht 1337) 2>&1 Or just pipe a file: tail -F file.log | nc stream.ht 1337 Pipe htop (delay is required to see share url) (sleep 5; htop) | nc stream.ht 1337 Doesn't require installing anything! Requires netcat which is installed on most *nix systems but you can use a plain tcp socket connection to pipe data too: exec 3<>/dev/tcp/stream.ht/1337 && head -1 <&3 && exec &> >(tee >(cat >&3))
- glloydell 7y agoI really appreciate that the default port in both examples is 1337
- yellowapple 7y agoI wonder if that could get registered for this purpose somehow?
- sdegutis 7y agoPorts get registered? I just assumed we were all picking whatever open ports we could find.
- meddlepal 7y agoWay back in the idealistic days of the internet you could apply for and reserve a port for your protocol. I don't think you can do this anymore..., or if you can it's not easy.
- frou_dh 7y agoSometimes in Port Forwarding wizards on routers, you see a big list of ancient videogames. Presumably that has something to do with this.
- 7y ago
- pyinthesky 7y agoVery cool. I put together something similar a little while ago that just uses curl instead of nc: https://github.com/jpschroeder/pipe-to-me https://github.com/jpschroeder/pipe-to-me https://pipeto.me/ https://pipeto.me/
- deleted 7y ago[deleted]
- masukomi 7y agoblatant self promotion of related tools * oho[1] is the best ANSI CLI->HTML tool out there (If I'm wrong file a ticket ;) ) * fenestro[2] takes HTML output generated by your command line and displays it (macOS only). If you shove multiple things into it quickly it'll display the list of them in the sidebar. Later requests for display will be in new windows. [1] https://github.com/masukomi/oho/#readme https://github.com/masukomi/oho/#readme [2] http://fenestro.xyz/ http://fenestro.xyz/
- cowmix 7y agoOn a related note.. are there any good free shell session sharing tools out there? I used to use nutty.. but it went away.
- rootedbox 7y agotmux https://www.redhat.com/sysadmin/ssh-tmux-screen-sharing https://www.redhat.com/sysadmin/ssh-tmux-screen-sharing
- jacobsenscott 7y agotmate makes tmux sharing much easier in the face of firewalls, etc, if you are willing to trust their third party servers. You can run your own servers if you don't. The vagrant share plugin is also nice, if you happen to use vagrant, and trust the third party servers.
- h43z 7y agoIt's cool to see all the different ways one can implement such services. So I'll throw my hat into the ring with liveshell. * https://liveshell.43z.one https://liveshell.43z.one
- halostatue 7y agoNice idea, but I’d rather install `bcat` or something similar.
- dang 7y agoThread from 2017: https://news.ycombinator.com/item?id=14737118 https://news.ycombinator.com/item?id=14737118
- tlrobinson 7y agoFirst thing to try, of course: telnet towel.blinkenlights.nl | nc seashells.io 1337
- lsllc 7y agoAh, finally. So how do I use the 3 seashells?
- t0mek 7y agoAn idea that may address the security concerns: - an open-source client that symmetrically encrypts the output with a random key before sending it to the server (obviously, the key is not being sent), - the key is appended after # in the URL, so it’s only available to the browser, - client-side decryption in JS.