跳至主要內容
WordPress.org

Taiwan 正體中文

  • 佈景主題目錄
  • 外掛目錄
  • 最新消息
  • 技術支援
  • 關於我們
  • 團隊
  • 取得 WordPress
取得 WordPress
WordPress.org

Plugin Directory

MyFast Login Guard – Login Protection & Server Info

  • 提交外掛
  • 我的最愛
  • 登入
  • 提交外掛
  • 我的最愛
  • 登入

MyFast Login Guard – Login Protection & Server Info

由 myfastwebhosting 開發
下載
  • 詳細資料
  • 使用者評論
  • 安裝方式
  • 開發資訊
技術支援

外掛說明

MyFast Login Guard provides two things hosting clients actually need:

Login protection

  • Rename your login page to a custom URL — direct access to /wp-login.php returns a 404
  • Limit login attempts — lock out an IP after a configurable number of failures
  • Configurable lockout duration (default: 5 attempts, 30-minute lockout)
  • IP whitelist — your own IPs are never locked out
  • Optional email notification when a lockout is triggered
  • Manual unlock from the Lockout Log page

Server information and error log

  • Full PHP environment: version, memory, OPcache, extensions, disabled functions, error log path
  • WordPress environment: version, debug flags, memory limits, active plugin count
  • Server details: software, IP, document root, HTTPS status, OS
  • Database: MySQL/MariaDB version, database size
  • Scheduled cron events with overdue detection
  • Error log viewer: reads WordPress debug.log (or PHP error log), filterable by Fatal / Warning / Notice, with one-click clear

Design principles

  • No external API calls
  • No cronjobs
  • No .htaccess rewriting
  • No front-end database queries
  • Assets load only on the plugin’s own admin pages

安裝方式

  1. Upload the myfast-login-guard folder to /wp-content/plugins/
  2. Activate the plugin through the Plugins screen in WordPress
  3. Go to MyFast Login Guard in the admin menu to configure

常見問題集

Will renaming my login page break anything?

No. WordPress internal redirects (logout, password reset, registration) continue to work. Only direct access to /wp-login.php returns a 404 for logged-out visitors.

What happens if I forget my custom login slug?

You have two options:

  1. Visit /wp-admin/ — WordPress will redirect you to the login page at the correct URL.
  2. Add define( 'MFLG_DISABLE_LOGIN_SLUG', true ); to your wp-config.php to temporarily restore /wp-login.php access without deactivating the plugin.

What happens if I lock myself out?

Add your IP address to the Whitelist IPs field in Settings. If you are already locked out, connect via FTP/SSH, open wp-config.php, and add:
define( ‘MFLG_DISABLE_LOGIN_SLUG’, true );
Then log in normally, unlock your IP from the Lockout Log page, and remove the constant.

Does this replace a firewall or security plugin?

No. It is a lightweight complement — it stops brute-force login attempts and gives you visibility into your server environment. It does not scan files, block requests at the firewall level, or monitor for malware.

How are IP addresses detected?

The plugin uses REMOTE_ADDR (the actual TCP connection IP) as the primary source. If the site is behind Cloudflare, the CF-Connecting-IP header is trusted only when the connection originates from a verified Cloudflare IP range. Forwarded headers such as X-Forwarded-For that can be spoofed by clients are intentionally ignored.

Is the lockout data cleaned up on uninstall?

Yes. Uninstalling the plugin removes all plugin settings and lockout records from wp_options.

使用者評論

Solid safety tool

johnnydating 2026 年 5 月 20 日
A solid and reliable safety tool that gives peace of mind to any website operator.

An excellent plugin with lots of good features

jessicapatterson123 2026 年 5 月 20 日
An excellent plugin with lots of good features
閱讀全部 2 則使用者評論

參與者及開發者

以下人員參與了開源軟體〈MyFast Login Guard – Login Protection & Server Info〉的開發相關工作。

參與者
  • myfastwebhosting

