A Debian-first guide to detecting suspicious web requests, reviewing likely targets, reducing exposure, and hardening public-facing web services.
Web probing is the process of sending requests to a web server in order to discover useful paths, technologies, admin panels, exposed files, weak applications, or known vulnerable endpoints. This is one of the most common early-stage behaviors against internet-facing sites.
Probing often targets paths like /admin, /login, /.env,
/phpmyadmin, /wp-admin, backup files, API endpoints, and framework-specific locations.
sudo journalctl -u caddy --since "1 hour ago"
Start by reviewing recent web activity from the service itself.
sudo grep -Ei "wp-admin|phpmyadmin|\.env|admin|login|setup|config|backup" /var/log/* 2>/dev/null
This helps identify common targets that attackers and bots probe for automatically.
sudo awk '{print $1}' /var/log/caddy/*.log 2>/dev/null | sort | uniq -c | sort -nr | head
A single IP generating many requests in a short time may indicate scanning or enumeration.
sudo grep ' 404 ' /var/log/caddy/*.log 2>/dev/null | tail -n 50
A high volume of 404s often suggests automated discovery attempts.
sudo grep "UFW BLOCK" /var/log/ufw.log | tail -n 50
Sometimes web probing is followed by other connection attempts against different services.
sudo ufw deny from <IP_ADDRESS>
# Example concept:
# deny access to admin or internal paths not meant for public use
If a path should not be public, do not rely on obscurity alone.
sudo systemctl list-units --type=service --state=running
sudo ss -tulnp
Probe attempts matter more when forgotten software is still present and reachable.
sudo find /var/www -maxdepth 3 -type f | less
Confirm whether suspicious requests were just noise or whether something sensitive might actually exist.
sudo find /var/www -type f \( -name "*.bak" -o -name ".env" -o -name "*.old" -o -name "*.zip" \)
These files are frequently targeted because they can leak secrets or source code.
sudo grep -Ei "admin|login" /var/log/caddy/*.log 2>/dev/null | tail -n 100
Web probing alone is not a compromise, but confirm whether it escalated into real access attempts or successful use.
You cannot prevent your site from being noticed, but you can reduce what is exposed and make probing less useful.
sudo find /var/www -type f | less
Old panels, test apps, backups, and forgotten files create unnecessary risk.
sudo apt update
sudo apt upgrade
Probing often turns into exploitation when software is outdated.
# Protect internal admin or setup paths in your web server configuration
If something should not be public, explicitly protect it.
sudo journalctl -u caddy --since "24 hours ago"
Repeated web probing helps show what attackers expect to find on your server.
sudo ss -tulnp
Public websites should not sit beside unnecessary internal dashboards, database ports, or admin tools.
Manual Debian-based review should come first. Over time, this section may include carefully selected options that make log review, path protection, or infrastructure isolation easier.
For now, the best approach is to review logs, remove unnecessary content, and keep the public web surface as small as possible.
All commands shown are based on Debian-based systems unless otherwise noted. Exact log locations may vary depending on your Caddy configuration.