Live data from Hacker News

TinySSH is a small SSH server using NaCl, TweetNaCl

github.com

61–70 of 128 posts

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#61
I like this person's work. Check it out:

https://github.com/janmojzis

- tinyssh - TinySSH is a small server with less than 100,000 words of code. Language: C. Stars: 1.1k. Forks: 65.

- acmeshell - Shell-style client for LetsEncrypt. Language: Python. Stars: 31. Forks: 6.

- dq - Recursive DNS/DNSCurve server and command-line tool to debug DNS/DNSCurve. Language: C. Stars: 23. Forks: 1.

- pstree - Unix process tree viewer. Language: C. Stars: 14. Forks: 2.

- ntpserver - Pure python NTP server. Language: Python. Stars: 11. Forks: 3.

- httpfile - Httpfile is an HTTP server derived from publicfile-0.52.

A collection of tiny, standard net utils and servers. Gives the impression the person does it to craft something, and to understand. Inspiring and impressive!

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#62
post #40
post #36

Earlier quoted context omitted.

> There's technically no reason OpenSSHd can't also be used in this context. For initrd you generally prefer static binaries. Not saying that OpenSSHd doesn't build statically, but having less code and dependencies makes it easier to statically compile. But yes, technically there is no reason to not use OpenSSHd, but in practice having a smaller and more self contained binary helps considering that you would want the…

What dependencies does openssh have?

OpenSSL

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#63

I like this person's work. Check it out: https://github.com/janmojzis - tinyssh - TinySSH is a small server with less than 100,000 words of code. Language: C. Stars: 1.1k. Forks: 65. - acmeshell - Shell-style client for LetsEncrypt. Language: Python. Stars: 31. Forks: 6. - dq - Recursive DNS/DNSCurve server and command-line tool to debug DNS/DNSCurve. Language: C. Stars: 23. Forks: 1. - pstree - Unix process tree vie…

[deleted]

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#64
post #4

What is the difference between this and dropbear ssh?

Dropbear claims to be RFC-compliant, but isnt. Proof here: https://www.cvedetails.com/cve/CVE-2021-36369/ TinySSH doesnt claim to be compliant, and isnt. Does less in exchange for a reduced attack surface.

That CVE is a UI confusion issue in the client, I'm not sure exactly what bit the reporter thought was non-RFC compliant.

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#65
post #48

Earlier quoted context omitted.

Not for that reason. The copyleft trolls that Doctorow wrote about are using a termination clause in attribution-required CC licences. (Remember, there are lots of different CC licences with varying requirements on licensees.) CC0 doesn’t impose requirements on licensees nor does it have a termination clause, so it isn’t affected by these trolls. However, CC0 is not good as a software license. It is explicitly restri…

0BSD and MIT-0 don't mention patents explicitly though, few licenses do. I only know of two: https://blueoakcouncil.org/list

They don’t mention copyright explicitly either.

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#66
post #48

Earlier quoted context omitted.

Not for that reason. The copyleft trolls that Doctorow wrote about are using a termination clause in attribution-required CC licences. (Remember, there are lots of different CC licences with varying requirements on licensees.) CC0 doesn’t impose requirements on licensees nor does it have a termination clause, so it isn’t affected by these trolls. However, CC0 is not good as a software license. It is explicitly restri…

I copied your comment to https://github.com/janmojzis/tinyssh/issues/85 If author/maintainer doesn't frequent HN, perhaps discussion there might get some action.

You can find a more authoritative but longer explanation in an OSI FAQ about CC0 https://opensource.org/faq#cc-zero and the related discussion http://lists.opensource.org/pipermail/license-review_lists.o...

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#67
post #58

Cool but something i saw that was weird, this may be the first repo i've ever seen to advertise ... words of code, i've always seen secure repos advertise their "in only X LOC" seeing words of code as a metric was funny

Made it seem like it was written in Forth.

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#68

tinyssh is great. One use case for it that people may not know about: using it during Linux boot so you can remotely unlock encrypted drives. I have a headless NAS server that uses dm-crypt/LUKS under ZFS. When I update my kernel/ZFS I remotely reboot the server, wait a few seconds, and then ssh into a tinyssh powered encryption key prompt to unlock the drives. (I am immediately booted from ssh, as tinyssh exits.) I…

I use normal opensshd for this. No reason to support two ssh daemons when you can do it with one. The difference in size on your init image is minimal and you probably aren't even trying to optimize for space there. If you don't know the size of your rd off the top of your head then it almost certainly doesn't matter.

Probably not more popular because (for reasons I do not know) the mkinitcpio hooks Arch Linux provides are only for tinyssh and dropbear:

https://wiki.archlinux.org/title/dm-crypt/Specialties#Remote...

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#69
post #14

Earlier quoted context omitted.

Can you justify this further in the context of this specific offering which appears not to manage dynamic memory?

You don't need further justification if you just agree that using Rust makes everything automatically better... somehow... and you need to agree with it without evidence.

I admit I am susceptible to this thinking though.

Re: TinySSH is a small SSH server using NaCl, TweetNaCl

#70
post #44

tinyssh is great. One use case for it that people may not know about: using it during Linux boot so you can remotely unlock encrypted drives. I have a headless NAS server that uses dm-crypt/LUKS under ZFS. When I update my kernel/ZFS I remotely reboot the server, wait a few seconds, and then ssh into a tinyssh powered encryption key prompt to unlock the drives. (I am immediately booted from ssh, as tinyssh exits.) I…

Question: when remotely unlock the boot disk via ssh, how do you make sure the boot has not been compromised and that you are not just sending the password to the bad guys? At some point I wanted to do something with utrablue [1], to work over network rather than Bluetooth, but then it was in go and I got lazy suddenly :) [1] https://github.com/ANSSI-FR/ultrablue

This is what a TPM is designed to prevent, but they’re not very popular in Linux community.
Post reply on HN