將〈MyFast Login Guard – Login Protection & Server Info〉外掛本地化為台灣繁體中文版

對開發相關資訊感興趣?

任何人均可瀏覽程式碼、查看 SVN 存放庫,或透過 RSS 訂閱開發記錄。

變更記錄

1.3.7

  • Fixed: Suppressed undefined variable notices from WordPress core wp-login.php triggered when custom login slug is used.
  • Fixed: WordPress admin notices no longer appear inside plugin pages.
  • Fixed: Clear log button now shows for any writable log file, not only the WordPress debug log.
  • Fixed: Clearing large log files (100MB+) no longer fails due to memory limits — now uses fopen truncate instead of loading file into memory.

1.3.6

  • Renamed: Plugin renamed to MyFast Login Guard & Server Info with new slug myfast-login-guard and mflg_ prefix throughout.
  • Fixed: All CSS class names updated from lssi- to mflg- prefix for uniqueness compliance.
  • Fixed: Inline block removed from lockout log page — now uses enqueued lockouts.js.
  • Fixed: Removed unused lockouts database table — lockout data stored cleanly in wp_options.
  • Fixed: Activation/deactivation hooks converted from anonymous closures to named functions.
  • Fixed: Transient cleanup queries now use $wpdb->prepare() for full PHPCS compliance.
  • Fixed: Cloudflare cache purge hook removed entirely per WP.org reviewer requirement.
  • Fixed: wp_cache_delete() added before wp_localize_script() to guarantee fresh settings on page load.
  • Fixed: Login slug reserved-word validation added client-side with clear error message.
  • Fixed: Emergency escape hatch constant renamed to MFLG_DISABLE_LOGIN_SLUG.
  • Improved: Error log path detection now checks ini_get(‘error_log’) as first candidate.
  • Improved: Server info table stacks label above value on mobile instead of horizontal scroll.
  • Improved: Export for Support button min-height corrected on mobile.

1.3.1

  • Fixed: Text domain reverted to login-shield-server-info to match plugin folder name (Plugin Check compliance).
  • Fixed: Removed discouraged load_plugin_textdomain() call (auto-loaded by WordPress.org since WP 4.6).
  • Fixed: Replaced fopen/fclose with WP_Filesystem in error-log.php and server-info.php.
  • Fixed: Replaced parse_url() with wp_parse_url() in login-protect.php.
  • Fixed: Added wp_unslash() to all $_SERVER reads in server-info.php.
  • Fixed: Unescaped output — $status_label now uses wp_kses(), $icon uses wp_kses(), min() wrapped in esc_attr().
  • Fixed: Ordered placeholders (%1$d, %2$s) and added translators comments in server-info.php and login-protect.php.
  • Fixed: Added phpcs:ignore with justification for third-party hook names, read-only GET params, and socket fclose.
  • Fixed: uninstall.php table variable renamed with lssi_ prefix.
  • Fixed: Upgrade notices trimmed to under 300 characters.

1.3.0

  • Updated text domain from login-shield-server-info to fastshield-security to match the approved WordPress.org plugin slug.

1.2.9

  • Fixed: Updated “Tested up to” to WordPress 6.9.

1.2.8

  • Fixed: Removed duplicate Plugin URI (was identical to Author URI) per WordPress.org submission requirements.

1.2.7

  • Renamed plugin to MyFast Login Guard – Login Protection & Server Info to comply with WordPress.org naming guidelines.

1.2.6

  • Security: Validate error log tab parameter against known tab whitelist before use in URL output (was sanitize_key only).
  • Code quality: Added phpcs ignore with full justification comment for shell_exec inode check — path escaped via escapeshellarg(), output parsed as integers only.

1.2.5

  • Fixed: Missing return statements after wp_send_json_error() in AJAX handlers — code after the error response could execute.
  • Fixed: Uninstall now also removes the lssi_lockouts option from wp_options (previously only the DB table was dropped).
  • Fixed: Removed dead lssi_utilities_page() function — the page was unreachable with no menu entry.
  • Fixed: Removed wp-components from script dependencies (only wp-element is actually used).

