Files
proxmox/reports/VMID2400_ORIGIN_CERT_INSTALLED.md
defiQUG cb47cce074 Complete markdown files cleanup and organization
- Organized 252 files across project
- Root directory: 187 → 2 files (98.9% reduction)
- Moved configuration guides to docs/04-configuration/
- Moved troubleshooting guides to docs/09-troubleshooting/
- Moved quick start guides to docs/01-getting-started/
- Moved reports to reports/ directory
- Archived temporary files
- Generated comprehensive reports and documentation
- Created maintenance scripts and guides

All files organized according to established standards.
2026-01-06 01:46:25 -08:00

3.9 KiB

VMID 2400 - Cloudflare Origin Certificate Installation Complete

Date: 2026-01-02
Status: CERTIFICATE INSTALLED AND CONFIGURED


Completed

  • Cloudflare Origin Certificate installed: /etc/nginx/ssl/cloudflare-origin.crt
  • Private Key installed: /etc/nginx/ssl/cloudflare-origin.key
  • Certificate permissions set (644 for cert, 600 for key)
  • Certificate verified - Valid for *.defi-oracle.io and defi-oracle.io
  • Nginx installed and configured
  • Nginx configuration created: /etc/nginx/sites-available/rpc-thirdweb
  • Site enabled and Nginx reloaded

Certificate Details

Issuer: CloudFlare Origin SSL Certificate Authority
Subject: CloudFlare Origin Certificate
Valid For:

  • *.defi-oracle.io
  • defi-oracle.io

Expiration: January 29, 2040 (14 years)


Nginx Configuration

Configuration File: /etc/nginx/sites-available/rpc-thirdweb
Enabled: /etc/nginx/sites-enabled/rpc-thirdweb

Endpoints Configured:

  • HTTP RPC: https://rpc.public-0138.defi-oracle.io:443http://127.0.0.1:8545
  • WebSocket RPC: https://rpc.public-0138.defi-oracle.io:8443http://127.0.0.1:8546
  • Health Check: https://rpc.public-0138.defi-oracle.io/health

Next Steps

1. Update Cloudflare Tunnel Route (Optional)

Since you now have SSL configured, you can optionally update the tunnel route to use HTTPS:

Current (HTTP - works fine):

URL: http://127.0.0.1:8545

Optional (HTTPS - if you want end-to-end encryption):

URL: https://127.0.0.1:443

Note: With Cloudflare Origin Certificate, HTTP is fine since Cloudflare validates the origin. HTTPS is optional but provides additional encryption.

2. Test the Endpoint

# Test health endpoint
curl -k https://rpc.public-0138.defi-oracle.io/health

# Test RPC endpoint
curl -k https://rpc.public-0138.defi-oracle.io \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

3. Verify SSL Certificate

# Check certificate from external
openssl s_client -connect rpc.public-0138.defi-oracle.io:443 -servername rpc.public-0138.defi-oracle.io < /dev/null 2>/dev/null | openssl x509 -noout -text | grep -E 'Subject:|Issuer:|DNS:'

Security Notes

Origin Certificate: Validates that Cloudflare is connecting to the correct origin
Private Key: Securely stored with 600 permissions (owner read/write only)
SSL/TLS: Encrypted connection between Cloudflare and origin
Real IP: Configured to trust Cloudflare IPs for accurate client IPs


File Locations

File Path Permissions
Certificate /etc/nginx/ssl/cloudflare-origin.crt 644 (readable)
Private Key /etc/nginx/ssl/cloudflare-origin.key 600 (owner only)
Nginx Config /etc/nginx/sites-available/rpc-thirdweb 644
Enabled Site /etc/nginx/sites-enabled/rpc-thirdweb Symlink

Troubleshooting

Certificate Issues

# Verify certificate
ssh root@192.168.11.10 "pct exec 2400 -- openssl x509 -in /etc/nginx/ssl/cloudflare-origin.crt -text -noout"

# Check certificate expiration
ssh root@192.168.11.10 "pct exec 2400 -- openssl x509 -in /etc/nginx/ssl/cloudflare-origin.crt -noout -dates"

Nginx Issues

# Test configuration
ssh root@192.168.11.10 "pct exec 2400 -- nginx -t"

# Check Nginx status
ssh root@192.168.11.10 "pct exec 2400 -- systemctl status nginx"

# View Nginx logs
ssh root@192.168.11.10 "pct exec 2400 -- tail -f /var/log/nginx/rpc-thirdweb-error.log"

SSL Connection Issues

# Test SSL locally
ssh root@192.168.11.10 "pct exec 2400 -- curl -k https://127.0.0.1/health"

# Test from external (after DNS is configured)
curl -k https://rpc.public-0138.defi-oracle.io/health

Last Updated: 2026-01-02
Status: READY - Certificate installed, Nginx configured