Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/01.basics/02.requirements/02.requirements.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ Containers that are in protect mode need an allowed rule between specific contai

## Not Supported

* AWS ECS is no longer supported. (NOTE: No functionality has been actively removed for operating NeuVector on ECS deployments. However, testing on ECS is no longer being perfromed by SUSE. While protecting ECS workloads with Neuvector likely will operate as expected, issues will not be investigated.)
* AWS ECS is no longer supported. (NOTE: No functionality has been actively removed for operating NeuVector on ECS deployments. However, testing on ECS is no longer being performed by SUSE. While protecting ECS workloads with Neuvector likely will operate as expected, issues will not be investigated.)
* Docker on Mac
* Docker on Windows
* Docker on Linux - Allinone support is deprecated from v5.5.0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -522,7 +522,7 @@ Note the removal of the pipe character below if using configmap sections in a se

```yaml
secret:
# NOTE: files defined here have preferrence over the ones defined in the configmap section
# NOTE: files defined here have preference over the ones defined in the configmap section
enabled: true
data:
eulainitcfg.yaml:
Expand Down
4 changes: 2 additions & 2 deletions docs/04.navigation/02.multicluster/02.multicluster.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ The cluster service port `11443` is only accessible after enabling the `fed-mast
```

:::info
The URL for the `curl` command depends on how the `fed-master` services is exposed. If an `ingress` service is configured, it's not neccessary to specify a port.
The URL for the `curl` command depends on how the `fed-master` services is exposed. If an `ingress` service is configured, it's not necessary to specify a port.
:::

```shell
Expand All @@ -83,7 +83,7 @@ The cluster service port `10443` is shared between `REST API` and the `fed-manag
```

:::info
The URL for the `curl` command depends on how the `fed-managed` services is exposed. If an `ingress` service is configured, it's not neccessary to specify a port.
The URL for the `curl` command depends on how the `fed-managed` services is exposed. If an `ingress` service is configured, it's not necessary to specify a port.
:::

