How to Backup Any Lorex Camera or NVR to DigitalOcean Spaces

Universal FTP offsite backup for Lorex 2K/4K IP cameras and Fusion recorders. Follow our step-by-step setup guide below to stream footage directly into AWS S3, Cloudflare R2, or Backblaze B2 via FTP, FTPS, or SFTP with Rilavek as the pipe, zero on-prem NVR or bridge hardware required.

Other Lorex Cameras & NVRs - Product View
Zero NVR Vulnerability

Your Lorex camera or NVR uploads footage offsite in real time. Intruders cannot steal or destroy evidence by seizing on-prem recorder hardware.

S3-Native Retention

Store Lorex camera and NVR recordings on your own terms. Apply automated bucket lifecycle rules to roll over or archive clips after 30, 90, or 365 days.

Direct Streaming Bridge

Rilavek ingests native FTP, FTPS, and SFTP uploads from your Lorex hardware and streams them straight into multipart S3 PUTs with zero disk writes.

Lorex Cameras & NVRs
Lorex Cameras & NVRs
FTP/FTPS/SFTP
Rilavek
Rilavek Bridge
S3 API
DigitalOcean Spaces
DigitalOcean Spaces

Step-by-Step Setup Guide for Lorex Cameras & NVRs

Follow these 8 steps to select your cloud provider, provision your object storage, configure Rilavek’s Data Store, Sender, and Ingestion Pipe, enter your camera firmware settings, verify ingestion, and establish automated S3 retention rules.

01

Select Your Cloud Storage Provider

Choose where you want to store your Lorex surveillance footage. Selecting a provider customizes the bucket setup steps, endpoint URLs, and API key instructions in Step 2.

02

Set Up Your DigitalOcean Spaces Bucket & Generate API Keys

Configure your target bucket and API credentials inside DigitalOcean Spaces so Rilavek can stream motion clips and continuous video directly into your storage.

1

Create a Spaces Bucket in Your Preferred Region

In the DigitalOcean Control Panel, click Spaces Object Storage in the left menu, then select Create Bucket in the top right. Choose your preferred datacenter region (e.g. nyc3, ams3, or sfo3), keep Standard Storage selected, and enter a unique bucket name. Ensure file listing is kept Restricted (Private).

2

Generate a Scoped Access Key Pair

In the Spaces Object Storage page, click the Access Keys tab, then click Create Access Key . Select your access scope (choose Limited access with Read/Write/Delete for your surveillance bucket, or Full access), give your key a name (such as rilavek-other), and confirm creation.

3

Record Your S3 Endpoint and API Credentials

One-Time Secret Display:DigitalOcean reveals your Secret Key only at creation time. Copy both your Access Key and Secret Key immediately before closing the dialog.

Your S3 endpoint will follow the regional format: https://<region>.digitaloceanspaces.com.

03

Add Your Data Store in Rilavek

In your Rilavek dashboard, navigate to Data Stores > New Data Store, select your provider, and enter your S3 credentials. Rilavek verifies the connection with an automated write-probe before saving.

Grant minimal S3 permissions only.Rilavek needs minimal, write-focused actions and nothing more.
Rilavek Dashboard · Data Stores > New S3 Data Store

Add New Data Store

S3 Compatible
Lorex Surveillance Storage
https://<region>.digitaloceanspaces.com
AKIAIOSFODNN7EXAMPLE
••••••••••••••••••••••••••••••••
How to create →
cctv-lorex-recordings
nyc3
Automatically executes multipart write-probe test before saving.Save Data Store
Fig 1: Add New S3 Data Store configuration in the Rilavek console.
04

Create a Camera Sender in Rilavek

Go to Senders in the Rilavek sidebar and click New Sender. A Sender represents the hardware identity of your Other Lorex Cameras & NVRs and generates a dedicated device-level password.

Rilavek Dashboard · Senders > Create New Sender Modal

Create New Sender

Other Lorex Cameras & NVRs
cam_otherlorexmodel

Must be at least 6 characters, lowercase, start with a letter/underscore, and contain only letters, numbers, hyphens, or underscores.

security@lorex-cctv.local

Secure credentials will be automatically generated for this sender.

CancelCreate Sender
Fig 2: Create New Sender modal assigning dedicated camera hardware identity.
Rilavek Dashboard · Senders > Generated Device Credentials

