{"id":385826,"date":"2026-10-13T23:00:22","date_gmt":"2026-10-13T23:00:22","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/domain-expiry-ssl-dns-monitor-aepto\/"},"modified":"2026-10-22T01:41:28","modified_gmt":"2026-10-22T01:41:28","slug":"aepto-domain-ssl-dns-monitor","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/aepto-domain-ssl-dns-monitor\/","author":23584968,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.1","stable_tag":"1.1.1","tested":"7.1.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Aepto Domain Expiry, SSL, DNS & PHP Security","header_author":"Limitless Hosting","header_description":"Free Domain Anchor for this WordPress: domain & SSL expiry alerts, DNS drift, tether (\"still this site\"), SPF\/DKIM\/DMARC grade, admin-bar chip, and continuity report. Connect free for outside uptime; paid for AI page monitoring and webhooks.","assets_banners_color":"041428","last_updated":"2026-10-22 01:41:28","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/aepto.com","header_author_uri":"https:\/\/limitlesshost.net","rating":5,"author_block_rating":0,"active_installs":0,"downloads":241,"num_ratings":2,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.1":{"tag":"1.0.1","author":"limitlesshosting","date":"2026-10-13 23:00:07","revision":3745011},"1.1.0":{"tag":"1.1.0","author":"limitlesshosting","date":"2026-10-21 23:51:37","revision":3759186},"1.1.1":{"tag":"1.1.1","author":"limitlesshosting","date":"2026-10-22 01:41:28","revision":3759226}},"upgrade_notice":{"1.1.1":"<p>CloudLinux \/ ea-php backport awareness for php2shell (CVE-2026-109618 \/ CVE-2026-109619) \u2014 fewer false positives when the host already backported the fix.<\/p>","1.1.0":"<p>Adds PHP security alerts for critical CVEs (php2shell) with a host upgrade ticket and optional repeat emails. Display name updated; plugin slug unchanged.<\/p>","1.0.1":"<p>WordPress.org review fixes and documentation updates.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":2},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3745010,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3745010,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3745010,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3745010,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3745010,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.1","1.1.0","1.1.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3745010,"resolution":"1","location":"assets","locale":"","width":1202,"height":898},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3745010,"resolution":"2","location":"assets","locale":"","width":612,"height":457},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3745010,"resolution":"3","location":"assets","locale":"","width":612,"height":457},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3759185,"resolution":"4","location":"assets","locale":"","width":1137,"height":906}},"screenshots":{"1":"Domain Anchor \u2014 countdown, DNS, email auth","2":"Admin bar status chip","3":"Protection when connected","4":"PHP security \u2014 critical advisory + host upgrade ticket"}},"plugin_section":[262246],"plugin_tags":[286593,271722,287884,208464,29148],"plugin_category":[],"plugin_contributors":[286594],"plugin_business_model":[],"class_list":["post-385826","plugin","type-plugin","status-publish","hentry","plugin_section-dashboard-widgets","plugin_tags-dns-monitor","plugin_tags-domain-expiry","plugin_tags-php-security","plugin_tags-ssl-monitor","plugin_tags-uptime","plugin_contributors-limitlesshosting","plugin_committers-limitlesshosting"],"banners":{"banner":"https:\/\/ps.w.org\/aepto-domain-ssl-dns-monitor\/assets\/banner-772x250.png?rev=3745010","banner_2x":"https:\/\/ps.w.org\/aepto-domain-ssl-dns-monitor\/assets\/banner-1544x500.png?rev=3745010","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/aepto-domain-ssl-dns-monitor\/assets\/icon.svg?rev=3745010","icon":"https:\/\/ps.w.org\/aepto-domain-ssl-dns-monitor\/assets\/icon.svg?rev=3745010","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/aepto-domain-ssl-dns-monitor\/assets\/screenshot-1.png?rev=3745010","caption":"Domain Anchor \u2014 countdown, DNS, email auth"},{"src":"https:\/\/ps.w.org\/aepto-domain-ssl-dns-monitor\/assets\/screenshot-2.png?rev=3745010","caption":"Admin bar status chip"},{"src":"https:\/\/ps.w.org\/aepto-domain-ssl-dns-monitor\/assets\/screenshot-3.png?rev=3745010","caption":"Protection when connected"},{"src":"https:\/\/ps.w.org\/aepto-domain-ssl-dns-monitor\/assets\/screenshot-4.png?rev=3759185","caption":"PHP security \u2014 critical advisory + host upgrade ticket"}],"raw_content":"<!--section=description-->\n<p>WordPress Site Health watches PHP, cron, and plugins. It does <strong>not<\/strong> watch whether your <strong>domain<\/strong> is about to expire, whether DNS still points at this install, or whether SPF\/DKIM\/DMARC will dump order email into spam.<\/p>\n\n<p><strong>Domain Anchor<\/strong> (free, no Aepto account) watches that layer for <em>this<\/em> site only \u2014 and when a critical PHP RCE hits (starting with <strong>CVE-2026-109618 \/ CVE-2026-109619 \u2014 php2shell<\/strong>), it emails your contacts and gives you a <strong>copy-ready hosting support ticket<\/strong>.<\/p>\n\n<h4>Free \u2014 works the moment you activate<\/h4>\n\n<ul>\n<li><strong>Domain registration expiry<\/strong> \u2014 days left + registrar when the registry publishes it<\/li>\n<li><strong>SSL \/ TLS certificate expiry<\/strong> \u2014 days left + issuer<\/li>\n<li><strong>DNS snapshot<\/strong> \u2014 A \/ AAAA \/ NS (and change journal when records move)<\/li>\n<li><strong>Tether check<\/strong> \u2014 confirms the public hostname still serves <em>this<\/em> WordPress (not \u201cA record equals server IP\u201d, which breaks behind Cloudflare)<\/li>\n<li><strong>Email authentication grade<\/strong> \u2014 SPF, DKIM, DMARC, MX from public DNS<\/li>\n<li><strong>PHP security<\/strong> \u2014 checks this server\u2019s PHP version against critical advisories (starting with php2shell); admin notice + <strong>copy-ready support ticket<\/strong> for your host; repeat emails until patched<\/li>\n<li><strong>Email alerts<\/strong> \u2014 choose up to 10 recipients; toggle domain \/ SSL \/ tether \/ DNS \/ Mail Pulse \/ PHP alerts; pick reminder days (30 \/ 14 \/ 7 \/ 1)<\/li>\n<li><strong>Mail Pulse<\/strong> \u2014 weekly delivery probe with click-to-confirm; catches silent wp_mail failures; loud wp-admin warning when mail is dead<\/li>\n<li><strong>Test email<\/strong> \u2014 Settings \u2192 Send test email to all recipients (if it fails, use an SMTP plugin \u2014 many hosts block PHP mail())<\/li>\n<li><strong>Admin bar chip<\/strong> \u2014 quick Domain \/ SSL countdown (or PHP: critical when an advisory hits)<\/li>\n<li><strong>Dashboard widget<\/strong> \u2014 at-a-glance risks<\/li>\n<li><strong>Continuity report (PDF)<\/strong> \u2014 dense client-ready PDF (expiry, tether, DNS, email auth, Mail Pulse, PHP security); Connected adds outside uptime %, stability, latency, downtime history<\/li>\n<\/ul>\n\n<p>No account. No API key. No front-end scripts on your public site.<\/p>\n\n<h4>Optional \u2014 Connect free with Aepto<\/h4>\n\n<p>Sign in with Aepto (OAuth, no pasted secrets) to protect this WordPress from the <strong>outside<\/strong>:<\/p>\n\n<ul>\n<li>Outside <strong>uptime board<\/strong> in Protection \u2014 live status, 24h\/7d\/30d\/90d uptime %, stability, latency, downtime duration history (alerts even if WordPress cannot send mail)<\/li>\n<li>Add this site to your Aepto portfolio<\/li>\n<li><strong>Domain Watch<\/strong> and <strong>Theft Guard<\/strong><\/li>\n<li>Attention inbox in wp-admin<\/li>\n<li>Open the full Aepto dashboard for this domain<\/li>\n<\/ul>\n\n<h4>Paid Aepto plans (checkout on app.aepto.com)<\/h4>\n\n<ul>\n<li><strong>AI page monitoring<\/strong> \u2014 catch white screens, critical \/ database errors, and \u201cuptime green but the page is broken\u201d<\/li>\n<li><strong>Alert webhooks<\/strong> \u2014 push incidents to Slack, tickets, Zapier, on-call tools<\/li>\n<\/ul>\n\n<p>The free Domain Anchor stays fully usable forever. Connect and paid features are optional upgrades, not a crippled teaser.<\/p>\n\n<h4>Who this is for<\/h4>\n\n<ul>\n<li>Site owners who renew domains once a year and forget<\/li>\n<li>WooCommerce \/ form sites that need mail to actually deliver<\/li>\n<li>Agencies who need a clean continuity report for clients<\/li>\n<li>Anyone who needs to push their host to patch critical PHP CVEs quickly<\/li>\n<li>Anyone who has been burned by DNS pointing somewhere else<\/li>\n<\/ul>\n\n<h4>External services<\/h4>\n\n<p>This plugin may contact third-party \/ external services as follows:<\/p>\n\n<ul>\n<li><strong>Your site\u2019s hostname<\/strong> \u2014 TLS certificate probe and tether self-check against the public hostname of this WordPress site. Data sent: HTTPS connection to your own host (no third-party account). Runs when you run Domain Anchor or on the scheduled cron.<\/li>\n<li><strong>Public DNS resolvers (via PHP DNS functions \/ the server\u2019s configured resolvers)<\/strong> \u2014 used to read A, AAAA, NS, MX, and TXT records for email authentication grading and DNS snapshots. Data sent: the domain name being queried. Runs during Domain Anchor checks.<\/li>\n<li><strong>RDAP bootstrap (RDAP.org)<\/strong> \u2014 used to look up domain registration expiry \/ registrar data when available. Data sent: the domain name in an HTTPS RDAP query. Service info: https:\/\/about.rdap.org\/ (includes privacy considerations). Terms \/ policy: https:\/\/about.rdap.org\/<\/li>\n<li><strong>Verisign RDAP<\/strong> \u2014 fallback \/ TLD RDAP lookup for supported zones (for example .com). Data sent: the domain name in an HTTPS RDAP query. Terms of use: https:\/\/www.verisign.com\/legal-center\/rdap-terms\/ \u2014 Privacy: https:\/\/www.verisign.com\/legal-center\/privacy\/<\/li>\n<li><strong>Aepto<\/strong> (https:\/\/app.aepto.com) \u2014 only when you Connect, opt in to anonymous install stats, or load optional outside-uptime \/ Protection data. Data may include install id, site URL\/host, OAuth tokens you authorize, and monitoring identifiers you enable. Privacy: https:\/\/aepto.com\/privacy \u2014 Terms: https:\/\/aepto.com\/terms<\/li>\n<\/ul>\n\n<p>PHP security checks use the local <code>PHP_VERSION<\/code> only (no remote vulnerability API call).<\/p>\n\n<p>No third-party ads or analytics scripts are injected on the public front end of your site.<\/p>\n\n<p>Aepto is a product of <a href=\"https:\/\/limitlesshost.net\">Limitless Hosting<\/a>. Learn more at <a href=\"https:\/\/aepto.com\">aepto.com<\/a>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate from Plugins, or upload the plugin folder.<\/li>\n<li>Open <strong>Aepto \u2192 Anchor<\/strong> and click <strong>Run check now<\/strong>.<\/li>\n<li>Open <strong>Aepto \u2192 Settings<\/strong>, set alert recipients, then <strong>Send test email<\/strong> (alerts use WordPress mail).<\/li>\n<li>See <strong>Aepto \u2192 About<\/strong> for the full free \/ Connect \/ paid feature list.<\/li>\n<li>Optional: <strong>Protection \u2192 Connect free with Aepto<\/strong> (site must be reachable over HTTPS for Connect).<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20work%20without%20an%20aepto%20account%3F\"><h3>Does this work without an Aepto account?<\/h3><\/dt>\n<dd><p>Yes. Domain Anchor \u2014 expiry, SSL, DNS, tether, email auth, PHP security, wp_mail alerts, admin bar, report \u2014 runs on your WordPress host with zero Aepto login.<\/p><\/dd>\n<dt id=\"how%20is%20this%20different%20from%20site%20health%3F\"><h3>How is this different from Site Health?<\/h3><\/dt>\n<dd><p>Site Health checks the WordPress engine (PHP, cron, plugins) at a high level. Aepto Domain Anchor checks the <strong>domain layer<\/strong>: registration, certificate, DNS drift, tether, and mail authentication \u2014 and adds <strong>critical PHP CVE alerts<\/strong> with a crafted message you can paste to your hosting company.<\/p><\/dd>\n<dt id=\"what%20php%20vulnerabilities%20does%20aepto%20check%3F\"><h3>What PHP vulnerabilities does Aepto check?<\/h3><\/dt>\n<dd><p>Aepto ships a curated list of <strong>critical<\/strong> PHP runtime advisories (starting with php2shell: CVE-2026-109618 and CVE-2026-109619). It compares your server\u2019s PHP version to the patched floors from the PHP project, and understands CloudLinux \/ cPanel ea-php (and alt-php) security backports \u2014 including older EOL branches where the host may have backported fixes but you should still plan an upgrade.<\/p><\/dd>\n<dt id=\"will%20this%20slow%20down%20my%20site%3F\"><h3>Will this slow down my site?<\/h3><\/dt>\n<dd><p>Checks run in wp-admin and via WP-Cron. There is no front-end HTML\/JS\/CSS by default. A small public REST route exists only for the tether challenge.<\/p><\/dd>\n<dt id=\"what%20email%20alerts%20do%20i%20get%20for%20free%3F\"><h3>What email alerts do I get for free?<\/h3><\/dt>\n<dd><p>By default: domain and SSL countdown emails at 30, 14, 7, and 1 days, plus immediate mail on tether failure or significant DNS change \u2014 to the site admin email. <strong>Mail Pulse<\/strong> also sends a periodic probe with a confirm link; if WordPress claims \u201csent\u201d but nobody confirms, Aepto flags a silent failure and warns in wp-admin (because broken mail cannot reliably email you). <strong>Critical PHP<\/strong> alerts repeat (day 0, 3, 7, then weekly) until the version is patched or you turn PHP alerts off. In <strong>Settings<\/strong> you can add recipients, toggle alert types, and <strong>Run Mail Pulse now<\/strong>.<\/p><\/dd>\n<dt id=\"what%20is%20sent%20to%20aepto%3F\"><h3>What is sent to Aepto?<\/h3><\/dt>\n<dd><p>Nothing until you Connect or opt in to anonymous install stats. After Connect, only what you authorize (domains, monitoring, etc.). PHP security evaluation stays on your WordPress host.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20on%20localhost%3F\"><h3>Can I use this on localhost?<\/h3><\/dt>\n<dd><p>Yes for Domain Anchor UI and tether. Public RDAP \/ SSL \/ DNS for <code>localhost<\/code> will often show empty \u2014 use a real domain for full data. <strong>Connect free with Aepto<\/strong> requires a public <strong>HTTPS<\/strong> site (Aepto rejects <code>http:\/\/<\/code> callbacks, including local Docker). That \u201cInvalid Redirect\u201d message on Connect from localhost is expected, not a broken upgrade link.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>PHP security: CloudLinux \/ ea-php (alt-php) backport awareness for php2shell (CVE-2026-109618 \/ CVE-2026-109619) \u2014 reduces false positives when the host already applied a vendor backport but PHP_VERSION stays below php.net<\/li>\n<li>EOL branches with a recognized backport show as \u201cbackported with upgrade recommended\u201d instead of an unpatched critical<\/li>\n<li>Host ticket includes package confirm steps when a CloudLinux stack is detected<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>PHP security: critical advisory checks (php2shell \/ CVE-2026-109618 &amp; CVE-2026-109619), admin notice, repeat email alerts, and a copy-ready hosting support ticket<\/li>\n<li>Display name \/ tags \/ description updated for PHP security discoverability (slug unchanged)<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Review fixes: Aepto-first display name, documented RDAP services, PDF library prefix, Mail Pulse confirm page, scoped notices, remove unnecessary textdomain load<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release: Domain Anchor, Connect, Protection, settings, continuity report<\/li>\n<\/ul>","raw_excerpt":"CVE-2026-109618 \/ CVE-2026-109619 (php2shell) PHP alerts + host ticket. Free Domain Anchor: domain &amp; SSL expiry, DNS, email auth.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/385826","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=385826"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/limitlesshosting"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=385826"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=385826"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=385826"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=385826"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=385826"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=385826"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}