[ 00:00:00-00:00:02 ] today we are going to set up our own
[ 00:00:02-00:00:04 ] wireguard server wireguard is free open
[ 00:00:04-00:00:07 ] source VPN software and by hosting this
[ 00:00:07-00:00:09 ] on a free virtual machine you can
[ 00:00:09-00:00:11 ] effectively get your own free VPN you
[ 00:00:11-00:00:13 ] can get a free virtual machine either
[ 00:00:13-00:00:15 ] from Oracle Cloud's free tier or from
[ 00:00:15-00:00:17 ] Google Cloud's free tier and you can
[ 00:00:17-00:00:19 ] connect your wireguard client from any
[ 00:00:19-00:00:22 ] Windows device Mac device iOS Android or
[ 00:00:22-00:00:25 ] Linux to effectively give you a free VPN
[ 00:00:25-00:00:27 ] on any of your devices to get your free
[ 00:00:27-00:00:30 ] virtual machine head to oracle.com Cloud
[ 00:00:30-00:00:33 ] slash free or cloud.google.com free or
[ 00:00:33-00:00:36 ] if you don't trust Google or Oracle and
[ 00:00:36-00:00:38 ] don't mind paying a few dollars you
[ 00:00:38-00:00:39 ] could try rack nerd now they allow you
[ 00:00:39-00:00:41 ] to sign up using cryptocurrency so if
[ 00:00:41-00:00:43 ] you want that extra level of privacy
[ 00:00:43-00:00:45 ] I've got a link in the description where
[ 00:00:45-00:00:47 ] you can check out rack nerd but for this
[ 00:00:47-00:00:49 ] demonstration I'll use Oracle so go
[ 00:00:49-00:00:51 ] ahead and sign up for free and I'll go
[ 00:00:51-00:00:53 ] ahead and meet you in the dashboard and
[ 00:00:53-00:00:54 ] let's build this thing
[ 00:00:54-00:00:56 ] [Music]
[ 00:00:56-00:00:58 ] okay once we've signed up and logged
[ 00:00:58-00:01:00 ] into Oracle we are using our free tier
[ 00:01:00-00:01:02 ] account here and under get started let's
[ 00:01:02-00:01:05 ] scroll down to create a VM instance and
[ 00:01:05-00:01:07 ] I'm going to call this one yguard under
[ 00:01:07-00:01:09 ] name and from here we choose our image
[ 00:01:09-00:01:12 ] and shape so by default it's on Oracle
[ 00:01:12-00:01:14 ] Linux we can choose a different
[ 00:01:14-00:01:16 ] operating system if we like for example
[ 00:01:16-00:01:19 ] I'll go with Ubuntu and 1804 that's what
[ 00:01:19-00:01:21 ] I'll go with here you can actually use
[ 00:01:21-00:01:24 ] any of the supportive distributions here
[ 00:01:24-00:01:25 ] in the documentation I'll link to that
[ 00:01:25-00:01:28 ] on my blog in the description but for
[ 00:01:28-00:01:31 ] this demo I'll use Ubuntu and go ahead
[ 00:01:31-00:01:33 ] and select that image and for the shape
[ 00:01:33-00:01:35 ] I'll leave it on the default always free
[ 00:01:35-00:01:37 ] eligible AMD micro there that's going to
[ 00:01:37-00:01:39 ] work just fine for networking we can
[ 00:01:39-00:01:41 ] click edit there and we can choose if
[ 00:01:41-00:01:43 ] we've already used this before we can
[ 00:01:43-00:01:45 ] use an existing virtual Cloud network if
[ 00:01:45-00:01:47 ] you haven't used it before you can go
[ 00:01:47-00:01:49 ] ahead and create a virtual Cloud Network
[ 00:01:49-00:01:51 ] it'll give a default name and a default
[ 00:01:51-00:01:53 ] subnet name there either way it's cool
[ 00:01:53-00:01:58 ] and now we want to using SSH key so we
[ 00:01:58-00:01:59 ] can generate one I'm going to paste one
[ 00:01:59-00:02:01 ] in and I like to use putty to generate
[ 00:02:01-00:02:03 ] keys so you can get that at putty.org
[ 00:02:03-00:02:05 ] for free there so party comes with
[ 00:02:05-00:02:07 ] puttygen that's what I'm going to use to
[ 00:02:07-00:02:09 ] generate my key so click generate wiggle
[ 00:02:09-00:02:10 ] the mouse in there for generating random
[ 00:02:10-00:02:13 ] data and that will create our key so
[ 00:02:13-00:02:15 ] that'll come up in just a second
[ 00:02:15-00:02:17 ] and let's go ahead and save that public
[ 00:02:17-00:02:19 ] key I'll call that wireguard and save
[ 00:02:19-00:02:22 ] that in and save our private key as well
[ 00:02:22-00:02:24 ] we can click yes there if you'd like to
[ 00:02:24-00:02:25 ] add a password you can do that here as
[ 00:02:25-00:02:29 ] well and why God private there we go and
[ 00:02:29-00:02:31 ] we can actually just copy this uh public
[ 00:02:31-00:02:34 ] key from the screen there just go ahead
[ 00:02:34-00:02:35 ] and copy it and you can paste it
[ 00:02:35-00:02:37 ] straight in there and that should be all
[ 00:02:37-00:02:38 ] good of course you don't have to use
[ 00:02:38-00:02:40 ] putty there's plenty of other methods to
[ 00:02:40-00:02:42 ] generate SSH keys but that's basically
[ 00:02:42-00:02:45 ] it we click create now we can see our
[ 00:02:45-00:02:46 ] instance is provisioning in a second
[ 00:02:46-00:02:48 ] we'll get our public ip4 address then we
[ 00:02:48-00:02:51 ] can go ahead and connect to the VM all
[ 00:02:51-00:02:52 ] right so that took about a minute and
[ 00:02:52-00:02:54 ] we've got our public IP address there
[ 00:02:54-00:02:55 ] let's copy that one this one's green
[ 00:02:55-00:02:57 ] it's running let's go ahead and run
[ 00:02:57-00:03:00 ] putty let's connect to that address so
[ 00:03:00-00:03:02 ] our host name is going to be the IP
[ 00:03:02-00:03:04 ] address that we just generated there on
[ 00:03:04-00:03:08 ] rvm and Ubuntu is the username at the
[ 00:03:08-00:03:10 ] address there I'm going to say this as
[ 00:03:10-00:03:14 ] wireguard tutorial and click save there
[ 00:03:14-00:03:16 ] and then under SS page let's go ahead
[ 00:03:16-00:03:19 ] and find that key for authentication
[ 00:03:19-00:03:21 ] that's the private key we saved earlier
[ 00:03:21-00:03:23 ] so we can just browse to that key that's
[ 00:03:23-00:03:25 ] the one I saved it as wireguard private
[ 00:03:25-00:03:27 ] there and let's go back to session and
[ 00:03:27-00:03:29 ] I'm going to save that again and we can
[ 00:03:29-00:03:30 ] go ahead and open that
[ 00:03:30-00:03:32 ] and click accept
[ 00:03:32-00:03:34 ] and it should connect to our virtual
[ 00:03:34-00:03:35 ] machine now
[ 00:03:35-00:03:37 ] there we go first thing Let's do let's
[ 00:03:37-00:03:41 ] change the super user so sudo Su Dash
[ 00:03:41-00:03:43 ] here we go and then we've got a few
[ 00:03:43-00:03:45 ] commands to install wireguard so I'm
[ 00:03:45-00:03:46 ] going to put all this over on my blog
[ 00:03:46-00:03:48 ] you can just copy and paste it from
[ 00:03:48-00:03:50 ] there and the first thing is to get the
[ 00:03:50-00:03:53 ] install script next thing is to change
[ 00:03:53-00:03:56 ] the permissions on that
[ 00:03:56-00:04:00 ] and then go ahead and install using the
[ 00:04:00-00:04:01 ] script
[ 00:04:01-00:04:02 ] Bang
[ 00:04:02-00:04:04 ] and now it's asking for our public IP
[ 00:04:04-00:04:06 ] address we have to change this to our
[ 00:04:06-00:04:08 ] public IP address that's that one there
[ 00:04:08-00:04:12 ] so after copying our VM IP address we
[ 00:04:12-00:04:14 ] can delete that one and then right click
[ 00:04:14-00:04:15 ] to paste and Posse you can paste in our
[ 00:04:15-00:04:17 ] public IP address the rest of this will
[ 00:04:17-00:04:19 ] leave us default so press enter enter
[ 00:04:19-00:04:22 ] enter enter enter enter and enter and
[ 00:04:22-00:04:26 ] enter and that's about it make a note of
[ 00:04:26-00:04:27 ] this port because we're gonna have to
[ 00:04:27-00:04:29 ] open this on our virtual Cloud Network
[ 00:04:29-00:04:31 ] in just a second so highlighting it
[ 00:04:31-00:04:32 ] actually copies it to our clipboard we
[ 00:04:32-00:04:34 ] can use that in just a second
[ 00:04:34-00:04:38 ] enter here enter again and now it looks
[ 00:04:38-00:04:39 ] like it's doing its thing installing
[ 00:04:39-00:04:42 ] away here while this is installing let's
[ 00:04:42-00:04:44 ] go ahead and open up that port in our
[ 00:04:44-00:04:46 ] virtual Cloud Network so under our
[ 00:04:46-00:04:48 ] instance details here we can go to our
[ 00:04:48-00:04:50 ] virtual Cloud Network there click that
[ 00:04:50-00:04:50 ] one
[ 00:04:50-00:04:54 ] and then we click the subnet and then we
[ 00:04:54-00:04:57 ] click our default security list and then
[ 00:04:57-00:04:58 ] we have to add the Ingress rule here so
[ 00:04:58-00:05:01 ] it's
[ 00:05:01-00:05:04 ] 0.0.0.0 zero there TCP and the
[ 00:05:04-00:05:07 ] destination Port is that one we copied
[ 00:05:07-00:05:09 ] from our install and I'm going to put
[ 00:05:09-00:05:11 ] yguard in here just so I can remember
[ 00:05:11-00:05:13 ] that this port is for wireguard and add
[ 00:05:13-00:05:14 ] that on
[ 00:05:14-00:05:16 ] and we're going to do the same thing
[ 00:05:16-00:05:21 ] again uh 0.0.0.0 this time it's going to
[ 00:05:21-00:05:22 ] be UDP
[ 00:05:22-00:05:24 ] there we go
[ 00:05:24-00:05:26 ] oh it's the same there
[ 00:05:26-00:05:29 ] in my case it's five nine seven five
[ 00:05:29-00:05:30 ] seven but yours might be a little
[ 00:05:30-00:05:32 ] different it's going to pick a random
[ 00:05:32-00:05:35 ] port in in a certain range there for you
[ 00:05:35-00:05:37 ] so why card in there and add that one on
[ 00:05:37-00:05:39 ] there as well so we should get our two
[ 00:05:39-00:05:41 ] wire guard ports opened up here let's
[ 00:05:41-00:05:43 ] check how our install is going there
[ 00:05:43-00:05:45 ] it's asking for our client name we can
[ 00:05:45-00:05:47 ] give this any name we want so I'll call
[ 00:05:47-00:05:51 ] it idea spot and the rest of this is
[ 00:05:51-00:05:54 ] just enter enter and now we've got a QR
[ 00:05:54-00:05:56 ] code we can actually uh take a
[ 00:05:56-00:05:58 ] screenshot of this because you can
[ 00:05:58-00:05:59 ] actually get the Y guide app on your
[ 00:05:59-00:06:01 ] mobile devices use the camera on the
[ 00:06:01-00:06:04 ] mobile app and that will link your
[ 00:06:04-00:06:07 ] mobile device to your VPN with that code
[ 00:06:07-00:06:10 ] and the other way we can do this on our
[ 00:06:10-00:06:12 ] PC is we can get our conf file it's
[ 00:06:12-00:06:14 ] under root
[ 00:06:14-00:06:17 ] client ids.conf in my case so we can
[ 00:06:17-00:06:18 ] have a look at that file and get the
[ 00:06:18-00:06:21 ] config that we need but to view that
[ 00:06:21-00:06:23 ] file all I'll do is type cat and then
[ 00:06:23-00:06:26 ] paste that path in there and so cat
[ 00:06:26-00:06:30 ] and then that one there so root wgo
[ 00:06:30-00:06:32 ] client ids.conf and that's going to
[ 00:06:32-00:06:34 ] display the info we need so all the
[ 00:06:34-00:06:36 ] stuff in here is what we're going to use
[ 00:06:36-00:06:39 ] to duplicate this conf file on our PC so
[ 00:06:39-00:06:40 ] I'm going to copy that and then in
[ 00:06:40-00:06:43 ] notepad let's just paste it in there and
[ 00:06:43-00:06:45 ] then let's save this as the conf file so
[ 00:06:45-00:06:48 ] I'm going to save it as type all files
[ 00:06:48-00:06:53 ] here or files and I'll call this uh idea
[ 00:06:53-00:06:55 ] dot conf so that's the config file that
[ 00:06:55-00:06:58 ] we use in our why guide client on our PC
[ 00:06:58-00:07:00 ] so why God has clients for Windows Mac
[ 00:07:00-00:07:03 ] Ubuntu Android iOS devices here I'm
[ 00:07:03-00:07:05 ] using Windows in this example so I'll
[ 00:07:05-00:07:07 ] download the windows installer and after
[ 00:07:07-00:07:09 ] running that installer you'll get your
[ 00:07:09-00:07:10 ] app the app looks like this it'll say
[ 00:07:10-00:07:12 ] wireguard import the tunnel from the
[ 00:07:12-00:07:14 ] file and that is the idea cons file that
[ 00:07:14-00:07:16 ] I just created in my situation and there
[ 00:07:16-00:07:18 ] we go so that's loaded in and we just
[ 00:07:18-00:07:21 ] click activate and if we're lucky this
[ 00:07:21-00:07:22 ] should connect and so this looks like
[ 00:07:22-00:07:23 ] it's running just fine if we go to
[ 00:07:23-00:07:27 ] Google and type just what's my IP
[ 00:07:27-00:07:29 ] we should actually get our public IP
[ 00:07:29-00:07:30 ] address will show as our virtual machine
[ 00:07:30-00:07:32 ] address so that means our VPN is working
[ 00:07:32-00:07:35 ] just fine yeah the tool is what's my
[ 00:07:35-00:07:38 ] ip.com you can see my machine is in
[ 00:07:38-00:07:39 ] Phoenix Arizona I'm actually in
[ 00:07:39-00:07:41 ] Australia so this is working quite well
[ 00:07:41-00:07:45 ] and Oracle is my ISP obviously because
[ 00:07:45-00:07:46 ] I'm using Oracle cloud
[ 00:07:46-00:07:47 ] but that basically wraps it up
[ 00:07:47-00:07:49 ] wireguard's been working really well for
[ 00:07:49-00:07:50 ] me since I tested it on Windows I've
[ 00:07:50-00:07:53 ] also used it on iOS as well both have
[ 00:07:53-00:07:55 ] been really fine using that QR code like
[ 00:07:55-00:07:57 ] I showed earlier on the camera was easy
[ 00:07:57-00:08:00 ] to load that onto the wireguard app but
[ 00:08:00-00:08:03 ] the other way I've used a free VPN on
[ 00:08:03-00:08:06 ] Oracle ears using openvpn and I've done
[ 00:08:06-00:08:07 ] a tutorial on that I'll link to that in
[ 00:08:07-00:08:10 ] the screen at the end screen here so you
[ 00:08:10-00:08:11 ] can check that one out see which one you
[ 00:08:11-00:08:13 ] prefer Some people prefer wireguard Some
[ 00:08:13-00:08:16 ] people prefer openvpn but both have been
[ 00:08:16-00:08:18 ] just fine in my case so let me know know
[ 00:08:18-00:08:19 ] what you think in the comments thanks
[ 00:08:19-00:08:23 ] for watching I'll see you next time