Jul 26, 2026 · by Daniel J · View source

qsa.sh

External security scan of your own IP, in your terminal

qsa.sh

Editorial analysis

Why a $0 Terminal Security Scan Should Be on Every Cross-Border Seller’s Monday Morning Checklist

If you run an e-commerce operation that touches even a single server you manage yourself — a custom Shopify checkout proxy, an Amazon MWS endpoint, a private scraping cluster, or a back-office tool running on a DigitalOcean droplet — then you have a blind spot that most founders never think about until after the breach. You spend hours optimizing ad bids on TikTok Shop, splitting test creatives for Temu, and aligning your Amazon PPC with Helium 10’s keyword data. But when was the last time you asked: what does my infrastructure look like to a stranger on the internet? Because if your VPS has an open port running an outdated version of OpenSSH, that stranger doesn’t need your password. They just need a script.

That’s why the launch of qsa.sh (Quick Security Audit) on Product Hunt caught my attention. It’s a lightweight tool that lets you run curl qsa.sh in your terminal and get back a real-time scan of your server’s public IP — open ports, running services, and known CVEs — delivered in under 30 seconds with no account creation and no stored data. For a cross-border seller managing a growing stack of tools and third-party integrations, that kind of frictionless security audit is rare. But as I dug into the comments and the product’s design, I found a tool that is both brilliant for its niche and dangerously easy to misinterpret for anyone running a modern cloud-native or serverless architecture. Let me break down what it actually does, where it fits into your workflow, and where I think it falls short.

What Problem Does qsa.sh Actually Solve?

Every cross-border seller eventually hits a moment where they need to run a custom integration, a scraper, or a headless storefront on their own infrastructure. Maybe it’s a private Python script that cross-references Amazon pricing data, a custom inventory feed for a marketplace that doesn’t offer an API, or a small Node.js server that powers a storefront’s recommendation engine. You spin up a cheap VPS, install the stack, and forget about it. Six months later, that box has four open ports you didn’t know about, and one of them is running an old version of nginx with a known vulnerability.

The core problem qsa.sh solves is the visibility gap. Most small-to-medium e-commerce operators don’t have a dedicated security engineer. They might run nmap once or twice, but maintaining an up-to-date vulnerability database, running full port scans, and understanding the output is a side project that never gets done. The tool combines naabu, nmap plus the vulners database, and nuclei — all powerful open-source tools — into a single command that requires zero setup. The free scan checks the most common ports; the paid Pro tier ($?? not disclosed) scans all 65,535 ports asynchronously, and the one-time Deep tier runs the entire nuclei template collection and emails you the results.

What matters to a seller is the friction removal. You don’t need to install anything, sign up for an account, or even understand what a CVE is. You run one command, and you get a plain-text report that says “Port 22 is open, running OpenSSH 8.9p1 — here are the known vulnerabilities.” That’s the kind of directness that saves you from a weekend panic when your site gets defaced because you forgot to update a library.

And yet, the tool is explicitly not a full pentesting platform. It’s more like a quick health check. Compare it to something like ZeroThreat.ai (AI-powered automated pentesting) or Astra Security (enterprise pentest platform) — those are designed for deep, compliance-grade audits that might take hours and generate 50-page PDFs. qsa.sh is the opposite: it’s a 30-second external selfie. For the cross-border operator, that’s often enough to prevent the most common attack vectors: exposed SSH, outdated web servers, or a forgotten Redis port.

How It Differs from Running nmap Yourself

If you’re a technical operator, you might be thinking: “I could just run nmap -sV -p- my-ip.” And you’re right, but there are three differences that matter in practice.

First, up-to-date vulnerability intelligence. The vulners integration means the scan not only tells you what version of a service is running, but cross-references it against the CVE database. If you run nmap yourself, you have to manually look up each version string. That takes time you don’t have when you’re also managing a fragmented supply chain across Amazon, Etsy, and TikTok Shop. Second, no infrastructure overhead. Running a full vulnerability scan from your own machine might trip your ISP’s usage policies or get your home IP blacklisted. qsa.sh runs the scan from its own servers — the curl command simply sends your public IP to their backend, which does the heavy lifting. Third, the consent and abort window. The tool waits 15 seconds before starting the scan, giving you a chance to cancel. That’s a subtle but brilliant piece of UX design that distinguishes it from the “pipe to bash” security nightmares we’ve all seen.