```shell
Expand Down
4 changes: 2 additions & 2 deletions docs/05.policy/03.admission/03.admission.md
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ Before NeuVector performs the match against the Admission Control rules, NeuVect
NeuVector uses this information to match the results in NeuVector Assets -> Registry scan page and collects the corresponding information such as cve name, cve high or medium count etc. Image compliance violations are considered any image which has secrets or setuid/setgid violations.
If users are using the image from docker registry to create a cluster resource, normally the registry server information is empty or docker.io and currently NeuVector is using the following hard-coded registry servers to match the registry scan result instead of empty or docker.io string. Of course, if there are more other than the following supported docker registry servers defined in the registry scan page, NeuVector is unable to get the registry scan results successfully.

If users are using the built-in image such as alpine or ubuntu from the docker registry, there is a hidden organization name called library. When you look at the results for docker build-in image in NeuVector Assets > Registry scan page, the repository name will be library/alpine or library/ubuntu. Currently NeuVector assumes there is only one hidden library organization name in docker registry. If there is more than one, NeuVector is unable to get the registry scan results successfully as well.
If users are using the built-in image such as alpine or ubuntu from the docker registry, there is a hidden organization name called library. When you look at the results for docker built-in image in NeuVector Assets > Registry scan page, the repository name will be library/alpine or library/ubuntu. Currently NeuVector assumes there is only one hidden library organization name in docker registry. If there is more than one, NeuVector is unable to get the registry scan results successfully as well.
The above limitation could also apply on other type of docker registry servers if any.

#### Creating Custom Criteria Rules
Expand Down Expand Up @@ -200,7 +200,7 @@ Criteria with a disk icon require that the image be scanned (see registry scanni
+ Resource Limit Configuration (RLC). Requires resource limits to be configured for CPU Limit/Request, Memory Limit/Request, and can require operator to be \> or \<= a configured resource value. 
+ Run as privileged. Typically used to limit or block deployments of privileged containers. 
+ Run as root. Typically used to limit or block deployments of containers run as root.. 
+ Service Account Bound High Risk Role. Can match on multiple criteria which could respresent a high risk service account role, including listing secrets, performing any operations on workloads, modification of RBAC resources, creation of workload resources, and allowing exec into a container. 
+ Service Account Bound High Risk Role. Can match on multiple criteria which could represent a high risk service account role, including listing secrets, performing any operations on workloads, modification of RBAC resources, creation of workload resources, and allowing exec into a container. 
+ Share host’s IPC namespaces. Matches on IPC namespaces. 
+ Share host’s Network. Allow or disallow deployments to share the host’s network. 
+ + Share host’s PID namespaces . Matches on PID namespaces. 
Expand Down
2 changes: 1 addition & 1 deletion docs/05.policy/04.groups/04.groups.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ You can configure the following DDoS detection thresholds:
+ **Group Session Rate**
> Connection Per Second(CPS) on the group, exceeding this rate can trigger a warning event
+ **Group Bandwidth**
> Throughput meassured in (Mb/s) on the group, exceeding this bandwidth threshold can trigger a warning event
> Throughput measured in (Mb/s) on the group, exceeding this bandwidth threshold can trigger a warning event

![ddosDetection](group_ddos_threshold.png)

Expand Down
2 changes: 1 addition & 1 deletion docs/05.policy/05.networkrules/05.networkrules.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ Add a rule using the `+` either below another rule in the right column, or using
> Specify the destination GROUP where these connections are allowed or denied.

+ **Applications**
> Enter applications for NeuVector to allow or deny. NeuVector understands deep application behavior and will analyze the payload to determine application protocols. Protocols include HTTP, HTTPS, SSL, SSH, DNS, DNCP, NTP, TFTP, ECHO, RTSP, SIP, MySQL, Redis, Zookeeper, Cassandra, MongoDB, PostgresSQL, Kafka, Couchbase, ActiveMQ, ElasticSearch, RabbitMQ, Radius, VoltDB, Consul, Syslog, Etcd, Spark, Apache, Nginx, Jetty, NodeJS, Oracle, MSSQL, Memcached and gRPC.
> Enter applications for NeuVector to allow or deny. NeuVector understands deep application behavior and will analyze the payload to determine application protocols. Protocols include HTTP, HTTPS, SSL, SSH, DNS, DNCP, NTP, TFTP, ECHO, RTSP, SIP, MySQL, Redis, Zookeeper, Cassandra, MongoDB, PostgreSQL, Kafka, Couchbase, ActiveMQ, ElasticSearch, RabbitMQ, Radius, VoltDB, Consul, Syslog, Etcd, Spark, Apache, Nginx, Jetty, NodeJS, Oracle, MSSQL, Memcached and gRPC.

:::note
To select Any/All, leave this field blank
Expand Down
4 changes: 2 additions & 2 deletions docs/05.policy/08.responserules/08.responserules.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ The matching logic for multiple criteria in one response rule is:
+ Choose service group name if rule need to be applied for a particular service group
+ Choose category Benchmark
+ Add log level as matching criteria or benchmark number, e.g. “5.12” Ensure the container's root filesystem is mounted as read only
+ Select actions to be applied Quarantine, Webhook and suppress log (quarantine is not applicable Host Docker and Kubenetes benchmark)
+ Select actions to be applied Quarantine, Webhook and suppress log (quarantine is not applicable Host Docker and Kubernetes benchmark)
+ Enable status

![cis](resp8-b.png)
Expand Down Expand Up @@ -205,7 +205,7 @@ Configuration.Import
Configuration.Export
Configuration.Import.Failed
Configuration.Export.Failed
Cloud.Scan.Normal // for cloud scan nomal ret
Cloud.Scan.Normal // for cloud scan normal ret
Cloud.Scan.Alert // for cloud scan ret with alert
Cloud.Scan.Fail // for cloud scan fail
Group.Auto.Remove
Expand Down
6 changes: 3 additions & 3 deletions docs/05.policy/13.usingcrd/13.usingcrd.md
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,7 @@ Policy Mode Configuration Yaml file Example
+ key - Must not be empty
+ op - Operator
- If the operator is equal (=) or not-equal (!=), then its’ value must not be empty.
- If the operator is equal (=) or not-equal (!=) with a value (such as * or ?), then the value cannot have any regular expresssion format like ^$.
- If the operator is equal (=) or not-equal (!=) with a value (such as * or ?), then the value cannot have any regular expression format like ^$.
- Example:
- Key: service
- Op : =
Expand Down Expand Up @@ -828,9 +828,9 @@ The target is a service called nv.alpine.default in the 'default' namespace. Bec

Note that for service nv.alpine.default (defined as nv.xxx.yyy where xxx is the service name like alpine, yyy is the namespace like default) we can define policy mode that it is set to. Here it is defined as Protect mode (blocking all abnormal activity).

Overall since nv.alpine.defult is in protect mode, it will deny containers from running ssh and scp, and also will deny ssh connections from external or http to external.
Overall since nv.alpine.default is in protect mode, it will deny containers from running ssh and scp, and also will deny ssh connections from external or http to external.

If you change the nv.alpine.defult policymode to monitor, then NeuVector will just log it when scp/ssh is invoked, or there are ssh connections from external or http to external.
If you change the nv.alpine.default policymode to monitor, then NeuVector will just log it when scp/ssh is invoked, or there are ssh connections from external or http to external.

```yaml
apiVersion: v1
Expand Down
2 changes: 1 addition & 1 deletion docs/08.integration/12.rancher_sso_rbac.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ It is important to note that this integration supports roles in Global, Cluster,
```yaml
Verb: *
Resource: RuntimeScan (choose runtimescan from drop down)
API: permission.neuvector.com (auot populated)
API: permission.neuvector.com (auto populated)
```
+ Create a project/namespace role to allow access to the UI and for SSO to work. Please remember that you must add this user role to your project for it to work as expected:

