OpenVPN Install 2.0.1
π Release v2.0.1 β Stability, Security & Multi-Distribution Expansion
Release Date: 19 July 2026
This release focuses on broader Linux distribution compatibility, stronger security hardening, improved reliability, and better installation consistency across all supported platforms. It also introduces automatic Easy-RSA version detection to ensure deployments always use the latest upstream release. :contentReference[oaicite:0]{index=0}
β¨ Highlights
- β Added support for RHEL 8, AlmaLinux 8, Rocky Linux 8, and Oracle Linux 8
- π Automatic retrieval of the latest Easy-RSA release from upstream
- π Enhanced security throughout installation, certificate handling, and file management
- β‘ Improved reliability for DNS, firewall, CRL, and Unbound operations
- π οΈ Refined helper functions and logging for easier maintenance
β Added
Linux Distribution Support
- Added native support for:
- RHEL 8
- AlmaLinux 8
- Rocky Linux 8
- Oracle Linux 8
Easy-RSA
- Added dynamic Easy-RSA version detection and download, ensuring the installer always deploys the latest stable upstream release. :contentReference[oaicite:1]{index=1}
π οΈ Improvements
Reliability
- Improved IPv4/IPv6 address discovery using
ip -o - Centralized logging and helper routines
- Improved resolver parsing with full IPv6 resolver support
- More reliable detection of the Unbound service using
systemctl is-active
Firewall
- Improved Firewalld direct rule insertion and removal for fully idempotent behavior
π Bug Fixes
Package Management
- Fixed package removal commands for:
- Arch Linux (Pacman)
- openSUSE (Zypper)
Certificate Management
- Fixed atomic CRL replacement using
mv, preventing temporary VPN interruptions during certificate revocation updates - Removed existing
.ovpnfiles before regeneration to eliminate insecure overwrite scenarios
DNS & Validation
- Hardened IPv4 and IPv6 validation for custom DNS input
- Prevented empty package arguments when firewall packages are not required
System Compatibility
- Improved
/etc/os-releaseparsing while avoiding unnecessary shell state pollution
π Security
- Enforced secure file creation with
umask 077 - Added explicit permission handling using
chmod - Hardened command execution and dependency validation
- Improved uninstall resilience and failure recovery
- Reduced unsafe shell command handling throughout the installer
π Release v2.0.0 β Official Repository Integration & Advanced DNS Support
Release Date: 19 July 2026
Version 2.0.0 is a major feature release introducing official OpenVPN repository integration, 35 public DNS providers, native dual-stack IPv6 DNS support, local Unbound resolver integration, extensive ShellCheck compliance, and comprehensive security hardening.
β¨ Highlights
- π Official OpenVPN 2.6 repository integration
- π 35 integrated public DNS providers
- π Native IPv4 + IPv6 DNS push support
- π‘οΈ Local Unbound recursive resolver with DNSSEC hardening
- β Full ShellCheck compliance improvements
- β‘ Cleaner, modular, and more maintainable codebase
β Added
Official OpenVPN Repository
Added automatic installation from the official OpenVPN repository for:
- Debian
- Ubuntu
- RHEL
- Fedora
Public DNS Providers
Integrated 35 public DNS providers, including:
- Google Public DNS
- Cloudflare (Standard, Security, Family)
- Quad9 (Secure, Unsecured, ECS)
- OpenDNS (Home, FamilyShield)
- AdGuard (Default, Family, Non-Filtering)
- AliDNS
- DNSPod
- 114DNS
- Baidu DNS
- OneDNS
- DNSPai
- CleanBrowsing (Security, Adult, Family)
- Verisign
- DNS.WATCH
- Yandex (Basic, Safe, Family)
- Level3 / Lumen
- Neustar (Default, Threat Protection, Family)
- Oracle Dyn
- Alternate DNS
- Comodo Secure DNS
- Freenom World DNS
Networking
- Added IPv6 DNS push support across all supported DNS providers
- Added Local Unbound Resolver (Option 1) featuring:
- DNSSEC validation
- DNS rebinding protection
- OpenVPN-optimized configuration
Installer
Added new installer components:
installOpenVPNRepo()installUnbound()- Automatic Unbound service validation with retry logic
π οΈ Improvements
Code Quality
- Replaced repetitive DNS case blocks with an array-driven
push_dns()helper - Improved restart validation for Unbound with automatic retry (up to 10 attempts)
- Updated project documentation, headers, feature descriptions, and inline comments
π Bug Fixes
Resolved multiple ShellCheck findings, including:
- SC2164 β Protected all
cdoperations with proper error handling - SC2155 β Separated declaration and assignment
- SC2086 β Properly quoted variable expansions
- SC2006 β Replaced legacy backticks with
$() - SC2166 β Replaced legacy test expressions with modern
[[ ]]
Additional improvements:
- Custom DNS validation now fully supports IPv6 addresses
π Security
Unbound Hardening
Enabled:
hide-identityhide-versionharden-glueharden-dnssec-stripped
Additional protections:
- DNS rebinding protection for RFC1918 private networks
- IPv6 ULA rebinding protection
use-caps-for-id(0x20 encoding) to improve DNS spoofing resistance
π¦ Summary
| Version | Focus |
|---|---|
| v2.0.1 | Platform expansion, reliability improvements, security hardening, Easy-RSA automation |
| v2.0.0 | Official OpenVPN repositories, 35 DNS providers, Unbound integration, IPv6 support, ShellCheck compliance, modular architecture |
Full Changelog: 2.0.0...2.0.1