But there’s a catch that the Product Hunt comments reveal. The maker, Daniel J, explains that the tool uses IP intelligence from WorldIP.io to classify the requesting IP and actively refuses scans from detected proxies, VPNs, mobile devices, and Cloud platforms. That means if you’re running your entire e-commerce infrastructure on Cloudflare Workers or AWS Lambda — fully serverless with no traditional server IP — you can’t use qsa.sh to scan those endpoints. The tool is firmly aimed at VPS and bare-metal server setups. For the growing number of sellers who have migrated their storefront to serverless (e.g., a Next.js store on Vercel with a headless Shopify backend), this is a hard limitation.

Why Amazon Sellers Should Care More Than Shopify Ones

This is where I want to call out a specific audience: Amazon FBA sellers who manage their own off-Amazon infrastructure. A Shopify store owner typically doesn’t worry about server-level vulnerabilities because Shopify handles the hosting, SSL, and most security layers. Sure, you might have a custom app or a private storefront, but the core attack surface is narrow. An Amazon seller, on the other hand, often runs complex data pipelines: scraping tools to monitor competitor pricing, custom inventory sync scripts that talk to Amazon’s SP-API, or third-party PPC management software that holds your API keys. Those pipelines run on your own servers — often a cheap $10/month VPS from DigitalOcean or Linode.

I’ve seen too many Amazon operators leave a public-facing port for a custom script that uses HTTP instead of HTTPS, exposing API tokens in plain text. qsa.sh would catch that in 30 seconds. It’s also useful for auditing the security posture of your third-party tools. If you use a SaaS like Helium 10 or Klaviyo, you don’t need to scan their servers — but if you connect those tools to your own custom middleware running on a VPS, that middleware is a risk. Running curl qsa.sh once a month from that middleware server gives you a free baseline check.

Where the tool could be improved is in providing an ongoing alert capability. The maker mentioned in comments that he plans to write a blog post on setting up a crontab-based diff checker to auto-alert when new vulnerabilities pop up. For an Amazon seller with 20,000 SKUs and a sleeping 3PL integration server, that alert could be the difference between a quiet Tuesday and a call from your bank about unauthorized transactions.

What Cross-Border Sellers Can Borrow from the Philosophy of qsa.sh

Beyond the tool itself, there’s a mindset shift here that’s valuable: defense in depth doesn’t require enterprise budgets. The core qsa.sh model — a single command that gives you an external view with zero friction — is a pattern you can apply to your broader operations. Think about how you audit your marketplace accounts: do you have a single command or dashboard that shows you, from the outside, every place your data lives? Probably not.

Here are three concrete ideas operators can steal from this launch:

  1. Run it as a weekly cron job. Even if you only use the free tier (which scans common ports), setting up a cron to run curl qsa.sh every Sunday morning and pipe the output to a file that you diff against the previous week is a low-effort way to catch unexpected changes. If a new port suddenly appears, you know something — or someone — has modified your server.

  2. Use the “external selfie” for vendor onboarding. If you’re hiring a developer or a third-party fulfillment integrator who needs access to your server, ask them to run curl qsa.sh from a test box before you grant root access. It’s a quick sanity check that their own setup isn’t already compromised. This is especially relevant for cross-border teams where you might not meet your co-developers in person.

  3. Extend the logic to your SaaS tool chain. The tool demonstrates that the simplest security check is an external one. You can apply that same principle by running regular external audits on your store’s frontend: use tools like SecurityHeaders.com or SSL Labs to check your Shopify or custom domain from the internet’s perspective. Don’t assume your hosting provider has it handled.

Where the Math Breaks: The Trust and Scope Gaps

