Slashdot Mirror


Why Aren't We Using SSH For Everything?

An anonymous reader writes: A post at Medium asks why, in this age of surveillance and privacy-related bogeymen, we aren't making greater use of SSH for our secure computing needs?

"SSH is one of the most accessible secure protocols ever, second only to HTTPS of course. Let's see what we have so far: Binary protocol, mandatory encryption, key pinning, multiplexing, compression (yes, it does that too). Aren't these the key features for why we invented HTTP/2?

Admittedly, SSH is missing some pieces. It's lacking a notion of virtual hosts, or being able to serve different endpoints on different hostnames from a single IP address. On the other hand, SSH does have several cool features over HTTP/2 though, like built-in client authentication which removes the need for registration and remembering extra passwords."

46 of 203 comments (clear)

  1. Because no. by Anonymous Coward · · Score: 5, Informative

    >Admittedly, SSH is missing some pieces

    Should read, "Admittedly, SSH is missing some crucial features, that make its use in this context impossible."

    1. Re:Because no. by hey! · · Score: 5, Insightful

      The lack of features may be a feature.

      The more features something has, the more likely an oversight in the design or implementation will prove to be a liability.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  2. I do by Dan+East · · Score: 5, Funny

    I use SSH for everything. I use it between my cell phone and the wall charger. I use it between my thermostat and my furnace. Probably most importantly, I use it between my my remote control and TV. Never can be too careful these days.

    --
    Better known as 318230.
    1. Re:I do by wbr1 · · Score: 5, Funny

      Looks like you are onto something. Its the SSH of things. I think I need to start a CloudSSH provider now and leverage the intrinsic value of the buzzword.

      --
      Silence is a state of mime.
    2. Re:I do by Caesar+Tjalbo · · Score: 5, Funny

      2015 is the year of SSH on the desktop.

      --
      "I'm not much interested in interoperability. I want substitutability. I want to be able to throw your software out."
    3. Re:I do by by+(1706743) · · Score: 2

      I use it between my my remote control and TV. Never can be too careful these days.

      By echoing commands over ssh, I have my Raspberry Pi control my TV (HDMI CEC), you insensitive clod!

    4. Re:I do by Anonymous Coward · · Score: 2, Funny

      That's nothing - I use SSH 2.0!

      2.0? you lamer...
      Us superleet types are on our own supersekret version...6.9apl3...totally rewritten in APL..It does indeed do everything (we took our inspiration from systemd), it achieved a degree of semi-sentience sometime last Tuesday, hell it now even feeds the cat..

  3. Because it's not safe either by Anonymous Coward · · Score: 5, Interesting

    Recent Snowden documents shed doubt on whether the NSA isn't actually able to crack ssh, too. http://www.spiegel.de/international/germany/a-1010361.html

    1. Re:Because it's not safe either by gweihir · · Score: 5, Interesting

      More likely the NSA can use some misconfigurations and crack some (really old) defective clients or servers that are still on protocol v1 or the like. OpenSSH should be pretty secure, but some commercial implementations really suck, and not only with regards to security.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    2. Re:Because it's not safe either by MightyMartian · · Score: 3, Interesting

      The article suggests heavily that a properly configured SSH client and server with secured cert chain is likely safe from prying. The problem with SSH, as with all things, is the use of older distros that may not be updated and not building a proper CA to sign certificates.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    3. Re:Because it's not safe either by AchilleTalon · · Score: 4, Insightful

      Someone must realize NSA leaked documents by Snowden are now out dated in some areas. Some security related bugs were patched since then.

      --
      Achille Talon
      Hop!
    4. Re:Because it's not safe either by Anonymous Coward · · Score: 5, Informative

      Despite the similarity of the names, OpenSSH and OpenSSL are maintained by entirely different teams. Of note is that the organization which maintains OpenSSH recently forked OpenSSL into LibreSSL which, once it stabilizes, is expected to behave more safely.

    5. Re:Because it's not safe either by sabri · · Score: 2

      OpenSSH should be pretty secure

      And that's the part that worries me.

      --
      I'm not a complete idiot... Some parts are missing.
    6. Re:Because it's not safe either by caseih · · Score: 5, Interesting

      If anyone else hadn't heard about using a CA with ssh, as I hadn't, they might find this short tutorial interesting:

      https://www.digitalocean.com/c...

      Wish this was available back in my uni days when I managed many dozens of Linux workstations. Managing keys was always a pain.

    7. Re:Because it's not safe either by sconeu · · Score: 2

      In addition, the OpenSSH guys are really, REALLY paranoid. They come from the OpenBSD team.

      --
      General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
    8. Re:Because it's not safe either by gweihir · · Score: 2

      The track-record for OpenSSH shows it. This is one excellent piece of security software. Must remember to donate this year to them again. I don't use OpenBSD, but OpenSSH alone makes it worth giving them something, for the countless hours of work and worry they have saved me.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    9. Re:Because it's not safe either by gweihir · · Score: 4, Interesting

      So they are brute forcing weak SSH passwords. Not impressive, anybody can do that and there is even a bot-net that does it, look up "low-intensity zombies". As to pre-shared keys, there is a known vulnerability of embedded devices that can make their keys vulnerable if they are generated in a low-entropy situation. That has been fixed AFAIK and does not affect proper computers.

      As to IPsec: First it is known that the IPsec standard was sabotaged by the NSA by making it overly complicated and complex, doubtless in order to make implementation and configuration mistakes more likely. Second, I have no idea what "non keyed" means for IPsec. Maybe you mean PSK? That can again be attacked if keys are badly chosen. No surprise.

      Really, the NSA will of course to what ordinary hackers can also do, but use sound practices and they will need to to an expensive and high-risk targeted attack and even that may fail. The goal here is not to make it impossible for them to get in, the goal is to make it far to expensive in most cases, to they cannot do dragnet-surveillance. One of the hugely dangerous things they are doing is that they collect data on everybody. If somebody becomes, say, a president in some place and they do not like that person, they can go through their archives and sabotage democracy with what they find. It may even be enough that people think they can do this. That makes them a clear and present danger to democracy, freedom, the rule of law, etc. Or in short: Terrorism is peanuts in comparison with the huge threat these people represent.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  4. SSH actually does handle some of those limitations by Anonymous Coward · · Score: 2, Informative

    SSH can be used for virtual hosting environments just fine with things like force-command chrooting automatically when a user logs in based on username or pubkey. The protocol is not hostname aware, so it cannot handle "different hostnames from a single IP", you have to have a different user account name in order to do similar tricks. I do not think that is a limitation though, since you are talking to the underlying system, not to a content serving system like a web server.

  5. Windows by Lennie · · Score: 5, Informative

    If anything is missing, it's probably only missing on Windows.

    Support on Linux and Mac is jut fine, I think.

    Windows:
    - client support is kind of OK
    - virtual filesytem support is kind of OK

    The biggest missing solution:
    - Windows server support. There are some expensive solutions, not sure how well they work.

    --
    New things are always on the horizon
    1. Re:Windows by jones_supa · · Score: 2

      There's a program called ExpanDrive which abstracts a bunch of network file systems for Windows. I've been using it for SSHFS, but there is also WebDAV support among others.

    2. Re:Windows by lister+king+of+smeg · · Score: 2

      Depends sometimes I just use it as a proxy using proxychains and, or i will mount the filesystem and use local copies of programs to work on the remote files in both cases I don't have to use the remote app the forwarding X is not a issue. If I do use app remotely its on my server where I just use a no frills low eye-candy desktop environment and enable compression on my ssh session besides nano, elinks and emacs don require X.

      --
      ---Saying gnome 3 is better than windows 8 not so much a compliment as it is damning with light praise.
  6. Layered with, not instead of, HTTP/2 by allquixotic · · Score: 5, Interesting

    One of the coolest client-side features of most SSH clients (at least OpenSSH and PuTTY support it) is the ability to turn any SSH connection into a SOCKS5 proxy, provided the server will let you. If your Internet connection has a restrictive stateful firewall on it that blocks your access to many useful legitimate sites, you can just stunnel out over TLS and then have the ability to go outbound on any port (including SSH's default port of 22) using your SOCKS5 proxy. I've used RDP over SSH over TLS before to get around restrictive filters.

    1. Re:Layered with, not instead of, HTTP/2 by Dagger2 · · Score: 4, Informative

      And if SOCKS isn't enough, you can also do ssh -w 42:42 to link a pair of tun interfaces between the two sides. (Slightly less cool because you have to manually configure networking on both ends for it.)

      And then the summary decides to hold compression up as the super amazing feature that nobody has ever heard of...

  7. Cygwin works fine. by ron_ivi · · Score: 5, Informative

    I know back in 1995 when Cygwin came out it got a reputation of being pretty flakey.

    But it's come a long way in the last 2 decades.

    These days, pretty much any time you think you have a "hmm, Linux can do this but I don't know how to do it on Windows", Cygwin is probably a very good possibility.

  8. Because it's slow and featureless by Just+Some+Guy · · Score: 5, Insightful

    SSH connections take For. Eh. Ver. relatively speaking:

    % time ssh localserver exit
    ssh localserver exit 0.02s user 0.02s system 2% cpu 2.061 total

    Subsequent requests using the same connection are quick enough:

    % time ssh localserver exit ssh localserver exit 0.00s user 0.00s system 20% cpu 0.039 total

    But compare to an HTTPS connection to a remote host:

    % cat curlcfg
    verbose
    trace-time

    url = "https://www.google.com/"
    output = "/dev/null"
    head

    url = "https://www.google.com/"
    output = "/dev/null"
    head

    % curl -K curlcfg
    ...

    A brand new request to a remote server takes just 263ms, and a second request only 81ms. Considering that the server is 25ms away, that makes it a bit faster than a cached SSH connection to a local machine.

    But even more than that, SSH in this context is a transport, not a protocol. It allows you to build and manage secure connections, but you still have to write a protocol on top of it ("I'll send this command, and you reply with..."). Even if you "cheat" and use SFTP, you're still missing out on fixes to the thousands of little issues people have worked out with HTTP over the years. What's the SFTP equivalent of If-Modified-Since? How will redirects to remote servers work? What's your cross-domain scripting policy? How are you going to handle anonymous connections?

    Use SSH for SSH. Use HTTP for HTTP. They're separate things for good reasons.

    --
    Dewey, what part of this looks like authorities should be involved?
    1. Re:Because it's slow and featureless by tnk1 · · Score: 5, Interesting

      Yes.

      There have been discussions where I work about setting up encrypted connections for some of the data that we're passing over the Internet. At first it was taken for granted that we'd use SSL or some form of encrypted link to do so.

      Then someone very smart mentioned that the data is already sent in a manner in which it is difficult, albeit not impossible, to reconstruct usefully. It might be possible for someone like a state actor or organized crime to spend the time and resources on reconstructing the data, but without any personal information or financial transaction information in the stream, it ended up not even mattering at all anyway.

      The flip side is that we really, really want the data to be processed quickly. That means not spending the time and effort on decryption processing overhead where our options are either accepting lower quality of service or alternately spending more on processing power.

      Point is that we know that the NSA or FSB or North Korea or the Mafia could intercept and and reconstruct our data, but ultimately we don't care if they can, we don't know why they'd bother, and we don't promise our customers that we'll prevent that. What we do have are QoS guarantees, not to mention a general need for QoS so we don't seem shitty.

      Make no mistake, for sensitive information, you should have encryption, despite the overhead. We do use it for anything that would be sensitive, such as authorizations, personal information, and transactions. Even then, we don't kid ourselves about SSL preventing some sort of determined attack by someone with sufficient resources. At that point, there is only so much you can do.

      Security risk assessment is not an exercise about what is possible, it about what is *probable* and then assigning your limited security resources to defend against the most likely, but not always most glamorous threats.

      For instance, the Sony hack was likely a common combination of social engineering, malware, and shitty risk management with the internal networks. Encrypting the connections would have probably done fuckall for them, because the hackers weren't intercepting traffic, they were actually breaking in with passwords or remote exploits. Having admins who knew how to compartmentalize their shit (and not click on malware) and maybe keep their passwords in an encrypted keychain with some multifactor authentication thrown in would have been priceless.

      Internal networks are a cesspool of open shares, with proprietary or sensitive information liberally slathered around, waiting to be found. Everyone assumes the "firewall" or the "encrypted network" will protect them. What actually happens is that too many people are storing too much information on systems that are too numerous and heterogeneous for anything but the most dedicated internal IS department to keep track of. That is, unless there are some intelligent risk assessment and useful programs (like actual training and well enforced security procedures).

    2. Re:Because it's slow and featureless by tlambert · · Score: 2

      SSH connections take For. Eh. Ver. relatively speaking:

      gethotbyaddr + getpeername + gethostbyname

      Try configuring your DNS correctly; the reason it's fast with Google as a remote host is that their DNS is correctly configured.

    3. Re:Because it's slow and featureless by unrtst · · Score: 2

      SSH connections take For. Eh. Ver. relatively speaking:

      gethotbyaddr + getpeername + gethostbyname

      Try configuring your DNS correctly; the reason it's fast with Google as a remote host is that their DNS is correctly configured.

      No, the reason HTTPS is fast (with respect to a comparison to SSH + gethostbyaddr/etc) is because the webserver isn't doing ANY** reverse DNS. The config change needed would be putting "UseDNS no" in sshd_config.

      There are other slow downs as well. For example, HTTPS normally has nothing to do with authentication, but SSH almost always makes a bunch of attempts for various auth types (GSSAPI, host based, public key (DSA, RSA, ECDSA), keyboard interactive, password). There's a fair bit more back-end-forth for ssh. Just do "ssh -vvv exit | grep -i '\(sent\|receive\)'", and compare that to "openssl s_client -connect www.google.com:443".

      ** in almost all cases this is true, and especially if performance is valued. The most common time it is used is for log resolution (usually done in post-processing) and IP allows by DNS subdomains (which is frowned upon for multiple reasons).

  9. Re:Actually... by Anonymous Coward · · Score: 5, Funny

    Why aren't we using SSH to monitor the computer's microphone?

    We ARE using SSH to monitor your microphone.

    Sincerely,
    The [3 characters redacted]

  10. We ARE using ssh and https for everything by iamacat · · Score: 5, Interesting

    telnet and ftp practically died a while back, http is on the way out. In most corporate environments, other protocols such as X are local only and remote use is over ssh tunnels. IMAP/SMTP takes place over TLS when using decent providers. I guess there is a question of whether SSH and HTTPs should be merged. But a lot of work has been put in both and would be difficult to replicate and make as secure from the start. No hurry.

    The only exceptions are organizations with lax security (like Sony apparently) and cases where security or integrity is completely not an issue. I guess if you broadcast a video as unencrypted UDP over a local network, that's fine.

    1. Re:We ARE using ssh and https for everything by Alioth · · Score: 2

      Unfortunately ftp has far from died. There are so many other organizations I deal with that haven't been hit with the ssh/sftp clue stick and can't do anything other than ftp. Or worse still, ftps which is a firewall administrator's nightmare.

      We even deal with one company who not only refuses to use sftp, but they refuse ftp in passive mode and want us to connect to an ftp server of theirs that only supports active mode. Their admin reckons ftp in passive mode is insecure and won't deal with sftp. Sigh. They are of course a Windows-only shop. Most of the companies who are stuck on ftp are Windows shops.

  11. Public Key, not SSH. by Anonymous Coward · · Score: 3, Interesting

    SSH as a protocol was designed for interactive login, and it has some issues when used for other applications. But there is one key aspect of it that needs to break out of SSH, the public key cryptography part.

    When creating an account on a web site, rather than entering a User ID and password the browser should generate a public-private pair, and send the public part to the other side. Logins can then be done just like SSH does, with a cryptographic exchange.

    The "lost password database" goes away completely. If you got the database on the far end it would only contain public keys, which would not allow logins. The whole "everyone must change their password" nonsense goes away.

    So don't force SSH on us, but let's all work to get more public key based logins.

    1. Re:Public Key, not SSH. by viperidaenz · · Score: 3, Insightful

      The "my hard drive crashed and now all my private keys are gone so I've irreversibly lost access to all my accounts" problem comes up though.
      You also need a secure method of either transferring keys between devices or linking new keys to existing accounts.

  12. Re:Medium.com by IamTheRealMike · · Score: 2

    What's wrong with Medium? It's essentially just a blogging platform, right?

  13. Trust by mrflash818 · · Score: 3, Insightful

    I think, because only a fraction of 'net users are security conscious.

    The rest just use the 'defaults' of their apps and search result links for things like email , online shopping, and online banking, and trust(?) that the people providing the access to their email, online banking, and online shopping, kept them safe.

    --
    Uh, Linux geek since 1999.
  14. Re:PITA by geantvert · · Score: 4, Informative

    Hummm... configuring openssh is really not difficult on most modern Linux distributions.
    Install the openssh packages, execute ssh-keygen once per user and you are basically done.

    The only tricky part for some novice users is to copy the public key to the server (in .ssh/authorized_keys) but recent versions of openssh provide the ssh-copy-id tool that can do that for you.

     

  15. Oh, wait, my bad! by Ecuador · · Score: 2

    I confused medium.com with the other site that is often the target of /. article links. Dammit now I am stuck, I can't remember it, it has a simple name as well, it is one with "scientific" topics but really crap content in a fancy css scrolling article... Sorry about that...

    --
    Violence is the last refuge of the incompetent. Polar Scope Align for iOS
    1. Re:Oh, wait, my bad! by Chelloveck · · Score: 2

      I confused medium.com with the other site that is often the target of /. article links. Dammit now I am stuck, I can't remember it, it has a simple name as well, it is one with "scientific" topics but really crap content in a fancy css scrolling article...

      Sounds like a perfect description of medium.com to me...

      --
      Chelloveck
      I give up on debugging. From now on, SIGSEGV is a feature.
  16. Another idea... by marciot · · Score: 5, Funny

    Condoms are pretty good for safe sex. I think we should be using condoms to protect our bank accounts, for giving everyone safe drinking water, for screening passengers at airports and for securing your valuables in hotel rooms.

  17. Re:The NSA would love it. by Yosho · · Score: 2

    Got any reliable citations for those sources, or is it just the nebulous "some"? I mean, some sources say the NSA has brainwave scanners and can tell what you're thinking from a van outside your house. But those guys are nuts.

    The protocol is an open standard, and anybody who has looked at OpenSSH's source code has "cracked" it. It's not terribly complex. If you're transmitting over an unencrypted connection or using a compromised cipher or key, anybody can figure out what you're doing.

    The real issue (and what you're probably thinking of) is whether the NSA has backdoors in or has cracked different encryption ciphers that are commonly used over SSH. If they have, that's a much more widespread problem than just SSH, because those ciphers are used elsewhere, too (like in HTTPS).

    --
    Karma: Terrifying (mostly affected by atrocities you've committed)
  18. Re:BINGO by achraf52 · · Score: 2

    Not every web service can mail you a physical symmetric cipher, banks maybe, but they focus on making online banking much like PayPal than providing the hardest security they can implement. On the other hand, the SSL/TLS protocol does just what described (symmetric key delivery) in a pretty automatic way, by providing the browser a public key, the browser generates an encryption key locally, encrypts it with the server's public key, then sends it to the server, which will use it for future communications with the client.

  19. Re:BINGO by hey! · · Score: 4, Insightful

    I think you just answered the poster's question, by the way. SSH is quite good for what it does, but what it does doesn't cover every conceivable need.

    A better question might be,"Why aren't we using SSH *in more situations where it might be useful*?"

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  20. compression, cipher, application by raymorris · · Score: 2

    Turn on compression with -C and select a fast cipher with -c

    ssh -C -c blowfish-cbc,arcfour -X

    Also, some applications (Firefox) seem to do all their own per-pixel rendering rather than using appropriate X primitives. For those applications, VNC with a a minimum color palette may work much better, or choose a different application that does the same job.

    Speaking of choosing different applications, consider CLI options. A CLI interface is quite usable at about 64 kbps. I use the GUI only for a browser and email, and occasionally virt-manager. The browser and email can use the socks proxy feature of ssh, so that only leaves virt-manager as the only application I ever forward.

  21. Re: PITA by Sardaukar86 · · Score: 2

    Remote root access is allowed by default on at least some distros.

    So take that up with the maintainers of the (braindead) distros you didn't mention and get something done about it. Your complaint has nothing whatsoever to do with the OpenSSH software itself.

    --
    ..Mullah or Pope, Preacher or Poet, who was it wrote: "Give any one species too much rope and they'll fuck it up"?
  22. Re:Medium.com by arglebargle_xiv · · Score: 4, Funny

    What's wrong with Medium? It's essentially just a blogging platform, right?

    So is Slashdot, if you're Bennett Haselton.

  23. BINGO by Anonymous Coward · · Score: 2, Informative

    Or we could just finally implement DNSSEC, and put the keys (Or, rather, the fingerprint) in the DNS.

    Someone is about to point out that DNS can be subverted and hijacked, even with DNSSEC.

    Well, considering that SSL keys are commonly *emailed* to people, if anyone has subverted your DNS, or anyone's DNS, you're screwed anyway. At least with DNSSEC, it requires hacking into the actual registrar account and changing records there, instead of just tricking the least-secure SSL-issuer's DNS. (And registrars already have pretty good protection against that, considering that stealing domain names was a hobby a few years ago. And if they don't, you can always change registrars, whereas you can't stop insecure SSL-issuers you've never met from existing and issuing bogus keys for you.)

    And with people getting *mailed* SSL keys actually means if the DNS is stolen for a few minutes, which people would never notice (Especially if the attackers are smart enough to just redirect MX records, and hand over every piece of mail *except* the SSL keys.), everyone can run MiTM attacks against people for a *decade* with the key they got mailed. (You could get the key revoked, but only if you know it exists, and pretending that key revocations actually worked.) Whereas with the keys in the DNS, as soon as you fix the DNS, it's fixed, everything's over.