Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K

    Smallstep Blog

    smallstep.com · Company blog · on HN since 2018

    Company blog from Smallstep, which makes tools for running private certificate authorities, SSH certificates and PKI.

    Visit blogHN submissions
    SecurityDevOps & CloudNetworking
    What HN says

    HN commenters recommend Smallstep and step-ca for issuing certificates to homelab and internal services, needing only one CA in the trust store.

    Stats for nerds
    95HN people shared it
    60linked in comments
    4.7Kstory points
    Aug 2026last shared
    2019people per year2026

    Top posts on HN

    1. 1
      If OpenSSL were a GUI
      5 people · 947 points · first shared 2022 · 234 comments on HN
    2. 2
      SSH hacks – a little sanity for remote workers
      1 person · 770 points · first shared 2020 · 227 comments on HN
    3. 3
      If you’re not using SSH certificates you’re doing SSH wrong (2019)
      14 people · 561 points · first shared 2019 · 336 comments on HN
    4. 4
      Build a tiny CA for your homelab with a Raspberry Pi
      7 people · 434 points · first shared 2020 · 81 comments on HN
    5. 5
      SSH Agent Explained
      2 people · 396 points · first shared 2020 · 48 comments on HN
    6. 6
      Everything you should know about certificates and PKI but are too afraid to ask
      2 people · 387 points · first shared 2018 · 52 comments on HN
    7. 7
      How to handle secrets on the command line
      3 people · 325 points · first shared 2021 · 75 comments on HN
    8. 8
      WPA3 Enterprise 192-bit mode at home
      1 person · 289 points · first shared 2024 · 193 comments on HN
    9. 9
      SSH Emergency Access
      2 people · 170 points · first shared 2020 · 72 comments on HN
    10. 10
      The Poetics of CLI Command Names
      2 people · 117 points · first shared 2020 · 75 comments on HN

    What HN people wrote when they linked it

    • ivanrJan 2022

      > By the way, EasyRSA still isn't that easy, but it's better than using OpenSSL directly.

      The trouble with EasyRSA (and similar tools) is that they make decisions for you and restrict what's possible and how. For example, I would always use name constraints with private roots, for extra security. But you're right about OpenSSL; to use it directly requires a significant time investment to understand enough about PKI.

      I tried to address this problem with documentation and templates. Here's a step by step guide for creating a private CA using OpenSSL, including intermediate certificates (enabling the root to be kept offline), revocation, and so on: https://www.feistyduck.com/library/openssl-cookbook/online/ch-openssl.html#openssl-private-ca Every aspect is configurable, and here are the configuration templates: https://github.com/ivanr/bulletproof-tls/tree/master/private-ca

      Doing something like this by hand is a fantastic way to learn more about PKI. I know I enjoyed it very much. It's much easier to handle because you're not starting from scratch.

      Others in this thread have mentioned SmallStep's STEP-CA, which comes with ACME support: https://smallstep.com/docs/step-ca/getting-started That's definitely worth considering as well.

      EDIT The last time I checked, Google's CA-as-a-service was quite affordable https://cloud.google.com/certificate-authority-service AWS has one too, but there's a high minimum monthly fee. Personally, if the budget allows for it, I would go with…

    • bfirshDec 2020

      Hello HN!

      We’re Ben, Aanand, Carl, Eva, and Mark, and we made the Command Line Interface Guidelines.

      Earlier this year, I was working on the Replicate CLI [0]. I had previously worked on Docker so I had a bunch of accumulated knowledge about what makes a good CLI, but I wanted to make Replicate really good, so I looked for some design guides or best practices. Turns out, nothing substantial had been published since the 1980s.

      On this search I found a superb blog post by Carl about CLI naming [1]. He must be the only person in the world who cares about CLI design and is actually a good writer, so we teamed up. We also were joined by Aanand, who did loads of work on the Docker CLIs; Eva, who is a technical writer, to turn our scrappy ideas into a real piece of writing; and Mark, who typeset it and made a super design.

      We love the CLI, but so much of it is a mess and hard to use. This is our attempt to make the CLI a better place. If you’re making a tool, we hope this is useful for you, and would love to hear your feedback.

      Some of it is a bit opinionated, so feel free to challenge our ideas here or on GitHub! [2] We’ve also got a Discord server if you want to talk CLI design. [3]

      [0] https://replicate.ai/

      [1] https://smallstep.com/blog/the-poetics-of-cli-command-names/

      [2] https://github.com/cli-guidelines/cli-guidelines

      [3] https://discord.gg/EbAW5rUCkE

    • jamal-kumarMar 2022

      Hmm interesting.

      Considering memory corruption vulnerabilities have been pretty much the vast rarity in the OpenSSH codebase, and other classes of vulnerabilties have been more common, I'm curious to know what you're doing to address those classes of vulnerabilities as well as support for other best practices like SSH certificates? [2]

      I think I see the appeal of an entirely memory-safe OS running an entirely memory-safe SSH implementation because if we're talking about eliminating that class of vulnerability, you might as well go the whole hog - I just don't see that close to the point of being battle tested yet nor taking care of stuff like side channel attacks or tricking people into thinking their TOFU isn't smelly. I like your project because I think that this stuff is important, I think it's just like "how do you improve on the original" may actually be more than just eliminating one class of vuln.

      [1] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=openssh
      [2] https://smallstep.com/blog/use-ssh-certificates/

    • umactually1Jan 2024

      Agree.

      It triggers me a little when folks complain about HTTPS. Nowadays you have a wealth of tools to trivialize TLS certificate tasks.

      Public TLS cert? LetsEncrypt + certbot (or any of the other zillion great ACME clients/libraries out there).

      Self-hosted PKI for private/test use? Smallstep CLI (https://smallstep.com/docs/step-cli/) is good. And honestly, the raw `openssl` commands to barf out a root selfsigned cert aren't that difficult and number as less than 5 shell invocations that you could have in your history or a bash function or something.

      Self-hosted PKI with extra steps that you already did because you have a Kubernetes cluster for some other reason? cert-manager will take care of pretty much everything.

      These days the "hardest" part is sneaking your CA chain into the appropriate browsers / services you're using/testing, but even that is a few moments of inconvenience at best.

    • gerdesjNov 2025

      Unix starts at root, which is how nature intended. It does not change characteristics based on media - you can mount a floppy at root if you want.

      Why get upset over /media vs /mnt? You do you, I know I do.

      For example The Step CA docs encourage using /etc/step-ca/ (https://smallstep.com/docs/step-ca/certificate-authority-server-production/#running-step-ca-as-a-daemon) for configuration for their product. Normally I would agree but as I am manually installing this thing myself and not following any of the usual docs, I've gone for /srv/step-ca.

      I think we get enough direction from the ... "standards" ... for Unix file system layouts that any reasonably incompetent admin can find out which one is being mildly abused today and get a job done. On Windows ... good luck. I've been a sysadmin for both platforms for roughly 30 years and Windows is even odder than Unix.

    • mmaloneApr 2020

      Check out our single sign-on for SSH stuff at smallstep (where I work). Either in open source[1] or our product[2]. The hassle of 2FAing all the time is one of the big reasons I love single sign-on for SSH. Basically, you do 2FA when you're pushed through single sign-on. But then you're issued a short-lived certificate that gets put in your ssh-agent. You only need to 2FA to get a certificate. So you can tune 2FA challenge frequency based on certificate lifetime.

      It's sort of like a browser session where you "login" and then you can browse until your cookie expires. Here you "login" and you can SSH until your certificate expires. So you have strong authentication, but you're only asked to do it periodically.

      [1] https://smallstep.com/blog/diy-single-sign-on-for-ssh/

      [2] https://smallstep.com/sso-ssh/

    Related

    Let's Encrypt Blogletsencrypt.org636 people

    Let's Encrypt Root Trusted by All Major Root Programs

    Let's Encrypt Blog
    Company · last shared 2026
    Datadog Security Labssecuritylabs.datadoghq.com29 people

    Investigating a backdoored PyPI package targeting FastAPI applications

    Datadog Security Labs
    Company · last shared 2026
    Qualys Blogblog.qualys.com65 people

    SSL Labs in 2016 and Beyond

    Qualys Blog
    Company · last shared 2026
    Google Online Security Bloggoogleonlinesecurity.blogspot.com225 people

    No More Deceptive Download Buttons

    Google Online Security Blog
    Company · last shared 2016
    Gravitational Bloggravitational.com57 people

    How to SSH Properly

    Gravitational Blog
    Company · last shared 2020
    Teleport Bloggoteleport.com59 people

    SSH Bastion Host Best Practices

    Teleport Blog
    Company · last shared 2026
    GitHub Bloggithub.blog1.8k people

    YouTube-dl's repository has been restored

    GitHub Blog
    Company · last shared 2026
    Ivan Ristićblog.ivanristic.com20 people

    SSL Labs: Stricter security requirements for 2014

    Ivan Ristić
    Personal · last shared 2023