# Installation und Konfiguration

### Voraussetzungen

Um die Integration mit Netacea erfolgreich durchzuführen, stellen Sie bitte sicher, dass Sie über Folgendes verfügen:

1. Zugang zu den relevanten API-Schlüsseln und Log-Shipping-Endpunkten von Netacea.

### Implementierungsschritte

1. Navigieren Sie in der F5-Konsole zum Menüpunkt System > Resource Provisioning.

<figure><img src="https://1167149896-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6PpNBgdOJ87TpWxJ29CQ%2Fuploads%2Fgit-blob-06deb308c7ac0eba400921762d1f4446f4535d2a%2Fimage%20(5)%20(1)%20(2).png?alt=media" alt=""><figcaption></figcaption></figure>

2\. Stellen Sie sicher, dass 'iRules Language Extensions (iRulesLX)' aktiviert ist und eine angemessene Bereitstellung zugewiesen wurde - 'Nominal' sollte gewählt werden.

3\. Unter 'Local Traffic > iRules' sollten die LX-spezifischen Menüpunkte vorhanden sein.

<figure><img src="https://1167149896-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6PpNBgdOJ87TpWxJ29CQ%2Fuploads%2Fgit-blob-2672ec88a92c8426284ff955a9a200b89e324188%2Fimage%20(2)%20(2)%20(1)%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>

#### Workspace hochladen <a href="#upload-workspace" id="upload-workspace"></a>

1. Navigieren Sie zu iRules > LX Workspaces
2. Klicken Sie auf die Schaltfläche 'Import'.

<figure><img src="https://1167149896-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6PpNBgdOJ87TpWxJ29CQ%2Fuploads%2Fgit-blob-69b7b636dd8901c14bc4a78ea8bf6b279f9407b1%2Fimage%20(6)%20(3)%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>

3\. Verweisen Sie den Import auf den von Netacea bereitgestellten Workspace und benennen Sie den Workspace 'Netacea'.

<figure><img src="https://1167149896-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6PpNBgdOJ87TpWxJ29CQ%2Fuploads%2Fgit-blob-ae450c1c1ba21954f30298dea26315199226b643%2Fimage%20(25)%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>

#### Installation des f5-nodejs-Moduls <a href="#installing-f5-nodejs-module" id="installing-f5-nodejs-module"></a>

{% hint style="info" %}
**Hinweis:** Bei der Verbindung über SSH kann es vorkommen, dass Sie in `tmos` statt in bash landen. Sie erkennen dies an der Befehlszeile, wenn sie das Wort `tmos` enthält, z. B.

`username@(ip-172-31-10-207)(cfg-sync Standalone)(Active)(/Common)(tmos)#`

Um auf den unten angegebenen Dateispeicherort zugreifen zu können, müssen Sie mit folgendem Befehl zu bash wechseln:

`run /util bash`
{% endhint %}

