This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| wireguard_on_freshtomato [2024/10/10 17:17] – [Overview] -Condense, add Head4 "Checking if Modules are Available/Running" hogwild | wireguard_on_freshtomato [2025/11/12 21:57] (current) – [Web interface or command-line configuration] -Update intro and add link to main WireGuard page hogwild | ||
|---|---|---|---|
| Line 11: | Line 11: | ||
| ===== Web interface or command-line configuration ===== | ===== Web interface or command-line configuration ===== | ||
| - | Release 2024.1 and later include | + | r2024.1 and later allow Wireguard |
| + | |||
| + | The main principles | ||
| Line 20: | Line 22: | ||
| Wireguard is not a " | Wireguard is not a " | ||
| - | Before configuring Wireguard, consult the official documentation' | + | Before configuring Wireguard, consult the official documentation' |
| ===== Overview ===== | ===== Overview ===== | ||
| - | Wireguard is now available in FreshTomato' | + | Wireguard is now available in FreshTomato' |
| - | Once you understand some basic principles, it is fairly simple to configure. Currently, only ARM-based devices include the code needed | + | Once you understand some basic principles, it is fairly simple to configure. Currently, only ARM-based devices include the code to run Wireguard. |
| - | + | ||
| - | === Checking if Modules are Available/ | + | |
| \\ | \\ | ||
| - | If you're unsure, try loading the kernel module as follows: | + | === Checking if Modules are Available/ |
| + | |||
| + | | ||
| <code -> | <code -> | ||
| Line 39: | Line 41: | ||
| </ | </ | ||
| - | If you see no output, | + | If you see no output, |
| | | ||
| Line 62: | Line 64: | ||
| ===== Syntax ===== | ===== Syntax ===== | ||
| - | The first step is familiarize yourself with the '' | + | The first step is to familiarize yourself with the '' |
| \\ | \\ | ||
| Line 90: | Line 92: | ||
| For example: | For example: | ||
| - | |||
| - | \\ | ||
| <code -> | <code -> | ||
| Line 131: | Line 131: | ||
| \\ | \\ | ||
| - | If that storage becomes unavailable, | + | If the storage becomes unavailable, |
| + | |||
| + | For this example, and the final setup, we' | ||
| \\ | \\ | ||
| Line 148: | Line 150: | ||
| \\ | \\ | ||
| - | The above two key generation programs should | + | The above two key generation programs should |
| <code -> | <code -> | ||
| Line 160: | Line 162: | ||
| The content of these files must be added to the configuration file. In this case, we will call that file: " | The content of these files must be added to the configuration file. In this case, we will call that file: " | ||
| - | **Do not** use the keys from this example. They are fake/hypothetical and only serve as an example. | + | **Do not** use the keys from this example. They are hypothetical and only an example. |
| - | \\ The contents of the wg0.conf file on routerA are as follows: | + | |
| <code -> | <code -> | ||
| Line 206: | Line 208: | ||
| \\ | \\ | ||
| - | On a network with private addressing (behind NAT) that is unreachable from the Internet, the connection | + | On a network with private addressing (behind NAT), unreachable from the Internet, the connection |
| + | |||
| + | \\ | ||
| - | Let's assume routerB is behind an unmanaged NAT device (so your WAN has a private IP) your routerA [peer] definition | + | Let's assume routerB is behind an unmanaged NAT device (your WAN has a private IP). Your routerA [peer] definition |
| - | \\ \\ The necessary changes to the wg0.conf | + | \\ \\ The necessary changes to wg0.conf for this are: \\ |
| <code -> | <code -> | ||
| Line 222: | Line 226: | ||
| \\ | \\ | ||
| - | A // | + | A // |
| \\ | \\ | ||
| Line 234: | Line 238: | ||
| {{: | {{: | ||
| - | On a point-to-point connection, | + | On a point-to-point connection, |
| Line 242: | Line 246: | ||
| <code -> | <code -> | ||
| - | wget https://tinyurl.com/28b5rckn | + | wget https://gist.githubusercontent.com/pedro0311/ |
| </ | </ | ||