Installing the agent
- English
- 日本語
This guide explains how to install the Next-Gen WAF agent by adding the package repository, installing and configuring the agent package, and then starting the agent.
Prerequisites
Before installing the agent, you need to:
- Alpine Linux
- Amazon Linux
- Debian
- Red Hat/CentOS
- Ubuntu
- Windows
- If Alpine is being run in a Docker container, you must start the container.
Copy the agent keys for the site that you want the agent to be able to access. You will use the agent keys when configuring the Next-Gen WAF agent package.
- Determine the version of Amazon Linux you want to use: Amazon Linux 2023 or Amazon Linux 2. Amazon Linux 2 is most similar to CentOS 7 and reuses the same configuration. Amazon Linux 2023 does not mirror CentOS as closely as it did in the past. It is a combination of multiple versions of Fedora and CentOS Stream 9. See Relationship to Fedora. As a result, the
baseurlof the yum repository will useamazon/2023as the distribution name and version number for Amazon Linux 2023. Copy the agent keys for the site that you want the agent to be able to access. You will use the agent keys when configuring the Next-Gen WAF agent package.
- Determine the version of Debian you want to use.
Copy the agent keys for the site that you want the agent to be able to access. You will use the agent keys when configuring the Next-Gen WAF agent package.
- Determine the version of Red Hat/CentOS you want to use.
Copy the agent keys for the site that you want the agent to be able to access. You will use the agent keys when configuring the Next-Gen WAF agent package.
- Determine the version of Ubuntu you want to use.
Copy the agent keys for the site that you want the agent to be able to access. You will use the agent keys when configuring the Next-Gen WAF agent package.
- Determine the version of Windows you want to use. Version 4.50 and later of the Next-Gen WAF agent requires Windows 10 or Windows Server 2016 or higher.
Copy the agent keys for the site that you want the agent to be able to access. You will use the agent keys when configuring the Next-Gen WAF agent package.
Add the package repository
Begin the agent installation process by adding the appropriate package repository for your operating system.
HINT: If you're installing the agent on Windows, you can skip this step and start installing the agent package.
Alpine Linux
Add the version of the Alpine package repository that you want to use.
NOTE: Following these instructions will configure your package manager to pull from https://apk.security.fastly.com. You can find the same package repositories at https://apk.signalsciences.net. To configure your package manager to pull from https://apk.signalsciences.net, replace all instances of security.fastly.com with signalsciences.net in the relevant code sample.
- Docker container
- VM or bare-metal server
If you are running Alpine in a Docker container, complete the following steps:
Add the following to your Dockerfile:
FROM alpine:3.20ENV ALPINE_VERSION=3.20RUN wget https://apk.security.fastly.com/sigsci_apk.pub && \apk add --repository https://apk.security.fastly.com/${ALPINE_VERSION}/main --no-cache && \apk updateVerify the downloaded key contains the proper key by running the following command:
$ openssl rsa -pubin -in /etc/apk/keys/sigsci_apk.pub -text -nooutIf the downloaded key contains the proper key, the expected output looks like the following:
Public-Key: (2048 bit)Modulus:00:c7:71:47:93:fe:ee:0e:9e:6f:28:7d:d8:67:d7:ce:2a:43:bf:af:54:91:d1:f1:09:59:e2:86:20:65:a6:59:8c:2f:7b:1c:d5:e7:b7:34:62:52:90:1c:f3:de:2e:26:4b:a4:46:97:32:ca:f8:a2:e8:0e:36:0d:5e:70:82:3a:97:ce:8b:37:e6:52:31:af:cb:6a:11:c8:c1:6e:dd:01:bb:37:62:39:f1:53:ce:22:ef:8b:46:50:31:8f:e8:40:7e:4d:01:77:0e:37:06:34:ac:ce:aa:a2:d5:dc:a4:e3:f0:44:c0:dd:53:f6:e5:34:f9:8d:54:22:43:90:d8:2e:69:3d:a7:e9:11:b1:31:9e:83:a0:d5:e2:f6:0c:21:f9:96:ac:33:13:89:93:ed:c5:bf:d4:8b:4c:14:26:a4:fb:f3:51:1d:d8:ec:25:04:f7:ab:b4:a9:73:d4:b2:05:39:ae:4d:57:ff:79:8e:24:e7:23:a3:0a:53:48:cb:8b:a0:8a:d2:14:44:3a:29:09:4e:ec:a6:df:2c:53:b5:a1:db:33:84:29:db:14:0a:7d:38:97:ac:cb:9d:40:53:d2:1e:84:f4:71:cb:67:15:c0:a1:fe:f1:93:cf:67:f6:ee:0d:6d:ab:d9:b1:8a:ce:4f:83:e4:36:12:45:11:b4:64:99:97Exponent: 65537 (0x10001)
If you are running Alpine in a VM or on a bare-metal server, complete the following steps:
Run the following script to add the package repository:
$ sudo apk update$ sudo apk add wget$ sudo wget -q https://apk.security.fastly.com/sigsci_apk.pub ; sudo mv sigsci_apk.pub /etc/apk/keys/$ sudo echo https://apk.security.fastly.com/3.19/main | sudo tee -a /etc/apk/repositories && sudo apk updateVerify the downloaded key contains the proper key by running the following command:
$ openssl rsa -pubin -in /etc/apk/keys/sigsci_apk.pub -text -nooutIf the downloaded key contains the proper key, the expected output looks like the following:
Public-Key: (2048 bit)Modulus:00:c7:71:47:93:fe:ee:0e:9e:6f:28:7d:d8:67:d7:ce:2a:43:bf:af:54:91:d1:f1:09:59:e2:86:20:65:a6:59:8c:2f:7b:1c:d5:e7:b7:34:62:52:90:1c:f3:de:2e:26:4b:a4:46:97:32:ca:f8:a2:e8:0e:36:0d:5e:70:82:3a:97:ce:8b:37:e6:52:31:af:cb:6a:11:c8:c1:6e:dd:01:bb:37:62:39:f1:53:ce:22:ef:8b:46:50:31:8f:e8:40:7e:4d:01:77:0e:37:06:34:ac:ce:aa:a2:d5:dc:a4:e3:f0:44:c0:dd:53:f6:e5:34:f9:8d:54:22:43:90:d8:2e:69:3d:a7:e9:11:b1:31:9e:83:a0:d5:e2:f6:0c:21:f9:96:ac:33:13:89:93:ed:c5:bf:d4:8b:4c:14:26:a4:fb:f3:51:1d:d8:ec:25:04:f7:ab:b4:a9:73:d4:b2:05:39:ae:4d:57:ff:79:8e:24:e7:23:a3:0a:53:48:cb:8b:a0:8a:d2:14:44:3a:29:09:4e:ec:a6:df:2c:53:b5:a1:db:33:84:29:db:14:0a:7d:38:97:ac:cb:9d:40:53:d2:1e:84:f4:71:cb:67:15:c0:a1:fe:f1:93:cf:67:f6:ee:0d:6d:ab:d9:b1:8a:ce:4f:83:e4:36:12:45:11:b4:64:99:97Exponent: 65537 (0x10001)
Amazon Linux
Add the version of the Amazon Linux package repository that you want to use.
NOTE: Following these instructions will configure your package manager to pull from https://yum.security.fastly.com. You can find the same package repositories at https://yum.signalsciences.net. To configure your package manager to pull from https://yum.signalsciences.net, replace all instances of security.fastly.com with signalsciences.net in the relevant code sample.
- Amazon Linux 2023
- Amazon Linux 2
To add the Amazon Linux 2023 package, run the following script:
$ sudo tee /etc/yum.repos.d/sigsci.repo <<-'EOF'[sigsci_release]name=sigsci_releasebaseurl=https://yum.security.fastly.com/release/amazon/2023/$basearchrepo_gpgcheck=1gpgcheck=1enabled=1gpgkey=https://yum.security.fastly.com/release/gpgkey https://dl.security.fastly.com/sigsci-agent/gpg.keysslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtEOFTo add the Amazon Linux 2 package, run the following script:
$ sudo tee /etc/yum.repos.d/sigsci.repo <<-'EOF'[sigsci_release]name=sigsci_releasebaseurl=https://yum.security.fastly.com/release/el/7/$basearchrepo_gpgcheck=1gpgcheck=1enabled=1gpgkey=https://yum.security.fastly.com/release/gpgkey https://dl.security.fastly.com/sigsci-agent/gpg.keysslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtEOFDebian
Add the version of the Debian package repository that you want to use.
NOTE: Following these instructions will configure your package manager to pull from https://apt.security.fastly.com. You can find the same package repositories at https://apt.signalsciences.net. To configure your package manager to pull from https://apt.signalsciences.net, replace all instances of security.fastly.com with signalsciences.net in the relevant code sample.
To add the package for Debian 9 (Stretch) and above, run the following script:
$ sudo apt-get update$ sudo apt-get install -y apt-transport-https wget gnupg lsb-release$ sudo wget -qO - https://apt.security.fastly.com/release/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/sigsci.gpg$ sudo echo "deb [signed-by=/usr/share/keyrings/sigsci.gpg] https://apt.security.fastly.com/release/debian/ `lsb_release -cs` main" | sudo tee /etc/apt/sources.list.d/sigsci-release.list$ sudo apt-get updateIf installing the utilities fails, some customers may need to add the archive repositories first for older versions of Debian. For example, in Debian 10 (Buster), you would run the following script:
$ sudo echo "deb http://archive.debian.org/debian/ buster main contrib non-free" >> /etc/apt/sources.list$ sudo apt-get updateRed Hat/CentOS
Add the version of the Red Hat/CentOS package repository that you want to use.
NOTE: Following these instructions will configure your package manager to pull from https://yum.security.fastly.com. You can find the same package repositories at https://yum.signalsciences.net. To configure your package manager to pull from https://yum.signalsciences.net, replace all instances of security.fastly.com with signalsciences.net in the relevant code sample.
- Red Hat/CentOS 10
- Red Hat/CentOS 9
- Red Hat/CentOS 8
- Red Hat/CentOS 7
To add the Red Hat/CentOS 10 package, run the following script:
$ sudo tee /etc/yum.repos.d/sigsci.repo <<-'EOF'[sigsci_release]name=sigsci_releasebaseurl=https://yum.security.fastly.com/release/el/10/$basearchrepo_gpgcheck=1gpgcheck=1enabled=1gpgkey=https://yum.security.fastly.com/release/gpgkey https://dl.security.fastly.com/sigsci-agent/gpg.keysslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtEOFTo add the Red Hat/CentOS 9 package, run the following script:
$ sudo tee /etc/yum.repos.d/sigsci.repo <<-'EOF'[sigsci_release]name=sigsci_releasebaseurl=https://yum.security.fastly.com/release/el/9/$basearchrepo_gpgcheck=1gpgcheck=1enabled=1gpgkey=https://yum.security.fastly.com/release/gpgkey https://dl.security.fastly.com/sigsci-agent/gpg.keysslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtEOFTo add the Red Hat/CentOS 8 package, run the following script:
$ sudo tee /etc/yum.repos.d/sigsci.repo <<-'EOF'[sigsci_release]name=sigsci_releasebaseurl=https://yum.security.fastly.com/release/el/8/$basearchrepo_gpgcheck=1gpgcheck=1enabled=1gpgkey=https://yum.security.fastly.com/release/gpgkey https://dl.security.fastly.com/sigsci-agent/gpg.keysslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtEOFTo add the Red Hat/CentOS 7 package, run the following script:
$ sudo tee /etc/yum.repos.d/sigsci.repo <<-'EOF'[sigsci_release]name=sigsci_releasebaseurl=https://yum.security.fastly.com/release/el/7/$basearchrepo_gpgcheck=1gpgcheck=1enabled=1gpgkey=https://yum.security.fastly.com/release/gpgkey https://dl.security.fastly.com/sigsci-agent/gpg.keysslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtEOFUbuntu
Add the version of the Ubuntu package repository that you want to use.
NOTE: Following these instructions will configure your package manager to pull from https://apt.security.fastly.com. You can find the same package repositories at https://apt.signalsciences.net. To configure your package manager to pull from https://apt.signalsciences.net, replace all instances of security.fastly.com with signalsciences.net in the relevant code sample.
- V24.04
- V22.04
- V20.04
- V18.04
- V16.04
- V14.04
To add the Ubuntu 24.04 - Noble package, run the following script:
$ sudo apt-get update$ sudo apt-get install -y apt-transport-https wget gnupg$ wget -qO - https://apt.security.fastly.com/release/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/sigsci.gpg$ sudo echo "deb [signed-by=/usr/share/keyrings/sigsci.gpg] https://apt.security.fastly.com/release/ubuntu/ noble main" | sudo tee /etc/apt/sources.list.d/sigsci-release.list$ sudo apt-get updateTo add the Ubuntu 22.04 - Jammy package, run the following script:
$ sudo apt-get update$ sudo apt-get install -y apt-transport-https wget gnupg$ wget -qO - https://apt.security.fastly.com/release/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/sigsci.gpg$ sudo echo "deb [signed-by=/usr/share/keyrings/sigsci.gpg] https://apt.security.fastly.com/release/ubuntu/ jammy main" | sudo tee /etc/apt/sources.list.d/sigsci-release.list$ sudo apt-get updateTo add the Ubuntu 20.04 - Focal package, run the following script:
$ sudo apt update$ sudo apt-get install -y apt-transport-https wget$ wget -qO - https://apt.security.fastly.com/release/gpgkey | sudo apt-key add -$ sudo echo "deb https://apt.security.fastly.com/release/ubuntu/ focal main" | sudo tee /etc/apt/sources.list.d/sigsci-release.list && sudo apt-get updateTo add the Ubuntu 18.04 - Bionic package, run the following script:
$ sudo apt update$ sudo apt-get install -y apt-transport-https wget$ wget -qO - https://apt.security.fastly.com/release/gpgkey | sudo apt-key add -$ sudo echo "deb https://apt.security.fastly.com/release/ubuntu/ bionic main" | sudo tee /etc/apt/sources.list.d/sigsci-release.list && $ sudo apt-get updateTo add the Ubuntu 16.04 - Xenial package, run the following script:
$ sudo apt-get install -y apt-transport-https wget$ wget -qO - https://apt.security.fastly.com/release/gpgkey | sudo apt-key add -$ sudo echo "deb https://apt.security.fastly.com/release/ubuntu/ xenial main" | sudo tee /etc/apt/sources.list.d/sigsci-release.list && $ sudo apt-get updateTo add the Ubuntu 14.04 - Trusty package, run the following script:
$ sudo apt-get install -y apt-transport-https wget$ wget -qO - https://apt.security.fastly.com/release/gpgkey | sudo apt-key add -$ sudo echo "deb https://apt.security.fastly.com/release/ubuntu/ trusty main" | sudo tee /etc/apt/sources.list.d/sigsci-release.list && $ sudo apt-get updateInstall and configure the agent package
After adding the package repository, install and configure the Next-Gen WAF agent.
- Alpine Linux
- Amazon Linux
- Debian
- Red Hat/CentOS
- Ubuntu
- Windows
- Run the following command to install the Next-Gen WAF agent package:$ sudo apk add sigsci-agent
- Create an empty agent configuration file in the following directory:
/etc/sigsci/agent.conf. - Add the agent keys for your site to the agent configuration file.accesskeyid = "AGENTACCESSKEYHERE"secretaccesskey = "AGENTSECRETACCESSKEYHERE"
- Save the agent configuration file.
- Run the following command to install the Next-Gen WAF agent package:$ sudo yum install sigsci-agent
- Create an empty agent configuration file in the following directory:
/etc/sigsci/agent.conf. - Add the agent keys for your site to the agent configuration file.accesskeyid = "AGENTACCESSKEYHERE"secretaccesskey = "AGENTSECRETACCESSKEYHERE"
- Save the agent configuration file.
- Run the following command to install the Next-Gen WAF agent package:$ sudo apt-get install sigsci-agent
- Create an empty agent configuration file in the following directory:
/etc/sigsci/agent.conf. - Add the agent keys for your site to the agent configuration file.accesskeyid = "AGENTACCESSKEYHERE"secretaccesskey = "AGENTSECRETACCESSKEYHERE"
- Save the agent configuration file.
- Run the following command to install the Next-Gen WAF agent package:$ sudo yum install sigsci-agent
- Create an empty agent configuration file in the following directory:
/etc/sigsci/agent.conf. - Add the agent keys for your site to the agent configuration file.accesskeyid = "AGENTACCESSKEYHERE"secretaccesskey = "AGENTSECRETACCESSKEYHERE"
- Save the agent configuration file.
- Run the following command to install the Next-Gen WAF agent package:$ sudo apt-get install sigsci-agent
- Create an empty agent configuration file in the following directory:
/etc/sigsci/agent.conf. - Add the agent keys for your site to the agent configuration file.accesskeyid = "AGENTACCESSKEYHERE"secretaccesskey = "AGENTSECRETACCESSKEYHERE"
- Save the agent configuration file.
Create an empty agent configuration file at
C:\Program Files\Signal Sciences\Agent\agent.conf.- If you need to specify a custom location for the
agent.conffile, set the absolute file path with the system environment variableSIGSCI_CONFIG. - If you are deploying the agent in reverse proxy mode, check out the Reverse Proxy Mode configuration page for details on required configuration options.
- If you need to specify a custom location for the
- Add the agent keys for your site to the agent configuration file.accesskeyid = "AGENTACCESSKEYHERE"secretaccesskey = "AGENTSECRETACCESSKEYHERE"
Download the latest Next-Gen WAF agent
.msifrom dl.security.fastly.com or dl.signalsciences.net.Run the
.msito install the Agent automatically with no prompts. It will install the executable inC:\Program Files\Signal Sciences\Agent, add a service entry for the Agent, and start the service if the agent configuration file is present with validaccesskeyidandsecretaccesskeysettings.The installed service name is
sigsci-agentand can be controlled with PowerShell cmdlets:$ Start-Service sigsci-agent$ Restart-Service sigsci-agent$ Stop-Service sigsci-agentAlternatively, you can download the latest Next-Gen WAF agent for Windows as a
.zipfile, which contains the agent binary. You can run this from any location you prefer. However, to install the agent in this way, you will need to configure the Service entry and start the service manually.Example
services.mscscreenshot:
Start the agent
Next, start the Next-Gen WAF agent that you installed.
NOTE: If you installed the agent on Windows, you can skip this step. The last step of the installation process started the agent.
- Alpine Linux
- Amazon Linux
- Debian
- Red Hat/CentOS
- Ubuntu
If you are running Alpine in a Docker container, run the following command to start the Next-Gen WAF agent:
$ /usr/sbin/sigsci-agentIf you are running Alpine in a VM or on a bare-metal server, run the following command to allow the agent to start on reboot:
$ sudo rc-update add sigsci-agent defaultThen, start the agent by running any of the following commands:
$ sudo service sigsci-agent start$ sudo rc-service sigsci-agent start$ sudo /etc/init.d/sigsci-agent startIf you added the Amazon Linux 2 package, run the following command to start the Next-Gen WAF agent:
$ sudo systemctl start sigsci-agentFor Debian, run the following command to start the Next-Gen WAF agent:
$ sudo systemctl start sigsci-agentFor Red Hat/CentOS versions 7 and above, run the following command to start the Next-Gen WAF agent:
$ sudo systemctl start sigsci-agentRun the following command to start the agent:
$ sudo systemctl start sigsci-agentNext steps
Continue setting up your Next-Gen WAF deployment by installing the Next-Gen WAF module or configuring the agent to run as a reverse proxy.
If your agent is on Debian, Red Hat/CentOS, or Ubuntu, consider enabling the agent auto-update service. This service checks our package downloads website for a new version of the agent and updates the agent when a new version is available.