In this chapter
Install Ubuntu Server
- Choose a spare x86-64 PC with an SSD, at least four useful CPU cores and 8 GB RAM. 16 GB gives more room for learning tools and databases. This is a starting recommendation, not a promised capacity rating. Check MongoDB's current CPU requirements, including AVX on x86-64, before buying an older PC.
- Download the Ubuntu Server 24.04 LTS image from Ubuntu. Verify its checksum using the official download instructions. Write it to a USB stick with a trusted image writer. The USB contents will be erased.
- Back up the PC. Boot from the USB stick and follow the installer. Selecting an installation disk can erase it. Use the spare disk you intended for this project.
- Set a meaningful hostname such as
private-lteand create a normal administrator account such asbuilder. Use a unique password. Enable OpenSSH if you want remote administration on your own LAN. - Connect the first Ethernet port to your broadband router. Keep the second Ethernet port for the eNodeB network. Initially leave the radio unpowered unless the licence and safe RF arrangement are ready.
- Finish installation, remove the USB stick and reboot. Sign in at the local keyboard and display.
Ubuntu Desktop can run the same software, but this guide uses Server's Netplan and systemd-networkd arrangement. If you use a desktop managed by NetworkManager, make the equivalent wired settings there instead of maintaining competing configurations.
Update and identify the interfaces
sudo apt update
sudo apt full-upgrade
sudo apt install curl ca-certificates gnupg software-properties-common openssh-server nftables tcpdump python3-yaml nano
sudo rebootSign back in and run:
cat /etc/os-release
ip -br link
ip -br address
ip route
timedatectl statusLook for Ubuntu 24.04, an address on the router's LAN and a default route through that router. The cable that reaches the router is the management and Internet interface. Unplugging one cable briefly and checking link state can help identify a port. Write the real names down. enp1s0 and enp2s0 are only examples.
Check that system time is synchronised. Certificate validation and useful logs depend on it. Server NTP does not supply the timing needed to synchronise an LTE TDD cell.
Keep one default route
Make a DHCP reservation for the PC in your router, for example 192.168.50.10. Keep DHCP on its router-facing interface. Give the radio-facing interface a static address. Back up and edit the existing Netplan file shown by ls /etc/netplan. Merge these interface settings into that file, preserving its existing top-level network settings. Do not leave duplicate definitions in several files.
network:
version: 2
renderer: networkd
ethernets:
enp1s0:
dhcp4: true
dhcp6: false
accept-ra: false
link-local: []
enp2s0:
dhcp4: false
dhcp6: false
accept-ra: false
link-local: []
addresses:
- 192.168.200.1/24sudo netplan generate
sudo netplan tryRun this at the local console. netplan try asks you to confirm the working configuration and otherwise rolls it back. Check ip -br address and ip route again. There should be one IPv4 default route through the home router, plus a connected route for 192.168.200.0/24. There is no gateway on the radio port. Follow Netplan's examples if your installer uses a different file layout.
Make a private place for configuration backups
sudo install -d -m 700 /root/private-lte-backups
sudo cp -a /etc/netplan /root/private-lte-backups/netplan-initial
sudo systemctl enable --now ssh
systemctl --failedUse an SSH key from your administrator computer and verify that it works in a second session before changing password access. If you want to disable SSH password login, edit a dedicated file under /etc/ssh/sshd_config.d/, validate it with sudo sshd -t and reload SSH only after that check passes. Keep the local console available. Do not forward port 22 from the Internet router for this lab.
Checkpoint
The PC should install updates, resolve names, show correct time and keep its addresses after a reboot. You should know which physical port is the radio port. Stop and fix basic Ubuntu networking before installing a core. A mobile service cannot repair a missing default route or a disconnected cable.
Set the firewall in the next chapters before connecting devices or opening administration. The core uses loopback by default, which keeps its components local while you prepare it.
