A professional PowerShell-based security and traffic audit tool designed for FileZilla Server (v1.x and Legacy). This script parses complex FTP logs to provide clear, actionable insights for system administrators.
- 📊 Managed Volume Calculation: Accurately calculates total data transfer (MB) per IP using session-state tracking.
- 🔒 Security Audit: Detects and groups brute-force login attempts and automated bot scans.
- ⚪ IP Whitelisting: Define trusted IPs (e.g., internal backup servers) to exclude them from security alerts.
- ⏳ Time-Based Filtering: Configurable variable to process only logs from the last X days (e.g., last 30 days).
- 📁 Error 550 Context: Identifies and lists the specific filenames causing "File Not Found" errors.
- 🌍 English Output: Clean, localized console output with no encoding/character issues.
At the top of the script, you can customize the following variables:
| Variable | Description |
|---|---|
$logFolder |
The path where your FileZilla Server logs are stored. |
$DaysLimit |
How many days of history to analyze (e.g., 30). |
$IPWhitelist |
An array of IPs that should be ignored in security reports. |
- Download the
FileZillaLogAnalyzer.ps1script. - Open the script and set your
$logFolderpath. - Right-click the file and select Run with PowerShell.
- Run PowerShell as Administrator (Recommended). ///or/// Alternatively, ensure the user account executing the script has explicit Read permissions for the FileZilla log folder.
- If you have execution policy restrictions, run this command in your terminal first:
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
Lukas Pavelka 📧 Email: lukas.pavelka@gmail.com
📄 License This project is licensed under the MIT License - free for personal and commercial use.
===========================================================
FILEZILLA SERVER LOG ANALYZER - v28
Author: Lukas Pavelka (lukas.pavelka@gmail.com)
===========================================================
Time Filter: Last 30 days
Logs Found: 5
-----------------------------------------------------------
[#] DATA TRANSFER SUMMARY
Total Managed Volume: 10406.87 MB
-> 192.168.1.12 | 10406.87 MB
------------------------------------
[!] FAILED LOGINS (External Only)
IP Address Attempts
---------- --------
84.0.116.35 5
...