44Net Connect/Quick Start/Raspberry Pi: Difference between revisions
Added example picture for WireGuard tunnel config being copied from 44Net Connect |
Added section on starting automatically with systemd |
||
| (3 intermediate revisions by the same user not shown) | |||
| Line 87: | Line 87: | ||
The first time you create your tunnel, the private key will be present in the config for you to copy. Every subsequent time you view the config in the portal, the private key will not be shown. Saving a backup of the private key in a secure place is recommended. | The first time you create your tunnel, the private key will be present in the config for you to copy. Every subsequent time you view the config in the portal, the private key will not be shown. Saving a backup of the private key in a secure place is recommended. | ||
After creating your config file, set its permissions so that only the owner has read or write permissions. This can be done with the command <code>sudo chmod 600 /etc/wireguard/wg0.conf</code>. (Replace <code>wg0</code> with the name of your file.) | |||
== Activate and connect == | |||
=== Activate your tunnel === | |||
* Run the command <code>wg-quick up wg0</code> (replace <code>wg0</code> with the name of your configuration file if different). | |||
* If at this step WireGuard reports the error <code>Failed to activate service 'org.freedesktop.resolve1': timed out</code>, you may have forgotten to restart your Pi after installing <code>systemd-resolved</code>. | |||
=== Confirm Connection in the Connect dashboard === | |||
* Your tunnel status should show as "Active" with a green indicator. | |||
[[File:wireguard_tunnel_connected.png|500px]] | |||
* The <code>Endpoint</code> field should show the IP address your device is connecting from, as well as the port it's using. This is not the 44Net IP from which your device is publicly accessible. | |||
=== Other Ways to Confirm Connection === | |||
* Visit https://connect.44net.cloud/myip in your browser, or query it from the command line using <code>curl https://connect.44net.cloud/myip</code> | |||
* Use <code>traceroute</code> to inspect the path between you and some other device, such as <code>traceroute 1.1.1.1</code>. When the tunnel is working, the first hop will be through a 44Net gateway, so its IP will be in the <code>44.0.0.0/9</code> or <code>44.128.0.0/10</code> subnet. | |||
== Starting the Tunnel Automatically == | |||
* On Linux distributions that use <code>systemd</code>, creating a <code>systemd</code> unit is the recommended way to automatically start the tunnel. | |||
* Create a unit file in <code>/etc/systemd/system/</code>, for example <code>/etc/systemd/system/44net-tunnel.service</code>. | |||
* Paste the following into the file. | |||
<nowiki> | |||
[Unit] | |||
Description=WireGuard single device 44Net Connect tunnel | |||
Requires=network-online.target | |||
[Service] | |||
Type=oneshot | |||
RemainAfterExit=true | |||
# Edit these lines if your config file is named differently. | |||
ExecStart=wg-quick up /etc/wireguard/wg0.conf | |||
ExecStop=wg-quick down /etc/wireguard/wg0.conf | |||
[Install] | |||
WantedBy=multi-user.target | |||
</nowiki> | |||
* If your config file is named something other than <code>wg0.conf</code>, edit the <code>ExecStart</code> and <code>ExecStop</code> lines so that they reflect the correct file name. | |||
* Enable and start the service by running <code>sudo systemctl enable --now 44net-tunnel.service</code>. If you named your unit file something else, use that name instead of <code>44net-tunnel.service</code>. | |||
* Verify that the service has started by running <code>systemctl status 44net-tunnel.service</code> and checking that it says enabled and active, the same way we previously checked that systemd-resolved was working. | |||
[[Category:Tutorial]] | [[Category:Tutorial]] | ||
Latest revision as of 22:31, 29 May 2026
What you need
- A 44Net Portal account
- A verified amateur radio callsign
- A Raspberry Pi with a working Raspberry Pi OS installation
- Some sort of Internet access
If you haven't set up your Portal account or verified your callsign yet, see 44Net: Get Started for instructions.
Install Dependencies
Step 1: Ensure your OS is up to date
Open a terminal and run sudo apt-get update, then sudo apt-get upgrade.
Step 2: Install wireguard and systemd-resolved
Run sudo apt-get install wireguard systemd-resolved, then restart your Raspberry Pi. Restarting is required for systemd-resolved to function.
Step 3: Verify that systemd-resolved is enabled
Run systemctl status systemd-resolved. If the unit is running without issues, there will be a green asterisk or circle at the top left. The second line, beginning with "Loaded," should indicate that the unit is enabled. If it's not, run systemctl enable systemd-resolved to enable the unit. This will ensure that the unit starts automatically when your Raspberry Pi boots from now on.
The third line, beginning with "Active," should indicate that the unit is active (running).
If it's not, run systemctl start systemd-resolved to start the unit. This will ensure that the unit is currently running.
Create your Connect tunnel
Step 1: Sign in to 44Net Connect
- Visit The 44Net Connect dashboard.
- Click the “Log In to Get Started” button.
- Sign in with your 44Net Portal account credentials.
Step 3: Choose region and node
- In the list of regions, click the region closest to you.
- Nodes available in that region will appear.
- Click a node to select it as your endpoint.
You can change endpoints later if needed.
Step 5: Save your new tunnel
- Check or uncheck the option to receive tunnel details via email.
- Click the “Create Tunnel” button.
- Review the confirmation dialog and click “Save Changes” to proceed.
Configure your WireGuard client
- On your Raspberry Pi, create a new file for your WireGuard configuration in
/etc/wireguard/, for example/etc/wireguard/wg0.conf. - You can name this file however you want, but this file name will become the name of your WireGuard interface.
- Paste the configuration text in from 44Net Connect, or if you prefer to use the file that was emailed to you, upload that one.
The first time you create your tunnel, the private key will be present in the config for you to copy. Every subsequent time you view the config in the portal, the private key will not be shown. Saving a backup of the private key in a secure place is recommended.
After creating your config file, set its permissions so that only the owner has read or write permissions. This can be done with the command sudo chmod 600 /etc/wireguard/wg0.conf. (Replace wg0 with the name of your file.)
Activate and connect
Activate your tunnel
- Run the command
wg-quick up wg0(replacewg0with the name of your configuration file if different). - If at this step WireGuard reports the error
Failed to activate service 'org.freedesktop.resolve1': timed out, you may have forgotten to restart your Pi after installingsystemd-resolved.
Confirm Connection in the Connect dashboard
- Your tunnel status should show as "Active" with a green indicator.
- The
Endpointfield should show the IP address your device is connecting from, as well as the port it's using. This is not the 44Net IP from which your device is publicly accessible.
Other Ways to Confirm Connection
- Visit https://connect.44net.cloud/myip in your browser, or query it from the command line using
curl https://connect.44net.cloud/myip - Use
tracerouteto inspect the path between you and some other device, such astraceroute 1.1.1.1. When the tunnel is working, the first hop will be through a 44Net gateway, so its IP will be in the44.0.0.0/9or44.128.0.0/10subnet.
Starting the Tunnel Automatically
- On Linux distributions that use
systemd, creating asystemdunit is the recommended way to automatically start the tunnel. - Create a unit file in
/etc/systemd/system/, for example/etc/systemd/system/44net-tunnel.service. - Paste the following into the file.
[Unit] Description=WireGuard single device 44Net Connect tunnel Requires=network-online.target [Service] Type=oneshot RemainAfterExit=true # Edit these lines if your config file is named differently. ExecStart=wg-quick up /etc/wireguard/wg0.conf ExecStop=wg-quick down /etc/wireguard/wg0.conf [Install] WantedBy=multi-user.target
- If your config file is named something other than
wg0.conf, edit theExecStartandExecStoplines so that they reflect the correct file name. - Enable and start the service by running
sudo systemctl enable --now 44net-tunnel.service. If you named your unit file something else, use that name instead of44net-tunnel.service. - Verify that the service has started by running
systemctl status 44net-tunnel.serviceand checking that it says enabled and active, the same way we previously checked that systemd-resolved was working.