Sender Credentials

Make sure to copy your password now as you will not be able to see it again.
Username
cam_otherlorexmodel
PasswordSave for Step 6
••••••••••••
Done
Fig 3: Generated device-level username and one-time password for camera authentication.
05

Create & Configure Your Ingestion Pipe in Rilavek

Go to Pipes in the sidebar and click Create Pipe. Configure the 4 core sections of your pipeline: General (Pipe ID), Inputs (FTP), Access Control (Sender permission), and Destinations (Data Store).

1General Settings (Pipe ID)

Every pipeline in Rilavek is assigned an immutable, globally unique Pipe ID (e.g. p_cctv9x). This ID acts as an isolated ingestion channel that segregates audit logs, real-time transfer metrics, and storage routing. It also forms the second half of your scoped camera FTP login username (username@p_cctv9x).

Rilavek Dashboard · Pipes > Pipeline Settings > General

Pipe ID

p_cctv9x

Use this ID to identify this pipe in logs. Combine it with the sender username for complete authentication details.

Fig 4: General settings displaying the unique Pipe ID used for authentication.

2Inputs (FTP / FTPS Ingress)

The Inputs configuration defines how camera files enter Rilavek. Enabling the FTP Ingress input provides a persistent, high-availability ingestion server (ftp.rilavek.com) compatible with active and passive FTP modes, explicit TLS negotiation, and standard CCTV firmware video push routines.

Rilavek Dashboard · Pipes > Pipeline Settings > Inputs

Inputs

Enable inputs to receive data.

1 input enabled
FTP
SFTP

FTP Ingress

Endpoint enabled. Connect using your Sender credentials.

Host
ftp.rilavek.com
Port
21
Username
<sender>@p_cctv9x

Example: cam_otherlorexmodel@p_cctv9x

Password
••••••••••••

Use the password configured for the specific Sender.

Fig 5: Enabling the FTP Ingress endpoint for incoming surveillance video streams.

3Access Control (Sender Authorization)

Access Control prevents unauthorized uploads by enforcing a zero-trust boundary on the ingestion pipe. Only explicitly authorized Senders (such as Other Lorex Cameras & NVRs) can authenticate and stream video into this pipe. Any requests with unassigned credentials are rejected at the network edge.

Rilavek Dashboard · Pipes > Pipeline Settings > Access Control

Access Control

Restricts who can upload to this pipe.

1 sender allowed
1Individuals
Groups

Individual Senders

Grant or revoke pipe access for specific individual senders.

Other Lorex Cameras & NVRs
cam_otherlorexmodel@p_cctv9x
Fig 6: Restricting pipeline ingress access to your authorized camera Sender.

4Destinations (Target Cloud Storage Routing)

The Destinations section routes video clips to your target cloud storage provider. Linking your configured Data Store routes all received footage directly to your DigitalOcean Spaces bucket (cctv-lorex-recordings). Video files are committed on-the-fly via parallel multipart S3 PUTs without intermediate disk caching.

Rilavek Dashboard · Pipes > Pipeline Settings > Destinations

Destinations

This is where we send your files to.

1 destination added
Lorex Storage (DigitalOcean Spaces)
Primary
Target Bucketcctv-lorex-recordingsProviderDigitalOcean SpacesStatusActive (Ready for camera ingress)
Fig 7: Routing incoming camera footage directly into your S3-compatible cloud bucket.
Camera Connection Parameters (Enter in Step 6):Reference Values
Server Hostftp.rilavek.com
Port21
Usernamecam_otherlorexmodel@p_cctv9x
06

Configure FTP, Motion Detection & Linkage in Generic Camera Firmware

Open your camera's web configuration portal in your browser at its local LAN IP address and configure the universal FTP and event settings below:

Step 6AConfigure FTP Streaming Credentials

Click Network > FTP Settings (or Network > Advanced > FTP).

Turn on 'Enable FTP Upload', then enter your Rilavek Regional Gateway server (ftp.rilavek.com), port 21, scoped username (username@pipeId), and device password as indicated by callouts (1) and (2). Ensure Passive Mode (PASV) is checked (3) for seamless firewall traversal, then click 'Test FTP Connection' (4) to verify.

CCTV / IP Camera Web InterfaceLIVE
IP: 192.168.1.100 · ONVIF Profile S/G/T · RFC 959 FTP / RFC 4217 FTPS / SFTP

