EdgeGuard
EdgeGuard
is an extension of the Datasance PoT and the Eclipse ioFog Hardware Abstraction Layer Microservice. It serves as a critical security and monitoring component for edge devices running ioFog Agents.
The primary function of EdgeGuard is to monitor the Hardware Abstraction Layer (HAL) Microservice REST API, collecting comprehensive hardware details from endpoints such as lscpu
, lspci
, lsusb
, lshw
and /proc/cpuinfo
. Using this data, EdgeGuard generates an irreversible hardware signature unique to the edge device.
In the event of a detected hardware signature change, EdgeGuard immediately deprovisions the ioFog Agent from the Edge Compute Network (ECN) cluster. This action ensures that unauthorized changes or tampering with edge devices are swiftly addressed, maintaining the integrity and security of the ECN.
EdgeGuard is particularly valuable for edge devices deployed outside traditional datacenters, where the risk of unauthorized access is significantly higher. By detecting potential security breaches and wiping all microservices running on the compromised ioFog Agent, EdgeGuard helps organizations adhere to strict security policies and minimize exposure to potential threats
This will be officiallay part of Agent configuration for auto deployment.For now you need to deploy it as via Application
yaml kind.
Configure abstractedHardwareEnabled
as true
for your Agent via ECNViewer
or potctl
EdgeGuard as a traditional container
---
apiVersion: datasance.com/v3
kind: Application
metadata:
name: edge-guard
spec:
microservices:
- name: edge-guard
agent:
name: foo
images:
registry: 1
x86: ghcr.io/datasance/edge-guard:latest
arm: ghcr.io/datasance/edge-guard:latest
container:
volumes:
- hostDestination: /Users/emirhan/local-api
containerDestination: /local-api
accessMode: ro
type: bind
- hostDestination: hw-id
containerDestination: /id
accessMode: rw
type: volume
env:
- key: PERIOD
value: '10'
routes: []
PERIOD
env variable is used for defining time in seconds for the interval between each HAL scans
Launching the Container
The EdgeGuard
images will always be available on ioFog Controllers using the catalog item ID 4
.
Please refer to the catalog overview if you don't know yet how to deploy microservices using catalog items.
EdgeGuard as a WASM container
---
apiVersion: datasance.com/v3
kind: Application
metadata:
name: edge-guard
spec:
microservices:
- name: edge-guard
agent:
name: foo
images:
registry: 1
x86: ghcr.io/datasance/edge-guard-wasm:main
arm: ghcr.io/datasance/edge-guard-wasm:main
container:
rootHostAccess: false
platform: "wasip1/wasm"
runtime: "io.containerd.wasmedge.v1"
volumes:
- hostDestination: /Users/emirhan/local-api
containerDestination: /local-api
accessMode: ro
type: bind
- hostDestination: hw-id
containerDestination: /id
accessMode: rw
type: volume
env:
- key: PERIOD
value: '10'
routes: []
import EditPageAdmonition from '@site/src/components/EditPageAdmonition';
<EditPageAdmonition />