Obsah

Požadavky pro instalaci

Podporované operační systémy

Je podporována pouze nová instalace operačního systému bez dalších aplikací. Při nasazení s AWS Marketplace je doporučená verze systému již před-připravena.

Systémové prostředky

Minimální

Doporučené

Upřesnění

Jedná se o požadavky samotné aplikace SOFiE v průměrné instalaci do 100 uživatelů. Pro větší instalace doporučujeme hodnoty navýšit na dvojnásobek.

Další instalované komponenty mohou mít další nároky (např. pro ClamAV doporučujeme + další 1 GiB RAM a 1 CPU).

Výchozí porty pro komunikaci

Instalace a provoz aplikace za SSL inspekcí (volitelné)

Nakopírovat certifikát autority z inspekce, např. CA.crt, do /etc/pki/ca-trust/source/anchors a spustit:

update-ca-trust extract

Instalace aplikace

RHEL/CentOS 7 (zastaralé):

yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install -y curl tar ansible libsemanage-python policycoreutils-python

RHEL/CentOS/Rocky 8:

dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf install -y curl tar ansible python3-libsemanage python3-policycoreutils

RHEL/CentOS/Rocky 9 (doporučené):

dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
dnf install -y curl tar ansible python3-libsemanage python3-policycoreutils
sh -c "$(curl -sL https://install.sofie.cloud/latest/sofie-install.sh)"
FQDN - Tato hodnota je vyžadována. Jedná se o plně specifikované doménové jméno serveru. Dle zadaného FQDN se vytvoří licence a všechny odkazy v aplikaci.
Let's Encrypt status - Pokud zapneme, vytvoří se Let’s Encrypt certifikát dle zadaného FQDN v kroku 1 pro https spojení.

Externí PostgreSQL databáze (volitelné)

Instalační skript automaticky instaluje a konfiguruje místní instanci PostgreSQL která je vyhrazená pro aplikaci SOFiE a přístupná pouze z místního hostitele (localhost).

Externí instance PostgreSQL může být použita za splnění následujících podmínek:

Vlastnosti připojení musí být nastaveny ručně ve dvou souborech:

Syntaxe JDBC URL včetně všech dostupných parametrů je popsána na adrese:

https://jdbc.postgresql.org/documentation/use/#connecting-to-the-database

První spuštění

Spuštění proběhne automaticky po instalaci aplikace. Při nasazení z AWS Marketplace je aplikace již před-instalovaná a ke spuštění dojde rovnou po nasazení. Po spuštění je k dispozici uživatelské a administrátorské rozhraní pomocí webového prohlížeče na adresách:

Uživatelská část

https://<FQDN>

Administrátorská část

https://<FQDN>/admin

Aby se administrátor mohl úspěšně přihlásit do webového rozhraní, měl by po spuštění pokračovat základním nastavením jak je popsáno níže, včetně nastavení hesla administrátora.

Základní nastavení

Update aplikace

Je třeba postupovat dle návodu zde: https://wikisonpo.atlassian.net/wiki/spaces/SP/pages/2954100737

Instalace CDR modulu (volitelné)

Od verze 2.3 podporuje aplikace SOFiE volitelný interní modul “Content Disarm and Reconstruction (CDR)“. Modul umožňuje konverzi podporovaných typů souborů (typicky dokumenty Office) do bezpečného formátu, konkrétně PDF bez aktivního obsahu. Aby bylo možné modul využívat, je třeba provést následné instalační kroky:

# instalace a spuštění dockeru
dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
dnf install docker-ce docker-ce-cli containerd.io uuid
systemctl start docker
systemctl enable docker

# stažení a spuštění potřebného docker kontejneru
docker run -d --name libreoffice --restart unless-stopped -p 8100:8100 hdejager/libreoffice-api

Po instalaci může administrátor CDR modul aktivovat a nastavit ve webovém rozhraní, v sekci Nastavení - Nastavení detekce.

Instalace antivirových enginů (volitelné)

scanner.bitdefender.exec=/opt/bitdefender-security-tools/bin/bduitool
scanner.clamav.exec=/usr/bin/clamdscan
scanner.eset.exec=/opt/eset/efs/sbin/cls/cls
scanner.kaspersky.exec=/usr/bin/kesl-control
scanner.sophos.exec=/opt/sophos-av/bin/savscan

Avast

echo '[avast]
name=Avast
baseurl=https://repo.avcdn.net/linux-av/rpm/el$releasever/release
enabled=1
gpgcheck=1
' > /etc/yum.repos.d/avast.repo
rpm --import https://repo.avcdn.net/linux-av/doc/avast-gpg-key.asc
dnf install avast avast-license
avastlic -o license.avastlic -c <aktivační kód>
cp ./license.avastlic /etc/avast/license.avastlic
systemctl enable avast
systemctl start avast

BitDefender

Moduly: pouze AntiMalware
Scan mode / Custom / For computers: Local Scan
Scan mode / Custom / For virtual machines: Local Scan
Settings: vše vypneme
tar -xvf fullKit_unix64_7.0.3.1927.tar
chmod +x installer
./installer
/opt/bitdefender-security-tools/bin/bduitool scan -s custom /opt/bitdefender-security-tools/bin/bduitool
Antimalware / On-Access: vše vypneme
Antimalware / On-Execute: vše vypneme
Antimalware / On-Demand: vše vypneme
Antimalware / On-Demand / Contextual Scan / Miscellaneous: zapneme - Scan for rootkits, Scan for keyloggers, Scan network shares, Scan only new and changed files, Scan for Potentially Unwanted Applications (PUA)
Antimalware / On-Demand / Contextual Scan / Actions: vše změníme na ignore
Antimalware / On-Demand / External Device Scan: nastavíme stejně jako Contextual Scan
Antimalware / Advanced Anti-Exploit: vše vypneme
Antimalware / Settings: vše vypneme

