# Instalacja i konfiguracja

### Wymagania wstępne

Aby pomyślnie przeprowadzić integrację z wykorzystaniem Netacea, upewnij się, że posiadasz:

1. Dostęp do odpowiednich kluczy API oraz punktów końcowych do przesyłania logów od Netacea.

### Kroki implementacji

1. W konsoli F5 przejdź do pozycji menu System > Resource Provisioning.

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

2\. Upewnij się, że opcja 'iRules Language Extensions (iRulesLX)' jest zaznaczona i ma przypisany odpowiedni poziom zasobów - należy wybrać 'Nominal'.

3\. W sekcji 'Local Traffic > iRules' powinny być widoczne pozycje menu specyficzne dla LX.

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

#### Przesyłanie przestrzeni roboczej <a href="#upload-workspace" id="upload-workspace"></a>

1. Przejdź do iRules > LX Workspaces
2. Kliknij przycisk 'Import'.

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

3\. Wskaż import na przestrzeń roboczą dostarczoną przez Netacea i nazwij ją 'Netacea'.

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

#### Instalacja modułu f5-nodejs <a href="#installing-f5-nodejs-module" id="installing-f5-nodejs-module"></a>

{% hint style="info" %}
**Uwaga:** Podczas łączenia się przez SSH możesz trafić do `tmos` zamiast do bash. Możesz to rozpoznać po wierszu poleceń, jeśli zawiera słowo `tmos` np.

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

Aby uzyskać dostęp do poniższej lokalizacji pliku, musisz przełączyć się na bash za pomocą następującego polecenia:

`run /util bash`
{% endhint %}

Biblioteka nodejs dla iRules LX NIE jest opublikowana w NPM ([https://www.npmjs.com](https://www.npmjs.com/)) i znajduje się wyłącznie w systemie F5 BIG-IP. Więcej informacji można znaleźć na stronie f5 [tutaj](https://support.f5.com/csp/article/K16221101), a także w NPM (<https://www.npmjs.com/package/f5-nodejs>).

Z tego powodu wymaganych jest kilka krótkich kroków, aby upewnić się, że przestrzeń robocza działa zgodnie z oczekiwaniami.

* Połącz się z węzłem F5 przez SSH za pomocą terminala
* Przejdź do katalogu, w którym znajduje się Twoja przestrzeń robocza, np. `/var/ilx/workspaces/Common/your_module_name_here/extensions/netacea`
* Gdy znajdziesz się wewnątrz modułu Netacea, utwórz katalog o nazwie `node_modules` np. `mkdir node_modules`
* Przejdź do nowo utworzonego katalogu `node_modules` i rozpakuj pliki f5-nodejs, uruchamiając polecenie `tar -xvzf /usr/share/packages/nodejs/f5-nodejs-6.tgz`

Spowoduje to zainstalowanie modułu f5-nodejs w wybranym folderze `node_module`, co można zobaczyć w konsoli F5.

#### Dodawanie kluczy API <a href="#adding-api-keys" id="adding-api-keys"></a>

1. W widoku LX Workspaces - kliknij na nazwaną przestrzeń roboczą, np. 'Netacea'
2. Znajdź plik config.json i dodaj apiKey oraz secretKey dla przestrzeni roboczej, a następnie kliknij 'Save File' poniżej
3. Kliknij przycisk 'Reload from Workspace...', który zaktualizuje pliki w przestrzeni roboczej.

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

4\. Upewnij się, że po tej operacji nie ma podświetlonych na pomarańczowo 'workspace files'. Takie podświetlenie oznacza, że zostały zmienione od ostatniego przeładowania wtyczki.

Klucze API są zawsze dodawane i zapisywane przed przejściem do 'Activate Plugin' - w przeciwnym razie uruchomienie się nie powiedzie.

#### Dodawanie pliku NetaceaConfig.json <a href="#adding-your-netaceaconfig.json" id="adding-your-netaceaconfig.json"></a>

W pliku NetaceaConfig.json powinno znajdować się 5 pól. Przykład można znaleźć poniżej:

{% 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 %}

#### Aktywacja wtyczki <a href="#activate-plugin" id="activate-plugin"></a>

1. W widoku LX workspaces - kliknij zakładkę 'LX Plugins', a następnie przycisk 'Create'

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

2\. Nazwij wtyczkę 'Netacea' i wybierz właśnie zaimportowaną przestrzeń roboczą.

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

#### Włączanie iRules <a href="#enabling-irules" id="enabling-irules"></a>

{% hint style="info" %}
Warto zauważyć, że worker F5 może wykonywać 'INGEST' z reguły iRule mitigate. Włączenie netacea\_mitigate oznacza, że nie trzeba mieć włączonego netacea\_ingest, ponieważ reguła iRule mitigate również obsługuje Ingest. Oznacza to, że użytkownik musi jedynie zaktualizować "mitigationType" znajdujące się w NetaceaConfig.json, aby przełączać się między trybem ingest a mitigate bez zmiany samej reguły iRule.
{% endhint %}

1. W widoku odpowiedniego serwera wirtualnego wybierz zakładkę 'Resources', a następnie 'manage' w sekcji przypisania iRule.

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

2\. Znajdź dwie reguły iRules Netacea na liście 'Available', przenieś odpowiednią regułę iRule do pola 'Enabled' i ustaw żądany priorytet. Zalecamy najwyższy priorytet, przy którym nie wystąpi konflikt.

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

**netacea\_ingest** - ta reguła będzie tylko wysyłać dane żądań do Netacea w celu analizy i nie będzie podejmować żadnych działań na żywych żądaniach.

**netacea\_mitigate** - ta reguła będzie wysyłać dane żądań do Netacea i automatycznie mitygować zidentyfikowane zagrożenia zgodnie z Twoją konfiguracją.

### Przydatne linki <a href="#useful-links" id="useful-links"></a>

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

Przegląd iRules LX - <https://clouddocs.f5.com/api/irules-lx/>

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

Przewodnik po iRulesLX Streaming tutaj: <https://readthedocs.org/projects/f5-agility-labs-irules/downloads/pdf/latest/>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.netacea.com/pl/informacje-o-wtyczce-netacea/f5/installation-and-configuration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
