{ "page.title": "Fail2ban UI Dashboard", "nav.dashboard": "Dashboard", "nav.filter_debug": "Filter Debug", "nav.settings": "Settings", "restart_banner.message": "Fail2ban configuration changed. To apply the changes, please ", "restart_banner.button": "Restart Service", "dashboard.title": "Dashboard", "dashboard.overview": "Overview active Jails and Blocks", "dashboard.overview_hint": "Use the search to filter banned IPs and click a jail to edit its configuration.", "dashboard.search_label": "Search Banned IPs", "dashboard.search_placeholder": "Enter IP address to search", "dashboard.external_ip": "Your ext. IP:", "dashboard.manage_servers": "Manage Servers", "dashboard.no_servers_title": "No Fail2ban servers configured", "dashboard.no_servers_body": "Add a server to start monitoring and controlling Fail2ban instances.", "dashboard.loading_summary": "Loading summary data…", "dashboard.errors.summary_failed": "Failed to load summary from server.", "dashboard.no_enabled_servers_title": "No active connectors", "dashboard.no_enabled_servers_body": "Enable the local connector or register a remote Fail2ban server to see live data.", "dashboard.cards.active_jails": "Active Jails", "dashboard.cards.total_banned": "Total Banned IPs", "dashboard.cards.new_last_hour": "New Last Hour", "dashboard.cards.total_logged": "Stored Ban Events", "dashboard.cards.recurring_week": "Recurring IPs (7 days)", "dashboard.cards.recurring_hint": "Watch repeated offenders detected in the last seven days.", "dashboard.table.jail_name": "Jail Name", "dashboard.table.total_banned": "Total Banned", "dashboard.table.new_last_hour": "New Last Hour", "dashboard.table.banned_ips": "Banned IPs (Unban)", "dashboard.no_jails": "No jails found.", "dashboard.overview_detail": "The lists must not expanded to search for an IP.", "dashboard.table.time": "Time", "dashboard.table.jail": "Jail", "dashboard.table.ip": "IP", "dashboard.table.log_line": "Log Line", "dashboard.no_banned_ips": "No banned IPs", "dashboard.unban": "Unban", "dashboard.banned.show_more": "Show more", "dashboard.banned.show_less": "Hide extra", "logs.overview.title": "Internal Log Overview", "logs.overview.subtitle": "Events stored by Fail2ban-UI across all connectors.", "logs.overview.refresh": "Refresh data", "logs.overview.total_events": "Total stored events", "logs.overview.per_server": "Events per server", "logs.overview.recent_events_title": "Recent stored events", "logs.overview.recent_empty": "No stored events found.", "logs.overview.empty": "No ban events recorded yet.", "logs.overview.open_insights": "Open insights", "logs.overview.total_today": "Today", "logs.overview.total_week": "Last 7 days", "logs.overview.per_server_empty": "No per-server data available yet.", "logs.overview.recent_filtered_empty": "No stored events match the current filters.", "logs.overview.recent_count_label": "Events shown", "logs.overview.country_unknown": "Unknown", "logs.overview.last_seen": "Last seen", "logs.table.server": "Server", "logs.table.count": "Count", "logs.table.jail": "Jail", "logs.table.ip": "IP", "logs.table.time": "Time", "logs.table.country": "Country", "logs.table.actions": "Actions", "logs.actions.whois": "Whois", "logs.actions.logs": "Logs", "logs.search.label": "Search events", "logs.search.placeholder": "Search IP, jail or server", "logs.search.country_label": "Country", "logs.search.country_all": "All countries", "logs.search.country_unknown": "Unknown", "logs.badge.recurring": "Recurring", "logs.modal.whois_title": "Whois Information", "logs.modal.logs_title": "Logs", "logs.modal.jail": "Jail", "logs.modal.insights_title": "Ban Insights", "logs.modal.insights_description": "Country distribution and recurring offenders.", "logs.modal.insights_countries": "Bans by country", "logs.modal.insights_countries_empty": "No bans recorded for this period.", "logs.modal.insights_countries_hint": "Top origins for the selected time range.", "logs.modal.insights_recurring_hint": "IP addresses repeatedly triggering Fail2ban.", "logs.modal.total_overall_note": "Lifetime bans recorded", "logs.modal.total_today_note": "Last 24 hours", "logs.modal.total_week_note": "Weekly activity", "logs.modal.insights_recurring": "Recurring IPs", "logs.modal.insights_recurring_empty": "No recurring IPs detected.", "filter_debug.title": "Filter Debug", "filter_debug.select_filter": "Select a Filter", "filter_debug.log_lines": "Log Lines", "filter_debug.log_lines_placeholder": "Enter log lines here...", "filter_debug.test_filter": "Test Filter", "filter_debug.test_results_title": "Test Results", "filter_debug.no_matches": "No matches found.", "settings.title": "Settings", "settings.general": "General Settings", "settings.language": "Language", "settings.server_port": "Server Port", "settings.server_port_placeholder": "e.g., 8080", "settings.port_env_set": "Port is set via PORT environment variable:", "settings.port_env_hint": "To change the port via Web UI, remove the PORT environment variable and restart the container.", "settings.port_restart_hint": "⚠️ Port changes require a container restart to take effect.", "settings.enable_debug": "Enable Debug Log", "settings.alert": "Alert Settings", "settings.callback_url": "Fail2ban Callback URL", "settings.callback_url_placeholder": "http://127.0.0.1:8080", "settings.callback_url_hint": "This URL is used by all Fail2Ban instances to send ban alerts back to Fail2Ban UI. For local deployments, use the same port as Fail2Ban UI (e.g., http://127.0.0.1:8080). For reverse proxy setups, use your TLS-encrypted endpoint (e.g., https://fail2ban.example.com).", "settings.destination_email": "Destination Email (Alerts Receiver)", "settings.destination_email_placeholder": "alerts@swissmakers.ch", "settings.alert_countries": "Alert Countries", "settings.alert_countries_description": "Choose the countries for which you want to receive email alerts when a block is triggered.", "settings.smtp": "SMTP Configuration", "settings.smtp_host": "SMTP Host", "settings.smtp_host_placeholder": "e.g., smtp.gmail.com", "settings.smtp_port": "SMTP Port", "settings.smtp_username": "SMTP Username", "settings.smtp_username_placeholder": "e.g., user@example.com", "settings.smtp_password": "SMTP Password", "settings.smtp_password_placeholder": "Enter SMTP Password", "settings.smtp_sender": "Sender Email", "settings.smtp_sender_placeholder": "noreply@swissmakers.ch", "settings.smtp_tls": "Use TLS (Recommended)", "settings.send_test_email": "Send Test Email", "settings.fail2ban": "Fail2Ban Configuration", "settings.enable_bantime_increment": "Enable Bantime Increment", "settings.default_bantime": "Default Bantime", "settings.default_bantime_placeholder": "e.g., 48h", "settings.default_findtime": "Default Findtime", "settings.default_findtime_placeholder": "e.g., 30m", "settings.default_max_retry": "Default Max Retry", "settings.default_max_retry_placeholder": "Enter maximum retries", "settings.ignore_ips": "Ignore IPs", "settings.ignore_ips_placeholder": "IPs to ignore, separated by spaces", "settings.advanced.title": "Advanced Actions for Recurring Offenders", "settings.advanced.description": "Automatically synchronize recurring offenders to an external firewall or blocklist.", "settings.advanced.refresh_log": "Refresh Log", "settings.advanced.test_button": "Manually Block / Test", "settings.advanced.enable": "Enable automatic permanent blocking", "settings.advanced.threshold": "Threshold before permanent block", "settings.advanced.threshold_hint": "Once an IP reaches this number of bans it will be forwarded to the integration.", "settings.advanced.integration": "Integration", "settings.advanced.integration_none": "Select integration", "settings.advanced.integration_hint": "Choose the firewall or appliance where permanent bans should be created.", "settings.advanced.mikrotik.note": "Provide SSH access to your Mikrotik router and the address list that should contain blocked IPs.", "settings.advanced.mikrotik.host": "Host", "settings.advanced.mikrotik.port": "Port", "settings.advanced.mikrotik.username": "SSH Username", "settings.advanced.mikrotik.password": "SSH Password", "settings.advanced.mikrotik.key": "SSH Key Path (optional)", "settings.advanced.mikrotik.list": "Address List Name", "settings.advanced.pfsense.note": "Requires the pfSense API package. Use an API token that may edit aliases.", "settings.advanced.pfsense.base_url": "Base URL", "settings.advanced.pfsense.token": "API Token", "settings.advanced.pfsense.secret": "API Secret", "settings.advanced.pfsense.alias": "Alias Name", "settings.advanced.pfsense.skip_tls": "Skip TLS verification (self-signed)", "settings.advanced.log_title": "Permanent Block Log", "settings.advanced.log_empty": "No permanent blocks recorded yet.", "settings.advanced.log_ip": "IP", "settings.advanced.log_integration": "Integration", "settings.advanced.log_status": "Status", "settings.advanced.log_message": "Message", "settings.advanced.log_server": "Server", "settings.advanced.log_updated": "Updated", "settings.advanced.log_actions": "Actions", "settings.advanced.unblock_btn": "Remove", "settings.advanced.test_title": "Manually Block / Test", "settings.advanced.test_ip": "IP address", "settings.advanced.test_server": "Optional server", "settings.advanced.test_server_none": "Use global integration settings", "settings.advanced.test_block": "Block IP", "settings.advanced.test_unblock": "Remove IP", "settings.save": "Save", "modal.filter_config": "Filter Config:", "modal.filter_config_edit": "Edit Filter", "modal.cancel": "Cancel", "modal.save": "Save", "modal.close": "Close", "loading": "Loading...", "dashboard.manage_jails": "Manage Jails", "modal.manage_jails_title": "Manage Jails", "servers.selector.label": "Active Server", "servers.selector.empty": "No servers configured", "servers.selector.none": "No server configured. Please add a Fail2ban server.", "servers.modal.title": "Manage Fail2ban Servers", "servers.modal.description": "Register remote Fail2ban instances and choose how the UI connects to them.", "servers.modal.list_title": "Registered Servers", "servers.modal.list_empty": "No servers configured yet. Add your first Fail2ban server using the form on the right.", "servers.modal.form_title": "Add or Update Server", "servers.form.name": "Display Name", "servers.form.name_placeholder": "My Fail2ban server", "servers.form.type": "Connection Type", "servers.type.local": "Local (same host)", "servers.type.ssh": "SSH", "servers.type.agent": "API Agent", "servers.form.host": "Hostname / IP", "servers.form.host_placeholder": "fail2ban.example.com", "servers.form.port": "Port", "servers.form.port_placeholder": "22", "servers.form.socket_path": "Fail2ban Socket Path", "servers.form.socket_path_placeholder": "/var/run/fail2ban/fail2ban.sock", "servers.form.log_path": "Fail2ban Log Path", "servers.form.log_path_placeholder": "/var/log/fail2ban.log", "servers.form.hostname": "Server Hostname", "servers.form.hostname_placeholder": "optional", "servers.form.ssh_user": "SSH User", "servers.form.ssh_user_placeholder": "root", "servers.form.ssh_key": "SSH Private Key Path", "servers.form.ssh_key_placeholder": "~/.ssh/id_rsa", "servers.form.agent_url": "Agent URL", "servers.form.agent_url_placeholder": "https://host:9443", "servers.form.agent_secret": "Agent Secret", "servers.form.agent_secret_placeholder": "shared secret token", "servers.form.tags": "Tags", "servers.form.tags_placeholder": "comma,separated,tags", "servers.form.set_default": "Set as default server", "servers.form.enabled": "Enable connector", "servers.form.submit": "Save Server", "servers.form.reset": "Reset", "servers.form.success": "Server saved successfully.", "servers.badge.default": "Default", "servers.badge.enabled": "Enabled", "servers.badge.disabled": "Disabled", "servers.actions.edit": "Edit", "servers.actions.set_default": "Set default", "servers.actions.enable": "Enable", "servers.actions.disable": "Disable", "servers.actions.test": "Test connection", "servers.actions.test_success": "Connection successful", "servers.actions.test_failure": "Connection failed", "servers.actions.delete": "Delete", "servers.actions.delete_confirm": "Delete this server entry?", "servers.form.select_key": "Select Private Key", "servers.form.select_key_placeholder": "Manual entry", "servers.form.no_keys": "No SSH keys found; enter path manually", "filter_debug.not_available": "Filter debug is only available for local connectors.", "filter_debug.local_missing": "The local Fail2ban filter directory was not found on this host.", "email.ban.title": "Security alert: Fail2Ban blocked a new IP-address", "email.ban.intro": "Fail2Ban-UI detected a bad request or repeated authentication failures and automatically blocked the source-IP. Review the metadata and log excerpts below.", "email.ban.subject.banned": "Banned", "email.ban.subject.from": "from", "email.ban.details.banned_ip": "Banned IP", "email.ban.details.jail": "Jail", "email.ban.details.hostname": "Hostname", "email.ban.details.failed_attempts": "Failed attempts", "email.ban.details.country": "Country", "email.ban.details.timestamp": "Timestamp", "email.ban.whois_title": "WHOIS footprint", "email.ban.logs_title": "Relevant log excerpts", "email.test.title": "Email delivery test", "email.test.intro": "This message confirms that your SMTP configuration is working correctly and can deliver HTML formatted emails.", "email.test.subject": "Test Email from Fail2Ban UI", "email.test.details.recipient": "Recipient", "email.test.details.smtp_host": "SMTP host", "email.test.details.triggered_at": "Triggered at", "email.test.whois_no_data": "No WHOIS lookup is executed for test emails.", "email.test.sample_logs": "2025-01-01T12:00:00Z Sample log entry of Fail2ban-UI.", "email.whois.no_data": "WHOIS data was not captured for this event.", "email.logs.no_data": "No log entries were captured for this block.", "email.footer.text": "This message was generated automatically by Fail2Ban-UI" }