Note on Camera Firmware UIs: Specific camera models (such as Uniview, Hanwha Vision, Ubiquiti UniFi, Bosch, Vivotek, TP-Link, Sunba, Escam, etc.) feature varying menu layouts, but all share the same universal configuration concepts shown below: enter your FTP server credentials with Passive Mode (PASV), define a motion trigger zone, and enable “Upload to FTP” as the action.

FTP, FTPS & SFTP Upload Settings

Configure cloud storage streaming credentials to upload motion video clips and snapshots directly to your S3 bucket.

Enable FTP UploadActivates camera outbound transmission to the remote FTP pipe
Rilavek regional ingestion host
Port 21 (FTP/FTPS) or 2222 (SFTP)
Scoped sender identity: cam_generic@p_cctv9x
Assigned device sender token
Target prefix in your S3 storage bucket
Enabled (PASV)
Essential for NAT firewall traversal
4Test FTP Connection
Save Configuration
FTP Test Succeeded: Connected to ftp.rilavek.com:21. Ingestion pipe and destination S3 bucket are active and accepting streams.

Step 6BConfigure Motion Detection Zone & Sensitivity

Click Event > Motion Detection (or Video Analytics).

Turn on 'Enable Motion Detection' and adjust the detection grid over your active surveillance field (1). Set sensitivity to approximately 75% (2) and enable smart Human/Vehicle AI filtering if supported by your camera hardware to minimize false alarms.

CCTV / IP Camera Web InterfaceLIVE
IP: 192.168.1.100 · ONVIF Profile S/G/T · RFC 959 FTP / RFC 4217 FTPS / SFTP

Note on Camera Firmware UIs: Specific camera models (such as Uniview, Hanwha Vision, Ubiquiti UniFi, Bosch, Vivotek, TP-Link, Sunba, Escam, etc.) feature varying menu layouts, but all share the same universal configuration concepts shown below: enter your FTP server credentials with Passive Mode (PASV), define a motion trigger zone, and enable “Upload to FTP” as the action.

Motion Detection & Event Zone Setup

Define the motion detection area and AI sensitivity filters so the camera uploads video only when genuine activity occurs.

Detection Area Grid1
CAM 01 · FRONT ENTRANCE
ACTIVE DETECTION ZONE
Motion Grid Active (80% Area Covered)
Enable Motion Detection
Sensitivity2
Low75% (Recommended)High
Smart Target Filtering
Human Body Detection
Vehicle Detection
Other Motion (Leaves, Rain)

Step 6CConfigure Linkage Action (Upload Video Clip to FTP)

Click Action > Upload Linkage (or Event > Linkage Action).

Select 'Upload Video Recording to FTP / Cloud' (1) as the primary trigger action. Set a 5-second pre-recording buffer (2) and 30-second post-recording buffer so complete event clips are transmitted to your S3 bucket upon motion detection.

CCTV / IP Camera Web InterfaceLIVE
IP: 192.168.1.100 · ONVIF Profile S/G/T · RFC 959 FTP / RFC 4217 FTPS / SFTP

Note on Camera Firmware UIs: Specific camera models (such as Uniview, Hanwha Vision, Ubiquiti UniFi, Bosch, Vivotek, TP-Link, Sunba, Escam, etc.) feature varying menu layouts, but all share the same universal configuration concepts shown below: enter your FTP server credentials with Passive Mode (PASV), define a motion trigger zone, and enable “Upload to FTP” as the action.

Event Linkage & Upload Actions

Instruct the camera firmware what action to take upon motion trigger. Enabling “Upload to FTP” routes video clips directly to Rilavek.

Select Trigger Actions:
Upload Video Recording to FTP / CloudPipes H.264/H.265 video chunks directly to Rilavek > S3
1
Upload Snapshot (JPEG) to FTPTransmits thumbnail snapshot image upon event start
Send Email Alert
Trigger Audio Alarm / Siren
Buffers 5s of footage before motion trigger
Continues recording after motion stops
Splits recordings into manageable video chunks for efficient S3 multipart PUTs
Apply Linkage Rules
07

Verify Ingestion

Click Test in your camera's FTP settings or trigger a test recording transfer. In your Rilavek dashboard, navigate to Pipes > your pipeline > Transfers tab to inspect incoming files as video clips stream into DigitalOcean Spaces.

