Webmin Module

Complete Webmin module for managing VistoShield through the Webmin web interface with native look and feel.

Installation

The Webmin module is automatically installed when the VistoShield installer detects Webmin. To install manually:

Method 1: Via Webmin UI

  1. Log in to Webmin as root
  2. Go to Webmin → Webmin Configuration → Webmin Modules
  3. Select Install from local file
  4. Enter the path: /usr/local/vistoshield/panel-plugins/webmin/vistoshield.wbm.gz
  5. Click Install Module

Method 2: Via Command Line

/usr/share/webmin/install-module.pl \
  /usr/local/vistoshield/panel-plugins/webmin/vistoshield.wbm.gz

After installation, the VistoShield module appears under Servers in the Webmin sidebar.

Module Features

Configuration Editor

A web-based editor for /etc/vistoshield/vistoshield.conf that:

  • Groups settings by category with descriptive labels
  • Validates values before saving (type checks, range checks)
  • Preserves comments and formatting in the configuration file
  • Shows the default value for each setting
  • Highlights changed values that differ from defaults
Tip: The config editor preserves your comments. You can add notes directly in the .conf file and they will survive edits through the Webmin interface.

Daemon Control

Start, stop, restart, and check the status of the VistoShield daemon. The status page shows:

  • Running state and PID
  • Uptime and memory usage
  • Active firewall backend
  • Number of blocked IPs (IPv4 and IPv6)
  • Feature states (enabled/disabled)

Blocked IPs

View all currently blocked IP addresses in a sortable table:

ColumnDescription
IP AddressThe blocked IPv4 or IPv6 address
ReasonWhy it was blocked (LFD, rate limit, bot, manual, etc.)
Blocked AtTimestamp when the block was applied
ExpiresWhen the block will be removed (or "Permanent")
ActionsUnblock button and lookup link

Bulk actions: select multiple IPs and unblock them at once, or flush all temporary blocks.

Allow / Deny Lists

Manage whitelist and blacklist files with a textarea editor. Supports one IP or CIDR per line with optional comments.

Bot Signatures

Browse the signature database with search and filtering. Features:

  • Search by pattern, category, or description
  • Filter by action type (block, challenge, monitor, allow)
  • Change actions inline with dropdown selectors
  • One-click remote update with merge preview

Log Viewer

Color-coded real-time log viewer for /var/log/vistoshield/vistoshield.log:

  • Color coding by log level (red for errors, yellow for warnings, white for info)
  • Search and filter by keyword, IP, or log level
  • Configurable line count (last 50, 100, 500 lines)
  • Auto-refresh toggle for real-time monitoring

Access Control

Webmin's built-in access control system determines who can use the VistoShield module. Configure per-user permissions from Webmin → Webmin Users:

  • Full access — All features including configuration and daemon control
  • View only — Can view status, blocked IPs, and logs but cannot make changes
  • No access — Module is hidden from the user

Module Files

FileDescription
module.infoModule metadata (name, version, category)
index.cgiMain dashboard page
config.cgiConfiguration editor
blocked.cgiBlocked IP management
lists.cgiAllow/Deny list editor
signatures.cgiBot signature management
logs.cgiLog viewer
lib/vistoshield-lib.plShared Perl library functions
Warning: The Webmin module communicates with the daemon via the CLI tool. Ensure /usr/local/bin/vistoshield is executable and the Webmin user has permission to run it (typically root or via sudo).