Install Access Gateway on Ubuntu (Bare Metal)
NOTE: Debian-based AGW deployments are no longer supported as of v1.6. If you want to install to Debian, refer to v1.5 of the documentation.
To setup a Magma Access Gateway, you will need a machine that satisfies the following requirements:
- AGW_HOST: 64bit-X86 machine, baremetal strongly recommended (not virtualized).
You will need two ethernet ports. We use enp1s0 and enp2s0 in this guide.
They might have different names on your hardware so just replace enp1s0 and
enp2s0 with your current interfaces name in this guideline.
One port is for the SGi interface (default: enp1s0) and one for the S1
interface (default: enp2s0). Note that the
agw_install_ubuntu.shscript will rename the
1. Create boot USB stick and install Ubuntu on your AGW host
- Download the Ubuntu Server 20.04 LTS .iso image from the Ubuntu website
- Create bootable usb using etcher tutorial here
- Boot your AGW host from USB (Press F11 to select boot sequence, :warning: This might be different for your machine). If you see 2 options to boot from USB, select the non-UEFI option.
- Install and configure you access gateway according to your network defaults.
- Make sure to enable ssh server and utilities (untick every other)
- Connect your SGi interface to the internet and select this port during the installation process to get an IP using DHCP.
2. Deploy magma on the AGW_HOST
Run AGW installation
To install on server with DHCP configured SGi interface.
su wget https://raw.githubusercontent.com/magma/magma/v1.6/lte/gateway/deploy/agw_install_ubuntu.sh bash agw_install_ubuntu.sh
To Install on server with statically allocated SGi interface. Fow example: SGi has 18.104.22.168/24 IP and upstream router IP is 22.214.171.124
su wget https://raw.githubusercontent.com/magma/magma/v1.6/lte/gateway/deploy/agw_install_ubuntu.sh bash agw_install_ubuntu.sh 126.96.36.199/24 188.8.131.52
The script will run a pre-check script that will prompt you what will change
on your machine. If you're okay with those changes reply
yes and magma will
be installed. If
no is replied It will stop the installation.
- Check if Ubuntu is installed Ubuntu is installed - Check for magma user magma user is not Installed - Check if both interfaces are named eth0 and eth1 Interfaces will be renamed to eth0 and eth1 eth0 will be set to dhcp and eth1 10.0.2.1 Do you accept those modifications and want to proceed with magma installation?(y/n) Please answer yes or no.
The machine will reboot but It's not finished yet, the script is still running in the background. You can follow the output there
journalctl -fu agw_installation
When you see "AGW installation is done." It means that your AGW installation is done, you can make sure magma is running by executing:
service magma@* status
Post Install Check
Make sure you have
control_proxy.yml file in directory /var/opt/magma/configs/
before running post install script.