Rilavek Dashboard · Pipes > Transfers
Overview
Transfers
Refresh
FILESENDERSIZEDATESTATE
lorex/other/2026-09-10/ch01_143000.mp4
cam_otherlorexmodel18.4 MBSep 10, 14:30
Success
lorex/other/2026-09-10/ch01_142500.mp4
cam_otherlorexmodel21.2 MBSep 10, 14:25
Success
lorex/other/2026-09-10/ch01_142000.mp4
cam_otherlorexmodel19.7 MBSep 10, 14:20
Success
Showing 3 of 3 transfers
Fig 8: Transfers log confirming incoming camera recordings streaming directly into cloud storage.
Direct S3 Ingest VerifiedIncoming surveillance streams are committed on-the-fly directly to your DigitalOcean Spaces bucket with zero local buffering and no intermediate disk storage.
08

Configure DigitalOcean Spaces Bucket Lifecycle & Retention Rules (Optional)

Optional: Prevent runaway storage costs by configuring automated bucket expiration rules. Select your retention window below and apply the generated JSON lifecycle policy or CLI command to your DigitalOcean Spaces bucket. If you prefer to keep footage indefinitely or purge clips manually, feel free to skip this step.

DigitalOcean Spaces Retention Window

Select timeline to generate policy

Applying lifecycle expiration is optional. If you want automated retention, apply this configuration to your DigitalOcean Spaces bucket to automatically purge or transition clips older than 30 days, preventing runaway storage bills.

cctv-lifecycle.json (30-day retention for /lorex-camera/)
{
  "Rules": [
    {
      "ID": "lorex-other-cctv-retention-policy",
      "Status": "Enabled",
      "Filter": {
        "Prefix": "lorex-camera/"
      },
      "Expiration": {
        "Days": 30
      }
    }
  ]
}
Apply via AWS / S3 CLI
aws s3api put-bucket-lifecycle-configuration \
  --bucket my-cctv-surveillance-bucket \
  --lifecycle-configuration file://cctv-lifecycle.json

DigitalOcean Spaces vs other cloud storage for Lorex Cameras & NVRs

How DigitalOcean Spaces compares with the other providers Rilavek can stream into.

ProviderBilling modelEgress feesRetention control
Cloudflare R2
Usage-based (storage + operations)Free egressS3 Lifecycle expiration & transitions
Backblaze B2
Usage-based (per GB stored)Free up to 3x stored data/day, then meteredS3 Lifecycle expiration
Wasabi Hot Cloud
Flat-rate (no egress/API fees; minimum storage duration)Free egressS3 Lifecycle + 90-day minimum storage duration
IDrive e2
Low usage-based (per GB stored)Free egressS3 Lifecycle expiration
DigitalOcean Spaces
Flat base (storage + egress allowance), then per-GBIncluded allowance, then meteredS3 Lifecycle expiration
AWS S3
Usage-based (storage + requests + egress)Metered per GBS3 Lifecycle expiration, transitions & Glacier archiving
Self-Hosted S3
Self-hosted (your hardware/power)Your own networkDepends on your S3 server's lifecycle support

Frequently Asked Questions about Lorex Other Lorex Model Cloud Storage

How do Lorex cameras and NVRs stream recordings to cloud storage?

All Lorex IP cameras and NVRs feature native FTP or SFTP upload capabilities in their firmware. They stream channel recordings directly to Rilavek on port 21, piping video clips into your private S3 bucket in real time for offsite backup without requiring proprietary cloud subscriptions.

Which cloud storage providers work with Lorex hardware?

Rilavek supports any provider with an S3-compatible API, including Cloudflare R2, Backblaze B2, AWS S3, Wasabi, IDrive e2, and self-hosted MinIO or RustFS instances.

How does video retention work?

You define retention policies (such as 30, 60, or 90 days) directly on your S3 bucket using lifecycle expiration rules. Your recordings are under your 100% control with zero vendor lock-in.

Stream Any Lorex Camera or NVR to Cloud Storage

Create your free Rilavek ingestion pipe in seconds. No NVR hardware, no proprietary camera cloud subscriptions, and 100% data ownership in your private storage bucket.

Free plan includes 10GB of transfer. No credit card required.