Run the following command to automatically install ERWALL Client on your Debian based distributions.
curl -sLO https://www.erwall.io/downloads/linux-x64/erwall-client.deb && sudo apt install ./erwall-client.deb
Download ERWALL Client files from here. You can run the following commands to install ERWALL Client on your servers. First, install requirements:
sudo apt-get update -y
sudo apt-get install -y iptables
sudo apt-get install -y ipset
Download ERWALL Client
Now, you can create appsettings.json file to configure your ERWALL Client application.
Example appsettings.json file:
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"ErwallService": {
"Host": "", # host of Erwall Server, example: erwall.company.com
"PeriodInSeconds": 30, # rule fetching period in seconds, recommended:30
"IpSetSaveFile": "ip-set.txt",
"IpTablesSaveFile": "ip-tables.txt"
}
}
Run this command to configure ERWALL Client:
./ErwallClient configure --host=<HOST> --period=<SECONDS>
After completing these operations, you can start to use ERWALL Client with the following command:
./ErwallClient run # this may need admin privileges in order to change iptables / ipset rules
If you want to use the ERWALL Server as a Linux service, you can use following commands.
Example Linux Service File for ERWALL Client Application:
[Unit]
Description=Erwall Client Service
[Service]
WorkingDirectory=/home/erwall/Client
ExecStart=/home/erwall/Client/ErwallClient run
Restart=always
# Restart service after 10 seconds if service crashes:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=erwall-client
User=root
Group=root
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
[Install]
WantedBy=multi-user.target
# you may need admin privileges for these commands systemctl enable /path/to/service_file # enables linux service systemctl disable erwall-client # disables linux service service erwall-client start service erwall-client status service erwall-client stop service erwall-client restart journalctl -u erwall-client --no-pager -n 100 # displays last 100 logs
[Unit] Description=Erwall Client Service [Service] WorkingDirectory=/home/erwall/Client ExecStart=/home/erwall/Client/ErwallClient run Restart=always # Restart service after 10 seconds if service crashes: RestartSec=10 KillSignal=SIGINT SyslogIdentifier=erwall-client User=root Group=root Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false [Install] WantedBy=multi-user.target