Live data from Hacker News

SSH has no Host header

blog.exe.dev

161–170 of 181 posts

Re: SSH has no Host header

#161
post #144

Earlier quoted context omitted.

Because your ISP should (and most do not) alter traffic.

But you’re not considering the many business environments that do.

I don't because that would be impossible. Every business has different rules. But if you (as a business) want to to use this, you will find a way to make the changes to those "middleboxes". It's not your network, it's your business's network.

Re: SSH has no Host header

#162
post #39
post #25

> We cannot issue an IPv4 address to each machine without blowing out the cost of the subscription. We cannot use IPv6-only as that means some of the internet cannot reach the VM over the web. That means we have to share IPv4 addresses between VMs. Give a user a option for use IPv6 only, and if the user need legacy IP add it as a additional cost and move on. Trying to keep v4 at the same cost level as v6 is not a thi…

Op solved a problem and your comment is "I wouldn't have solved the problem". >legacy IP lol

I've worked in big companies long enough to know that "deprecated" or "legacy" mean "the thing we actually rely on"

Re: SSH has no Host header

#163

They are saying they want to directly SSH into a VM/container based on the web hostname it serves. But that's not how the HTTP traffic flows either. With only one routable IP for the host, all traffic on a port shared by VMs has to go to a server on the host first (unless you route based on port or source IP with iptnbles, but that is not hostname based). The HTTP traffic goes to a server (a reverse proxy, say nginx)…

I ended up doing something like this for a separate use case (had to host a bunch of Drupal instances, and for some reason end users needed shell access).

For the proxy I did not rely on a “proper” ssh daemon (like openssh), but wrote my own using a go library called gliderlabs/ssh. That in particular allowed me to implement only a tcp forwarding callback [1] , and not provide any shell access on a protocol level. Also made deployment nicer - no need for a full VM, just a container was sufficient.

It is also worth nothing that the -j can be moved into .ssh/config using the ProxyJump option. It does mean end users need a config file - but it does allow typing just a plain ssh command.

[1] https://pkg.go.dev/github.com/gliderlabs/ssh#ForwardedTCPHan...

Re: SSH has no Host header

#164

Earlier quoted context omitted.

SSH does support certificate based auth, and it’s a great upgrade to grant yourself if you are responsible for a multi human single user system. It grants revocation, short lifetime, and identity metadata for auditing, all with vanilla tooling that doesn’t impose things on the target system.

> multi human single user system A rather niche use-case to promote certificate auth... I'd add the killer-app feature is not having to manage authorized_keys.

They are remarkably common in long lived enterprise Linux servers. Think eg database servers or web servers where they are of the (much longer lived) pet era not cattle era.

Not sure why you need to belittle one example just to add another

Re: SSH has no Host header

#165
post #83

Earlier quoted context omitted.

I definitely block outgoing ports on all our servers by default; Established connections, HTTP(S), DNS, NTP, plus infra-specific rules. There is really no legitimate reason to connect to anything else. The benefit is defence against exfiltration.

If you're allowing direct https out, how are you stopping exfiltration? Maybe https is routed through a monitoring proxy, but in the situation of allowing ssh the ssh wouldn't be going though one. So I still don't see the point of restricting outgoing ports on a machine that's allowed to ssh out .

You can't, reasonably. It's just a heuristic against many exploits using non-standard ports to avoid detection by proxies or traffic inspection utilities.

Re: SSH has no Host header

#167

Earlier quoted context omitted.

Well, you're very lucky (genuinely). In 2025, I tried to access my services using IPv6 with 4G phones and different subscriptions (different ISPs), fact is, many (most?) of them did not support IPv6 at all :( I had to revert to IPv4. And really I have nothing against IPv6, but yeah, as a simple user, self hosting a bunch of services for friends and family: it was simply just not possible to use only IPv6 :( (for cont…

[flagged]

There is not a single ISP in my area that provides any IPv6 support whatsoever. This is also the case for many, many millions of others around the world.

Re: SSH has no Host header

#168
post #25

> We cannot issue an IPv4 address to each machine without blowing out the cost of the subscription. We cannot use IPv6-only as that means some of the internet cannot reach the VM over the web. That means we have to share IPv4 addresses between VMs. Give a user a option for use IPv6 only, and if the user need legacy IP add it as a additional cost and move on. Trying to keep v4 at the same cost level as v6 is not a thi…

(exe.dev co-founder here) IPv6 does not work on the only ISP in my neighborhood that provides gigabit links. I will not build a product I cannot use. Even when IPv6 is rolled out, it is only tested for consumer links by Happy Eyeballs. Links between DCs are entirely IPv4 even when dual stacked. We just discovered 20 of our machines in an LAX DC have broken IPv6 (because we tried to use Tailscale to move data to them,…

> IPv6 does not work on the only ISP in my neighborhood that provides gigabit links. I will not build a product I cannot use.

Cool.

Somebody else will, and will likely have a better price (due to the abundance of ipv6 addresses) and you’ll go out of business.

> because we tried to use Tailscale to move data to them, which defaults to happy eyeballs

Not gonna lie, to me that reads like “because we don’t know how to use ipv6”

Re: SSH has no Host header

#170
post #161

Earlier quoted context omitted.

But you’re not considering the many business environments that do.

I don't because that would be impossible. Every business has different rules. But if you (as a business) want to to use this, you will find a way to make the changes to those "middleboxes". It's not your network, it's your business's network.

Large multi-national corporations, by way of their sheer size, tend to force their vendors to bend towards their needs, not to adapt to meet their vendors' unusual networking requirements.
Post reply on HN