2.6 KiB
2.6 KiB
Setting Up Cloudflare Tunnel for ABforAbortion Website
This guide will walk you through the process of setting up a Cloudflare Tunnel to securely expose your ABforAbortion website to the internet without opening ports on your firewall.
Prerequisites
- A Cloudflare account
- A domain registered and using Cloudflare DNS
- Docker and Docker Compose installed on your server
Step 1: Install cloudflared CLI
# For Debian/Ubuntu
curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
sudo dpkg -i cloudflared.deb
# For other systems, visit: https://developers.cloudflare.com/cloudflare-one/connections/connect-apps/install-and-setup/installation/
Step 2: Authenticate with Cloudflare
cloudflared login
This command will open a browser window. Log in to your Cloudflare account and authorize the cloudflared application to access your account.
Step 3: Create a Tunnel
cloudflared tunnel create abforabortion-tunnel
This will create a new tunnel and store the credentials in ~/.cloudflared/[TUNNEL-ID].json
.
Step 4: Get Your Tunnel ID
cloudflared tunnel list
Note the tunnel ID - you'll need to update it in the cloudflared-config.yml
file.
Step 5: Set Up DNS Records
# Replace with your actual domain and tunnel ID
cloudflared tunnel route dns your-tunnel-id abforabortion.com
cloudflared tunnel route dns your-tunnel-id www.abforabortion.com
Step 6: Update the Configuration File
Edit the cloudflared-config.yml
file:
- Replace
your-tunnel-id
with your actual tunnel ID - Update the hostnames to match your domain
Step 7: Start the Docker Containers
docker-compose -f docker-compose-with-cloudflare.yml up -d
Step 8: Monitor the Tunnel
# Check logs
docker-compose -f docker-compose-with-cloudflare.yml logs -f cloudflared
# Check status
cloudflared tunnel info your-tunnel-id
Troubleshooting
- Connection issues: Check if the cloudflared container can access the web container
- DNS issues: Verify DNS records in your Cloudflare dashboard
- Authentication issues: Ensure credentials file exists and is mounted correctly
Security Considerations
- The Cloudflare Tunnel provides secure access without exposing your server's IP address
- All traffic is encrypted between visitors and your origin server
- Authentication happens via Cloudflare's authentication system
For more information, visit the Cloudflare Tunnel documentation.