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.
This commit is contained in:
@@ -0,0 +1,214 @@
|
||||
# Central Nginx Routing Setup - Complete
|
||||
|
||||
**Last Updated:** 2025-12-27
|
||||
**Document Version:** 1.0
|
||||
**Status:** Active Documentation
|
||||
|
||||
---
|
||||
|
||||
## Architecture
|
||||
|
||||
```
|
||||
Internet → Cloudflare → cloudflared (VMID 102) → Nginx Proxy Manager (VMID 105:80) → Internal Services
|
||||
```
|
||||
|
||||
All Cloudflare tunnel traffic now routes through a single Nginx instance (VMID 105) which then routes to internal services based on hostname.
|
||||
|
||||
---
|
||||
|
||||
## Configuration Complete
|
||||
|
||||
### ✅ Nginx Proxy Manager (VMID 105)
|
||||
|
||||
**IP Address**: `192.168.11.21`
|
||||
**Configuration File**: `/data/nginx/custom/http.conf`
|
||||
**Status**: Active and running
|
||||
|
||||
**Services Configured**:
|
||||
|
||||
| Domain | Routes To | Service IP | Service Port |
|
||||
|--------|-----------|------------|--------------|
|
||||
| `explorer.d-bis.org` | `http://192.168.11.140:80` | 192.168.11.140 | 80 |
|
||||
| `rpc-http-pub.d-bis.org` | `https://192.168.11.252:443` | 192.168.11.252 | 443 |
|
||||
| `rpc-ws-pub.d-bis.org` | `https://192.168.11.252:443` | 192.168.11.252 | 443 |
|
||||
| `rpc-http-prv.d-bis.org` | `https://192.168.11.251:443` | 192.168.11.251 | 443 |
|
||||
| `rpc-ws-prv.d-bis.org` | `https://192.168.11.251:443` | 192.168.11.251 | 443 |
|
||||
| `dbis-admin.d-bis.org` | `http://192.168.11.130:80` | 192.168.11.130 | 80 |
|
||||
| `dbis-api.d-bis.org` | `http://192.168.11.290:3000` | 192.168.11.290 | 3000 |
|
||||
| `dbis-api-2.d-bis.org` | `http://192.168.11.291:3000` | 192.168.11.291 | 3000 |
|
||||
| `mim4u.org` | `http://192.168.11.19:80` | 192.168.11.19 | 80 |
|
||||
| `www.mim4u.org` | `http://192.168.11.19:80` | 192.168.11.19 | 80 |
|
||||
|
||||
---
|
||||
|
||||
## Cloudflare Tunnel Configuration
|
||||
|
||||
### ⚠️ Action Required: Update Cloudflare Dashboard
|
||||
|
||||
Since the tunnel uses token-based configuration, you need to update the tunnel ingress rules in the Cloudflare dashboard:
|
||||
|
||||
1. Go to: https://one.dash.cloudflare.com/
|
||||
2. Navigate to: **Zero Trust** → **Networks** → **Tunnels**
|
||||
3. Select your tunnel (ID: `b02fe1fe-cb7d-484e-909b-7cc41298ebe8`)
|
||||
4. Click **Configure** → **Public Hostnames**
|
||||
5. Update all hostnames to route to: `http://192.168.11.21:80`
|
||||
|
||||
### Required Tunnel Ingress Rules
|
||||
|
||||
All hostnames should route to the central Nginx:
|
||||
|
||||
```yaml
|
||||
ingress:
|
||||
# Explorer
|
||||
- hostname: explorer.d-bis.org
|
||||
service: http://192.168.11.21:80
|
||||
|
||||
# RPC Public
|
||||
- hostname: rpc-http-pub.d-bis.org
|
||||
service: http://192.168.11.21:80
|
||||
|
||||
- hostname: rpc-ws-pub.d-bis.org
|
||||
service: http://192.168.11.21:80
|
||||
|
||||
# RPC Private
|
||||
- hostname: rpc-http-prv.d-bis.org
|
||||
service: http://192.168.11.21:80
|
||||
|
||||
- hostname: rpc-ws-prv.d-bis.org
|
||||
service: http://192.168.11.21:80
|
||||
|
||||
# DBIS Services
|
||||
- hostname: dbis-admin.d-bis.org
|
||||
service: http://192.168.11.21:80
|
||||
|
||||
- hostname: dbis-api.d-bis.org
|
||||
service: http://192.168.11.21:80
|
||||
|
||||
- hostname: dbis-api-2.d-bis.org
|
||||
service: http://192.168.11.21:80
|
||||
|
||||
# Miracles In Motion
|
||||
- hostname: mim4u.org
|
||||
service: http://192.168.11.21:80
|
||||
|
||||
- hostname: www.mim4u.org
|
||||
service: http://192.168.11.21:80
|
||||
|
||||
# Catch-all
|
||||
- service: http_status:404
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Testing
|
||||
|
||||
### Test Nginx Routing Locally
|
||||
|
||||
```bash
|
||||
# Test Explorer
|
||||
curl -H "Host: explorer.d-bis.org" http://192.168.11.21/
|
||||
|
||||
# Test RPC Public HTTP
|
||||
curl -H "Host: rpc-http-pub.d-bis.org" http://192.168.11.21/ \
|
||||
-X POST -H "Content-Type: application/json" \
|
||||
-d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
|
||||
```
|
||||
|
||||
### Test Through Cloudflare (After Tunnel Update)
|
||||
|
||||
```bash
|
||||
# Test Explorer
|
||||
curl https://explorer.d-bis.org/
|
||||
|
||||
# Test RPC Public
|
||||
curl -X POST https://rpc-http-pub.d-bis.org \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Benefits
|
||||
|
||||
1. **Single Point of Configuration**: All routing logic in one place (VMID 105)
|
||||
2. **Simplified Management**: No need to update multiple Nginx instances
|
||||
3. **Centralized Logging**: All traffic logs in one location
|
||||
4. **Easier Troubleshooting**: Single point to check routing issues
|
||||
5. **Consistent Configuration**: All services follow the same routing pattern
|
||||
|
||||
---
|
||||
|
||||
## Maintenance
|
||||
|
||||
### View Nginx Configuration
|
||||
|
||||
```bash
|
||||
ssh root@192.168.11.12 "pct exec 105 -- cat /data/nginx/custom/http.conf"
|
||||
```
|
||||
|
||||
### Reload Nginx Configuration
|
||||
|
||||
```bash
|
||||
ssh root@192.168.11.12 "pct exec 105 -- systemctl restart npm"
|
||||
```
|
||||
|
||||
### Add New Service
|
||||
|
||||
1. Edit `/data/nginx/custom/http.conf` on VMID 105
|
||||
2. Add new `server` block with appropriate `server_name` and `proxy_pass`
|
||||
3. Test: `nginx -t`
|
||||
4. Reload: `systemctl restart npm`
|
||||
5. Update Cloudflare tunnel to route new hostname to `http://192.168.11.21:80`
|
||||
|
||||
---
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Service Not Routing Correctly
|
||||
|
||||
1. Check Nginx configuration: `pct exec 105 -- nginx -t`
|
||||
2. Check service status: `pct exec 105 -- systemctl status npm`
|
||||
3. Check Nginx logs: `pct exec 105 -- tail -f /data/logs/fallback_error.log`
|
||||
4. Verify internal service is accessible: `curl http://<service-ip>:<port>`
|
||||
|
||||
### Cloudflare Tunnel Not Connecting
|
||||
|
||||
1. Check tunnel status: `pct exec 102 -- systemctl status cloudflared`
|
||||
2. Verify tunnel configuration in Cloudflare dashboard
|
||||
3. Check tunnel logs: `pct exec 102 -- journalctl -u cloudflared -n 50`
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
1. ✅ Nginx configuration deployed
|
||||
2. ⏳ **Update Cloudflare tunnel configuration** (see above)
|
||||
3. ⏳ Test all endpoints after tunnel update
|
||||
4. ⏳ Monitor logs for any routing issues
|
||||
|
||||
---
|
||||
|
||||
**Configuration File Location**: `/data/nginx/custom/http.conf` on VMID 105
|
||||
|
||||
---
|
||||
|
||||
## Related Documentation
|
||||
|
||||
> **Master Reference:** For a consolidated view of all Cloudflare routing, see **[CLOUDFLARE_ROUTING_MASTER.md](CLOUDFLARE_ROUTING_MASTER.md)** ⭐⭐⭐.
|
||||
|
||||
### Setup Guides
|
||||
- **[../04-configuration/cloudflare/CLOUDFLARE_ZERO_TRUST_GUIDE.md](../04-configuration/cloudflare/CLOUDFLARE_ZERO_TRUST_GUIDE.md)** ⭐⭐⭐ - Complete Cloudflare Zero Trust setup
|
||||
- **[../04-configuration/cloudflare/CLOUDFLARE_TUNNEL_INSTALLATION.md](../04-configuration/cloudflare/CLOUDFLARE_TUNNEL_INSTALLATION.md)** ⭐⭐ - Tunnel installation procedures
|
||||
- **[../04-configuration/cloudflare/CLOUDFLARE_DNS_TO_CONTAINERS.md](../04-configuration/cloudflare/CLOUDFLARE_DNS_TO_CONTAINERS.md)** ⭐⭐⭐ - DNS mapping to containers
|
||||
|
||||
### Architecture Documents
|
||||
- **[CLOUDFLARE_TUNNEL_ROUTING_ARCHITECTURE.md](CLOUDFLARE_TUNNEL_ROUTING_ARCHITECTURE.md)** ⭐⭐⭐ - Complete Cloudflare tunnel routing architecture
|
||||
- **[CLOUDFLARE_NGINX_INTEGRATION.md](CLOUDFLARE_NGINX_INTEGRATION.md)** ⭐⭐ - Cloudflare + NGINX integration
|
||||
- **[NGINX_ARCHITECTURE_RPC.md](NGINX_ARCHITECTURE_RPC.md)** ⭐⭐ - NGINX RPC architecture
|
||||
|
||||
---
|
||||
|
||||
**Last Updated:** 2025-12-27
|
||||
**Document Version:** 1.0
|
||||
**Review Cycle:** Quarterly
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
# Cloudflare Tunnel Configuration Check
|
||||
# VMID 102 (cloudflared) - IP changed: 192.168.11.9 → 192.168.11.34
|
||||
|
||||
The cloudflared container itself doesn't need config changes (it's the tunnel endpoint).
|
||||
However, check:
|
||||
|
||||
1. Cloudflare Dashboard Tunnel Configuration:
|
||||
- If any ingress rules reference 192.168.11.9 directly, update to 192.168.11.34
|
||||
- Most likely, routes go to Nginx Proxy Manager (192.168.11.26), which is correct
|
||||
|
||||
2. Internal Service Routes:
|
||||
- If cloudflared routes directly to services that changed IPs, update those routes
|
||||
- Check tunnel config files in VMID 102 container
|
||||
|
||||
To check:
|
||||
ssh root@192.168.11.12 "pct exec 102 -- cat /etc/cloudflared/config.yml"
|
||||
@@ -0,0 +1,12 @@
|
||||
# Nginx Proxy Manager Routes That May Need Updates
|
||||
# Check these routes in the Nginx Proxy Manager web UI (VMID 105: http://192.168.11.26:81)
|
||||
|
||||
Routes that may reference changed IPs:
|
||||
- omada routes: Check if any route references 192.168.11.20 → Update to 192.168.11.30
|
||||
- gitea routes: Check if any route references 192.168.11.18 → Update to 192.168.11.31
|
||||
- firefly routes: Check if any route references 192.168.11.7 → Update to 192.168.11.35
|
||||
|
||||
To update:
|
||||
1. Access Nginx Proxy Manager: http://192.168.11.26:81
|
||||
2. Check each Proxy Host configuration
|
||||
3. Update Forward Hostname/IP if it references old IPs
|
||||
273
backups/dependency_updates_20260105_153458/setup-central-nginx-routing.sh.bak
Executable file
273
backups/dependency_updates_20260105_153458/setup-central-nginx-routing.sh.bak
Executable file
@@ -0,0 +1,273 @@
|
||||
#!/bin/bash
|
||||
# Setup Central Nginx Routing for All Services
|
||||
# Routes all Cloudflare tunnel traffic through VMID 105 to internal services
|
||||
|
||||
set -e
|
||||
|
||||
NGINX_VMID=105
|
||||
NGINX_IP=192.168.11.21
|
||||
PROXMOX_HOST=192.168.11.12
|
||||
|
||||
# Colors
|
||||
GREEN='\033[0;32m'
|
||||
BLUE='\033[0;34m'
|
||||
YELLOW='\033[1;33m'
|
||||
RED='\033[0;31m'
|
||||
NC='\033[0m'
|
||||
|
||||
log_info() { echo -e "${BLUE}[INFO]${NC} $1"; }
|
||||
log_success() { echo -e "${GREEN}[✓]${NC} $1"; }
|
||||
log_warn() { echo -e "${YELLOW}[⚠]${NC} $1"; }
|
||||
log_error() { echo -e "${RED}[✗]${NC} $1"; }
|
||||
|
||||
echo ""
|
||||
log_info "═══════════════════════════════════════════════════════════"
|
||||
log_info " SETTING UP CENTRAL NGINX ROUTING (VMID $NGINX_VMID)"
|
||||
log_info "═══════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
|
||||
# Check container status
|
||||
log_info "Checking container status..."
|
||||
CONTAINER_STATUS=$(ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no root@${PROXMOX_HOST} \
|
||||
"pct status $NGINX_VMID 2>/dev/null | awk '{print \$2}'" || echo "unknown")
|
||||
|
||||
if [ "$CONTAINER_STATUS" != "running" ]; then
|
||||
log_error "Container $NGINX_VMID is not running (status: $CONTAINER_STATUS)"
|
||||
exit 1
|
||||
fi
|
||||
log_success "Container $NGINX_VMID is running"
|
||||
|
||||
# Check Nginx installation
|
||||
log_info "Checking Nginx installation..."
|
||||
if ! ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no root@${PROXMOX_HOST} \
|
||||
"pct exec $NGINX_VMID -- which nginx >/dev/null 2>&1"; then
|
||||
log_error "Nginx is not installed on VMID $NGINX_VMID"
|
||||
exit 1
|
||||
fi
|
||||
log_success "Nginx is installed"
|
||||
|
||||
# Create Nginx configuration
|
||||
log_info "Creating Nginx configuration..."
|
||||
|
||||
ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no root@${PROXMOX_HOST} \
|
||||
"pct exec $NGINX_VMID -- bash" << 'NGINX_EOF'
|
||||
cat > /etc/nginx/sites-available/all-services << 'CONFIG_EOF'
|
||||
# Central Nginx Configuration for All Services
|
||||
# VMID 105 - Routes all Cloudflare tunnel traffic to internal services
|
||||
# Generated: $(date)
|
||||
|
||||
# Explorer / Blockscout
|
||||
server {
|
||||
listen 80;
|
||||
server_name explorer.d-bis.org;
|
||||
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
# Increase timeouts for long-running requests
|
||||
proxy_connect_timeout 300s;
|
||||
proxy_send_timeout 300s;
|
||||
proxy_read_timeout 300s;
|
||||
|
||||
location / {
|
||||
proxy_pass http://192.168.11.140:80;
|
||||
}
|
||||
}
|
||||
|
||||
# RPC Public HTTP
|
||||
server {
|
||||
listen 80;
|
||||
server_name rpc-http-pub.d-bis.org;
|
||||
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
# Increase timeouts for RPC calls
|
||||
proxy_connect_timeout 300s;
|
||||
proxy_send_timeout 300s;
|
||||
proxy_read_timeout 300s;
|
||||
|
||||
location / {
|
||||
proxy_pass https://192.168.11.252:443;
|
||||
proxy_ssl_verify off;
|
||||
}
|
||||
}
|
||||
|
||||
# RPC Public WebSocket
|
||||
server {
|
||||
listen 80;
|
||||
server_name rpc-ws-pub.d-bis.org;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
# Increase timeouts for WebSocket connections
|
||||
proxy_connect_timeout 300s;
|
||||
proxy_send_timeout 300s;
|
||||
proxy_read_timeout 300s;
|
||||
|
||||
location / {
|
||||
proxy_pass https://192.168.11.252:443;
|
||||
proxy_ssl_verify off;
|
||||
}
|
||||
}
|
||||
|
||||
# RPC Private HTTP
|
||||
server {
|
||||
listen 80;
|
||||
server_name rpc-http-prv.d-bis.org;
|
||||
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
# Increase timeouts for RPC calls
|
||||
proxy_connect_timeout 300s;
|
||||
proxy_send_timeout 300s;
|
||||
proxy_read_timeout 300s;
|
||||
|
||||
location / {
|
||||
proxy_pass https://192.168.11.251:443;
|
||||
proxy_ssl_verify off;
|
||||
}
|
||||
}
|
||||
|
||||
# RPC Private WebSocket
|
||||
server {
|
||||
listen 80;
|
||||
server_name rpc-ws-prv.d-bis.org;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
# Increase timeouts for WebSocket connections
|
||||
proxy_connect_timeout 300s;
|
||||
proxy_send_timeout 300s;
|
||||
proxy_read_timeout 300s;
|
||||
|
||||
location / {
|
||||
proxy_pass https://192.168.11.251:443;
|
||||
proxy_ssl_verify off;
|
||||
}
|
||||
}
|
||||
|
||||
# DBIS Admin Frontend
|
||||
server {
|
||||
listen 80;
|
||||
server_name dbis-admin.d-bis.org;
|
||||
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
location / {
|
||||
proxy_pass http://192.168.11.130:80;
|
||||
}
|
||||
}
|
||||
|
||||
# DBIS API Primary
|
||||
server {
|
||||
listen 80;
|
||||
server_name dbis-api.d-bis.org;
|
||||
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
location / {
|
||||
proxy_pass http://192.168.11.290:3000;
|
||||
}
|
||||
}
|
||||
|
||||
# DBIS API Secondary
|
||||
server {
|
||||
listen 80;
|
||||
server_name dbis-api-2.d-bis.org;
|
||||
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
location / {
|
||||
proxy_pass http://192.168.11.291:3000;
|
||||
}
|
||||
}
|
||||
|
||||
# Miracles In Motion
|
||||
server {
|
||||
listen 80;
|
||||
server_name mim4u.org www.mim4u.org;
|
||||
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
location / {
|
||||
proxy_pass http://192.168.11.19:80;
|
||||
}
|
||||
}
|
||||
|
||||
# Default catch-all
|
||||
server {
|
||||
listen 80 default_server;
|
||||
server_name _;
|
||||
|
||||
location / {
|
||||
return 404 "Service not found for host: $host";
|
||||
}
|
||||
}
|
||||
CONFIG_EOF
|
||||
|
||||
# Enable the site
|
||||
log_info "Enabling Nginx site..."
|
||||
ln -sf /etc/nginx/sites-available/all-services /etc/nginx/sites-enabled/all-services
|
||||
|
||||
# Remove default site if it conflicts
|
||||
rm -f /etc/nginx/sites-enabled/default 2>/dev/null || true
|
||||
|
||||
# Test configuration
|
||||
log_info "Testing Nginx configuration..."
|
||||
if nginx -t 2>&1; then
|
||||
log_success "Nginx configuration is valid"
|
||||
else
|
||||
log_error "Nginx configuration test failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Reload Nginx
|
||||
log_info "Reloading Nginx..."
|
||||
systemctl reload nginx
|
||||
log_success "Nginx reloaded successfully"
|
||||
|
||||
NGINX_EOF
|
||||
|
||||
log_success "Nginx configuration deployed to VMID $NGINX_VMID"
|
||||
|
||||
echo ""
|
||||
log_info "═══════════════════════════════════════════════════════════"
|
||||
log_info " NGINX CONFIGURATION COMPLETE"
|
||||
log_info "═══════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
log_info "Next: Update Cloudflare tunnel to route all traffic to:"
|
||||
log_info " http://${NGINX_IP}:80"
|
||||
echo ""
|
||||
|
||||
12
backups/ip_conversion_20260105_143656/backup_summary.txt
Normal file
12
backups/ip_conversion_20260105_143656/backup_summary.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
Backup Summary
|
||||
Generated: Mon Jan 5 14:36:57 PST 2026
|
||||
|
||||
Total containers to convert: 0
|
||||
|
||||
Conversions:
|
||||
|
||||
|
||||
Backup files:
|
||||
1 config files backed up
|
||||
|
||||
Rollback script: /home/intlc/projects/proxmox/backups/ip_conversion_20260105_143656/rollback-ip-changes.sh
|
||||
9
backups/ip_conversion_20260105_143656/rollback-ip-changes.sh
Executable file
9
backups/ip_conversion_20260105_143656/rollback-ip-changes.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
# Rollback script for IP changes
|
||||
# Generated automatically - DO NOT EDIT MANUALLY
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
echo "=== Rolling Back IP Changes ==="
|
||||
echo ""
|
||||
|
||||
20
backups/ip_conversion_20260105_143709/backup_summary.txt
Normal file
20
backups/ip_conversion_20260105_143709/backup_summary.txt
Normal file
@@ -0,0 +1,20 @@
|
||||
Backup Summary
|
||||
Generated: Mon Jan 5 14:37:25 PST 2026
|
||||
|
||||
Total containers to convert: 9
|
||||
|
||||
Conversions:
|
||||
192.168.11.10:3501:192.168.11.14:192.168.11.28:ccip-monitor-1:ml110
|
||||
192.168.11.10:3500:192.168.11.15:192.168.11.29:oracle-publisher-1:ml110
|
||||
192.168.11.12:103:192.168.11.20:192.168.11.30:omada:r630-02
|
||||
192.168.11.12:104:192.168.11.18:192.168.11.31:gitea:r630-02
|
||||
192.168.11.12:100:192.168.11.4:192.168.11.32:proxmox-mail-gateway:r630-02
|
||||
192.168.11.12:101:192.168.11.6:192.168.11.33:proxmox-datacenter-manager:r630-02
|
||||
192.168.11.12:102:192.168.11.9:192.168.11.34:cloudflared:r630-02
|
||||
192.168.11.12:6200:192.168.11.7:192.168.11.35:firefly-1:r630-02
|
||||
192.168.11.12:7811:N/A:192.168.11.36:mim-api-1:r630-02
|
||||
|
||||
Backup files:
|
||||
9 config files backed up
|
||||
|
||||
Rollback script: /home/intlc/projects/proxmox/backups/ip_conversion_20260105_143709/rollback-ip-changes.sh
|
||||
12
backups/ip_conversion_20260105_143709/ml110_3500_config.txt
Normal file
12
backups/ip_conversion_20260105_143709/ml110_3500_config.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
arch: amd64
|
||||
cores: 2
|
||||
features: nesting=1,keyctl=1
|
||||
hostname: oracle-publisher-1
|
||||
memory: 2048
|
||||
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:AB:6C:CE,ip=dhcp,type=veth
|
||||
onboot: 1
|
||||
ostype: ubuntu
|
||||
rootfs: local-lvm:vm-3500-disk-0,size=20G
|
||||
swap: 512
|
||||
timezone: America/Los_Angeles
|
||||
unprivileged: 1
|
||||
12
backups/ip_conversion_20260105_143709/ml110_3501_config.txt
Normal file
12
backups/ip_conversion_20260105_143709/ml110_3501_config.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
arch: amd64
|
||||
cores: 2
|
||||
features: nesting=1,keyctl=1
|
||||
hostname: ccip-monitor-1
|
||||
memory: 2048
|
||||
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:EE:A6:EC,ip=dhcp,type=veth
|
||||
onboot: 1
|
||||
ostype: ubuntu
|
||||
rootfs: local-lvm:vm-3501-disk-0,size=20G
|
||||
swap: 512
|
||||
timezone: America/Los_Angeles
|
||||
unprivileged: 1
|
||||
14
backups/ip_conversion_20260105_143709/r630-02_100_config.txt
Normal file
14
backups/ip_conversion_20260105_143709/r630-02_100_config.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
arch: amd64
|
||||
cores: 2
|
||||
description: <div align='center'>%0A <a href='https%3A//Helper-Scripts.com' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width%3A81px;height%3A112px;'/>%0A </a>%0A%0A <h2 style='font-size%3A 24px; margin%3A 20px 0;'>Proxmox-Mail-Gateway LXC</h2>%0A%0A <p style='margin%3A 16px 0;'>%0A <a href='https%3A//ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//img.shields.io/badge/☕-Buy us a coffee-blue' alt='spend Coffee' />%0A </a>%0A </p>%0A%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-github fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>GitHub</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-comments fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/discussions' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Discussions</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-exclamation-circle fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/issues' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Issues</a>%0A </span>%0A</div>%0A
|
||||
features: nesting=1,keyctl=1
|
||||
hostname: proxmox-mail-gateway
|
||||
memory: 4096
|
||||
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:7D:3C:CD,ip=dhcp,type=veth
|
||||
onboot: 1
|
||||
ostype: debian
|
||||
rootfs: thin1-r630-02:vm-100-disk-0
|
||||
swap: 512
|
||||
tags: community-script;mail
|
||||
timezone: America/Los_Angeles
|
||||
unprivileged: 1
|
||||
14
backups/ip_conversion_20260105_143709/r630-02_101_config.txt
Normal file
14
backups/ip_conversion_20260105_143709/r630-02_101_config.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
arch: amd64
|
||||
cores: 2
|
||||
description: <div align='center'>%0A <a href='https%3A//Helper-Scripts.com' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width%3A81px;height%3A112px;'/>%0A </a>%0A%0A <h2 style='font-size%3A 24px; margin%3A 20px 0;'>Proxmox-Datacenter-Manager LXC</h2>%0A%0A <p style='margin%3A 16px 0;'>%0A <a href='https%3A//ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//img.shields.io/badge/☕-Buy us a coffee-blue' alt='spend Coffee' />%0A </a>%0A </p>%0A%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-github fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>GitHub</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-comments fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/discussions' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Discussions</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-exclamation-circle fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/issues' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Issues</a>%0A </span>%0A</div>%0A
|
||||
features: nesting=1,keyctl=1
|
||||
hostname: proxmox-datacenter-manager
|
||||
memory: 2048
|
||||
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:F8:94:5E,ip=dhcp,type=veth
|
||||
onboot: 1
|
||||
ostype: debian
|
||||
rootfs: thin1-r630-02:vm-101-disk-0
|
||||
swap: 512
|
||||
tags: community-script;datacenter
|
||||
timezone: America/Los_Angeles
|
||||
unprivileged: 1
|
||||
14
backups/ip_conversion_20260105_143709/r630-02_102_config.txt
Normal file
14
backups/ip_conversion_20260105_143709/r630-02_102_config.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
arch: amd64
|
||||
cores: 1
|
||||
description: <div align='center'>%0A <a href='https%3A//Helper-Scripts.com' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width%3A81px;height%3A112px;'/>%0A </a>%0A%0A <h2 style='font-size%3A 24px; margin%3A 20px 0;'>Cloudflared LXC</h2>%0A%0A <p style='margin%3A 16px 0;'>%0A <a href='https%3A//ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//img.shields.io/badge/☕-Buy us a coffee-blue' alt='spend Coffee' />%0A </a>%0A </p>%0A%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-github fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>GitHub</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-comments fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/discussions' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Discussions</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-exclamation-circle fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/issues' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Issues</a>%0A </span>%0A</div>%0A
|
||||
features: nesting=1,keyctl=1
|
||||
hostname: cloudflared
|
||||
memory: 512
|
||||
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:B3:46:B7,ip=dhcp,type=veth
|
||||
onboot: 1
|
||||
ostype: debian
|
||||
rootfs: thin1-r630-02:vm-102-disk-0
|
||||
swap: 512
|
||||
tags: cloudflare;community-script;network
|
||||
timezone: America/Los_Angeles
|
||||
unprivileged: 1
|
||||
14
backups/ip_conversion_20260105_143709/r630-02_103_config.txt
Normal file
14
backups/ip_conversion_20260105_143709/r630-02_103_config.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
arch: amd64
|
||||
cores: 2
|
||||
description: <div align='center'>%0A <a href='https%3A//Helper-Scripts.com' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width%3A81px;height%3A112px;'/>%0A </a>%0A%0A <h2 style='font-size%3A 24px; margin%3A 20px 0;'>Omada LXC</h2>%0A%0A <p style='margin%3A 16px 0;'>%0A <a href='https%3A//ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//img.shields.io/badge/☕-Buy us a coffee-blue' alt='spend Coffee' />%0A </a>%0A </p>%0A%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-github fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>GitHub</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-comments fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/discussions' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Discussions</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-exclamation-circle fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/issues' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Issues</a>%0A </span>%0A</div>%0A
|
||||
features: nesting=1,keyctl=1
|
||||
hostname: omada
|
||||
memory: 3072
|
||||
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:73:83:7B,ip=dhcp,type=veth
|
||||
onboot: 1
|
||||
ostype: debian
|
||||
rootfs: thin1-r630-02:vm-103-disk-0
|
||||
swap: 512
|
||||
tags: community-script;controller;tp-link
|
||||
timezone: America/Los_Angeles
|
||||
unprivileged: 1
|
||||
14
backups/ip_conversion_20260105_143709/r630-02_104_config.txt
Normal file
14
backups/ip_conversion_20260105_143709/r630-02_104_config.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
arch: amd64
|
||||
cores: 1
|
||||
description: <div align='center'>%0A <a href='https%3A//Helper-Scripts.com' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width%3A81px;height%3A112px;'/>%0A </a>%0A%0A <h2 style='font-size%3A 24px; margin%3A 20px 0;'>Gitea LXC</h2>%0A%0A <p style='margin%3A 16px 0;'>%0A <a href='https%3A//ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//img.shields.io/badge/☕-Buy us a coffee-blue' alt='spend Coffee' />%0A </a>%0A </p>%0A%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-github fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>GitHub</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-comments fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/discussions' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Discussions</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-exclamation-circle fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/issues' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Issues</a>%0A </span>%0A</div>%0A
|
||||
features: nesting=1,keyctl=1
|
||||
hostname: gitea
|
||||
memory: 1024
|
||||
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:2C:3B:37,ip=dhcp,type=veth
|
||||
onboot: 1
|
||||
ostype: debian
|
||||
rootfs: thin1-r630-02:vm-104-disk-0
|
||||
swap: 512
|
||||
tags: community-script;git
|
||||
timezone: America/Los_Angeles
|
||||
unprivileged: 1
|
||||
@@ -0,0 +1,12 @@
|
||||
arch: amd64
|
||||
cores: 2
|
||||
features: nesting=1,keyctl=1
|
||||
hostname: firefly-1
|
||||
memory: 4096
|
||||
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:CE:28:0A,ip=dhcp,type=veth
|
||||
onboot: 1
|
||||
ostype: ubuntu
|
||||
rootfs: thin1-r630-02:vm-6200-disk-0
|
||||
swap: 512
|
||||
timezone: America/Los_Angeles
|
||||
unprivileged: 1
|
||||
@@ -0,0 +1,12 @@
|
||||
arch: amd64
|
||||
cores: 2
|
||||
features: nesting=1,keyctl=1
|
||||
hostname: mim-api-1
|
||||
memory: 2048
|
||||
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:85:7B:09,ip=dhcp,type=veth
|
||||
onboot: 1
|
||||
ostype: ubuntu
|
||||
rootfs: thin4:vm-7811-disk-0,size=30G
|
||||
swap: 512
|
||||
timezone: America/Los_Angeles
|
||||
unprivileged: 1
|
||||
73
backups/ip_conversion_20260105_143709/rollback-ip-changes.sh
Executable file
73
backups/ip_conversion_20260105_143709/rollback-ip-changes.sh
Executable file
@@ -0,0 +1,73 @@
|
||||
#!/bin/bash
|
||||
# Rollback script for IP changes
|
||||
# Generated automatically - DO NOT EDIT MANUALLY
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
echo "=== Rolling Back IP Changes ==="
|
||||
echo ""
|
||||
|
||||
# Rollback VMID 3501 (ccip-monitor-1) on ml110
|
||||
echo "Rolling back VMID 3501 to 192.168.11.14..."
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct stop 3501" 2>/dev/null || true
|
||||
sleep 2
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct set 3501 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.14/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 3501"
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct start 3501" 2>/dev/null || true
|
||||
echo ""
|
||||
|
||||
# Rollback VMID 3500 (oracle-publisher-1) on ml110
|
||||
echo "Rolling back VMID 3500 to 192.168.11.15..."
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct stop 3500" 2>/dev/null || true
|
||||
sleep 2
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct set 3500 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.15/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 3500"
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct start 3500" 2>/dev/null || true
|
||||
echo ""
|
||||
|
||||
# Rollback VMID 103 (omada) on r630-02
|
||||
echo "Rolling back VMID 103 to 192.168.11.20..."
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 103" 2>/dev/null || true
|
||||
sleep 2
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 103 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.20/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 103"
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 103" 2>/dev/null || true
|
||||
echo ""
|
||||
|
||||
# Rollback VMID 104 (gitea) on r630-02
|
||||
echo "Rolling back VMID 104 to 192.168.11.18..."
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 104" 2>/dev/null || true
|
||||
sleep 2
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 104 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.18/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 104"
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 104" 2>/dev/null || true
|
||||
echo ""
|
||||
|
||||
# Rollback VMID 100 (proxmox-mail-gateway) on r630-02
|
||||
echo "Rolling back VMID 100 to 192.168.11.4..."
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 100" 2>/dev/null || true
|
||||
sleep 2
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 100 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.4/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 100"
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 100" 2>/dev/null || true
|
||||
echo ""
|
||||
|
||||
# Rollback VMID 101 (proxmox-datacenter-manager) on r630-02
|
||||
echo "Rolling back VMID 101 to 192.168.11.6..."
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 101" 2>/dev/null || true
|
||||
sleep 2
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 101 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.6/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 101"
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 101" 2>/dev/null || true
|
||||
echo ""
|
||||
|
||||
# Rollback VMID 102 (cloudflared) on r630-02
|
||||
echo "Rolling back VMID 102 to 192.168.11.9..."
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 102" 2>/dev/null || true
|
||||
sleep 2
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 102 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.9/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 102"
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 102" 2>/dev/null || true
|
||||
echo ""
|
||||
|
||||
# Rollback VMID 6200 (firefly-1) on r630-02
|
||||
echo "Rolling back VMID 6200 to 192.168.11.7..."
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 6200" 2>/dev/null || true
|
||||
sleep 2
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 6200 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.7/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 6200"
|
||||
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 6200" 2>/dev/null || true
|
||||
echo ""
|
||||
|
||||
Reference in New Issue
Block a user