Deploying GreenRadius on Amazon Linux 2023
Prerequisites
- A target machine (
x86_64) running Amazon Linux 2023 - A GreenRADIUS update package (v6.1.16.16 or later)
- If you have installed firewall software, make sure that it is set up properly to allow incoming connections.
- SELinux set to "permissive" or "disabled" (this is the default on fresh installations)
- The
docker-compose-override-tz.yml,docker-compose-override.yml, andtimezone_handle_for_docker_on_Amazon-Linux-2.shfiles from this deployment package
Deployment Instructions
- Log in with a user that has sudo access.
- Run
sudo yum update - Run
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 - Run
sudo yum -y install wget unzip awscli aws-cfn-bootstrap nfs-utils chrony conntrack jq ec2-instance-connect socat - Run
sudo yum install curl - Run
sudo yum install libxcrypt-compat - Run
if sudo yum list installed | grep ec2-net-utils; then sudo yum remove ec2-net-utils -y -q; fi - Run
sudo yum -y install docker - Run
sudo systemctl enable docker - Run `sudo curl -L "https://github.com/docker/compose/releases/download/v5.3.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- Run
sudo chmod +x /usr/local/bin/docker-compose - Create a symlink to this path with
sudo ln -s/usr/local/bin/docker-compose/usr/bin/docker-compose - Run
sudo yum install unzip - Run
sudo yum install net-tools - Run
sudo useradd -d /home/gradmin -m -G wheel -s /bin/bash gradmin - Run
sudo passwd gradmin - Run
chmod -R 750 /home/gradmin - Run
chown -R gradmin:gradmin /home/gradmin - Run
sudo su gradminto assume the permissions of the gradmin user - Run
mkdir /home/gradmin/temp/ - Run
cd /home/gradmin/temp/ - Copy the latest GreenRADIUS update package to the
/home/gradmin/temp/directory. - Copy the provided
docker-compose.override-tz.ymlfile to the/home/gradmin/temp/directory. - Copy the provided
docker-compose.override.ymlfile to the/home/gradmin/temp/directory. - Copy the provided
timezone_handle_for_docker_on_Amazon-Linux-2.shscript to/home/gradmindirectory. - Run
sudo chmod 750 /home/gradmin/timezone_handle_for_docker_on_Amazon-Linux-2.shscript to/home/gradmin directory. - Run
sudo chown gradmin:gradmin /home/gradmin/timezone_handle_for_docker_on_Amazon-Linux-2.sh - Run
sudo service docker start - Run
sudo unzip GreenRADIUS_xxxx_Update.zip. (In this instruction and those following, replacexxxxwith the version number for the upgrade package.) - Run
sudo tar -xvzf GreenRADIUS_xxxx_Update/images.tgz -C . - Run
sudo tar -xvzf GreenRADIUS_xxxx_Update/others.tgz -C . - Run
sudo docker load -i images/greenradius_xxxx_init_image - Run
sudo docker load -i images/greenradius_xxxx_main_image - Run
sudo docker load -i images/greenradius_xxxx_openldap_image - Run
sudo docker load -i images/greenradius_xxxx_postgres_image - Run
sudo docker load -i images/greenradius_xxxx_rsyslog_image - Run
sudo docker load -i images/greenradius_xxxx_freeradius_image - Run
sudo docker load -i images/greenradius_xxxx_grs_auth_app_image - Run
sudo mkdir -p /home/gradmin/grs-docker-compose - Run
sudo mkdir -p /home/gradmin/grs-docker-compose - Run
sudo cp others/docker-compose.yml /home/gradmin/grs-docker-compose/ - Run
sudo chmod 750 /home/gradmin/grs-docker-compose/docker-compose.yml - Run
sudo chown gradmin:gradmin /home/gradmin/grs-docker-compose/docker- compose.yml - Run
sudo cp docker-compose.override-tz.yml /home/gradmin/grs-docker-compose/ - Run
sudo chmod 750 /home/gradmin/grs-docker-compose/docker-compose.override-tz.yml - Run
sudo chown gradmin:gradmin /home/gradmin/grs-docker-compose/docker-compose.override-tz.yml - Run
sudo cp docker-compose.override.yml /home/gradmin/grs-docker-compose/ - Run
sudo chmod 750 /home/gradmin/grs-docker-compose/docker-compose.override.yml - Run
sudo chown gradmin:gradmin /home/gradmin/grs-docker-compose/docker-compose.override.yml - Set the proper timezone using the command
sudo timedatectl set-timezone <time zone>. You can view a list of valid timezones withsudo timedatectl list-timezones | less. - Run
file /etc/timezone - If and only if
/etc/timezoneexists and is a directory, runsudo rm -rf /etc/timezone - Run
sudo touch /etc/timezone - Edit
/etc/timezoneand enter the value set in step 50. - Run
sudo sh /home/gradmin/timezone_handle_for_docker_on_Amazon-Linux-2.sh - Run
sudo su - - Run
cd /home/gradmin/grs-docker-compose - Run
docker-compose -f docker-compose.yml -f docker-compose.override.yml -f docker- compose.override-tz.yml up -d - Run
sudo touch /etc/systemd/system/grs-docker-compose-app.service - Edit
/etc/systemd/system/grs-docker-compose-app.serviceand enter the following:# /etc/systemd/system/grs-docker-compose-app.service [Unit] Description=Docker Compose Application Service Requires=docker.service After=docker.service [Service] Type=oneshot RemainAfterExit=yes WorkingDirectory=/home/gradmin/grs-docker-compose ExecStart=/usr/local/bin/docker-compose -f docker-compose.yml -f docker-compose.override.yml -f docker-compose.override-tz.yml up -d ExecStop=/usr/local/bin/docker-compose down TimeoutStartSec=0 [Install] WantedBy=multi-user.target - Save the file.
- Run
sudo systemctl enable grs-docker-compose-app - Run
sudo systemctl start grs-docker-compose-app.service - Run
sudo bash -c 'rm -rf /home/gradmin/temp/*
To apply subsequent updates
- Copy the update package to the
/home/gradmin/temp/directory. - Log in as
gradmin. - Run
sudo yum update - Run
sudo unzip /home/gradmin/temp/GreenRADIUS_xxxx_Update.zip -d /home/gradmin/temp/. (Note that in this command and below,xxxxshould be replaced with the current version number.) - Run
cd /home/gradmin/temp - Run
sudo tar -xvzf GreenRADIUS_xxxx_Update/images.tgz -C . - Run
sudo tar -xvzf GreenRADIUS_xxxx_Update/others.tgz -C . - Run
sudo docker load -i images/greenradius_xxxx_init_image - Run
sudo docker load -i images/greenradius_xxxx_main_image - Run
sudo docker load -i images/greenradius_xxxx_openldap_image - Run
sudo docker load -i images/greenradius_xxxx_postgres_image - Run
sudo docker load -i images/greenradius_xxxx_rsyslog_image - Run
sudo docker load -i images/greenradius_xxxx_freeradius_image - Run
sudo docker load -i images/greenradius_xxxx_grs_auth_app_image - Run
sudo docker load -i images/greenradius_xxxx_grs_queue_image - Run
cd /home/gradmin/grs-docker-compose - Run
sudo docker-compose down - Run
sudo cp /home/gradmin/temp/others/docker-compose.yml /home/gradmin/grs-docker-compose/ - Run
cd /home/gradmin/grs-docker-compose - Run
sudo docker-compose -f docker-compose.yml -f docker-compose.override.yml -f docker-compose.override-tz.yml up -d - Run
sudo rm -rf /home/gradmin/temp/*
To manually start/stop containers
First, change the directory with cd /home/gradmin/grs-docker-compose/.
To start the container, run sudo docker-compose -f docker-compose.yml -f docker-compose.override.yml -f docker-compose.override-tz.yml up -d.
To stop the container, run sudo docker-compose down.
Updated 2026-08-08
© 2026 Green Rocket Security Inc. All rights reserved.
© 2026 Green Rocket Security Inc. All rights reserved.