I’d be doing you a disservice if I didn’t point out the limitations that the Product Hunt commenters rightly raised. The most heated exchange revolved around the trust model of running curl qsa.sh. André J of DiffSense argued that any curl command that returns output could theoretically be a vector for exfiltration, even if it doesn’t pipe to bash. The maker clarified that it’s just an HTTP request — no code executes on your machine. But from a psychological and operational standpoint, asking a cross-border seller to run curl on their production server is a high bar. Many compliance departments would block that on principle. The tool is not open source (the wrapper is closed, though the underlying scanners are open), which adds opacity. For smaller teams, this might be acceptable. For anyone managing PCI or PII data, it’s a red flag.

Then there’s the serverless gap. The maker acknowledged that fully serverless setups (like Cloudflare Workers) cannot be scanned because there’s no traditional IP to target. That’s a growing demographic. More and more cross-border sellers are moving their storefront logic to edge functions. If you’re one of them, qsa.sh is almost irrelevant for your primary infrastructure — though you might still use it for secondary servers.

Finally, the tool is a static snapshot. It doesn’t test authenticated endpoints, business logic, or API vulnerabilities. For an e-commerce operator, the most common attack surface is often your own API keys, not your open ports. If you expose a misconfigured GraphQL endpoint that returns customer data, curl qsa.sh won’t help you. It’s a port scanner, not an application security assessment.

My Judgment: Valuable as a Free Layer, Not a Replacement for Real Audits

I would recommend qsa.sh to any cross-border seller who manages at least one physical or virtual server that is accessible to the public internet. The free scan is genuinely useful and costs nothing. The Pro and Deep tiers are reasonably priced (though not disclosed on the Product Hunt page — you’ll have to check the qsa.sh website). For a $10/month server that handles your Amazon repricing logic, spending $10 on a one-time deep scan every quarter is a no-brainer.

But treat it as what it is: a quick external check, not a comprehensive security program. You still need to patch your software, rotate your API keys, and monitor your application logs. The tool’s value is in raising your baseline awareness. Most sellers never even get that far.

What I’d like to see in a future version: a simple API endpoint that you can integrate into your CI/CD pipeline. If you push a new container update to your server, you should be able to trigger an automated scan of the new version and block the deployment if a known CVE appears. That would make it a genuine security layer for sellers who automate their infrastructure.

What I’d Watch / Test Next

This week, here’s what I’d do if I were you:

  1. SSH into your most critical VPS — the one that connects to your Amazon SP-API key or your Shopify admin API — and run curl qsa.sh. Watch the 15-second countdown, then read the output. If you see ports like 22 (SSH) wide open, immediately restrict access by IP or disable password auth. If you see a service version that’s older than a year, schedule an update for this weekend.

  2. Set up a weekly cron job as the maker suggested: curl qsa.sh > /var/log/qsa_$(date +%Y%m%d).txt and create a simple diff script that emails you if the result changes. This takes 10 minutes and gives you a proactive alert system.

  3. Test the Pro tier on a staging or non-production server first. Run a full port scan to see what lurks on high-numbered ports. Post on a community like r/FulfillmentByAmazon or the Creative Tim forums with your findings — the visibility helps the whole ecosystem.

  4. If you’re fully serverless, skip qsa.sh for now but file the philosophy away. Use it as a reminder that your external security posture should be audited regularly. Explore tools like Cloudflare’s own security scans or a free trial of Astra Security for a more thorough web application assessment.

The e-commerce world is moving fast — new marketplaces like Temu and SHEIN, new ad platforms, new logistics integrations. Your security stack has to move just as fast. A tool that gives you a 30-second external view with no signup is a rare gift. Use it, but don’t trust it blindly. Trust your own eyes, your own updates, and your own curiosity. And maybe run another curl qsa.sh next Monday morning — just to see if anything changed while you were busy launching that new TikTok Shop campaign.

Ready to Create Your Own?

Join thousands of brands creating high-performing video ads with VEONIB. No editing skills required.

Start Creating for Free