errorWordfencehourglass_bottomTimeouterrorerrorcodecURLsecurityfirewallinfoWordfencelabelCommoncheck_circleEasy

Wordfence firewall update failed: cURL error 28: Connection timed out

Wordfence tries to download the latest firewall rule set from its update server. The request uses PHP cURL. The server aborts the request after the configured timeout because it fails to establish a connection or complete the TLS handshake. The abort generates cURL error 28 and Wordfence reports the failure.

The timeout occurs when outbound traffic is blocked, DNS does not resolve, network path is slow, or PHP/cURL settings limit the connection time. High server load or outdated libraries also cause the request to exceed the timeout limit.

Symptoms

[dashicons-warning]
Admin notice
WordPress dashboard shows a warning that the firewall update failed with cURL error 28.
[dashicons-shield]
Update button disabled
Wordfence firewall tab displays “Update failed” and prevents rule refresh.
[dashicons-admin-plugins]
Plugin install errors
Theme or plugin installations stop with a cURL error 28 message.

Common Causes

Outbound firewall block
Server‑level firewall or Wordfence firewall blocks outgoing HTTPS requests to updates.wordfence.com.
DNS resolution failure
Incorrect or slow DNS prevents the host name from resolving, causing the request to hang.
Low PHP cURL timeout
cURL timeout setting is too short for the network latency, leading to premature abort.
Outdated cURL library
Old cURL version lacks current TLS support, preventing a successful handshake.
Need this fixed right now?

Don't waste your day debugging. Our experts can Fix your issues in under 2 hours.*

Success Rate

100% Guaranteed

Starting from

$35 /hour
99+

Trusted by Business Owners

“I spent 3 days trying to fix the Elementor loading loop. These guys fixed it in 20 minutes. Lifesavers!”

— Sarah J., Web Designer

Related Issues

contact_mail
Contact Form 7: REST API request failed: 503 Service Unavailable
A 503 Service Unavailable response stops Contact Form 7 from sending data...
apiREST APIerror503descriptioncontact-form-7
contact_mail
Contact Form 7: REST API request failed: 429 Too Many Requests

The form tries to send data through the WordPress REST API. The...

apiREST APIerrorerrorsecurityfirewalldescriptioncontact-form-7settingsserver_configuration
contact_mail
Contact Form 7: REST API request failed: 401 Unauthorized

The form tries to send data via the WordPress REST API. The...

apiREST APIadmin_panel_settingspermissionsdescriptioncontact-form-7lock401
contact_mail
Contact Form 7: File upload error: temporary directory missing

The error appears when Contact Form 7 cannot locate a writable temporary...

codePHPcloud_offupload erroradmin_panel_settingspermissionsdescriptiontemporary filedescriptioncontact-form-7
contact_mail
Contact Form 7: Mail (2) sending failed: PHP mail() function disabled

Contact Form 7 reports a failure for Mail (2) when the PHP...

codePHPerrorerrordescriptioncontact-form-7mailMailsettingsserver_configuration
contact_mail
Contact Form 7: Mail (2) sending failed: SSL certificate verification failed

Contact Form 7 reports a failure when trying to send the secondary...

errorerrorlocksslcodecURLdescriptioncontact-form-7