Build your OWN WireGuard VPN! Here's how

Sdílet
Vložit
  • čas přidán 31. 05. 2024
  • Get an exclusive Surfshark deal! Enter promo code REDSHIRTJEFF for an extra 3 months free at surfshark.deals/REDSHIRTJEFF
    Support me on Patreon: / geerlingguy
    Sponsor me on GitHub: github.com/sponsors/geerlingguy
    Merch: redshirtjeff.com
    2nd Channel: / geerlingengineering
    #Sponsored #RaspberryPi #VPN
    Links to everything mentioned in this video:
    - PiVPN: pivpn.io
    - Surfshark (extra 3 months free): surfshark.deals/REDSHIRTJEFF
    - First five minutes Linux security with Ansible: • Ansible 101 - Episode ...
    - RedShirtJeff.com 'It was DNS' shirt: redshirtjeff.com/listing/it-w...
    Contents:
    00:00 - I need my OWN VPN
    00:32 - What you need
    01:57 - Sometimes you need a different KIND of VPN
    02:59 - PiVPN on a Pi
    03:47 - PiVPN Setup
    05:34 - Security - you've been warned
    06:17 - Setting up our first VPN connection
    07:41 - Speeeeed
    08:17 - Home Assistant from anywhere on my iPhone
    09:06 - Debugging VPN problems
    09:49 - No Static IP? No problem!
    11:02 - CG-NAT? Yeah, that's a problem
    11:55 - Do you really need your own VPN?
  • Věda a technologie

