Fix: OpenClaw in Docker β Connection Refused, Port Mapping, and Network Issues
Running OpenClaw in Docker and getting connection refused? Common issues with port mapping, bind addresses, DNS resolution, and WebSocket upgrades explained with fixes.
The CRA mandates that manufacturers report actively exploited vulnerabilities to ENISA within 24 hours. This isnβt a suggestion β itβs a legal requirement starting September 2026.
Hour 0: Vulnerability discovered/reported
β
Hour 24: Early warning notification to ENISA
β
Hour 72: Vulnerability notification with assessment
β
Day 14: Detailed vulnerability report
β
Day 30: Final report (if not resolved earlier)# security.txt (RFC 9116) - Place at /.well-known/security.txt
Contact: mailto:[email protected]
Contact: https://yourcompany.com/security/report
Encryption: https://yourcompany.com/.well-known/pgp-key.txt
Acknowledgments: https://yourcompany.com/security/acknowledgments
Policy: https://yourcompany.com/security/policy
Preferred-Languages: en
Canonical: https://yourcompany.com/.well-known/security.txt
Expires: 2027-01-01T00:00:00.000Zclass VulnerabilityTriager:
def assess(self, report):
severity = self.calculate_cvss(report)
assessment = {
"cvss_score": severity.score,
"cvss_vector": severity.vector,
"affected_products": self.find_affected_products(report),
"actively_exploited": report.exploitation_evidence,
"cra_reporting_required": severity.score >= 7.0 or report.exploitation_evidence,
"deadline": self.calculate_deadline(report),
}
if assessment["cra_reporting_required"]:
# Start 24-hour clock
self.start_enisa_timer(assessment)
return assessmentclass ENISAReporter:
ENISA_ENDPOINT = "https://reporting.enisa.europa.eu/api/v1"
async def early_warning(self, vulnerability):
# Must be sent within 24 hours
payload = {
"type": "early_warning",
"product": vulnerability.product_name,
"severity": vulnerability.cvss_score,
"actively_exploited": vulnerability.is_exploited,
"description": vulnerability.brief_description,
"estimated_impact": vulnerability.estimated_users_affected,
}
response = await self.submit(payload)
return response
async def full_notification(self, vulnerability):
# Must be sent within 72 hours
payload = {
"type": "vulnerability_notification",
"cve_id": vulnerability.cve_id,
"technical_details": vulnerability.technical_analysis,
"affected_versions": vulnerability.affected_versions,
"mitigation": vulnerability.temporary_mitigation,
"patch_timeline": vulnerability.expected_patch_date,
}
response = await self.submit(payload)
return response# Automated security advisory pipeline
security-advisory:
stage: notify
when: manual # Security team triggers
script:
- python generate_advisory.py --cve $CVE_ID --severity $SEVERITY
- python notify_users.py --product $PRODUCT --advisory advisory.json
- python update_sbom.py --product $PRODUCT --version $PATCHED_VERSIONYour public vulnerability disclosure policy must include:
Need help building CRA-compliant vulnerability handling? I help organizations design security response processes. Get in touch.
AI & Cloud Advisor with 18+ years experience. Author of 8 technical books, creator of Ansible Pilot, and instructor at CopyPasteLearn Academy. Speaker at KubeCon EU & Red Hat Summit 2026.
Running OpenClaw in Docker and getting connection refused? Common issues with port mapping, bind addresses, DNS resolution, and WebSocket upgrades explained with fixes.
Getting the allowedorigins error when starting your OpenClaw gateway? Here is exactly how to fix it, with step-by-step configuration for local network, VPS, and reverse proxy setups.
Troubleshoot OpenClaw API key issues across OpenAI, Anthropic, and GitHub Copilot. Covers 401 errors, invalid key formats, rate limits, and model fallback configuration.