Die nodejs-Bibliothek für iRules LX wird NICHT auf NPM ([https://www.npmjs.com](https://www.npmjs.com/)) veröffentlicht und befindet sich ausschließlich auf dem F5 BIG-IP-System. Weitere Informationen finden Sie auf der F5-Website [hier](https://support.f5.com/csp/article/K16221101) sowie auf NPM (<https://www.npmjs.com/package/f5-nodejs>).

Aufgrund dieser Tatsache sind einige kurze Schritte erforderlich, um sicherzustellen, dass der Workspace wie erwartet funktioniert.

* Verbinden Sie sich über ein Terminal per SSH mit Ihrem F5-Knoten
* Wechseln Sie in das Verzeichnis, in dem sich Ihr Workspace befindet, z. B. `/var/ilx/workspaces/Common/your_module_name_here/extensions/netacea`
* Sobald Sie sich im Netacea-Modul befinden, erstellen Sie ein Verzeichnis mit dem Namen `node_modules`, z. B. `mkdir node_modules`
* Wechseln Sie in Ihr neu erstelltes `node_modules`-Verzeichnis und entpacken Sie die f5-nodejs-Dateien mit dem Befehl `tar -xvzf /usr/share/packages/nodejs/f5-nodejs-6.tgz`

Dadurch wird das f5-nodejs-Modul im gewünschten `node_module`-Ordner installiert und kann in der F5-Konsole angezeigt werden.

#### Hinzufügen von API-Schlüsseln <a href="#adding-api-keys" id="adding-api-keys"></a>

1. Klicken Sie in der LX Workspaces-Ansicht auf den benannten Workspace, z. B. 'Netacea'
2. Suchen Sie die Datei config.json und fügen Sie den apiKey und secretKey für den Workspace ein. Klicken Sie anschließend unten auf 'Save File'
3. Klicken Sie auf die Schaltfläche 'Reload from Workspace...', wodurch die Dateien innerhalb des Workspace aktualisiert werden.

<figure><img src="https://1167149896-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6PpNBgdOJ87TpWxJ29CQ%2Fuploads%2Fgit-blob-300ae1a063ff80bd3bc291f7c7f4962a31296093%2Fimage%20(10)%20(2).png?alt=media" alt=""><figcaption></figcaption></figure>

4\. Stellen Sie sicher, dass anschließend keine orange hervorgehobenen 'workspace files' vorhanden sind. Dies signalisiert, dass sie sich seit dem letzten Neuladen des Plugins geändert haben.

API-Schlüssel werden immer hinzugefügt und gespeichert, bevor Sie mit 'Activate Plugin' fortfahren - andernfalls wird der Start fehlschlagen.

#### Hinzufügen Ihrer NetaceaConfig.json <a href="#adding-your-netaceaconfig.json" id="adding-your-netaceaconfig.json"></a>

Es gibt 5 Felder, die in der Datei NetaceaConfig.json vorhanden sein sollten. Ein Beispiel finden Sie unten:

{% code overflow="wrap" %}

```
{ 
"apiKey": "API_KEY", 
"secretKey": "SECRET_KEY",
"mitigationType": "MITIGATION_TYPE", // Either "INGEST" or "MITIGATE"
"ingestType": "KINESIS",
"mitigationServiceUrl": "MITIGATE SERVICE URL",
  "kinesis": {
  "kinesisStreamName": "KINESIS_STREAM_NAME",
    "kinesisAccessKey": "KINESIS_ACCESS_KEY",
    "kinesisSecretKey": "KINESIS_SECRET_KEY",
    "logBatchSize": 100,
    "maxLogAgeSeconds": 3
  }
}
```

{% endcode %}

#### Plugin aktivieren <a href="#activate-plugin" id="activate-plugin"></a>

1. Klicken Sie in der LX Workspaces-Ansicht auf den Tab 'LX Plugins' und dann auf die Schaltfläche 'Create'

<figure><img src="https://1167149896-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6PpNBgdOJ87TpWxJ29CQ%2Fuploads%2Fgit-blob-6913cade341aa5c85a6ac1de7e0cdf6b9142e586%2Fimage%20(7)%20(3).png?alt=media" alt=""><figcaption></figcaption></figure>

2\. Nennen Sie das Plugin 'Netacea' und wählen Sie den soeben importierten Workspace aus.

<figure><img src="https://1167149896-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6PpNBgdOJ87TpWxJ29CQ%2Fuploads%2Fgit-blob-e8a603f6169fb0134da1f916fe02b1bfc8bf19e2%2Fimage%20(1)%20(3)%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>

#### Aktivieren von iRules <a href="#enabling-irules" id="enabling-irules"></a>

{% hint style="info" %}
Es ist erwähnenswert, dass der F5-Worker von der mitigate-iRule aus 'INGEST' durchführen kann. Die Aktivierung von netacea\_mitigate bedeutet, dass Sie netacea\_ingest nicht aktiviert haben müssen, da die mitigate-iRule auch Ingest übernimmt. Dies bedeutet, dass ein Benutzer dann nur den "mitigationType" in der NetaceaConfig.json aktualisieren muss, um zwischen ingest und mitigate zu wechseln, ohne die iRule selbst zu ändern.
{% endhint %}

1. Wählen Sie in der Ansicht des relevanten virtuellen Servers den Tab 'Resources' und dann 'manage' für die iRule-Zuweisung.

<figure><img src="https://1167149896-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6PpNBgdOJ87TpWxJ29CQ%2Fuploads%2Fgit-blob-67f12693a16d2d8cefb5b0cab8d9bff07c15303a%2Fimage%20(3)%20(1)%20(3).png?alt=media" alt=""><figcaption></figcaption></figure>

2\. Suchen Sie die beiden Netacea-iRules in der Liste 'Available', verschieben Sie die relevante iRule in das Feld 'Enabled' und legen Sie die gewünschte Priorität fest. Wir empfehlen die höchste Priorität, bei der kein Konflikt auftritt.

<figure><img src="https://1167149896-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6PpNBgdOJ87TpWxJ29CQ%2Fuploads%2Fgit-blob-cb5406bfe5a78af5d3234854cf118c9a8a84a8f9%2Fimage%20(29).png?alt=media" alt=""><figcaption></figcaption></figure>

**netacea\_ingest** - sendet nur Anfragedaten zur Analyse an Netacea und führt keine Aktionen bei Live-Anfragen durch.

**netacea\_mitigate** - sendet Anfragedaten an Netacea und mitigiert identifizierte Bedrohungen automatisch gemäß Ihrer Konfiguration.

### Nützliche Links <a href="#useful-links" id="useful-links"></a>

F5 Datenblatt - <https://www.f5.com/pdf/products/big-ip-local-traffic-manager-ds.pdf>

iRules LX Übersicht - <https://clouddocs.f5.com/api/irules-lx/>

iRules LX API-Dokumentation - <https://clouddocs.f5.com/api/irules-lx/APIReference.html>

iRulesLX Streaming-Leitfaden hier: <https://readthedocs.org/projects/f5-agility-labs-irules/downloads/pdf/latest/>