Komentáře • 594

  • @MarcoGPUtuber
    @MarcoGPUtuber Před rokem +500

    This video is sponsored by Jeff Geerling VPN!

    • @RAM_845
      @RAM_845 Před rokem +4

      You're everywhere bro lol..Mainly on @TechYESCity hehe

    • @MarcoGPUtuber
      @MarcoGPUtuber Před rokem +11

      @@RAM_845 Hahah. I comment on people I like to support. Especially if I talk with them outside of CZcams.

    • @pandaDotDragon
      @pandaDotDragon Před rokem +4

      😆

    • @RAM_845
      @RAM_845 Před rokem +1

      @@MarcoGPUtuber True that haha You know ages ago I thought you were Brian's brother haha

    • @feniX0nE27
      @feniX0nE27 Před rokem

      🤭

  • @lewismassie
    @lewismassie Před rokem +358

    I'm extremely impressed with the terminal output being a QR code. What a delightfully clever system

    • @JK-mo2ov
      @JK-mo2ov Před rokem +16

      “Ok so he’ll copy and open it on something else…oh never mind.” That caught me off guard that even works.

    • @stefanmisch5272
      @stefanmisch5272 Před rokem +2

      Has anyone already decoded it? 😅

    • @iamvinku
      @iamvinku Před rokem +7

      @@stefanmisch5272 it's a Wireguard tunnel config file but the endpoint is spoofed of course and unusable

    • @AlKaBen
      @AlKaBen Před rokem

      It basically comes with wireguard server out of the box

    • @marcello4258
      @marcello4258 Před rokem

      The qr code is not really a useful thing .. would make sense just getting the token

  • @miniskulljob
    @miniskulljob Před rokem +169

    For the dynamic DNS issue, I use Duck DNS, which is free and lets you update your IP with a simple curl call which you can execute in a cron task. This way, you'll always have your IP up to date.

    • @sophiophile
      @sophiophile Před rokem +5

      I'm sure someone like Jeff owns his own domain. If he hosts the primary NS himself, it's easy as pie. If it's hosted by Google Domains, also easy as pie.

    • @jan_harald
      @jan_harald Před rokem +12

      @@sophiophile well, not easy as pie exactly, self-hosted, you would need to set up some way to actually update that, which would probably mean setting up stuff like TSIG keys and whatever, and then using those keys on the machine updating the records, and such...but yeah, it's not that hard either, and most dns hosting services do indeed have pretty easy APIs

    • @miniskulljob
      @miniskulljob Před rokem +5

      @@sophiophile he said in the video that he uses a vps to send the IP to it, and then manually change it in the DNS records of his domain.
      Also, I don’t know why are you telling this to me. I just shared an option that I think it’s quite good, like many others shared their own options.

    • @jan_harald
      @jan_harald Před rokem +3

      @@lidbergtech neither cloudflare nor zerotier can be self-hosted, lol
      but sure, it's easy to use one of the many ways to get the job done, if you don't care about that
      and do note we were talking about "If he hosts the primary NS himself", not "how can it possibly be done"

    • @StooStranger
      @StooStranger Před rokem

      I use Google Domain + DDNS on my Edgerouter, now same thing on my OPNSense box. Pretty much plug and play

  • @thebeatconnect1
    @thebeatconnect1 Před rokem +47

    For people with CGNAT, what you can do is setup a VPS as the middle man. Setup wireguard onto the vps and on a device on your home network, and you can setup wireguard on the vps to forward requests or ports to your home network. This is basically what services such as tailscale do.
    I use this setup to host a mail server on my local network. No need to open ports on my network

    • @sporqist
      @sporqist Před rokem +2

      This. Relatively easy to setup, you can host servers literally anywhere* as long as there is internet and it's super flexible. Just remember to have the clients keep their connection alive so the VPS is allowed to talk back to them.

    • @cvetelingeorgiev1527
      @cvetelingeorgiev1527 Před 10 měsíci

      What if I have a corporate network with public static IP and I want to establish a VPN between that and the LAN network of a 4G broadband router behind CGNAT. I need to access an IP camera in that 4G router's LAN

    • @MiguelSantos-wp1ym
      @MiguelSantos-wp1ym Před 3 měsíci +1

      Or just use IPv6

  • @GreenCinco12Official
    @GreenCinco12Official Před rokem +19

    One thing to add (especially for macbook/iphone/ipad, not tried it on windows/android):
    If you still want to use your private vpn for security reasons (like public wifi) you can enable "On Demand Activation" in the client. Then activate whatever you need and set your home wifi SSID as an exception. This way if you have enabled the vpn profile it will automatically connect to your vpn whenever you're not at home (depends on your configuration).
    Really helpful if you have public wifis that are set to automatically connect and you are in range without knowing it.
    You have to disable split tunnel (or change the allowed IPs correct) but I'm not 100% sure how to do that at the moment.
    I suggest you create a second profile for it but importing the same profile a second time works when you name it something else.

  • @jordanmccallum1234
    @jordanmccallum1234 Před rokem +40

    If you need a privately hosted VPN and must be behind a CG-NAT, your best bet is to set up set up a one-to-many IPSec tunnel with NAT traversal. It'll require a bunch more setup & understanding of networks, so for most people Tailscale & Zerotier are better, but it can be done.
    Also minor thing, no RaspberryPi has cryptographic extensions, which is why it's so slow. If you need more speed it's *possible* you've got a router with AES-NI instructions, otherwise your home PC, old laptop, or an SBC that's a little beefier than a Pi would do the trick.

    • @-argih
      @-argih Před rokem +3

      Tailscale have been working wonders for me, is technically an overlay network but is using wireguard under the hood, they have clients for Truenas (using the truecharts repo), OpenWRT, PFsense and even there are some experimental clients for RouterOS (mikrotik). I'm limited by my 10mbps upload speed but the overhead is not so much so I can stream 1080p content without transcoding.

    • @francocastilloAR
      @francocastilloAR Před rokem +4

      WireGuard does not take advantage of AES-NI.

    • @enochliu8316
      @enochliu8316 Před 2 měsíci

      Wireguard does not uses AES, but ChaCha, a cipher that works faster on this machine. It uses ARX instructions.

  • @CarMaintenanceGuy
    @CarMaintenanceGuy Před 6 měsíci +3

    I already had Pi-Hole installed. I followed this video after pausing, replaying at a slow speed to see what I was missing. I was able to get the VPN running perfectly on my Pi 4 Model B with my Samsung 22 Ultra. It worked so effortlessly on the first try. Now I can use public wifi and not be worried about people monitoring what I an doing. Thanks for posting this video.

  • @thewebmachine
    @thewebmachine Před rokem +11

    1:36 traceroute can also show more than one hop if you are using a separate router from your ISP's modem. In that case, you'd likely see two hops, one of which is the router in front of the modem.

    • @JeffGeerling
      @JeffGeerling  Před rokem +1

      Ah true. So not a bulletproof method!

    • @thewebmachine
      @thewebmachine Před rokem +3

      Indeed, but if you know enough to put a 3rd party router in, you likely already know enough to figure that out...or setup the VPN on your router and eliminate the need for a separate VPN server. Of course, router VPN servers tend to be a bit slower due to low end SoCs, but if you are already on a woefully asymmetrical ISP (I really hate DOCSIS for this), this won't likely matter much and will be similar to your upload speeds, anyway.
      Still a great video for the average not-as-techie power user! 😎

    • @moonrock41
      @moonrock41 Před rokem +1

      @@thewebmachine How difficult is this to set up? Does it depend on the router I'm using?

  • @JohnArnoldUK
    @JohnArnoldUK Před rokem +4

    And just like that something I'd been meaning to set up for years was done thanks to this video. I was hoping to waste a whole afternoon setting this up but annoyingly I was done in about 10 minutes. Thanks Jeff!

  • @christiansantiago3007
    @christiansantiago3007 Před 2 měsíci +1

    Very informative. Been looking for a new use for the Pi 4 that used to be hooked up to my tv.

  • @stevencrawford6503
    @stevencrawford6503 Před rokem +2

    I've been using this for a year or more now. It's great that with Android at least it adds the wireguard tunnel into a quick access button next to my wifi and torch. Don't even have to open the app to turn it on, it's been great.

  • @dormantat
    @dormantat Před rokem +1

    Massive thanks for posting this, and I haven’t even watched it yet! I’ve been trying to use pivpn to get access to my home network on and off for a while, never successfully. I’m sure you will give me the info needed to get it working.

  • @IlIilLlIlILIliLIIiLIlI
    @IlIilLlIlILIliLIIiLIlI Před 10 měsíci +1

    THATS AMAZING! everything working well, dns, vpn, pihole, like a charm

  • @danielberglv259
    @danielberglv259 Před rokem +1

    I am behind NAT and use Windscribe to deal with this issue. They offer port forwarding and can be a great alternative to dealing with NAT. I run Windscribe in a Docker container and Wireguard in another container. When I need to connect to my home network, I connect through the Windscribe IP to get into the Windscribe container which is then setup to forward the connection to the Wireguard container. It does of cause provide a bit more overhead because you are basically nesting VPN connections, but I have not had any issues with my use cases.

  • @matthewprince6157
    @matthewprince6157 Před rokem +5

    You seriously said "I'm a simple man" on a video about making your own VPN lol. Love it

  • @tcurdt
    @tcurdt Před rokem +12

    Good video. It would have nice to also cover local dns resolution. Especially from mobile clients that's handy. And a comparison to other options like zerotier would have been nice, too. That should be enough content for a 2nd video :)

  • @richardwatkins6725
    @richardwatkins6725 Před rokem

    Great Video... I wish you a warm welcome to the UK Enjoy your Trip.

  • @nougatsa
    @nougatsa Před rokem +22

    Personally, I prefer tailscale because I have a much better performance and the use is simpler I find... Thank you for your video.

    • @nougatsa
      @nougatsa Před rokem

      @@Batwam0 yes indeed, if you have a fixed IP address you will not need to modify whatever the parameter in your router!

    • @tomgidden
      @tomgidden Před rokem +1

      Tailscale's great, but as Jeff's clearly wanting to do this without any third-party cloud help -- other than his ISP, his DNS provider, his VPS provider, etc. -- it's fine. After all, Tailscale is built on Wireguard, and is really a cloud service to make configuration and discovery easier.
      I have both. I use Tailscale most of the time, but Wireguard is also there just-in-case.

    • @nougatsa
      @nougatsa Před rokem +1

      @@tomgidden absolutely ! Thank you for this precision ☺️

    • @DavidM2002
      @DavidM2002 Před rokem

      @@Batwam0 That's correct. No port forwarding with Tailscale.

  • @binarypower
    @binarypower Před rokem +2

    Thanks. Actually super helpful. I've been meaning to set up a vpn for a while now since my old openvpn died years ago. wireguard works so well. it's scary how fast it was to set up

    • @dominick253
      @dominick253 Před 8 měsíci +2

      I love hearing everyone say how easy it was and I spent hours trying to get it to work... turns out I have cg-nat...

  • @teatimesbiscuit
    @teatimesbiscuit Před rokem

    Thank you, very helpful and just what I was looking for!

  • @SuperGeneralCrazy
    @SuperGeneralCrazy Před rokem +1

    Great video! Solid, straight to the point! Could have been an easier alternative to what I setup up literally three days ago with headscale and tailscale! Though I do like the peer-to-peer architecture it has and the ability to add more exit nodes on-the-fly it granted me if I'd so need

  • @Razor_Burn
    @Razor_Burn Před rokem

    Fantastic tutorial and safe travels! ❤

  • @edwartfredericks1910
    @edwartfredericks1910 Před rokem +3

    Zerotier would be another option especially if you don't want to open ports etc. This would also enable you to publish things like Homeassistant without the need of dynamic DNS.
    Client --> public DNS on a VPS running Zerotier --> Zerotier Bridge in your home --> Homeassistant server.
    No need for opening ports, dynDNS, Firewall rules etc. It's even possible to restrict the Zerotier Bridge to just publish subnets you want to create some kind of DMZ.

  • @lucasew
    @lucasew Před rokem +2

    I think that software defined vpns such as zerotier or tailscale are more convenient. They, for example, suport internal DNSs and by default only route the relevant traffic through this virtual network. Tailscale has a exit node thing to allow routing everything to that exit node machine just like a classical VPN.

  • @zushiba
    @zushiba Před rokem +2

    Wireguard is built into my ASUS RT-AXE7800 router. It works great. I have a 1gig/1gig fiber line from Frontier, I connect to it from work.
    Jeff, I saw that you have some variant of an Asus router, you should be able to run Wireguard right on the router from the VPN tab, I'd like to see a video on that

  • @TK-vh5pv
    @TK-vh5pv Před rokem

    I love your videos! Very enlightening!!

  • @lyonn5
    @lyonn5 Před rokem +1

    Couldn't have asked for better timing on this! This is a lot of what I want to do so I can administer my parents' HomeAssistant RPi that I'm going to set up

    • @Newtype2259
      @Newtype2259 Před 5 měsíci

      Does the connection persists/reconnect and do notifications from hassio still work after it loses the vpn connection?
      And does it automatically connect to the vpn when i leave my home?
      I’m still on the fence if i should use this or a reverse proxy.

  • @amrrahmy123
    @amrrahmy123 Před rokem +1

    well there are a lot of solutions. I usually just have anydesk and teamviewer setup, but for software projects i have done,
    in case of ip changes, instead of manually changing the ip after getting a notification, you can change the domain or subdomain settings automatically, i am pretty sure namecheap has an API you can use, not sure about other providers/registrar, but it was fairly easy to create a small service/program to check and update the ip from local device.
    In case of mobile data, the device behind the network can connect to a cheap-ish $5 or so VPS, and the other computers can connect to that server to create a network.
    tailscale i wanted to test out but didn't have the time.

  • @adirgan
    @adirgan Před rokem +1

    With zerotier you can also create a tunnel with your network, and with some configuration, you can even use your internet, and it doesn't matter if you are with CGNAT

  • @Nosiu
    @Nosiu Před rokem +2

    for Wireguard, also a notable mention for wg-easy - a dockerized Wireguard server with a GUI.

  • @Nik.leonard
    @Nik.leonard Před rokem +4

    I do basically the same, but I use OpenVPN on port TCP-443 for sidestepping the restrictions on corporate firewalls. I tried to do the same with Wireguard but Wireguard is UDP only and UDP protocol is locked in some corporate networks. Amazingly, I can even play games with Moonlight or Steam Link with only 10ms added latency from my work or other people houses (in the same city. I haven't tested that from other cities). My internet provider is FTTH with 800mb/s Symmetric without CG-NAT so bandwidth is not an issue.

  • @_arhamgamingoffcial
    @_arhamgamingoffcial Před 9 měsíci

    Your video 's great useful. Thank you so much !

  • @JohnWhittle
    @JohnWhittle Před 3 měsíci

    Very helpful video thank you!

  • @neiltrotter5933
    @neiltrotter5933 Před rokem +2

    Thanks for this Jeff. I've been ssh-tunneling in for years (which works), but I promised myself I'd tidy it up a bit one day. PiVPN will probably work for me, as I have a couple of Pis already running Pihole & unbound, so this video will help me with that. But man, either I'm getting slower with age, or you're speeding up! It's OK, I'll just have to pause a bit more often so let the info sink in :-) I also plan to move to DuckDNS for DDNS, as NoIP (free option) grinds my gears each month by threatening to expire.

  • @benargee
    @benargee Před rokem +19

    Will you be making a more in-depth video about tailscale? Also with the inclusion of self hosted orchestration using headscale. I see you gave it a shout out at the end. I've been trying it lately and it's handy. I'd like to see your thoughts on it as well as your ideal use cases. It works great with pikvm too.

    • @JeffGeerling
      @JeffGeerling  Před rokem +9

      Possibly. Since I only used it once and don't run it right now I'd need to do a bit more work for that. Might do either that or Cloudflare Tunnel.

  • @foureight84
    @foureight84 Před rokem +1

    wg-easy is also a pretty nice option for rolling wireguard with a simple web management UI.

  • @pdx2240
    @pdx2240 Před rokem +2

    I have the exact same Router as Jeff Geerling, - ASUS RT-AX86U, where you can run a VPN server on that device, thats both faster, and easier to setup than PiVPN, supports wireguard and DDNS. Also the router is already an always on device.
    Though before I have used PiVPN on a pi for many years to solve this exact problem, and it just works!

    • @JeffGeerling
      @JeffGeerling  Před rokem +1

      Both are great ways to do it-I've been working on dropping that AX86U in favor of a box running OPNsense though... we'll see.

  • @DIYDaveOK
    @DIYDaveOK Před rokem +2

    Amazingly timely video! I literally just started setting up self-hosted VPN last night. Got a personal domain + DDNS working, then set up OpenVPN thats baked into pfSense.....just having trouble with the exported profiles connecting back...

    • @JeffGeerling
      @JeffGeerling  Před rokem +1

      That was my trouble with OpenVPN - and which is why I decided to flip over to Wireguard. The app worked a little more seamlessly (didn't have any weird issues).

    • @DIYDaveOK
      @DIYDaveOK Před rokem

      @@JeffGeerling Well my VPN logs show an error regarding a missing HMAC that suggests a problem with a key definition in the exported profile, so I'm hoping I just missed some detail in the profile definition. And I'm in EXACTLY the same boat you are with asymmetric cable Internet (I'm stuck with awful Cox), 1 Gbps down but 40 Mbps up 😡

  • @NightHawkATL
    @NightHawkATL Před rokem

    I have been running Pi-VPN for a month now and it works better than the pfSense implementation. I was able to get a full tunnel connection almost right out of the box. I just had to add my Pi-VPN IP subnet to the outbound NAT and voila. I will add a domain redirect to it soon. Since I have cloudflare, I can use the cloudflare ddns updater to update my IP if/when it changes and it will automatically update my records for my domain(s).

  • @davidzuijdwijk6806
    @davidzuijdwijk6806 Před rokem

    i had wireguard server in docker before, but the docker network was a mess and had to have macvlan for me to access the other containers over the wireguard vpn. now i have it running on my openwrt install, and just use a docker container as a client to an external vpn provider, so some apps are always on a vpn.
    what i dont understand is how to connect to my vpn server over a url. tried that before never got it to work

  • @postnick
    @postnick Před rokem +2

    I ran PiVPN for a while but I think work was blocking that port or domain - so I switched to Tailscale and used my home PIHOle as an exit node and it's been much eaiser. But Your point was no 3rd party software so still a great video! I do like how you can use local IP addresses on pivpn but not tailscale.

  • @feicodeboer
    @feicodeboer Před rokem +3

    My old Raspberry pi1 with 512 MB is running OpenWrt with Wireguard and OpenVPN for quite a while already. It's not fast, the oldie but it does the job for me. The advantage of OpenWrt is that is an out of the box router/firewall/etc software with nice management interface.

    • @JeffGeerling
      @JeffGeerling  Před rokem

      It's a great solution if you don't need extra speed!

    • @feicodeboer
      @feicodeboer Před rokem

      @@JeffGeerling Indeed, OpenVPN runs approximately 7-8 Mbps and with WireGuard it can roughly double that number. Good enough to stream live TV. I can only guess what a pi4 will do, but I estimate at least a double or triple of those figures.

    • @francocastilloAR
      @francocastilloAR Před rokem

      How do you go about connecting? I have a netbook with OpenWrt that I use as a server (which is behind the ISP's router) and I can't get to the internet. I clarify that I have public IP. The strange thing is that with a Linux distro it does work.

    • @feicodeboer
      @feicodeboer Před rokem

      ​@@francocastilloARRouting may be an issue here as the VPN introduces a new network your isp router does not know of. Either a static route or an extra Nat may do the trick.

    • @francocastilloAR
      @francocastilloAR Před rokem

      @@feicodeboer Fixed by creating a new firewall zone for WireGuard and enabling masquerading in the LAN zone, as well as allowing forwarding between these two zones.

  • @jefferygrantham5582
    @jefferygrantham5582 Před rokem

    Welcome to the Pi-VPN gang! I've been using wireguard installed on my virtual machine server for years now. It's a great project that simplified the whole installation process!

  • @MackyClemen
    @MackyClemen Před rokem +2

    'tracert' is probably a bygone era of Windows that does not have long filename support as 'traceroute.exe' would be longer than the 8.3 format for filenames

  • @lis6502
    @lis6502 Před rokem +3

    0:34 hope you've showcased Wireguard, as this little in-kernel thingie absolutely kicks ass, even in such crippled implementations as on Mikrotiks.

    • @markarca6360
      @markarca6360 Před rokem

      Mikrotik RouterOS v7 has Wireguard and ZeroTier support built in.

  •  Před dnem

    I would like a way to print from home to my office printer and also to synchronise the home NAS with the office NAS, which are two WD MyCloud EX2 Ultra.
    Is a private VPN the way to go?

  • @FrancoGrimoldi
    @FrancoGrimoldi Před rokem

    I manage my own cloud-based ad-blocking VPN:
    . I pay $5/month to have a cloud-based Linux VM available with a static IP.
    . Installed Pi-Hole and OpenVPN on my remote VM.
    . Use the free OpenVPN client on all my computers and phone.
    That's it. It's not fast but gets the job done and allows me to show up as connecting from the US whenever needed. It also provides ad-blocking capabilities to any WiFi network I'm connected to, very useful on the road and also when connecting via mobile internet.

  • @devinbaeten13
    @devinbaeten13 Před rokem +2

    Tailscale is the best for most cases. Especially for those with spectrum/cable internet… you only overlay subnet routes you need!

  • @jeffmcadams6691
    @jeffmcadams6691 Před rokem +11

    Hey fellow Jeff,
    Consider using IPv6 either within your VPN, or for your VPN ytansport and you might, emphasis on might, be able to sidestep some of those limitations, especially with CGNAT.

    • @BrianCroweAcolyte
      @BrianCroweAcolyte Před rokem +1

      IPv6 support globally still sucks. Yeah if it works it's great, but it's better to just always assume you're not going to have IPv6, especially when traveling abroad. Been waiting 20 years for IPv6 to go mainstream, reckon I'll be waiting another 20 lol
      You could implement both an IPv4 and an IPv6 VPN, but I always just target the lowest common denominator to accomplish what I need.

    • @davidberschauer1330
      @davidberschauer1330 Před rokem +1

      IPv6 works fine for me to deal with CGNAT. Some WiFis don’t provide IPv6 but at least over 4G it always works, so it’s fine for smaller tasks like checking HomeAssistant while travelling

    • @BrianG61UK
      @BrianG61UK Před rokem

      @@BrianCroweAcolyte Yes. My home VPN will use IPv6 for the tunnel if it's supported and will pass both IPv4 and IPv6 through the tunnel, but it seems to be extremely rare that IPv6 is supported in public places that I connect from. A lot of people regard IPv6 as an extra complication causing extra attack surface with no real benefit, and while I have some sympathy with that view, I do like to have IPv6 on my own networks when possible.

    • @BrianG61UK
      @BrianG61UK Před rokem

      @@davidberschauer1330 Here in the UK, I've literally never ever come across a 4G connection with IPv6. Though, I have seen some things that hint that maybe one of our networks is slowly working towards allowing IPv6.

    • @jeffmcadams6691
      @jeffmcadams6691 Před rokem

      YMMV, but I've found, in the states, that IPv6 is available and works in most places that i am, with the exception of retail wifi (most specifically a local chain of coffee shops that i frequent). My mobile provider (T-Mobile) def has working IPv6...in fact, their network is v6 *only* with an adaptation layer on top of it to make v4 work.
      I use v6-only for my personal setups almost completely because it ends up being *easier* to work with.

  • @mattwhite532
    @mattwhite532 Před rokem

    Thank you for the video Jeff. Is there a way to get this to work in places that block VPNs like airports or hotels? I know for Captive Portal you can just turn off Wireguard while you connect, then turn it on, but if that doesn't work, how can one stay private and secure if the system won't let you? I don't believe Wireguard has a way to utilize obfuscation, right?

  • @lukehunter69
    @lukehunter69 Před rokem +2

    Only 2 days ago did I set up Wireguard at home, it's so much easier than OpenVPN to set up. I use a mini PC as a router so it has plenty of power for my 1gbit symmetric connection.

  • @insu_na
    @insu_na Před rokem +12

    I love that the QR-Code you generated has your "totally real" public IP 😂
    I wish you had hidden more easter eggs in that

    • @JeffGeerling
      @JeffGeerling  Před rokem +6

      I almost did but didn't have time today :(

  • @wzrd_sounds
    @wzrd_sounds Před 12 dny

    Hey Jeff, in my router settings the internal port is not an optional setting when forwarding… what do I do!?

  • @PhilipDudley3
    @PhilipDudley3 Před rokem +1

    Kind of surprised Jeff didn't make an Ansible Collection for this and used that. Then runs that Ansible Collection from a Podman SystemD job.

  • @dadrad
    @dadrad Před rokem +2

    If I'm remembering my history, the abbreviated "tracert.exe" probably had something to do with the 8.3 filename length.

  • @hatkidchan_
    @hatkidchan_ Před rokem

    Oh, I've been using Wireguard to tunnel traffic from my proxy with public IP to local home server, works reasonably well

  • @ckennylin717
    @ckennylin717 Před rokem +1

    Can't help but notice you have an Asus router. The newer firmware on the AX models have Wireguard built in. If you do have a Wireguard-capable Asus router (stock or Merlin), how does the admin and performance compare to PiVPN?

  • @chrisostapovitch6567
    @chrisostapovitch6567 Před 10 měsíci

    That GI Joe PSA got me. I used to watch those growing up lmao!

  • @SBinVancouver
    @SBinVancouver Před rokem

    What would be involved to set up a Pi offering a WiFi AP with PiVPN, so I could connect my Roku (for example) to an endpoint in another country?

  • @korishan
    @korishan Před rokem +1

    Jeff mentions that behing CG-NAT you can't use a dedicate IP address. I get around this by using CloudFlare and their tunneling application cloudflared.
    It creates a DNS entry automatically (if you have your DNS hosting with them, otherwise you have to manually register with your registrar) and then you can use that name to connect.
    My ISP is Xfinity/Comcast, which definitely uses CG-NAT on multiple layers, I can access RDP, TrueNAS, PVE & Hosts, File shares, etc. The only thing I've had issues with is actually setting up the VPN portion so that my phone uses that instead of its routing. This I think is partly due to cloudflared does not current support UDP connections

  • @evilleader1991
    @evilleader1991 Před 3 měsíci

    Running PiVPN, DNSCrypt-Proxy and Pihole....only thing im missing is unbound but idk if thats necessary.
    You think its more secure/privacy focused to run dnscrypt proxy or just use Quad9 DNS?

  • @no0ne.
    @no0ne. Před rokem +2

    with Starlink you can use IPv6 for the incoming tunnel connection

  • @Je.Suis.Flaneur
    @Je.Suis.Flaneur Před rokem +3

    How much easier this would be to follow (and use) if it weren't a CZcams video, but written instructions. Thanks, Jeff.

    • @JeffGeerling
      @JeffGeerling  Před rokem +1

      Boom! Thanks for posting the link, saved me the hassle while I'm flying home from UK

  • @charlesdoesmore5488
    @charlesdoesmore5488 Před 6 měsíci +2

    5:04 How do I grab my ip again? When I do a curl request on that site, it said that I have to pay to request it.

  • @tramcrazy
    @tramcrazy Před rokem +1

    I use Twingate on my network, I find it easier and better than a VPN as I don’t have to open ports and it’s a bit easier to set up access levels and users etc

  • @Gowla
    @Gowla Před rokem +2

    Cool Jeff! I just did a build video of a pfsense firewall, it's super cheap and runs tailscale for VPN access. Tailscale also builds upon wireguard and it simplfies it even further for the end user. No need for additonal dynamic dns. Am working on my next video on how to add cellular failover cheapily and built into the box (IoT sims and funky adapters), so even if the internet goes down or interface fails I can still access the VPN to safely shutdown any machines.

  • @therealsimdan
    @therealsimdan Před rokem

    Is there a way to tie two networks in two separate physical locations together as one "local" network using WireGuard?

  • @snekulcire
    @snekulcire Před rokem

    I have 1gig symmetric fiber. My PiVPN on a Pi4 using WireGuard is usually able to push 600-700 mbps to another computer in town with a decent gigabit connection. Sometimes I can get faster and it seems that messing with the CPU governor has some impact, as does overclocking. Back when I used OpenVPN it usually was around 200 to 250 MBPS. If you're upload speed limited on most cable ISPs, it'll probably be able to run at that max speed no problem.

  • @pcislocked
    @pcislocked Před rokem +8

    Thanks for making this video, Jeff! Just wanted to add that for anyone who's short on time, setting up a self-hosted VPN with Wireguard or Tailscale can be done in less time. But I appreciate the effort you put into explaining this process.

    • @pcislocked
      @pcislocked Před rokem +1

      Me: so jeff geerling made a video about self-hosted vpns and how to set it up. if i comment "well, fun fact, setting up a self hosted vpn with either wireguard(with some scripts ofc) or tailscale takes less than duration of this video.", will this go across as a mean comment to him? (like this video is too long dont watch it etc although i dont mean to)
      ChatGPT: It's possible that your comment could come across as mean-spirited, especially if Jeff Geerling put a lot of effort into creating the video and you're suggesting that it's not worth watching. However, if you phrase your comment in a respectful way and acknowledge the effort he put in, it should be fine. For example, you could say something like, "Thanks for making this video, Jeff! Just wanted to add that for anyone who's short on time, setting up a self-hosted VPN with Wireguard or Tailscale can be done in less time. But I appreciate the effort you put into explaining this process." This way, you're sharing your knowledge while still acknowledging the value of Jeff's video.

    • @jan_harald
      @jan_harald Před rokem +4

      @@pcislocked tbh, tailscale is not really self-hosted, and stuff like headscale, which is a self-hosted version of tailscale, can be a bit annoying to set up, and not easy...
      instead, I'd use something like Yggdrasil Network, myself (or even stuff like tor or i2p, using them for legitimate purposes helps out everyone, and you can also set things up that only specific routers are even allowed to connect to your server)

    • @pcislocked
      @pcislocked Před rokem +2

      @@jan_harald yeah tailscale is not technically fully self hosted in terms of management etc, but if your exit node is exposed to the internet, the connection is direct to the server. stuff like i2p is a bit too much for a normie like me xd

    • @zoopercoolguy
      @zoopercoolguy Před rokem

      ​@@pcislocked I've been using Tailscale for a few years now, and it is fantastic, but I've had recurring problems with it failing to work without intervention after updates to either itself or Windows. Sometimes it seems to stop working for no reason at all. I've resorted to installing a secondary remote access program for the times when I need to remotely make Tailscale work again.

    • @DavidM2002
      @DavidM2002 Před rokem

      @@zoopercoolguy I've used Tailscale for several months but have never experienced the problem that you have. I'll tuck that away in case I do though and know that the issue is not unique. Thanks JB.

  • @pedro_8240
    @pedro_8240 Před rokem

    I have been doing this for a while now, but I'm using a Mikrotik RB750Gr3 as a wireguard server.
    I have it always on on my phone and tablet and configured it to just allow me to access my home network and use my pihole instance as DNS, that way I can still block a bunch of ads and tracking stuff while out and about.

  • @jmr
    @jmr Před rokem +1

    @Jeff did you know Home Assistant supports muti factor authentication?

  • @hwy9nightkid
    @hwy9nightkid Před rokem

    how do you like tailscale in order to more easily utilize wireguard ?

  • @balls2bone
    @balls2bone Před rokem

    I also run PiVPN, but on a Orange Pi PC running Armbian. Had no problems with it so far! It is limited to about 12Mb/s, but that's fine. My home up speed is only 25Mb/s anyhow! But as a bonus, it uses 250mA at idle!

  • @oking8
    @oking8 Před měsícem

    Do you need to configure your firewall for using port 51820?

  • @BrianG61UK
    @BrianG61UK Před rokem

    I run my home VPN on my router. It's a Ubiquiti EdgeRouter X. You can do lots of interesting and/or useful stuff with it, but it's not simple to use.

  • @jensschroder8214
    @jensschroder8214 Před rokem +1

    does home VPN also work with connections that only have IPv6?
    Most VPNs use IPv4, and these are hard to come by outside of the US.

  • @bartgrefte
    @bartgrefte Před rokem

    Does PiVPN come with an option to skip the firewall bit? Nftables user here, as far as I know, nftables is still not supported in PiVPN and similar alternatives.

  • @WilliamCollier
    @WilliamCollier Před rokem +1

    Pro tip if your isp is AT&T. Even on a consumer accounts they will give you a block of static IP’s for $15 a month!.

  • @martinrocket1436
    @martinrocket1436 Před rokem

    Some routers (for example modern AVM router with FritzOS 7.50) can host wireguard on their own. Just for the case you can't a pi.

  • @Scranny
    @Scranny Před rokem +1

    Jeff, can you share your script (the one you run by cron job) to update your current dynamic IP to your personal VPS?

  • @mina86
    @mina86 Před 5 měsíci

    One option to deal with IP address changing is to setup a TOR hidden service which can serve as a backup if your IP changes.

  • @michaelgraff6978
    @michaelgraff6978 Před rokem

    I went with Netmaker, which allows me to skip the public issue for now, as either end can initiate the connection, so I can have an egress node at home, and one in the cloud for ingress, set up various VPNs on the same nodes or different sets of nodes, etc, and they don't mix. It uses Wireguard under the hood, and "users" are "external clients" and get a standard Wireguard config for a specific ingress node I define.
    The other nodes in the VPN run the Netmaker client, and form a mesh that is entirely (or nearly) configured by the Netmaker UI.
    I wonder if I could share my server with others and not break my security. Heh. The server just does config and such generally.

  • @pedrokatuniz8936
    @pedrokatuniz8936 Před rokem

    Although you need the servers of Tailscale to get the devices to connect to each other I very much prefer Tailscale. It just works, no hassle with configs, no need to set anything up on your router/firewall, no Public IP hassle and it has been incredible reliable in my experience. Plus it is absolutely free for private usage. If you want to setup your own server for Tailscale you could even do that with headscale. And is is also based on Wireguard.

  • @robertn2997
    @robertn2997 Před rokem

    I also use Wireguard but I ran into 1 problem last week. I noticed my vpn was not working on the public WiFi in a hospital so I couldnt watch my series on my plex server😢 it looks like there firewall is blocking it. Is there an easy way so the vpn is always working on every WiFi network?

  • @MordecaiV
    @MordecaiV Před rokem

    I used to split tunnel with Home Assistant, so just the Home Assistant app would be tunneled back to home network and everything else on the phone would use mobile data. But lately I've switched to a cloudflare tunnel with a domain I purchased for more flexibility ( I can log in easily from any device, not just on my app, and I don't have to explain how to enable the vpn after a phone restart to my wife).

  • @Jaredy89
    @Jaredy89 Před rokem +9

    I'm behind CGNAT and have been using tailscale for a couple years now. I've been so impressed by their service and how they keep expanding features. They are also very transparent in how they build their service. So although it's not zerotrust, its good enough for me.

    • @JeffGeerling
      @JeffGeerling  Před rokem +5

      Yeah I think they do a great job at the whole user experience too.

    • @luciman9268
      @luciman9268 Před rokem

      ​@@JeffGeerling why didn't u use tailscale?

  • @albertrodriguez3429
    @albertrodriguez3429 Před rokem +1

    Hey Jeff. Doesn’t your Asus router have DDNS option built in? I use no-ip on mine. Is it not recommended to go this route?

    • @JeffGeerling
      @JeffGeerling  Před rokem +1

      It's definitely okay to run on your router too! I just don't :)

  • @kyouhyung
    @kyouhyung Před rokem

    Another ThinkCentre tiny dude here. These little guys are absolute treasures if you want cheap and reliable PCs for your home lab.

  • @MRPtech
    @MRPtech Před rokem +4

    Great Video.
    For my VPN to home use i am using Tailscale with exit-node and subnet advertising.
    I found out that for some reason PiVPN / Wire guard slows down speed more than Tailscale does. Weird.
    Anyways. Been using Tailscale for over a year now with not one single day being a problem.

  • @JoopKomkommerShake
    @JoopKomkommerShake Před rokem

    Use ZeroTier if you have CG-Nat, works fine without any hassel. ZT works also fine without cg-nat.

  • @easteregg8699
    @easteregg8699 Před rokem

    to work around a dynamic ip i just portforward via autossh to a small vps :)

  • @turonlumpia
    @turonlumpia Před měsícem

    Jeff, my isp is using cgnat and I think thats the reason why it’s not working for me. Do you how to resolve this issue?

  • @yalopov
    @yalopov Před rokem

    As a CG-NAT victim myself, I recommend Tailscale a lot! One of my favorite pieces of software

  • @carmp3fan
    @carmp3fan Před 10 měsíci

    If you use Linode or any number of other services, you could have a container that updates your IP address via API if it ever changes. That's now I handle dynamic DNS.

  • @domojestic4155
    @domojestic4155 Před 8 měsíci

    Does anyone know exactly how to get the client set up on a Linux-based machine, i.e. Ubuntu? There's no select-and-click option as there's no official GUI, and I'm struggling trying to parse exactly what I'm supposed to do with the scp'd file using the WireGuard CLI.

  • @thiagokeizo
    @thiagokeizo Před rokem

    I am running ZeroTier with Pi-hole, just need to connect to the network and point to the zerotier address of the Pi

  • @elminster8149
    @elminster8149 Před rokem +1

    Welcome to the UK Jeff!

    • @JeffGeerling
      @JeffGeerling  Před rokem

      Ha, as I'm typing this, I'm actually on the plane departing the UK! Just didn't have time to finish up the video until last night :)

  • @ThatVoxelBlock
    @ThatVoxelBlock Před rokem

    hey you might want to blur the ui in google maps cus it comes up with a Location just off the A428 roundabout at Saint Neots

  • @ondrejlol
    @ondrejlol Před rokem +1

    According to my testing, Pi 4 is can handle up to 300mbit through Wireguard (Internet connection is 1000down/500up). OpenVPN is much worse (like 150), if you need more, you have to run the VPN server on something more powerful.

    • @JeffGeerling
      @JeffGeerling  Před rokem +1

      Yeah, the most I got internally through lan was around 270 Mbps, so that checks out!

  • @__CyberHeretic__
    @__CyberHeretic__ Před 23 dny

    Hey @Jeff Geerling, I don't know if you know, but your Asus Router... actually provide hosting OpenVPN server in it's firmware