Expand Down
2 changes: 1 addition & 1 deletion docs/10.updating/01.updating/01.updating.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ slug: /updating/updating

It’s super easy to update your NeuVector containers. If there is a new release available, pull it from Docker Hub. It is recommended to use a ‘rolling update’ strategy to keep at least one Allinone or Controller container running at any time during an update.

:::warning imporant
:::warning important
Host OS updates, reboots, and orchestrator updates can cause pods to be evicted or stopped. If a Controller is affected, and there are no other Controllers active to maintain the state, the Controllers can become available for some time while new controllers are started, a cluster is formed with a leader, and the persistent storage backup of the configuration is attempted to be accessed to restore the cluster. Be careful when scheduling host or orchestrator updates and reboots which may affect the number of controllers available at any time. See the Pod Disruption Budget below for possible ways to mitigate this.

If deployment was done using the NeuVector Helm charts, updating will take care of additional services, rolebindings or other upgrade requirements.
Expand Down
2 changes: 1 addition & 1 deletion docs/12.troubleshooting/02.cli/02.cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ MODES:

```shell
> set controller <leader_controller_id> debug
Turn off debug mdoe.
Turn off debug mode.
```

More CLI commands are listed below.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ AWS Bottlerocket Note: Must change path of the containerd socket specific to Bot
#### Not Supported

* GKE Autopilot.
* AWS ECS is no longer supported. (NOTE: No functionality has been actively removed for operating NeuVector on ECS deployments. However, testing on ECS is no longer being perfromed by SUSE. While protecting ECS workloads with Neuvector likely will operate as expected, issues will not be investigated.)
* AWS ECS is no longer supported. (NOTE: No functionality has been actively removed for operating NeuVector on ECS deployments. However, testing on ECS is no longer being performed by SUSE. While protecting ECS workloads with Neuvector likely will operate as expected, issues will not be investigated.)
* Docker on Mac
* Docker on Windows
* ARM architectire is not currently supported, but being worked on for future releases.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -417,7 +417,7 @@ Note the removal of the pipe character below if using configmap sections in a se

