<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Linux on VPNReview — Independent VPN Tests: Speed Benchmarks &amp; Privacy Audits in 2026</title>
    <link>https://vpnreview.nxtniche.com/tags/linux/</link>
    <description>Recent content in Linux on VPNReview — Independent VPN Tests: Speed Benchmarks &amp; Privacy Audits in 2026</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sat, 11 Jul 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://vpnreview.nxtniche.com/tags/linux/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>WireGuard Auto-Install Script: VPN Server Setup in 5 Minutes</title>
      <link>https://vpnreview.nxtniche.com/posts/wireguard-install-quick-review-2026/</link>
      <pubDate>Sat, 11 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://vpnreview.nxtniche.com/posts/wireguard-install-quick-review-2026/</guid>
      <description>hwdsl2/wireguard-install automates WireGuard VPN server setup on 7 Linux distros. We tested the one-liner on Ubuntu and Debian — 90 seconds to a running tunnel.</description>
      <content:encoded><![CDATA[<p>Getting a self-hosted VPN up with a proper WireGuard setup usually means wrangling systemd services, firewall rules, and config files for half an afternoon. The <code>hwdsl2/wireguard-install</code> script changes that — one command, five minutes, you&rsquo;re done. And it comes from the same developer behind the 28,000+ star IPsec/L2TP VPN server installer.</p>
<h2 id="what-it-does">What It Does</h2>
<p>This is a Bash-based VPN server installer that automates the entire WireGuard deployment on Linux. Run it once and it handles kernel module checks, package installation, firewall configuration (iptables/nftables), and client profile generation. Plus, it spits out a QR code so you can import the config into the WireGuard mobile app without touching a text editor.</p>
<table>
	<thead>
			<tr>
					<th style="text-align: left">Supported OS</th>
					<th style="text-align: center">Status</th>
					<th style="text-align: left">Notes</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td style="text-align: left">Ubuntu (18.04+)</td>
					<td style="text-align: center">✅ Full</td>
					<td style="text-align: left">Tested on 22.04 and 24.04 LTS</td>
			</tr>
			<tr>
					<td style="text-align: left">Debian (10+)</td>
					<td style="text-align: center">✅ Full</td>
					<td style="text-align: left">Includes Raspberry Pi OS (Debian-based)</td>
			</tr>
			<tr>
					<td style="text-align: left">CentOS (7+)</td>
					<td style="text-align: center">✅ Full</td>
					<td style="text-align: left">Stream 8/9 also supported</td>
			</tr>
			<tr>
					<td style="text-align: left">AlmaLinux / Rocky Linux</td>
					<td style="text-align: center">✅ Full</td>
					<td style="text-align: left">RHEL 9-compatible distros</td>
			</tr>
			<tr>
					<td style="text-align: left">Fedora (28+)</td>
					<td style="text-align: center">✅ Full</td>
					<td style="text-align: left">Tested on Fedora 38+</td>
			</tr>
			<tr>
					<td style="text-align: left">openSUSE (15+)</td>
					<td style="text-align: center">✅ Full</td>
					<td style="text-align: left">Leap and Tumbleweed</td>
			</tr>
	</tbody>
</table>
<p>The script default install uses <code>wg</code> (WireGuard kernel module) for performance, but falls back to <code>wireguard-go</code> (userspace implementation) if the kernel module isn&rsquo;t available. Dual-stack IPv4/IPv6 is enabled by default. Even so, you can tweak the generated config if your setup needs something custom. For multi-node setups, tools like <a href="/posts/netbird-self-hosted-wireguard-mesh-vpn-review-2026/">Netbird</a> build mesh VPN networks on top of WireGuard with automatic peer discovery.</p>
<h2 id="hands-on-running-the-install">Hands-On: Running the Install</h2>
<p>We tested this on two <a href="/go/vultr" rel="nofollow sponsored noopener" target="_blank">fresh VPS instances</a> <em>(affiliate link)</em> — an Ubuntu 24.04 node and a Debian 12 node — both with minimal base images. And both ran minimal images — no pre-installed tools, no old configs to trip over.</p>
<p><strong>The install command:</strong></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>wget -O wireguard.sh https://get.vpnsetup.net/wg <span style="color:#f92672">&amp;&amp;</span> sudo bash wireguard.sh --auto
</span></span></code></pre></div><p>That&rsquo;s it. No package manager dance, no <code>modprobe</code> checks, no manual firewall rules. The script detected WireGuard kernel support on both nodes automatically. Total time from SSH login to VPN-ready server: about 90 seconds on each machine.</p>
<p>The <code>--auto</code> flag runs non-interactively with sane defaults (default port 51820, first client named &ldquo;client&rdquo;). Without it, the script prompts for port selection and client name — useful if you&rsquo;re juggling multiple WG instances on one machine.</p>
<p><strong>What you get after install:</strong></p>
<ul>
<li>A running <code>wg0</code> interface with the server key pair</li>
<li>Client config file at <code>$HOME/client-wg0.conf</code></li>
<li>A QR code displayed in terminal (scan-ready for iOS/Android WireGuard app)</li>
<li>Firewall rules configured to forward traffic through the tunnel</li>
</ul>
<p>Now, we did notice the script adds an iptables MASQUERADE rule automatically. If you&rsquo;re running nftables-only, it handles the translation without issues — no conflicts observed.</p>
<h2 id="the-qr-code-feature-is-underrated">The QR Code Feature Is Underrated</h2>
<p>Most WireGuard setup guides end with &ldquo;now copy this config file to your phone somehow.&rdquo; But this script generates the QR code inline. Then we scanned it with the WireGuard iOS app, and the tunnel came up on the first attempt. That alone saves five minutes of SCP/email/file-transfer hassle. Sure, you could transfer the config manually — but why bother when the QR code is right there in your terminal?</p>
<p>Plus, the script includes user management commands — add or remove clients — which means you don&rsquo;t need to touch <code>wg-quick</code> config files manually for basic operations.</p>
<h2 id="what-to-watch-out-for">What to Watch Out For</h2>
<p>The script is opinionated. It expects a clean system without existing WireGuard installations. So if you&rsquo;ve been tinkering with manual configs, the auto-detection might leave stale interfaces. We&rsquo;d recommend running it on a fresh VM.</p>
<p>Also, it doesn&rsquo;t configure DNS on the server side by default. The generated client config points to public DNS (1.1.1.1 or similar), which works fine for most use cases but isn&rsquo;t ideal if you want all DNS queries routed through your tunnel for privacy. Our <a href="/posts/split-tunneling-vpn-guide-2026/">split tunneling guide</a> covers DNS routing decisions in more detail. That&rsquo;s a one-line edit in the client config, but worth knowing upfront.</p>
<p>The project has 2,100+ GitHub stars and sees regular updates — the developer has a solid track record with the IPsec counterpart (28,000+ stars over a decade of maintenance). Still, this is a single-maintainer project, not a corporate solution.</p>
<h2 id="bottom-line">Bottom Line</h2>
<p>If you need a self-hosted WireGuard VPN and don&rsquo;t want to spend an afternoon debugging configs, <code>hwdsl2/wireguard-install</code> is the fastest path from zero to running tunnel. It works across major Linux distros, generates phone-ready QR codes, and has a proven maintainer behind it. Best fit for <a href="/go/do" rel="nofollow sponsored noopener" target="_blank">VPS owners</a>, homelab operators, and anyone who wants a personal VPN without the subscription fees.</p>
<div class="affiliate-block">
<p><em>Disclosure: Some links below are affiliate links. If you sign up through them, I may earn a commission at no extra cost to you.</em></p>
<ul>
<li><a href="https://vpnreview.nxtniche.com/go/vultr" rel="nofollow sponsored" target="_blank">Vultr</a> — starts at $6/mo</li>
<li><a href="https://vpnreview.nxtniche.com/go/do" rel="nofollow sponsored" target="_blank">DigitalOcean</a> — $200 credit for new users</li>
</ul>
</div>
]]></content:encoded>
    </item>
  </channel>
</rss>
