Overview
This AMI runs changedetection.io, an open-source service that watches web pages for changes, shows you what changed and sends a notification, on Ubuntu 24.04 LTS. Release 0.60.10 is pinned and baked into the AMI, so first start does not depend on a registry. Watches and history are kept in a data folder on the instance.
What Perimattic adds
Protected from the first request: out of the box changedetection.io has no password at all, so anyone who finds the address can read your watches and add their own. On this AMI, first-login setup generates a random 24-character password on your server and stores it only as a salted PBKDF2 hash in the application's own deployment setting, before the application starts. The web interface, the REST API and the RSS feeds then all refuse anonymous visitors: the API needs the per-instance API key and the RSS feeds need the per-instance token that the application generates for your installation. Setup checks that the password works, that a wrong one does not and that anonymous requests are refused, before the site is published. There is no user name (the application asks for the password only); you can change the password at any time with a helper script. A fresh install adds two sample watches that fetch third-party sites; they are removed before the first start, and the application's version check is switched off.
Safe by design against server-side request forgery: a service that fetches whatever address you give it can be pointed at your own network. The application refuses to fetch private, loopback, link-local and cloud-metadata addresses and file:// URLs, including names that resolve to them; the tests prove it for the EC2 metadata address, loopback, private ranges and a name that resolves to loopback. As a second layer the instance bars its containers from the EC2 metadata service with a firewall rule that survives reboots; we measured that without this rule a container does reach the metadata service. The consequence is that you cannot monitor pages on private addresses with this setup.
HTTPS: Apache is configured as a reverse proxy and a free Let's Encrypt certificate is requested for your domain with certbot. The application runs as an unprivileged user and listens only on the loopback interface.
Patched base: Ubuntu 24.04 LTS built through an automated EC2 Image Builder pipeline, with security updates applied at build time.
What you should know
No browser is installed, so JavaScript-rendered pages cannot be watched (plain HTML pages, JSON and text can). No mail server is configured: notifications go to the services you set up in the application, and email needs your own SMTP server in the notification address. Memory use was about 95 to 120 MB for the application and about 600 MB for the whole host, so a t3.small (2 GB) is the recommended starting size.
Licence and attribution
Built on the open-source changedetection.io (Apache-2.0). The image is unmodified; its libraries carry their own open-source licences. Not affiliated with, endorsed by, or sponsored by the authors of changedetection.io or its hosted service.
Getting Started Launch the AMI and open ports 22, 80 and 443 in the security group SSH in and answer the setup prompts (domain and admin email) Open https://your-domain/ and sign in with the password printed at the end of setup Add the address of a page to watch, choose how often to check and set up a notification
A domain name with an A record pointing at the instance is required, because the site is served over HTTPS.
This AMI is built and supported by Perimattic.
Book a free setup consultation at https://cal.com/gaurav-pareek-perimattic/marketplace-setup-consultations or email us at aws-support@perimattic.com .
Support Managed and supported by Perimattic, a cloud infrastructure company with 13+ years of experience serving global clients. We offer free setup assistance, custom integrations, infrastructure consulting, and 24/7 support.
Highlights
- changedetection.io 0.60.10 (Apache-2.0) pinned and pre-installed: watch web pages for changes, see the differences and get notified. No browser is installed, so JavaScript-rendered pages are not supported.
- Secure first login: the web interface, API and RSS feeds are all closed to anonymous visitors, with a generated password stored only as a salted hash. Private, loopback and cloud-metadata addresses are refused, and containers are barred from the EC2 metadata service.
- Built on patched Ubuntu 24.04 LTS and supported by Perimattic: free setup assistance at aws-support@perimattic.com.
Details
Introducing multi-product solutions
You can now purchase comprehensive solutions tailored to use cases and industries.
Features and programs
Financing for AWS Marketplace purchases
Pricing
- ...
Dimension | Cost/hour |
|---|---|
t3.medium Recommended | $0.03 |
t3.micro | $0.03 |
c3.2xlarge | $0.03 |
c3.4xlarge | $0.03 |
c3.8xlarge | $0.03 |
c3.large | $0.03 |
c3.xlarge | $0.03 |
c4.2xlarge | $0.03 |
c4.4xlarge | $0.03 |
c4.8xlarge | $0.03 |
Vendor refund policy
For any questions or concerns, please contact: Perimattic.com Email: aws-support@perimattic.com
How can we make this page better?
Legal
Vendor terms and conditions
Content disclaimer
Delivery details
64-bit (x86) Amazon Machine Image (AMI)
Amazon Machine Image (AMI)
An AMI is a virtual image that provides the information required to launch an instance. Amazon EC2 (Elastic Compute Cloud) instances are virtual servers on which you can run your applications and workloads, offering varying combinations of CPU, memory, storage, and networking resources. You can launch as many instances from as many different AMIs as you need.
Version release notes
Initial release.
- Application: changedetection.io 0.60.10 (container image pinned, baked into the AMI).
- Base: Ubuntu 24.04 LTS, fully patched at build time, built by an automated EC2 Image Builder pipeline.
- TLS: Apache reverse proxy with a Let's Encrypt certificate requested by certbot at first login.
- Credentials are generated on the instance at first login; none are present in the image.
- Protected from the first request: a generated password (salted PBKDF2 hash only) is set before the application starts, and setup verifies that the web interface, API and RSS feeds refuse anonymous visitors before the site is published. The two sample watches of a fresh install are removed.
- Release 0.60.10 (Apache-2.0, unmodified official image) runs as an unprivileged user on the loopback interface; the version check is off.
- Server-side request forgery: private, loopback, link-local and metadata addresses and file:// URLs are refused by the application, and containers are barred from the EC2 metadata service by a firewall rule that survives reboots.
- No browser is installed (JavaScript-rendered pages are not supported); no SMTP server is configured.
Additional details
Usage instructions
-
Launch an Instance
From AWS Marketplace, click Continue to Subscribe and then Continue to Configuration to launch the AMI.
-
Choose the Recommended Instance Type
t3.small (2 GB of memory) is the recommended starting size: the application used about 95 to 120 MB and the whole host about 600 MB in our tests.
-
Configure Security Group
Allow inbound traffic on the following ports:
- 22 (SSH) - terminal access for setup
- 80 (HTTP) - needed to validate your domain for the TLS certificate
- 443 (HTTPS) - access to changedetection.io
-
Point a domain at the instance
Create a DNS A record (for example monitor.example.com) pointing to the instance's public IP before you log in.
-
Connect to the Instance
ssh -i <your-key.pem> ubuntu@<public-ip>
-
First-Login Setup
The first SSH login runs a guided setup:
- Prompts for your domain and admin email and checks the DNS A record
- Generates a random 24-character password on your server and stores it only as a salted hash
- Prepares the data folder without the sample watches, blocks containers from the EC2 metadata service, starts the application and checks that the password works, that a wrong password does not and that anonymous requests to the web interface, the API and the RSS feeds are refused
- Configures Apache as an HTTPS reverse proxy (with websocket support) and requests a Let's Encrypt certificate
- Prints the URL and the password; they are also stored in /opt/app/access.txt (root only)
If a step fails, fix the problem shown and log in again: the setup resumes where it stopped.
-
Access changedetection.io
Open https://<your-domain>/ and sign in with the password printed at the end of setup (view it again with: sudo cat /opt/app/access.txt). There is no user name. Change the password with: sudo bash /opt/app/change-password.sh The API key and RSS token are shown in the application's Settings.
-
Credentials
Generated on your server, never shared between customers. View them again with:
sudo cat /opt/app/access.txt
-
Manage the Services
cd /opt/app sudo docker compose ps sudo docker compose restart
Watches and history are in /opt/app/data; back it up or snapshot the volume before upgrades. Pages on private addresses cannot be watched (the protection is on by design) and JavaScript-rendered pages are not supported.
Thank you for subscribing.
Need Support or Customization? Perimattic's team can help with setup issues, custom features and integrations:
Email us: aws-support@perimattic.com WhatsApp: +91-92142 66896 Learn more: <www.perimattic.com >
We offer free setup assistance, custom development and integrations, and infrastructure consulting.
Resources
Vendor resources
Support
Vendor support
Support by Perimattic
Perimattic provides 24/7 support for all AWS Marketplace products. Our team has 13+ years of cloud infrastructure expertise serving global clients.
Contact Channels: Email: aws-support@perimattic.com WhatsApp: +91-92142 66896 Website: <www.perimattic.com >
What We Help With: Initial setup and configuration assistance (free) Troubleshooting connectivity, performance, and backup issues Custom development and integrations Infrastructure consulting and architecture review Migration planning from other solutions Automation solutions and scaling guidance
Instance Sizing Guidance: t2.medium or t3.medium: Development environments, small applications m5.large: Production workloads with moderate traffic m5.xlarge: High-traffic production deployments and larger datasets
For workload-specific sizing recommendations, contact our team for a free consultation.
Refunds and Issues: If you experience any issues or need to request a refund, contact us at aws-support@perimattic.com and we will respond promptly.
AWS infrastructure support
AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.