```yaml
secret:
# NOTE: files defined here have preferrence over the ones defined in the configmap section
# NOTE: files defined here have preference over the ones defined in the configmap section
enabled: true
data:
eulainitcfg.yaml:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ Before NeuVector performs the match against the Admission Control rules, NeuVect
NeuVector uses this information to match the results in NeuVector Assets -> Registry scan page and collects the corresponding information such as cve name, cve high or medium count etc. Image compliance violations are considered any image which has secrets or setuid/setgid violations.
If users are using the image from docker registry to create a cluster resource, normally the registry server information is empty or docker.io and currently NeuVector is using the following hard-coded registry servers to match the registry scan result instead of empty or docker.io string. Of course, if there are more other than the following supported docker registry servers defined in the registry scan page, NeuVector is unable to get the registry scan results successfully.

If users are using the built-in image such as alpine or ubuntu from the docker registry, there is a hidden organization name called library. When you look at the results for docker build-in image in NeuVector Assets > Registry scan page, the repository name will be library/alpine or library/ubuntu. Currently NeuVector assumes there is only one hidden library organization name in docker registry. If there is more than one, NeuVector is unable to get the registry scan results successfully as well.
If users are using the built-in image such as alpine or ubuntu from the docker registry, there is a hidden organization name called library. When you look at the results for docker built-in image in NeuVector Assets > Registry scan page, the repository name will be library/alpine or library/ubuntu. Currently NeuVector assumes there is only one hidden library organization name in docker registry. If there is more than one, NeuVector is unable to get the registry scan results successfully as well.
The above limitation could also apply on other type of docker registry servers if any.

#### Creating Custom Criteria Rules
Expand Down Expand Up @@ -200,7 +200,7 @@ Criteria with a disk icon require that the image be scanned (see registry scanni
+ Resource Limit Configuration (RLC). Requires resource limits to be configured for CPU Limit/Request, Memory Limit/Request, and can require operator to be \> or \<= a configured resource value. 
+ Run as privileged. Typically used to limit or block deployments of privileged containers. 
+ Run as root. Typically used to limit or block deployments of containers run as root.. 
+ Service Account Bound High Risk Role. Can match on multiple criteria which could respresent a high risk service account role, including listing secrets, performing any operations on workloads, modification of RBAC resources, creation of workload resources, and allowing exec into a container. 
+ Service Account Bound High Risk Role. Can match on multiple criteria which could represent a high risk service account role, including listing secrets, performing any operations on workloads, modification of RBAC resources, creation of workload resources, and allowing exec into a container. 
+ Share host’s IPC namespaces. Matches on IPC namespaces. 
+ Share host’s Network. Allow or disallow deployments to share the host’s network. 
+ + Share host’s PID namespaces . Matches on PID namespaces. 
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ Add a rule using the ‘+’ either below another rule in the right column, or u
> Specify the destination GROUP where these connections are allowed or denied.

+ **Applications**
> Enter applications for NeuVector to allow or deny. NeuVector understands deep application behavior and will analyze the payload to determine application protocols. Protocols include HTTP, HTTPS, SSL, SSH, DNS, DNCP, NTP, TFTP, ECHO, RTSP, SIP, MySQL, Redis, Zookeeper, Cassandra, MongoDB, PostgresSQL, Kafka, Couchbase, ActiveMQ, ElasticSearch, RabbitMQ, Radius, VoltDB, Consul, Syslog, Etcd, Spark, Apache, Nginx, Jetty, NodeJS, Oracle, MSSQL, Memcached and gRPC.
> Enter applications for NeuVector to allow or deny. NeuVector understands deep application behavior and will analyze the payload to determine application protocols. Protocols include HTTP, HTTPS, SSL, SSH, DNS, DNCP, NTP, TFTP, ECHO, RTSP, SIP, MySQL, Redis, Zookeeper, Cassandra, MongoDB, PostgreSQL, Kafka, Couchbase, ActiveMQ, ElasticSearch, RabbitMQ, Radius, VoltDB, Consul, Syslog, Etcd, Spark, Apache, Nginx, Jetty, NodeJS, Oracle, MSSQL, Memcached and gRPC.

:::note
To select Any/All, leave this field blank
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ The matching logic for multiple criteria in one response rule is:
+ Choose service group name if rule need to be applied for a particular service group
+ Choose category Benchmark
+ Add log level as matching criteria or benchmark number, e.g. “5.12” Ensure the container's root filesystem is mounted as read only
+ Select actions to be applied Quarantine, Webhook and suppress log (quarantine is not applicable Host Docker and Kubenetes benchmark)
+ Select actions to be applied Quarantine, Webhook and suppress log (quarantine is not applicable Host Docker and Kubernetes benchmark)
+ Enable status

![cis](resp8-b.png)
Expand Down Expand Up @@ -205,7 +205,7 @@ Configuration.Import
Configuration.Export
Configuration.Import.Failed
Configuration.Export.Failed
Cloud.Scan.Normal // for cloud scan nomal ret
Cloud.Scan.Normal // for cloud scan normal ret
Cloud.Scan.Alert // for cloud scan ret with alert
Cloud.Scan.Fail // for cloud scan fail
Group.Auto.Remove
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -351,7 +351,7 @@ Policy Mode Configuration Yaml file Example
+ key - Must not be empty
+ op - Operator
- If the operator is equal (=) or not-equal (!=), then its’ value must not be empty.
- If the operator is equal (=) or not-equal (!=) with a value (such as * or ?), then the value cannot have any regular expresssion format like ^$.
- If the operator is equal (=) or not-equal (!=) with a value (such as * or ?), then the value cannot have any regular expression format like ^$.
- Example:
- Key: service
- Op : =
Expand Down Expand Up @@ -757,9 +757,9 @@ The target is a service called nv.alpine.default in the 'default' namespace. Bec

Note that for service nv.alpine.default (defined as nv.xxx.yyy where xxx is the service name like alpine, yyy is the namespace like default) we can define policy mode that it is set to. Here it is defined as Protect mode (blocking all abnormal activity).

Overall since nv.alpine.defult is in protect mode, it will deny containers from running ssh and scp, and also will deny ssh connections from external or http to external.
Overall since nv.alpine.default is in protect mode, it will deny containers from running ssh and scp, and also will deny ssh connections from external or http to external.

If you change the nv.alpine.defult policymode to monitor, then NeuVector will just log it when scp/ssh is invoked, or there are ssh connections from external or http to external.
If you change the nv.alpine.default policymode to monitor, then NeuVector will just log it when scp/ssh is invoked, or there are ssh connections from external or http to external.

```yaml
apiVersion: v1
Expand Down
Loading