1.2.4

  • Fixed: Removed the Utilities submenu page which was causing 404 errors on some hosts. The AJAX cache clear remains available in Settings. Any bookmarked lssi-utilities URLs now redirect cleanly to Settings.

1.2.3

  • Security: Rewrote IP detection to use REMOTE_ADDR as ground truth; CF-Connecting-IP is now only trusted when REMOTE_ADDR is a verified Cloudflare edge IP. X-Forwarded-For and X-Real-IP removed to prevent spoofing.
  • Code quality: Moved login-page CSS from inline output to enqueued assets/css/login.css per WordPress coding standards.
  • Usability: Added MFLG_DISABLE_LOGIN_SLUG constant as an emergency escape hatch for locked-out administrators.
  • Docs: Expanded readme.txt FAQ with lockout recovery instructions and IP detection explanation.

1.2.2

  • Mobile: Lockout log table now stacks as labelled cards on small screens.
  • Mobile: Custom login slug and lockout email inputs stack full-width on mobile.
  • Error log: Tabs moved inside the log card for discoverability on both mobile and desktop.

1.2.1

  • Fixed: wp_login_failed hook signature made compatible with WordPress < 5.4.
  • Fixed: authenticate filter now only runs on POST submissions, not every page load.
  • Added: Attempts-remaining counter shown on the login page after a failed attempt.

1.2.0

  • Added brute-force lockout engine: tracks failed attempts per IP, locks out after configurable threshold, sends email notification, auto-expires lockouts.
  • Added Unlock and Clear All buttons to Lockout Log page.

1.1.9

  • Fixed asset paths, admin menu parent slug, activation hook, and lssi_get() signature.

1.0.0

  • Initial release.

中繼資料

  • 版本 1.3.7
  • 最後更新 4 週前
  • 啟用安裝數 少於 10 次
  • WordPress 版本需求 6.0 或更新版本
  • 已測試相容的 WordPress 版本 6.9.4
  • PHP 版本需求 8.0 或更新版本
  • 語言
    English (US)
  • 標籤:
    Brute Forceerror loglimit login attemptslogin protectionserver info
  • 進階檢視

評分

5 星,滿分為 5 星
  • 2 個 5 星使用者評論 5 星 2
  • 0 個 4 星使用者評論 4 星 0
  • 0 個 3 星使用者評論 3 星 0
  • 0 個 2 星使用者評論 2 星 0
  • 0 個 1 星使用者評論 1 星 0

Your review

查看全部使用者評論

參與者

  • myfastwebhosting

技術支援

使用者可在技術支援論壇提出意見反應或使用問題。

檢視技術支援論壇

  • 關於我們
  • 最新消息
  • 主機代管
  • 隱私權
  • 展示網站
  • 佈景主題目錄
  • 外掛目錄
  • 區塊版面配置目錄
  • Learn
  • 技術支援
  • 開發者資源
  • WordPress.tv ↗
  • 共同參與
  • 活動
  • 贊助基金會 ↗
  • Five for the Future
  • WordPress.com ↗
  • Matt ↗
  • bbPress ↗
  • BuddyPress ↗
WordPress.org
WordPress.org

Taiwan 正體中文

  • 查看我們的 X (之前的 Twitter) 帳號
  • 造訪我們的 Bluesky 帳號
  • 造訪我們的 Mastodon 帳號
  • 造訪我們的 Threads 帳號
  • 造訪我們的 Facebook 粉絲專頁
  • Visit our Instagram account
  • Visit our LinkedIn account
  • 造訪我們的 TikTok 帳號
  • Visit our YouTube channel
  • 造訪我們的 Tumblr 帳號
程式碼,如詩
The WordPress® trademark is the intellectual property of the WordPress Foundation.