Skip to content

Commit 9e9a22d

Browse files
authored
Merge branch 'main' into install-fix
2 parents 3ee7f9c + be83b9b commit 9e9a22d

File tree

8 files changed

+161
-74
lines changed

8 files changed

+161
-74
lines changed

content/nap-dos/deployment-guide/learn-about-deployment.md

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -413,22 +413,28 @@ When deploying App Protect DoS on NGINX Plus take the following precautions to s
413413
414414
6. Enable Yum repositories to pull NGINX App Protect DoS dependencies:
415415
416-
If you have a RHEL subscription:
416+
For RHEL subscription:
417417
418418
```shell
419419
sudo subscription-manager repos --enable=rhel-8-for-x86_64-baseos-rpms
420420
sudo subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms
421421
sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
422422
```
423423
424-
7. Add NGINX Plus and NGINX App Protect DoS repository:
424+
For RockyLinux:
425+
426+
```shell
427+
sudo dnf -y install epel-release
428+
```
429+
430+
8. Add NGINX Plus and NGINX App Protect DoS repository:
425431
426432
```shell
427433
sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/nginx-plus-8.repo
428434
sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/app-protect-dos-8.repo
429435
```
430436
431-
8. In case of fresh installation, update the repository and install the most recent version of the NGINX Plus App Protect DoS package (which includes NGINX Plus):
437+
9. In case of fresh installation, update the repository and install the most recent version of the NGINX Plus App Protect DoS package (which includes NGINX Plus):
432438
433439
```shell
434440
sudo dnf install app-protect-dos
@@ -457,7 +463,7 @@ When deploying App Protect DoS on NGINX Plus take the following precautions to s
457463
sudo dnf install app-protect-dos-27+2.4.0
458464
```
459465
460-
9. In case of upgrading from previously installed NGINX Plus App Protect DoS package (which includes NGINX Plus):
466+
10. In case of upgrading from previously installed NGINX Plus App Protect DoS package (which includes NGINX Plus):
461467
462468
```shell
463469
sudo dnf remove nginx-plus
@@ -621,14 +627,20 @@ When deploying App Protect DoS on NGINX Plus take the following precautions to s
621627
622628
6. Enable the yum repositories to pull NGINX App Protect DoS dependencies:
623629
624-
If you have a RHEL subscription:
630+
For RHEL subscription:
625631
626632
```shell
627633
sudo subscription-manager repos --enable=rhel-9-for-x86_64-baseos-rpms
628634
sudo subscription-manager repos --enable=rhel-9-for-x86_64-appstream-rpms
629635
sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
630636
```
631637
638+
For RockyLinux:
639+
640+
```shell
641+
sudo dnf -y install epel-release
642+
```
643+
632644
7. Add the NGINX Plus and NGINX App Protect DoS repositories:
633645
634646
```shell

content/nginx/admin-guide/basic-functionality/managing-configuration-files.md

Lines changed: 32 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,33 @@ type:
99
- how-to
1010
---
1111

12-
Similar to other services, NGINX and NGINX Plus use a text‑based configuration file with a precise format. By default the file is named **nginx.conf** and for NGINX Plus is placed in the `/etc/nginx` directory.
12+
NGINX and NGINX Plus use a text‑based configuration file, by default named **nginx.conf**.
1313

14-
For NGINX Open Source, the location depends on the package system used to install NGINX and the operating system. It is typically one of `/usr/local/nginx/conf`, `/etc/nginx`, or `/usr/local/etc/nginx`.
14+
NGINX Plus: default location is `/etc/nginx` for Linux or `/usr/local/etc/nginx` for FreeBSD.
15+
16+
NGINX Open Source: location depends on the package system used to install NGINX and the operating system. It is typically one of `/usr/local/nginx/conf`, `/etc/nginx`, or `/usr/local/etc/nginx`.
17+
18+
You can verify the exact configuration file path with the `--conf-path=` parameter in the output of the `nginx -V` command:
19+
20+
```shell
21+
nginx -V 2>&1 | awk -F: '/configure arguments/ {print $2}' | xargs -n1
22+
```
23+
24+
Sample output:
25+
26+
```none
27+
--prefix=/etc/nginx
28+
--sbin-path=/usr/sbin/nginx
29+
--modules-path=/usr/lib64/nginx/modules
30+
--conf-path=/etc/nginx/nginx.conf # The path to your config file
31+
--error-log-path=/var/log/nginx/error.log
32+
--http-log-path=/var/log/nginx/access.log
33+
--pid-path=/var/run/nginx.pid
34+
--...<more parameters>
35+
```
1536

