C
Docs

Quick Setup (Remote)

Access C3 from anywhere using ngrok (built-in) for secure remote connections.

Overview

Remote access allows you to connect to C3 from anywhere in the world. Using ngrok (built-in), cloudflare tunnels, VPN, etc., your local server is exposed through a secure HTTP(S) tunnel, making it accessible even when you're away from your home network.

When to Use Remote Access

  • Working from a coffee shop or co-working space
  • Traveling and need to access your dev machine
  • Your phone is on cellular data
  • Your network has firewall restrictions

Prerequisites

Before setting up remote access, you'll need:

Setup Steps

1

Get Your ngrok Auth Token

Log in to your ngrok dashboard and copy your auth token from the "Your Authtoken" section.

Open ngrok Dashboard →
2

Start C3 with ngrok

Start the server with your ngrok token and authentication credentials:

ccc --ngrok-token YOUR_NGROK_TOKEN \
    --username your_username \
    --password your_secure_password

The server will create a secure tunnel and display the public URL.

3

Note the Public URL

Once started, you'll see output like this:

✓ ngrok tunnel established
  Public URL: https://abc123.ngrok-free.app

  Scan the QR code or enter this URL in the C3 app
4

Connect from the App

In the C3 app, either scan the QR code or go to Settings → Add Server Profile and manually enter:

  • Server URL: Your ngrok URL (e.g., abc123.ngrok-free.app)
  • Username: The username you set
  • Password: The password you set
  • SSL: Enabled (toggle on)

Static Domain

By default, ngrok generates a random URL each time you start. However, ngrok provides one free static domain per account that never changes:

ccc --ngrok-token YOUR_TOKEN \
    --ngrok-domain your-custom-domain.ngrok-free.app \
    --username your_username \
    --password your_password

Benefits of Static Domain

  • No need to reconfigure the app when restarting the server
  • Easier to remember and share
  • Better for permanent setups

Environment Variables

Instead of passing tokens on the command line, you can use environment variables for cleaner commands:

export CCC_NGROK_TOKEN=your_token
export CCC_NGROK_DOMAIN=your-domain.ngrok-free.app
export CCC_USERNAME=your_username
export CCC_PASSWORD=your_password

ccc

Security Considerations

When exposing C3 to the internet, keep these security practices in mind:

Use Strong Passwords

Choose a password that's at least 12 characters with a mix of letters, numbers, and symbols. Avoid common words or patterns.

Rotate Credentials Regularly

Consider changing your username and password periodically, especially if you suspect they may have been compromised.

Monitor Active Sessions

Keep an eye on the server logs for unexpected connection attempts. C3 logs all authentication attempts and can help identify suspicious activity.

Public WiFi Warning

While ngrok uses HTTPS encryption, be cautious when using C3 on public WiFi networks. Consider using a VPN for an additional layer of security.

Firewall and Rate Limiting

C3 includes built-in rate limiting and can block IPs after multiple failed authentication attempts. This helps protect against brute-force attacks.