ClamAV

yum install -y clamav clamd

/usr/bin/freshclam
# zakomentovat
#Example
 
# nastavit socket
LocalSocket /var/run/clamd.scan/clamd.sock
 
# upravit dle uvážení
MaxScanSize 100M
MaxFileSize 25M
MaxRecursion 16
MaxFiles 10000
mv /usr/lib/systemd/system/clamd@.service /usr/lib/systemd/system/clamd.service

sed -i 's/^\(ExecStart = \/usr\/sbin\/clamd -c\)\(.*\)/\1 \/etc\/clamd.d\/scan.conf/' /usr/lib/systemd/system/clamd.service
systemctl enable clamd clamav-freshclam

systemctl start clamd clamav-freshclam

ESET

# ještě před instalací esetu je třeba nainstalovat
yum install glibc.i686 ed tar
 
# potom stáhnout a nainstalovat eset
wget https://download.eset.com/com/eset/apps/business/efs/linux/latest/efs.x86_64.bin
sh efs.x86_64.bin
 
# import licenčního klíče
/opt/eset/efs/sbin/lic -k XXXX-XXXX...
# importujeme konfiguraci
wget https://wikisonpo.atlassian.net/wiki/download/attachments/887423004/efs-config6
/opt/eset/efs/sbin/cfg --import-xml=efs-config6

# restartujeme efs daemona
systemctl restart efs

FortiClient

yum install forticlient_server_7.0.2.0063_x86_64.rpm
/opt/forticlient/epctrl -r <adresa EMS serveru>
/opt/forticlient/epctrl -d

Kaspersky

wget https://products.s.kaspersky-labs.com/endpoints/keslinux10/12.0.0.6672/multilanguage-12.0.0.6672/3739343633347c44454c7c31/kesl-12.0.0-6672.x86_64.rpm
yum install kesl-12.0.0-6672.x86_64.rpm
yum install -y perl-File-Copy

/opt/kaspersky/kesl/bin/kesl-setup.pl
kesl-control --stop-task File_Threat_Protection
kesl-control --stop-task Device_Control
kesl-control --stop-task Behavior_Detection
kesl-control --set-settings Scan_File ScanMailBases=Yes ScanPlainMail=Yes
kesl-control -L --add-active-key <activation code/key file>

Sophos

tar -xzvf sav-linux-free-9.tgz
chmod +x install.sh
./install.sh
Do you want to enable on-access scanning? Yes(Y)/No(N) [Y]
> N
Which type of auto-updating do you want? From Sophos(s)/From own server(o)/None(n) [s]
> s
Do you wish to install the Free (f) or Supported (s) version of SAV for Linux? [s]
> f
/opt/sophos-av/bin/savconfig set SendErrorEmail false
/opt/sophos-av/bin/savconfig set SendThreatEmail false
/opt/sophos-av/bin/savconfig set EmailDemandSummaryIfThreat false
/opt/sophos-av/bin/savconfig set EmailNotifier false

Trellix

dnf install -y unzip

mkdir trellix

tar -xzvf cls-l64-703-l.tar.gz --directory ./trellix

cd trellix

# Všechny možnosti ponecháme výchozí
./install-uvscan /opt/trellix/uvscan
cd /opt/trellix/uvscan

wget https://update.nai.com/products/commonupdater/current/vscandat1000/dat/0000/avvdat-10733.zip

unzip -u avvdat-10733.zip
cd /opt/trellix/uvscan

wget https://wikisonpo.atlassian.net/wiki/download/attachments/887423004/dat-update

chmod +x dat-update
echo 'SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
5 * * * * root /opt/trellix/uvscan/dat-update >> /opt/trellix/uvscan/dat-update.log 2>&1' > /etc/cron.d/trellix-update

Vlastní SSL CA (volitelné)

Přidání certifikační autority do systému

RHEL

trust anchor Fortinet_CA_SSL.crt

Windows

cd C:\Program Files\Java\jdk8u192-b12\jre\lib\security
..\..\bin\keytool.exe -import -trustcacerts -file y:\ca1.cer -keystore cacerts -alias NAZEV

Diagnostika při nedostatku paměti

V některých situacích může docházet k nedostatku paměti který se projeví nefunkčním odbavováním zásilek a následující chybou v aplikačním logu workeru (/opt/sofie-worker-distribution/logs/sofie.log):

java.lang.OutOfMemoryError: GC overhead limit exceeded

Pokud taková situace nastane, dojde automaticky k ukončení a nastartování služby.

Příčinou je většinou příliš vysoký limit maximální velikosti souboru v některém z interních detekčních nástrojů (DLP, Detekce šifrovaného obsahu, MIME). Pokud snížení maximální velikosti souboru nepomůže a k situaci dochází opakovaně, je možné pro diagnostiku aktivovat výpis obsahu paměti (heap). Toho lze docílit vytvořením souboru:

/opt/sofie-worker-distribution/bin/setenv.local.sh

s následujícím obsahem:

JAVA_OPTS="$JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/sofie/data/"

Výše uvedená nastavení aktivují uložení výpisu paměti (heap dump) na disk do určené cesty při nedostatku paměti. V cílovém adresáři je nutný dostatek místa alespoň ve velikosti paměti serveru. Pokud v cestě /var/sofie/data/ není dostatek místa, je možné cestu změnit na jinou v parametru HeapDumpPath.

Aby se změna konfigurace projevila, je zapotřebí worker zrestartovat:

systemctl restart sofie-worker