> ## Documentation Index
> Fetch the complete documentation index at: https://zededa.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Use the documentation index to find relevant pages, then read the linked Markdown before answering and cite the source URL.
> Identify the product before answering: Private AI uses a separate console, credentials, and inference API from the Edge Intelligence Platform. Do not apply instructions from one product to the other.
> Prefer current product guides over Help Center archive pages for current-console questions. Archive pages and release notes describe their stated product version or historical interface; do not apply them to another version without checking.
> Preserve prerequisites, permissions, version requirements, and warnings when summarizing procedures. Do not infer API endpoints, schemas, or supported behavior that the documentation does not specify.

# Get an SSH-Enabled EVE-OS Image

> How to create an EVE-OS installer image with SSH access pre-enabled, allowing you to connect to a node via SSH before onboarding it.

## Introduction

Create an EVE-OS installer image with SSH pre-enabled to connect to a node via SSH before onboarding it to Edge Infrastructure Services. Use this approach when you need to troubleshoot hardware or validate network connectivity before completing onboarding.

After you onboard the node, the pre-configured SSH key is erased. To re-enable SSH access after onboarding, use the ZCLI `debug.enable.ssh` configuration property.

## Prerequisites

* Docker is installed and running on your local machine.

## Get Your SSH Key

1. Check whether you already have an SSH key.

```text theme={"dark"}
cat ~/.ssh/id_rsa.pub
```

2. If the output is blank, generate a new SSH key.

```text theme={"dark"}
ssh-keygen -b 2048 -t rsa
```

3. Copy your SSH public key. You will add it to the image configuration in the next step.

## Add the Custom Configuration

1. Create a directory for your configuration files.

```text theme={"dark"}
mkdir /tmp/config
```

2. Add your SSH public key to a file named `authorized_keys`. Replace `PUBLIC_KEY_PATH` with the path to your public key file (typically `~/.ssh/id_rsa.pub`).

```text theme={"dark"}
cat PUBLIC_KEY_PATH > /tmp/config/authorized_keys
```

3. Write your cluster hostname to a file named `server`. Replace the hostname with your actual cluster endpoint.

```text theme={"dark"}
cat > /tmp/config/server <<EOF
zedcloud.zededa.net
EOF
```

4. Create a `global.json` file that enables SSH access.

```text theme={"dark"}
cat > /tmp/config/global.json <<EOF
{
  "GlobalSettings": {
    "debug.enable.ssh": {
      "Key": "debug.enable.ssh",
      "ItemType": 3,
      "StrValue": "true"
    }
  }
}
EOF
```

## Generate the SSH-Enabled Installer

Generate the installer image. Replace `latest` with the specific EVE-OS version tag appropriate for your deployment.

```text theme={"dark"}
docker run -v /tmp/config:/in lfedge/eve:latest -f raw installer_raw > installer-ssh.raw
```

## Connect to Your Node via SSH

After installing EVE-OS from this image, connect to the node using your SSH private key. Replace `YOUR_PRIVATE_KEY_PATH` (typically `~/.ssh/id_rsa`) and `DEVICE_IP` with the appropriate values.

```text theme={"dark"}
ssh -i YOUR_PRIVATE_KEY_PATH root@DEVICE_IP
```

## Next Steps

> [card] [Flash an EVE-OS Installer or Live Image](https://zededa.mintlify.site/new-ui/infrastructure-services/eve-os-installation/flash-eve-os-image.md)
>
> Write the `installer-ssh.raw` to a USB drive.

> [card] [Install EVE-OS onto an Edge Device](https://zededa.mintlify.site/new-ui/infrastructure-services/eve-os-installation/install-eve-os.md)
>
> Install from the flashed USB drive.

> [card] [Onboard Nodes](https://zededa.mintlify.site/new-ui/infrastructure-services/nodes/onboard-nodes.md)
>
> Complete onboarding after installation.
