Hardening

What is Hardening ?

Introduction

You can patch your apps, scan your code, and still be exposed — if your system isn’t properly hardened. But what does hardening actually mean?

Let’s take a closer look.


1. What is Hardening?

Hardening is the process of securing a system by reducing its attack surface. That means:

  • Removing unnecessary components
  • Disabling unused services
  • Locking down default configurations

The goal is to minimize the ways an attacker can get in.


2. What can you harden?

Hardening applies to everything in your infrastructure:

  • Operating systems (Linux, Windows)
  • Containers & images
  • Network configurations
  • Cloud environments
  • CI/CD pipelines
  • Applications & APIs

Each layer has its own set of best practices.


3. Examples of Hardening

  • Disable root login over SSH
  • Close unused ports and services
  • Remove default credentials
  • Apply strict file permissions
  • Limit installed packages
  • Use minimal base images for containers
  • Enable audit logs and monitoring

4. Hardening Standards and Benchmarks

To help guide the process, there are official security benchmarks such as:

  • CIS Benchmarks (Center for Internet Security)
  • DISA STIGs (U.S. DoD)
  • NIST SP 800-53 (U.S. cybersecurity framework)

Tools like Lynis, OpenSCAP, or CIS-CAT can scan systems against these benchmarks.


5. Why Hardening Matters in DevSecOps

  • Prevents default misconfigurations from becoming vulnerabilities
  • Improves baseline security posture
  • Helps with compliance (e.g. ISO 27001, SOC 2)
  • Reduces noise for security monitoring tools

In short, it’s a foundational practice for building secure-by-default systems.


Conclusion

Hardening means locking down your systems to reduce risk — stripping away anything that isn’t needed, and securing what is. It’s one of the simplest, most powerful ways to defend against attacks.
That’s what hardening is.