2021-05-08 14:58:00 +02:00
|
|
|
* Wireguard Quick Start
|
|
|
|
|
|
|
|
https://www.wireguard.com/quickstart/
|
|
|
|
|
|
|
|
Level 3 VPN Protocol.
|
|
|
|
Designed for Linux (works on BSD, MacOS and Windows too).
|
|
|
|
Network Interface as most basic foundation of operation.
|
|
|
|
|
|
|
|
** Linux CLI
|
|
|
|
|
|
|
|
Cheat Sheet: https://gist.github.com/chrisswanda/88ade75fc463dcf964c6411d1e9b20f4
|
|
|
|
|
2021-05-16 21:45:43 +02:00
|
|
|
Replace ~wg0~ with an interface name for the VPN connection, e.g. ~homeoffice~ or ~mycloud~
|
2021-05-08 14:58:00 +02:00
|
|
|
|
2021-05-16 21:45:43 +02:00
|
|
|
Tutorial with best Explaination: https://medium.com/tangram-visions/what-they-dont-tell-you-about-setting-up-a-wireguard-vpn-46f7bd168478
|
2021-05-08 14:58:00 +02:00
|
|
|
|
|
|
|
*** Create Keys
|
|
|
|
|
|
|
|
#+begin_src bash
|
|
|
|
$ umask 077
|
2021-05-16 21:45:43 +02:00
|
|
|
$ wg genkey | tee privatekey | wg pubkey > publickey
|
2021-05-08 14:58:00 +02:00
|
|
|
#+end_src
|
|
|
|
|
2021-05-16 21:45:43 +02:00
|
|
|
*** Setup the Interface
|
2021-05-08 14:58:00 +02:00
|
|
|
|
2021-05-16 21:45:43 +02:00
|
|
|
#+begin_src bash
|
|
|
|
# sudo wg-quick up wg.conf.example
|
|
|
|
#+end_src
|
2021-05-08 14:58:00 +02:00
|
|
|
|
2021-05-16 21:45:43 +02:00
|
|
|
*** Add Peer
|
2021-05-08 14:58:00 +02:00
|
|
|
|
|
|
|
#+begin_src bash
|
|
|
|
# add peer
|
2021-05-16 21:45:43 +02:00
|
|
|
wg set wg0 peer <client_pubkey> allowed-ips 10.0.0.x/32 persistent-keepalive 25
|
2021-05-08 14:58:00 +02:00
|
|
|
|
|
|
|
# verify connection
|
|
|
|
wg
|
|
|
|
|
|
|
|
# save to config
|
|
|
|
wg-quick save wg0
|
|
|
|
#+end_src
|
|
|
|
|
|
|
|
*** Start/Stop Interface
|
|
|
|
|
|
|
|
#+begin_src bash
|
|
|
|
# Start/stop interface
|
|
|
|
wg-quick up wg0
|
|
|
|
wg-quick down wg0
|
|
|
|
|
|
|
|
# Start/stop service
|
|
|
|
$ sudo systemctl stop wg-quick@wg0.service
|
|
|
|
$ sudo systemctl start wg-quick@wg0.service
|
|
|
|
#+end_src
|