Guard Dog is a focused WordPress security plugin for the login door, authentication, sessions, and practical access workflows. With custom login URLs, two-factor authentication, passkeys, CAPTCHA providers, access control, and activity logging, Guard Dog helps site owners tighten the parts of WordPress that get bothered most.
Key Features:
- Custom Login URLs - Hide your wp-admin and wp-login.php from attackers
- Two-Factor Authentication (2FA) - TOTP-based authentication with recovery codes
- Social Login (OAuth) - Sign in with Google, Microsoft, or Apple
- Passkeys - Use device-based biometric authentication like Face ID, Touch ID or Windows Hello
- Multiple CAPTCHA Providers - Support for Google reCAPTCHA v2/v3, hCaptcha, and Cloudflare Turnstile
- Login Attempt Limiting - Prevent brute-force attacks with intelligent lockout
- Access Control - IP-based whitelist/blacklist protection
- Activity Monitoring - Comprehensive logging of security events
- Temporary User Access - Create temporary WordPress users with time-limited, secure access
- Frontend Account Security - Shortcodes and blocks for login, passkeys, 2FA, and session controls
Why Choose Guard Dog?
- Privacy-Focused - Multiple CAPTCHA options including privacy-first providers
- WordPress.org Compliant - Built following WordPress coding standards
- Site-Owned Controls - Protections run inside your WordPress site
- User-Friendly - Intuitive interface with helpful documentation
- Regular Updates - Actively maintained and updated
Perfect For:
- Business websites requiring enhanced security
- WordPress sites handling sensitive data
- Multi-user sites with complex access requirements
- Anyone wanting practical login and account protection without a central SaaS dependency
Frontend Shortcodes:
[guard_dog_login_form] renders a public Guard Dog-managed login form
[guard_dog_passkey_login] renders a standalone passkey sign-in button for custom login pages
[guard_dog_two_factor] renders logged-in 2FA management
[guard_dog_passkeys] renders logged-in passkey management
[guard_dog_sessions] renders logged-in active-session management
[guard_dog_account_security] renders the composite logged-in account security widget for 2FA, passkeys, and sessions
[guard_dog_2fa] remains supported as the legacy alias for the account security widget
Block-based themes can use the matching Guard Dog Login Form, Passkey Login, Two-Factor Auth, Passkeys, Sessions, and Account Security blocks.
1.9.58
Security fix. An expired account password could be accepted over XML-RPC and the REST API instead of being refused; it is now refused. Also completes the 1.9.57 access-rule fix, so IPv4 rules match visitors reported in IPv4-mapped form. Read the 1.9.57 note below before updating: your access rules may start matching visitors they did not match before.
1.9.57
Fixes IP access rules silently failing to match visitors on dual-stack servers, where an ordinary IPv4 visitor is reported in IPv4-mapped form. Rules you already configured now apply to those visitors, in both directions: a blocklist range will begin blocking visitors it covers, and an allowlist range will begin admitting them. No settings change, but review your IP rules before updating if any of them are broad.
1.9.56
Security release. Closes a path that could reach the expired-password reset form without the account password, and a path that could skip CAPTCHA on a login attempt. Also fixes logout returning a blank page on sites using a custom login URL. Update promptly. No settings change, and no user who could sign in before will be locked out by this update.
1.9.55
Translates the Activity Log event names, which previously always displayed in English regardless of site language. No settings change.
1.9.53
Polishes passkey fallback and frontend login error messages, hardens release seam verification, and marks compatibility through WordPress 7.1. No settings changes.
1.9.51
Corrects visitor IP detection on sites behind Cloudflare, so security features act on the visitor rather than the proxy. No settings change and no user will be locked out by this update.
1.9.50
Fixes a login failure where password expiration, two-factor, and passkey sign-ins redirected to the site home page instead of the login page, and fixes adding a passkey on a second device. Also fixes password expiration expiring every existing user the moment it is enabled. Existing passwords and passkeys remain valid, and no user who could sign in before will be locked out by this update.
1.8.4
This version adds email-based two-factor authentication in addition to app-based 2FA.
1.6.0
This version adds Cloudflare Turnstile support and enhanced security features. Recommended for all users.
1.5.0
Major update with hCaptcha support and improved 2FA. Backup your site before updating.