1637
## Directives
38+
1739
The configuration file consists of _directives_ and their parameters. Simple (single‑line) directives end with a semicolon ( `;` ). Other directives act as “containers” which group together related directives. Containers are enclosed in curly braces ( `{}` ) and are often referred to as _blocks_. Here are some examples of simple directives.
1840

1941
```nginx
@@ -22,9 +44,9 @@ error_log logs/error.log notice;
2244
worker_processes 1;
2345
```
2446

25-
## Feature-Specific Configuration Files
47+
## Feature-specific configuration files
2648

27-
To make the configuration easier to maintain, we recommend that you split it into a set of feature‑specific files stored in the <span style="white-space: nowrap;">**/etc/nginx/conf.d**</span> directory and use the [include](https://nginx.org/en/docs/ngx_core_module.html#include) directive in the main **nginx.conf** file to reference the contents of the feature‑specific files.
49+
To make the configuration easier to maintain, it is possible to split it into a set of feature‑specific files stored in the `/etc/nginx/conf.d` directory and use the [include](https://nginx.org/en/docs/ngx_core_module.html#include) directive in the main **nginx.conf** file to reference the contents of the feature‑specific files.
2850

2951
```nginx
3052
include conf.d/http;
@@ -43,14 +65,15 @@ A few top‑level directives, referred to as _contexts_, group together the dire
4365

4466
Directives placed outside of these contexts are said to be in the _main_ context.
4567

46-
### Virtual Servers
68+
### Virtual servers
69+
4770
In each of the traffic‑handling contexts, you include one or more `server` blocks to define _virtual servers_ that control the processing of requests. The directives you can include within a `server` context vary depending on the traffic type.
4871

4972
For HTTP traffic (the `http` context), each [server](https://nginx.org/en/docs/http/ngx_http_core_module.html#server) directive controls the processing of requests for resources at particular domains or IP addresses. One or more [location](https://nginx.org/en/docs/http/ngx_http_core_module.html#location) contexts within a `server` context define how to process specific sets of URIs.
5073

5174
For mail and TCP/UDP traffic (the [mail](https://nginx.org/en/docs/mail/ngx_mail_core_module.html) and [stream](https://nginx.org/en/docs/stream/ngx_stream_core_module.html) contexts) the `server` directives each control the processing of traffic arriving at a particular TCP port or UNIX socket.
5275

53-
### Sample Configuration File with Multiple Contexts
76+
### Sample configuration file with multiple contexts
5477

5578
The following configuration illustrates the use of contexts.
5679

@@ -89,10 +112,10 @@ stream {
89112

90113
### Inheritance
91114

92-
In general, a _child_ context – a context contained within another context (its _parent_) – inherits the settings of directives included at the parent level. Some directives can appear in multiple contexts, in which case you can override the setting inherited from the parent by including the directive in the child context. For an example, see the [proxy_set_header](https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_set_header) directive.
115+
In general, a _child_ context – a context contained within another context (its _parent_) – inherits the settings of directives included at the parent level. Some directives can appear in multiple contexts, in which case you can override the setting inherited from the parent by including the directive in the child context. For an example, see the [proxy_set_header](https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_set_header) directive.
93116

94-
## Reload Configuration File
117+
## Reload configuration file
95118

96119
For changes to the configuration file to take effect, it must be reloaded. You can either restart the `nginx` process or send the `reload` signal to upgrade the configuration without interrupting the processing of current requests. For details, see [Control NGINX Processes at Runtime]({{< ref "/nginx/admin-guide/basic-functionality/runtime-control.md" >}}).
97120

98-
With NGINX Plus, you can dynamically reconfigure [load balancing]({{< ref "/nginx/admin-guide/load-balancer/dynamic-configuration-api.md" >}}) across the servers in an upstream group without reloading the configuration. You can also use the NGINX Plus API and key‑value store to dynamically control access, for example [based on client IP address]({{< ref "/nginx/admin-guide/security-controls/denylisting-ip-addresses.md" >}}).
121+
With NGINX Plus, you can dynamically reconfigure [load balancing]({{< ref "/nginx/admin-guide/load-balancer/dynamic-configuration-api.md" >}}) across the servers in an upstream group without reloading the configuration. You can also use the NGINX Plus API and key‑value store to dynamically control access, for example [based on client IP address]({{< ref "/nginx/admin-guide/security-controls/denylisting-ip-addresses.md" >}}).

content/nginx/fips-compliance-nginx-plus.md

Lines changed: 33 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -24,36 +24,42 @@ Some industries such as finance, healthcare, energy, also adopt FIPS to enhance
2424

2525
Currently, both FIPS 140-2 and FIPS 140-3 certifications are accepted. However, FIPS 140-2 is being phased out as part of the [FIPS 140-3 transition plan](https://csrc.nist.gov/projects/fips-140-3-transition-effort). After September 22, 2026, only FIPS 140-3 certifications will be recognized. Organizations are encouraged to migrate to FIPS 140-3 to meet updated cryptographic security requirements.
2626

27-
{{<bootstrap-table "table table-striped table-bordered table-sm">}}
28-
| **Program/Regulation/Industry** | **FIPS 140-2/140-3 Requirement** | **Current Status** |
29-
|---------------------------------|----------------------------------|---------------------------------------------------------------------|
30-
| CJIS | 140-2 or 140-3 | FIPS required for systems protecting criminal justice data. |
31-
| CMMC | 140-2 or 140-3 | FIPS required for Levels 2 and 3 compliance. |
32-
| Common Criteria | 140-2 or 140-3 | Evaluations reference both FIPS versions for cryptographic security. |
33-
| Critical Infrastructure | 140-2 or 140-3 | Utilities and systems accept both versions depending on deployments. |
34-
| Department of Veterans Affairs| 140-2 or 140-3 | Both versions used for securing sensitive health and personal data. |
35-
| DFARS | 140-2 or 140-3 | Cryptographic modules for CUI must be FIPS compliant. |
36-
| DoDIN APL | 140-2 or 140-3 | Approved IT products must include FIPS validation. |
37-
| FAA | 140-2 transitioning to 140-3 | 140-2 modules common in existing systems; new systems use 140-3. |
38-
| FERPA | 140-2 or 140-3 | Federal-funded educational systems align with 140-2 or 140-3. |
39-
| FedRAMP | 140-2 or 140-3 | FIPS required for encryption; both versions accepted. |
40-
| FISMA | 140-2 or 140-3 | Both versions accepted; agencies adopt existing 140-2 modules. |
41-
| HIPAA | 140-2 or 140-3 | FIPS ensures encryption for ePHI; both versions are valid. |
42-
| HITECH | 140-2 or 140-3 | FIPS use aligns with encryption best practices for ePHI. |
43-
| Intelligence Community | 140-2 transitioning to 140-3 | Current systems mostly use 140-2; newer systems adopt 140-3. |
44-
| Military & Tactical Systems | 140-2 transitioning to 140-3 | 140-2 used widely; transitioning to 140-3 certifications for future tools.|
45-
| NSA CSfC | 140-2 transitioning to 140-3 | NSA accepts 140-2 but prefers newer certifications under 140-3. |
46-
| Nuclear Regulatory Commission | 140-2 or 140-3 | Cryptography for nuclear systems relies on both versions. |
47-
| PCI DSS | 140-2 or 140-3 | Both versions recommended but not mandatory. |
48-
| State and Local Gov Programs | 140-2 or 140-3 | FIPS required for federal grant-funded security systems. |
49-
| TSA | 140-2 or 140-3 | Best practice for cryptographic protection; both versions accepted. |
50-
{{< /bootstrap-table >}}
27+
{{< table >}}
28+
| **Sector / Program** | **Version** | **Status** |
29+
|--------------------------------|----------------|---------------|
30+
| **Federal Programs** | | |
31+
| CJIS | 140-2 or 140-3 | Mandatory |
32+
| FedRAMP | 140-2 or 140-3 | Mandatory |
33+
| FISMA | 140-2 or 140-3 | Mandatory |
34+
| DFARS | 140-2 or 140-3 | Mandatory |
35+
| DoDIN APL | 140-2 or 140-3 | Mandatory |
36+
| FAA | 140-2 to 140-3 | Transitioning |
37+
| TSA | 140-2 or 140-3 | Recommended |
38+
| **Defense & Intelligence** | | |
39+
| CMMC | 140-2 or 140-3 | Mandatory |
40+
| Intelligence Community | 140-2 to 140-3 | Transitioning |
41+
| NSA CSfC | 140-2 to 140-3 | Transitioning |
42+
| Military & Tactical Systems | 140-2 to 140-3 | Transitioning |
43+
| **Healthcare & Education** | | |
44+
| HIPAA | 140-2 or 140-3 | Mandatory |
45+
| HITECH | 140-2 or 140-3 | Mandatory |
46+
| Department of Veterans Affairs | 140-2 or 140-3 | Mandatory |
47+
| FERPA | 140-2 or 140-3 | Recommended |
48+
| **Commercial/Private Sector** | | |
49+
| PCI DSS | 140-2 or 140-3 | Recommended |
50+
| Common Criteria | 140-2 or 140-3 | Recommended |
51+
| **Infrastructure & Critical Systems** | | |
52+
| Critical Infrastructure | 140-2 or 140-3 | Recommended |
53+
| Nuclear Regulatory Commission | 140-2 or 140-3 | Recommended |
54+
| **State & Local Government** | | |
55+
| State and Local Gov Programs | 140-2 or 140-3 | Mandatory |
56+
{{< /table >}}
5157

5258
### FIPS compliance in other countries
5359

5460
Although FIPS 140 is primarily a North American government cryptographic standard, it is widely recognized as a global benchmark for cryptographic security. Numerous countries outside North America align their cryptographic requirements with FIPS, especially in regulated sectors such as finance, defense, healthcare, and critical infrastructure.
5561

56-
{{<bootstrap-table "table table-striped table-bordered table-sm">}}
62+
{{< table >}}
5763
| Country/Region | FIPS Use |
5864
|----------------|-----------------------------------------------------------------------------|
5965
| Australia | Referenced for government, defense, and cryptography systems. |
@@ -74,7 +80,7 @@ Although FIPS 140 is primarily a North American government cryptographic standar
7480
| UAE | Trusted in finance, energy, and interoperability with the U.S. cryptography.|
7581
| United Kingdom | Referenced for defense, health, and procurement standards. |
7682
| United States | Mandatory for federal government systems and contractors. |
77-
{{< /bootstrap-table >}}
83+
{{< /table >}}
7884

7985
## FIPS compliant vs FIPS validated
8086

@@ -129,7 +135,7 @@ The process uses Red Hat Enterprise Linux (RHEL) release 9.6 as an example and c
129135

130136
### Step 1: Configure the operating system to use FIPS mode {#os-fips-setup}
131137

132-
For the purposes of the following demonstration, we installed and configured a RHEL 9.6 server. The [Red Hat FIPS documentation](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/security_guide/chap-federal_standards_and_regulations#sec-Enabling-FIPS-Mode) explains how to switch the operating system between FIPS mode and non‑FIPS mode by editing the boot options and restarting the system.
138+
For the purposes of the following demonstration, we installed and configured a RHEL 9.6 server. The [Red Hat FIPS documentation](https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html/security_hardening/switching-rhel-to-fips-mode_security-hardening) explains how to switch the operating system between FIPS mode and non‑FIPS mode by editing the boot options and restarting the system.
133139

134140
For instructions for enabling FIPS mode on other FIPS‑compliant Linux operating systems, see the operating system documentation, for example:
135141

content/nginxaas-azure/changelog.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,17 @@ To see a list of currently active issues, visit the [Known issues]({{< ref "/ngi
1414
To review older entries, visit the [Changelog archive]({{< ref "/nginxaas-azure/changelog-archive" >}}) section.
1515

1616

17+
## September 18, 2025
18+
19+
- {{% icon-feature %}} **Notification on update to deployments using the Stable Upgrade Channel**
20+
21+
NGINXaaS for Azure deployments using the **Stable** [Upgrade Channel]({{< ref "/nginxaas-azure/quickstart/upgrade-channels.md" >}}) will be updated to [NGINX Plus Release 35 (R35)]({{< ref "/nginx/releases.md#nginxplusrelease-35-r35" >}}) during the week of Oct 06-10, 2025. This will also include updates to the following NGINX Plus modules:
22+
- nginx-plus-module-njs
23+
24+
Please review the [NGINX Plus Release 35 (R35)]({{< ref "/nginx/releases.md#nginxplusrelease-35-r35" >}}) Release Notes carefully. If you have any concerns, it's recommended to validate your configuration against NGINX Plus R35 by setting up a test deployment using the **Preview** [Upgrade Channel]({{< ref "/nginxaas-azure/quickstart/upgrade-channels.md" >}}). See [these instructions]({{< ref "/nginxaas-azure/quickstart/recreate.md" >}}) on how to set up a deployment similar to your current one.
25+
26+
If you have any questions or concerns, please [contact us]({{< ref "/nginxaas-azure/get-help.md" >}}).
27+
1728
## August 18, 2025
1829

1930
- {{% icon-feature %}} **Updates to NGINXaaS for Azure GitHub Action**

content/nginxaas-azure/getting-started/nginx-configuration/nginx-configuration-azure-cli.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,15 @@ az nginx deployment configuration analyze --deployment-name $DEPLOYMENT_NAME \
127127
--package data="$TAR_DATA"
128128
```
129129

130+
Upload a package with config files and protected files:
131+
132+
```shell
133+
az nginx deployment configuration create --deployment-name myDeployment \
134+
--resource-group myResourceGroup --root-file nginx.conf --name default \
135+
--package data="$TAR_DATA" \
136+
protected-files="['nginx/servers/server1.conf','nginx/servers/server2.conf']"
137+
```
138+
130139
- Multiple file configuration with protected files:
131140

132141
```shell

0 commit comments

Comments
 (0)