Build your OWN WireGuard VPN! Here's how

แชร์
ฝัง
  • เผยแพร่เมื่อ 21 ธ.ค. 2024

ความคิดเห็น • 618

  • @lewismassie
    @lewismassie ปีที่แล้ว +417

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

    • @JK-mo2ov
      @JK-mo2ov ปีที่แล้ว +17

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

    • @stefanmisch5272
      @stefanmisch5272 ปีที่แล้ว +3

      Has anyone already decoded it? 😅

    • @iamvinku
      @iamvinku ปีที่แล้ว +10

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

    • @AlKaBen
      @AlKaBen ปีที่แล้ว

      It basically comes with wireguard server out of the box

    • @marcello4258
      @marcello4258 ปีที่แล้ว

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

  • @MarcoGPUtuber
    @MarcoGPUtuber ปีที่แล้ว +573

    This video is sponsored by Jeff Geerling VPN!

    • @MarcoGPUtuber
      @MarcoGPUtuber ปีที่แล้ว +11

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

    • @pandaDotDragon
      @pandaDotDragon ปีที่แล้ว +5

      😆

    • @feniX0nE27
      @feniX0nE27 ปีที่แล้ว

      🤭

    • @MarcoGPUtuber
      @MarcoGPUtuber ปีที่แล้ว

      @RAM_845 hahah nooo. Though I am also in Disbelief that I have known him for almost 5 years.

    • @fhqwgib
      @fhqwgib 4 หลายเดือนก่อน

      As a long time user of Jeff Geerling VPN, I can say, stop all the downloading

  • @thebeatconnect1
    @thebeatconnect1 ปีที่แล้ว +63

    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 ปีที่แล้ว +3

      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 ปีที่แล้ว

      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 10 หลายเดือนก่อน +4

      Or just use IPv6

  • @GreenCinco12Official
    @GreenCinco12Official ปีที่แล้ว +26

    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 ปีที่แล้ว +47

    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 ปีที่แล้ว +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 ปีที่แล้ว +4

      WireGuard does not take advantage of AES-NI.

    • @enochliu8316
      @enochliu8316 9 หลายเดือนก่อน

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

  • @CarMaintenanceGuy
    @CarMaintenanceGuy ปีที่แล้ว +6

    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.

  • @matthewprince6157
    @matthewprince6157 ปีที่แล้ว +9

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

  • @thewebmachine
    @thewebmachine ปีที่แล้ว +16

    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  ปีที่แล้ว +6

      Ah true. So not a bulletproof method!

    • @thewebmachine
      @thewebmachine ปีที่แล้ว +5

      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 ปีที่แล้ว +1

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

  • @stevencrawford6503
    @stevencrawford6503 ปีที่แล้ว +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.

  • @JohnArnoldUK
    @JohnArnoldUK ปีที่แล้ว +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!

  • @nougatsa
    @nougatsa ปีที่แล้ว +23

    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 ปีที่แล้ว

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

    • @tomgidden
      @tomgidden ปีที่แล้ว +3

      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 ปีที่แล้ว +1

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

    • @DavidM2002
      @DavidM2002 ปีที่แล้ว

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

  • @IlIilLlIlILIliLIIiLIlI
    @IlIilLlIlILIliLIIiLIlI ปีที่แล้ว +1

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

  • @danielberglv259
    @danielberglv259 ปีที่แล้ว +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.

    • @heavymetalmixer91
      @heavymetalmixer91 หลายเดือนก่อน

      Note: If you're behind CGNAT, port forwarding doesn't work.

  • @MackyClemen
    @MackyClemen ปีที่แล้ว +5

    '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

  • @SteveH-TN
    @SteveH-TN 3 หลายเดือนก่อน

    Thanks for sharing this video and your thoughts & experience. I am retired network engineer, Cisco routers, cybersecurity consultant and more beginning with FORTRAN 1 when was sophomore @ Lane Tech H.S in summer workshop @ Illinois Institute of Technology. Over years I learned enough programming languages to make my head spin. Within the next month I’m hoping to upgrading to Fiber Optic local service provider. You motivated me to dust my Raspberry Pi off & explore PiVPN.

  • @Nosiu
    @Nosiu ปีที่แล้ว +3

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

  • @feicodeboer
    @feicodeboer ปีที่แล้ว +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  ปีที่แล้ว

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

    • @feicodeboer
      @feicodeboer ปีที่แล้ว

      @@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 ปีที่แล้ว

      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 ปีที่แล้ว

      ​@@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 ปีที่แล้ว

      @@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.

  • @jeffmcadams6691
    @jeffmcadams6691 ปีที่แล้ว +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 ปีที่แล้ว +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 ปีที่แล้ว +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 ปีที่แล้ว

      @@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 ปีที่แล้ว

      @@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 ปีที่แล้ว

      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.

  • @benargee
    @benargee ปีที่แล้ว +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  ปีที่แล้ว +10

      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.

  • @pdx2240
    @pdx2240 ปีที่แล้ว +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  ปีที่แล้ว +2

      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.

  • @adirgan
    @adirgan ปีที่แล้ว +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

  • @insu_na
    @insu_na ปีที่แล้ว +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  ปีที่แล้ว +6

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

  • @binarypower
    @binarypower ปีที่แล้ว +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 ปีที่แล้ว +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...

  • @FrancoGrimoldi
    @FrancoGrimoldi ปีที่แล้ว

    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.

  • @pcislocked
    @pcislocked ปีที่แล้ว +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 ปีที่แล้ว +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 ปีที่แล้ว +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 ปีที่แล้ว +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 ปีที่แล้ว

      ​@@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 ปีที่แล้ว

      @@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.

  • @no0ne.
    @no0ne. ปีที่แล้ว +2

    with Starlink you can use IPv6 for the incoming tunnel connection

  • @tcurdt
    @tcurdt ปีที่แล้ว +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 :)

  • @amrrahmy123
    @amrrahmy123 ปีที่แล้ว +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.

  • @korishan
    @korishan ปีที่แล้ว +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

  • @lyonn5
    @lyonn5 ปีที่แล้ว +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 ปีที่แล้ว

      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.

  • @Jaredy89
    @Jaredy89 ปีที่แล้ว +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  ปีที่แล้ว +5

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

    • @luciman9268
      @luciman9268 ปีที่แล้ว

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

  • @farzammaghouli-kp5cr
    @farzammaghouli-kp5cr ปีที่แล้ว

    idk why i get this suggested after i struggled for 5 days, i made it but now i find this guy

  • @devinbaeten13
    @devinbaeten13 ปีที่แล้ว +2

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

  • @christiansantiago3007
    @christiansantiago3007 9 หลายเดือนก่อน +1

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

  • @PhilipDudley3
    @PhilipDudley3 ปีที่แล้ว +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.

  • @dormantat
    @dormantat ปีที่แล้ว +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.

  • @ondrejlol
    @ondrejlol ปีที่แล้ว +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  ปีที่แล้ว +1

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

  • @RoshiGaming
    @RoshiGaming หลายเดือนก่อน

    great vid jeff, had to revisit this so I can vpn in while i'm in the hospital here, thanks for the great videos!

  • @WilliamCollier
    @WilliamCollier ปีที่แล้ว +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!.

  • @jefferygrantham5582
    @jefferygrantham5582 ปีที่แล้ว

    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!

    • @valeedafzal9003
      @valeedafzal9003 9 หลายเดือนก่อน

      Hi i need wireguard vpn

    • @valeedafzal9003
      @valeedafzal9003 9 หลายเดือนก่อน

      I need .conf file

  • @dadrad
    @dadrad ปีที่แล้ว +2

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

  • @KE-q7t
    @KE-q7t หลายเดือนก่อน +2

    5:34 So it’s recommended not to set up a VPN unless you know exactly what you’re doing/what to configure? So how would a beginner securely access their server at home abroad without all the security risks? Or is it just not possible/not recommended for beginners to do, and to only keep it accessible when connected to a home network? I tried watching that Ansible guide you recommended in this video but it is not for beginners whatsoever

  • @Je.Suis.Flaneur
    @Je.Suis.Flaneur ปีที่แล้ว +3

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

    • @JeffGeerling
      @JeffGeerling  ปีที่แล้ว +1

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

  • @Nik.leonard
    @Nik.leonard ปีที่แล้ว +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.

  • @lis6502
    @lis6502 ปีที่แล้ว +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 ปีที่แล้ว

      Mikrotik RouterOS v7 has Wireguard and ZeroTier support built in.

  • @neiltrotter5933
    @neiltrotter5933 ปีที่แล้ว +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.

  • @pedrokatuniz8936
    @pedrokatuniz8936 ปีที่แล้ว

    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.

  • @NightHawkATL
    @NightHawkATL ปีที่แล้ว

    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).

  • @lukeyboy42069
    @lukeyboy42069 ปีที่แล้ว +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.

  • @tramcrazy
    @tramcrazy ปีที่แล้ว +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

  • @mina86
    @mina86 ปีที่แล้ว

    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.

  • @JoopKomkommerShake
    @JoopKomkommerShake ปีที่แล้ว

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

  • @marketuser6478
    @marketuser6478 ปีที่แล้ว +1

    It's tracert because of DOS's character limitation of 8 for the name and 3 for the extension.

  • @airy_co
    @airy_co ปีที่แล้ว

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

  • @BrianG61UK
    @BrianG61UK ปีที่แล้ว

    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.

  • @alext6933
    @alext6933 ปีที่แล้ว +3

    I thought after he said "are all these terms too technical for you?" He was going to break them down in a simple eady to understand way or say that it's no big deal or something. Instead he basically said "go on and get out of here, boy" 😂😂

    • @JeffGeerling
      @JeffGeerling  ปีที่แล้ว +1

      Honestly networking is full of voodoo magic and crazy things! It's too easy for someone to mess things up for me to officially recommend it. But breaking things is often the best way to learn.

  • @kyouhyung
    @kyouhyung ปีที่แล้ว

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

  • @charlesdoesmore5488
    @charlesdoesmore5488 ปีที่แล้ว +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.

  • @carmp3fan
    @carmp3fan ปีที่แล้ว

    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.

  • @trevorphillips9220
    @trevorphillips9220 ปีที่แล้ว

    If you have a Fritz!Box Router, you can just enable Wire Guard and you got your vpn in a few seconds.

  • @foureight84
    @foureight84 ปีที่แล้ว +1

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

  • @garrettturner7383
    @garrettturner7383 ปีที่แล้ว +1

    Starlink now offers Public IP for 250 a month. But that has the 1TB restriction, the regular plan is back unlimited

    • @garrettturner7383
      @garrettturner7383 ปีที่แล้ว

      @jeffgerling I think ur forgetting the second e, oh wait- ur a scammer :(

  • @richardwatkins6725
    @richardwatkins6725 ปีที่แล้ว

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

  • @lucasew
    @lucasew ปีที่แล้ว +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.

  • @hatkidchan_
    @hatkidchan_ ปีที่แล้ว

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

  • @largepimping
    @largepimping ปีที่แล้ว +1

    Oh, man... that pi vpn web site is HILARIOUS!!! "Although this is geared toward running on a $35 Raspberry Pi"...

  • @Scranny
    @Scranny ปีที่แล้ว +1

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

  • @Whimsickle_
    @Whimsickle_ 2 หลายเดือนก่อน

    used this tutorial like 1billion times thanks jeff 👍

  • @mabs-O_o
    @mabs-O_o ปีที่แล้ว +2

    Also, ZeroTier as an alt to Tailscale, client and server are FOSS if you want to run your own

  • @snekulcire
    @snekulcire ปีที่แล้ว

    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.

  • @Gowla
    @Gowla ปีที่แล้ว +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.

  • @choahjinhuay
    @choahjinhuay ปีที่แล้ว +1

    Jeff, are you going to visit the Pi Shop in the UK?

    • @JeffGeerling
      @JeffGeerling  ปีที่แล้ว +1

      I did! I'll have a video on that soon.

  • @MRPtech
    @MRPtech ปีที่แล้ว +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.

  • @mjmeans7983
    @mjmeans7983 ปีที่แล้ว +1

    I wonder if the radioisotope in a smoke detector can be used to make a better RNG and give the VPN better encryption.

    • @JeffGeerling
      @JeffGeerling  ปีที่แล้ว

      It would certainly be more fun to do it that way!

  • @elminster8149
    @elminster8149 ปีที่แล้ว +1

    Welcome to the UK Jeff!

    • @JeffGeerling
      @JeffGeerling  ปีที่แล้ว

      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 :)

  • @teatimesbiscuit
    @teatimesbiscuit ปีที่แล้ว

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

  • @lilyydotdev
    @lilyydotdev ปีที่แล้ว +1

    why not have the cronjob contact the domain registrar's API and update the record. if your domain registrar doesn't have an API use something like desec, cloudflare, cloudns, or a selfhosted server on a vps somewhere. the record ttl can be 1 so changes take little time to reflect.

    • @JeffGeerling
      @JeffGeerling  ปีที่แล้ว +1

      Yeah, I'm just lazy really. Name.com has an API but I can't be bothered to get it integrated.

    • @lilyydotdev
      @lilyydotdev ปีที่แล้ว

      @@JeffGeerling the best excuse for not doing something haha

  • @csolisr
    @csolisr ปีที่แล้ว

    My newest ISP doesn't offer an open public IP, so I had to rent a VPS specifically to allow my home computer to be accessible to the world - using precisely this method

  • @avail6797
    @avail6797 ปีที่แล้ว +1

    Jeff: 30mbps upload is slow
    Me: has only 12mbps upload.

  • @insertaverygenericnamehere
    @insertaverygenericnamehere ปีที่แล้ว +1

    I am using Tailscale - which is super-easy to handle and set up.

  • @tesleigh
    @tesleigh ปีที่แล้ว

    CGNAT Starlink workaround: Starlink Router in Bypass mode, use a third party router with IPv6 support enabled in the settings.

  • @zushiba
    @zushiba ปีที่แล้ว +4

    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

    • @jr_moodie
      @jr_moodie 4 หลายเดือนก่อน

      Nice! I have Wireguard in my Asus RT-AX56U Router as well but not sure how to set it up, can you point me to a guide thanks!

  • @PS3PCDJ
    @PS3PCDJ ปีที่แล้ว

    First and only person that I've seen that is telling realistic use cases and no lofty claims about VPNs

  • @__CyberHeretic__
    @__CyberHeretic__ 7 หลายเดือนก่อน

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

  • @squalazzo
    @squalazzo ปีที่แล้ว +2

    why not tailscale or zerotier? They're newer in how they work, no need to open ports on router, way easier... take a look! Oh, no need for a public ip, too, they work no problem if you're natted :)

  • @andiszile
    @andiszile ปีที่แล้ว

    Also MikroTik ROS v7 supports Wireguard :)
    So you don't even need separate device

  • @MordecaiV
    @MordecaiV ปีที่แล้ว

    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).

  • @DIYDaveOK
    @DIYDaveOK ปีที่แล้ว +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  ปีที่แล้ว +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 ปีที่แล้ว

      @@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 😡

  • @Razor_Burn
    @Razor_Burn ปีที่แล้ว

    Fantastic tutorial and safe travels! ❤

  • @ckennylin717
    @ckennylin717 ปีที่แล้ว +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?

  • @C_M_R
    @C_M_R ปีที่แล้ว

    I created my own VPN using OpenVPN on my Synology NAS. Needed a secure way to remote into my home network when traveling.

  • @chriswhitework
    @chriswhitework ปีที่แล้ว +1

    Jeff Geerling: "I'm a simple guy."
    Also Jeff Geerling: Tries to connect 47 M.2 SSD's, 86 3.5inch HDD, 28 RTX 4090's to a single Raspberry Pi.

  • @Insightfill
    @Insightfill ปีที่แล้ว

    I found that a lot of guest wifi spots (coffee shops, libraries, etc.) block the usual public WireGuard and OpenVPN ports - no access to home from such spots. Using 443 actually defeated them.

  • @SuperGeneralCrazy
    @SuperGeneralCrazy ปีที่แล้ว +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

  • @afaulconbridge
    @afaulconbridge ปีที่แล้ว +3

    If you were worried about a DDoS of your home network, why hide the domain name but not the public IP address? Is that not just as attackable, since DNS maps the name to the numbers?

    • @Back-alley-technician
      @Back-alley-technician ปีที่แล้ว +1

      While it's not recommended the IP will change on a regular basis. Dynamic DNS changes it's referenced IP when your ISP gives you a new IP. Hence sharing a throwaway IP is not nearly as dangerous as sharing the dynamic DNS registry name.

  • @kuhluhOG
    @kuhluhOG ปีที่แล้ว +1

    10:40 My ISP does automated maintenance every night which means that I get a new IP address at least every night.
    A manual update would be a bit too much work on my part imo.

    • @JeffGeerling
      @JeffGeerling  ปีที่แล้ว

      Ouch! I'm lucky it's only every couple months.

    • @kuhluhOG
      @kuhluhOG ปีที่แล้ว

      @@skirata3144 I just use ddclient

  • @RobertGallop
    @RobertGallop ปีที่แล้ว +1

    Jeff will you be attending Redhat Summit/Ansiblefest in a few weeks?

    • @JeffGeerling
      @JeffGeerling  ปีที่แล้ว

      Good question: not this one :(
      Too much going on to make it

  • @ltpinecone
    @ltpinecone ปีที่แล้ว

    I actually did this awhile ago. Highly recommend it to my fellow nerds!

  • @masterinsan0
    @masterinsan0 8 หลายเดือนก่อน

    Now that PiVPN is no longer being maintained, it would be really cool to see you do a video on how to replace it.

  • @albertrodriguez3429
    @albertrodriguez3429 ปีที่แล้ว +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  ปีที่แล้ว +1

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