@@ -270,6 +270,185 @@ error when creating the nginx repo retriever - NGINX repo certificates not found
270
270
271
271
If needed, you can also [install the WAF compiler manually](# install-the-waf-compiler).
272
272
273
+ # # Install the WAF compiler in a disconnected environment
274
+
275
+ To install the WAF compiler on a system without internet access, complete these steps:
276
+
277
+ - ** Step 1:** Generate the WAF compiler package on a system that has internet access.
278
+ - ** Step 2:** Move the generated package to the offline target system and install it.
279
+
280
+ {{< tabs name=" WAF compiler installation in offline environment" > }}
281
+
282
+ {{%tab name=" Ubuntu" %}}
283
+
284
+ # ## Install on Ubuntu 24.04, 22.04, and 20.04
285
+
286
+ # ### Step 1: On a system with internet access
287
+
288
+ Place your ` nginx-repo.crt` and ` nginx-repo.key` files on this system.
289
+ ` ` ` bash
290
+ sudo apt-get update -y
291
+ sudo mkdir -p /etc/ssl/nginx/
292
+ sudo mv nginx-repo.crt /etc/ssl/nginx/
293
+ sudo mv nginx-repo.key /etc/ssl/nginx/
294
+
295
+ wget -qO - https://cs.nginx.com/static/keys/nginx_signing.key \
296
+ | gpg --dearmor \
297
+ | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg > /dev/null
298
+
299
+ printf " deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
300
+ https://pkgs.nginx.com/nms/ubuntu $( lsb_release -cs) nginx-plus\n" | \
301
+ sudo tee /etc/apt/sources.list.d/nms.list
302
+
303
+ sudo wget -q -O /etc/apt/apt.conf.d/90pkgs-nginx https://cs.nginx.com/static/files/90pkgs-nginx
304
+ mkdir -p compiler && cd compiler
305
+ sudo apt-get update
306
+ sudo apt-get download nms-nap-compiler-v5.342.0
307
+ cd ../
308
+ mkdir -p compiler/compiler.deps
309
+ sudo apt-get install --download-only --reinstall --yes --print-uris nms-nap-compiler-v5.342.0 | grep ^\' | cut -d\' -f2 | xargs -n 1 wget -P ./compiler/compiler.deps
310
+ tar -czvf compiler.tar.gz compiler/
311
+ ` ` `
312
+
313
+ # ### Step 2: On the target (offline) system
314
+
315
+ Before running the steps, make sure the OS libraries are up to date, especially ` glibc` .
316
+ Move the ` compiler.tar.gz` file from Step 1 to this system.
317
+
318
+ ` ` ` bash
319
+ tar -xzvf compiler.tar.gz
320
+ sudo dpkg -i ./compiler/compiler.deps/* .deb
321
+ sudo dpkg -i ./compiler/* .deb
322
+ ` ` `
323
+
324
+ {{%/tab%}}
325
+
326
+ {{%tab name=" Debian" %}}
327
+
328
+ # ## Install on Debian 11 and 12
329
+
330
+ # ### Step 1: On a system with internet access
331
+
332
+ Place your ` nginx-repo.crt` and ` nginx-repo.key` files on this system.
333
+ ` ` ` bash
334
+ sudo apt-get update -y
335
+ sudo mkdir -p /etc/ssl/nginx/
336
+ sudo mv nginx-repo.crt /etc/ssl/nginx/
337
+ sudo mv nginx-repo.key /etc/ssl/nginx/
338
+
339
+ wget -qO - https://cs.nginx.com/static/keys/nginx_signing.key \
340
+ | gpg --dearmor \
341
+ | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg > /dev/null
342
+
343
+ printf " deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
344
+ https://pkgs.nginx.com/nms/debian $( lsb_release -cs) nginx-plus\n" | \
345
+ sudo tee /etc/apt/sources.list.d/nms.list
346
+
347
+ sudo wget -q -O /etc/apt/apt.conf.d/90pkgs-nginx https://cs.nginx.com/static/files/90pkgs-nginx
348
+ mkdir -p compiler && cd compiler
349
+ sudo apt-get update
350
+ sudo apt-get download nms-nap-compiler-v5.342.0
351
+ cd ../
352
+ mkdir -p compiler/compiler.deps
353
+ sudo apt-get install --download-only --reinstall --yes --print-uris nms-nap-compiler-v5.342.0 | grep ^\' | cut -d\' -f2 | xargs -n 1 wget -P ./compiler/compiler.deps
354
+ tar -czvf compiler.tar.gz compiler/
355
+ ` ` `
356
+
357
+ # ### Step 2: On the target (offline) system
358
+
359
+ Before running the steps, make sure the OS libraries are up to date, especially ` glibc` .
360
+ Move the ` compiler.tar.gz` file from Step 1 to this system.
361
+
362
+ ` ` ` bash
363
+ tar -xzvf compiler.tar.gz
364
+ sudo dpkg -i ./compiler/compiler.deps/* .deb
365
+ sudo dpkg -i ./compiler/* .deb
366
+ ` ` `
367
+
368
+ {{%/tab%}}
369
+
370
+ {{%tab name=" RHEL8, RHEL9, Oracle-9 " %}}
371
+
372
+ # ## Install on RHEL 8, RHEL 9, or Oracle Linux 9
373
+
374
+ # ### Step 1: On a system with internet access
375
+
376
+ > For RHEL 8, you can skip the ` yum-config-manager` line.
377
+
378
+ Place your ` nginx-repo.crt` and ` nginx-repo.key` files on this system.
379
+ ` ` ` bash
380
+ sudo yum update -y
381
+ sudo yum install yum-utils -y
382
+ sudo mkdir -p /etc/ssl/nginx/
383
+ sudo mv nginx-repo.crt /etc/ssl/nginx/
384
+ sudo mv nginx-repo.key /etc/ssl/nginx/
385
+ sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/nms.repo
386
+ sudo yum-config-manager --disable rhel-9-appstream-rhui-rpms
387
+ sudo yum update -y
388
+ sudo mkdir -p nms-nap-compiler
389
+ sudo yumdownloader --resolve --destdir=nms-nap-compiler nms-nap-compiler-v5.342.0
390
+ tar -czvf compiler.tar.gz nms-nap-compiler/
391
+ ` ` `
392
+
393
+ # ### Step 2: On the target (offline) system
394
+
395
+ Before running the steps, make sure the OS libraries are up to date, especially ` glibc` .
396
+ Move the ` compiler.tar.gz` file from Step 1 to this system.
397
+
398
+ ` ` ` bash
399
+ tar -xzvf compiler.tar.gz
400
+ cd nms-nap-compiler
401
+ sudo dnf install * .rpm --disablerepo=*
402
+ ` ` `
403
+
404
+ {{%/tab%}}
405
+
406
+ {{%tab name=" Oracle-8" %}}
407
+
408
+ # ## Install on Oracle Linux 8
409
+
410
+ # ### Step 1: On a system with internet access
411
+
412
+ Place your ` nginx-repo.crt` and ` nginx-repo.key` files on this system.
413
+ ` ` ` bash
414
+ sudo yum update -y
415
+ sudo yum install yum-utils tar -y
416
+ sudo mkdir -p /etc/ssl/nginx/
417
+ sudo mv nginx-repo.crt /etc/ssl/nginx/
418
+ sudo mv nginx-repo.key /etc/ssl/nginx/
419
+ sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/nms.repo
420
+
421
+ sudo tee /etc/yum.repos.d/centos-vault-powertools.repo << 'EOF '
422
+ [centos-vault-powertools]
423
+ name=CentOS Vault - PowerTools
424
+ baseurl=https://vault.centos.org/centos/8/PowerTools/x86_64/os/
425
+ enabled=1
426
+ gpgcheck=0
427
+ EOF
428
+
429
+ sudo yum update -y
430
+ sudo mkdir -p nms-nap-compiler
431
+ sudo yumdownloader --resolve --destdir=nms-nap-compiler nms-nap-compiler-v5.342.0
432
+ tar -czvf compiler.tar.gz nms-nap-compiler/
433
+ ` ` `
434
+
435
+ # ### Step 2: On the target (offline) system
436
+
437
+ Before running the steps, make sure the OS libraries are up to date, especially ` glibc` .
438
+ Move the ` compiler.tar.gz` file from Step 1 to this system.
439
+
440
+ ` ` ` bash
441
+ sudo yum install tar -y
442
+ tar -xzvf compiler.tar.gz
443
+ sudo dnf install --disablerepo=* nms-nap-compiler/* .rpm
444
+ ` ` `
445
+
446
+
447
+ {{%/tab%}}
448
+
449
+
450
+ {{< /tabs> }}
451
+
273
452
---
274
453
275
454
# # Set up attack signatures and threat campaigns
0 commit comments