oran-testing / soft-t-ue

5G security testing user equipment based on srsRAN's 4G UE
https://rantesterue.org
GNU Affero General Public License v3.0
2 stars 0 forks source link

Automated install and startup scripts #11

Closed bjones1 closed 1 month ago

bjones1 commented 1 month ago

Per a discussion between @cueltschey and me today, we should:

  1. Create a simple script to install all gNodeB, open5G dependencies, whatever else we need to monitor the server (scapy, iperf3, etc.), and to perform one-time routing setup necessary. This should should be run once to install the server-side software on a freshly-imaged Linux box.
  2. Create a simple script to run gNodeB, open5G, and everything else. This script should after either a server reboot or after shutting down the system. Eventually, make this auto-run via systemd.
  3. Create a simple script to install the T-UE and associated GUI. Again, a one-time execution for a fresh Linux box.

We shouldn't need a script to run the T-UE/GUI -- the GUI should take care of starting whatever is necessary.

I have some manual instructions here that could provide a basis for these scripts.

cueltschey commented 1 month ago

I've mostly finished with the scripts. If you could take a look and let me know what you think that would be great. Thanks

cueltschey commented 1 month ago

The scripts are finished and well tested. There are three scripts in total, one for the gNB, one for the UE, and one for Open5GS. They install the binaries onto the path, using our repositories. They should be able to be used in CI/CD and in the automatic deployment of new servers.

bjones1 commented 1 month ago

Thanks for working on this! I have a couple of questions/feedback:

  1. You've created a script (install-ue-gnb.sh) that partially duplicates other scripts (install-ue.sh, install-gnb.sh). I'd suggest deleting this combined script for DRY reasons.
  2. The scripts IMHO need more docs -- see my PR for some examples. I'll leave comments as well.
  3. I tested on a VirtualBox (just the UE install script) and it runs without problems, but I can't try running the script until I have a Linux box to play with.