# BastionGuard™ English (United States) translation # Copyright (C) 2025-2026 BastionGuard™ # This file is distributed under the same license as the BastionGuard package. # Calogero Scarnà , 2025-2026. # msgid "" msgstr "" "Project-Id-Version: BastionGuard 1.0\n" "Report-Msgid-Bugs-To: info@bastionguard.eu\n" "POT-Creation-Date: 2026-01-19 07:54+0100\n" "PO-Revision-Date: 2026-01-19 07:54+0100\n" "Last-Translator: Calogero Scarnà \n" "Language-Team: English (United States)\n" "Language: en_US\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/SettingsPage.cpp:366 ../src/wizard/wizard_setup.cpp:126 #: ../src/wizard/wizard_setup.cpp:248 msgid "Impossibile creare file temporaneo" msgstr "Unable to create temporary file" #: ../src/SettingsPage.cpp:374 msgid "Errore scrittura temporanea" msgstr "Temporary file write error" #: ../src/SettingsPage.cpp:433 msgid "[settings] 📖 Letto webports.conf: " msgstr "[settings] 📖 Read webports.conf: " #: ../src/SettingsPage.cpp:438 msgid "[settings] ⚠️ Nessun webports.conf trovato, uso default 81/444\n" msgstr "[settings] ⚠️ No webports.conf found, using default ports 81/444\n" #: ../src/SettingsPage.cpp:448 msgid "[copy_with_pkexec] File sorgente non trovato: " msgstr "[copy_with_pkexec] Source file not found: " #: ../src/SettingsPage.cpp:476 msgid "[update_ports_in_file] File non trovato: " msgstr "[update_ports_in_file] File not found: " #: ../src/SettingsPage.cpp:482 msgid "[update_ports_in_file] Impossibile aprire il file: " msgstr "[update_ports_in_file] Cannot open file: " #: ../src/SettingsPage.cpp:507 msgid "[update_ports_in_file] Impossibile scrivere il file temporaneo" msgstr "[update_ports_in_file] Cannot write temporary file" #: ../src/SettingsPage.cpp:518 msgid "[update_ports_in_file] " msgstr "[update_ports_in_file] " #: ../src/SettingsPage.cpp:552 msgid "" "[detect_distro] lsb_release non fornisce info, fallback su /etc/os-release\n" msgstr "" "[detect_distro] lsb_release did not provide info, falling back to /etc/os-release\n" #: ../src/SettingsPage.cpp:604 msgid "[detect_distro] Distribuzione rilevata: " msgstr "[detect_distro] Detected distribution: " #: ../src/SettingsPage.cpp:633 msgid "[detect_webserver] Apache rilevato" msgstr "[detect_webserver] Apache detected" #: ../src/SettingsPage.cpp:639 msgid "[detect_webserver] Nginx rilevato" msgstr "[detect_webserver] Nginx detected" #: ../src/SettingsPage.cpp:645 msgid "[detect_webserver] LiteSpeed rilevato" msgstr "[detect_webserver] LiteSpeed detected" #: ../src/SettingsPage.cpp:663 msgid "[detect_webserver] Nessun server rilevato" msgstr "[detect_webserver] No web server detected" #: ../src/SettingsPage.cpp:685 msgid "[settings] Porte lette da " msgstr "[settings] Ports read from " #: ../src/SettingsPage.cpp:689 msgid "[settings] ⚠ Impossibile aprire " msgstr "[settings] ⚠ Cannot open " #: ../src/SettingsPage.cpp:690 msgid " — uso valori di default (80/443)\n" msgstr " — using default values (80/443)\n" #: ../src/SettingsPage.cpp:710 msgid "[settings] ❌ Impossibile creare file temporaneo: " msgstr "[settings] ❌ Cannot create temporary file: " #: ../src/SettingsPage.cpp:724 msgid "[settings] ✅ Porte BastionGuard salvate in " msgstr "[settings] ✅ BastionGuard ports saved in " #: ../src/SettingsPage.cpp:729 msgid "[settings] ❌ Errore durante l'installazione via pkexec.\n" msgstr "[settings] ❌ Error during installation via pkexec.\n" #: ../src/SettingsPage.cpp:733 msgid "[settings] ⚠ Eccezione durante update_webserver_ports: " msgstr "[settings] ⚠ Exception during update_webserver_ports: " #: ../src/SettingsPage.cpp:820 ../src/SettingsPage.cpp:1092 msgid "Percorso quarantena: " msgstr "Quarantine path: " #: ../src/SettingsPage.cpp:821 msgid "Seleziona cartella quarantena" msgstr "Select quarantine folder" #: ../src/SettingsPage.cpp:822 ../src/SettingsPage.cpp:857 #: ../src/SettingsPage.cpp:1167 msgid "Antivirus real time: Disabilitato" msgstr "Real-time antivirus: Disabled" #: ../src/SettingsPage.cpp:824 msgid "Abilita tutte le opzioni" msgstr "Enable all options" #: ../src/SettingsPage.cpp:826 msgid "Protezione disattivata" msgstr "Protection disabled" #: ../src/SettingsPage.cpp:831 msgid "Directory Samba" msgstr "Samba directories" #: ../src/SettingsPage.cpp:856 ../src/SettingsPage.cpp:1166 msgid "Antivirus real time: Abilitato" msgstr "Real-time antivirus: Enabled" #: ../src/SettingsPage.cpp:871 msgid "Cartelle monitorate (clamonacc)" msgstr "Monitored folders (clamonacc)" #: ../src/SettingsPage.cpp:891 ../src/SettingsPage.cpp:1278 msgid "Aggiungi cartella" msgstr "Add folder" #: ../src/SettingsPage.cpp:892 ../src/SettingsPage.cpp:1279 msgid "Rimuovi cartella" msgstr "Remove folder" #: ../src/SettingsPage.cpp:895 msgid "Base" msgstr "Basic" #: ../src/SettingsPage.cpp:902 msgid "Opzioni di scansione" msgstr "Scan options" #: ../src/SettingsPage.cpp:933 msgid "" "⚠️ Attenzione: modificare queste opzioni avanzate solo se si è sicuri.\n" "Un uso improprio può compromettere la protezione." msgstr "" "⚠️ Warning: modify these advanced options only if you are sure.\n" "Improper use may compromise protection." #: ../src/SettingsPage.cpp:970 msgid "Tutte le opzioni avanzate abilitate (toggle)" msgstr "All advanced options enabled (toggle)" #: ../src/SettingsPage.cpp:971 msgid "Abilita tutte le opzioni avanzate" msgstr "Enable all advanced options" #: ../src/SettingsPage.cpp:976 ../src/SambaPage.cpp:96 msgid "Salva configurazione" msgstr "Save configuration" #: ../src/SettingsPage.cpp:981 msgid "Database firme personalizzato" msgstr "Custom signatures database" #: ../src/SettingsPage.cpp:988 msgid "" "ClamAV utilizzerà automaticamente le firme personalizzate\n" "presenti in questa cartella:" msgstr "" "ClamAV will automatically use custom signatures\n" "present in this folder:" #: ../src/SettingsPage.cpp:1019 msgid "[MANCANTE] " msgstr "[MISSING] " #: ../src/SettingsPage.cpp:1042 msgid "Avanzate" msgstr "Advanced" #: ../src/SettingsPage.cpp:1081 msgid "Seleziona una cartella quarantena" msgstr "Select a quarantine folder" #: ../src/SettingsPage.cpp:1083 ../src/SettingsPage.cpp:1103 #: ../src/SettingsPage.cpp:1288 ../src/SettingsPage.cpp:2611 #: ../src/wizard/wizard_window.cpp:275 msgid "_Annulla" msgstr "_Cancel" #: ../src/SettingsPage.cpp:1084 ../src/SettingsPage.cpp:1104 #: ../src/SettingsPage.cpp:1289 msgid "_Seleziona" msgstr "_Select" #: ../src/SettingsPage.cpp:1101 msgid "Seleziona una cartella" msgstr "Select a folder" #: ../src/SettingsPage.cpp:1144 msgid "Errore: impossibile scrivere il file temporaneo di configurazione" msgstr "Error: cannot write temporary configuration file" #: ../src/SettingsPage.cpp:1151 msgid "Configurazione salvata su" msgstr "Configuration saved to" #: ../src/SettingsPage.cpp:1153 msgid "Errore: impossibile salvare configurazione!" msgstr "Error: cannot save configuration!" #: ../src/SettingsPage.cpp:1159 msgid "Errore: impossibile installare clamd automaticamente." msgstr "Error: cannot automatically install clamd." #: ../src/SettingsPage.cpp:1179 msgid "Protezione Anti-Ransomware" msgstr "Anti-Ransomware Protection" #: ../src/SettingsPage.cpp:1187 ../src/SettingsPage.cpp:1360 msgid "Protezione Anti-Ransomware: Attiva" msgstr "Anti-Ransomware Protection: Active" #: ../src/SettingsPage.cpp:1188 msgid "Protezione Anti-Ransomware: Disattivata (servizio non attivo)" msgstr "Anti-Ransomware Protection: Disabled (service not active)" #: ../src/SettingsPage.cpp:1198 msgid "Regole YARA in uso" msgstr "YARA rules in use" #: ../src/SettingsPage.cpp:1210 msgid "Aggiorna regole YARA" msgstr "Update YARA rules" #: ../src/SettingsPage.cpp:1214 msgid "⏳ Aggiornamento regole YARA in corso..." msgstr "⏳ Updating YARA rules..." #: ../src/SettingsPage.cpp:1221 msgid "✔ Regole YARA aggiornate con successo" msgstr "✔ YARA rules successfully updated" #: ../src/SettingsPage.cpp:1224 msgid "❌ Errore durante l'aggiornamento delle regole YARA" msgstr "❌ Error during YARA rules update" #: ../src/SettingsPage.cpp:1232 msgid "Aggiorna Sanesecurity DB" msgstr "Update Sanesecurity DB" #: ../src/SettingsPage.cpp:1236 msgid "⏳ Aggiornamento Sanesecurity DB in corso..." msgstr "⏳ Updating Sanesecurity DB..." #: ../src/SettingsPage.cpp:1243 msgid "✔ Sanesecurity DB aggiornato con successo" msgstr "✔ Sanesecurity DB successfully updated" #: ../src/SettingsPage.cpp:1245 msgid "❌ Errore durante l'aggiornamento del Sanesecurity DB" msgstr "❌ Error during Sanesecurity DB update" #: ../src/SettingsPage.cpp:1259 msgid "Usa regole YARA" msgstr "Use YARA rules" #: ../src/SettingsPage.cpp:1263 msgid "Usa DB Sanesecurity" msgstr "Use Sanesecurity DB" #: ../src/SettingsPage.cpp:1267 msgid "Cartelle da scansionare:" msgstr "Folders to scan:" #: ../src/SettingsPage.cpp:1286 msgid "Seleziona cartella da scansionare" msgstr "Select folder to scan" #: ../src/SettingsPage.cpp:1315 msgid "Intervallo scansione (min):" msgstr "Scan interval (minutes):" #: ../src/SettingsPage.cpp:1320 msgid "Salva configurazione scanner" msgstr "Save scanner configuration" #: ../src/SettingsPage.cpp:1342 ../src/AntiRansomwarePage.cpp:58 msgid "Anti-Ransomware" msgstr "Anti-Ransomware" #: ../src/SettingsPage.cpp:1352 msgid "⏳ Avvio servizio Anti-Ransomware..." msgstr "⏳ Starting Anti-Ransomware service..." #: ../src/SettingsPage.cpp:1354 msgid "❌ Impossibile avviare il servizio Anti-Ransomware" msgstr "❌ Cannot start Anti-Ransomware service" #: ../src/SettingsPage.cpp:1363 msgid "⏳ Arresto servizio Anti-Ransomware..." msgstr "⏳ Stopping Anti-Ransomware service..." #: ../src/SettingsPage.cpp:1365 msgid "❌ Impossibile fermare il servizio Anti-Ransomware" msgstr "❌ Cannot stop Anti-Ransomware service" #: ../src/SettingsPage.cpp:1371 msgid "Protezione Anti-Ransomware: Disattivata" msgstr "Anti-Ransomware Protection: Disabled" #: ../src/SettingsPage.cpp:1380 msgid "⚠ refreshAntiransomRules chiamata ma rulesStore non è inizializzato\n" msgstr "⚠ refreshAntiransomRules called but rulesStore is not initialized\n" #: ../src/SettingsPage.cpp:1389 msgid "⚠ rulesStore non inizializzato\n" msgstr "⚠ rulesStore not initialized\n" #: ../src/SettingsPage.cpp:1399 msgid "⚠ Nessuna cartella YARA trovata in " msgstr "⚠ No YARA folder found in " #: ../src/SettingsPage.cpp:1419 ../src/Backend.cpp:1082 msgid "⚠ Impossibile aprire " msgstr "⚠ Cannot open " #: ../src/SettingsPage.cpp:1434 msgid " regole YARA caricate da " msgstr " YARA rules loaded from " #: ../src/SettingsPage.cpp:1436 msgid "⚠ Nessuna regola YARA trovata in " msgstr "⚠ No YARA rules found in " #: ../src/SettingsPage.cpp:1458 msgid "⚠️ Config non trovata → uso default (/home)\n" msgstr "⚠️ Config not found → using default (/home)\n" #: ../src/SettingsPage.cpp:1500 msgid "✔ Config caricata da " msgstr "✔ Config loaded from " #: ../src/SettingsPage.cpp:1528 msgid "# Configurazione BastionGuard Ransomware Scanner\n" msgstr "# BastionGuard Ransomware Scanner Configuration\n" #: ../src/SettingsPage.cpp:1548 ../src/SettingsPage.cpp:1552 msgid "✔ Config aggiornata in: " msgstr "✔ Config updated in: " #: ../src/SettingsPage.cpp:1550 msgid "❌ Errore: impossibile aggiornare config in " msgstr "❌ Error: cannot update config in " #: ../src/SettingsPage.cpp:1564 msgid "Protezione Anti-Phishing" msgstr "Anti-Phishing Protection" #: ../src/SettingsPage.cpp:1573 msgid "Protezione Anti-Phishing: Attiva (servizio di sistema)" msgstr "Anti-Phishing Protection: Active (system service)" #: ../src/SettingsPage.cpp:1574 msgid "Protezione Anti-Phishing: Disattivata (servizio non attivo)" msgstr "Anti-Phishing Protection: Disabled (service not active)" #: ../src/SettingsPage.cpp:1584 msgid "Aggiorna automaticamente la blacklist ogni 2 ore" msgstr "Automatically update blacklist every 2 hours" #: ../src/SettingsPage.cpp:1595 msgid "⏳ Attivazione aggiornamento automatico..." msgstr "⏳ Enabling automatic update..." #: ../src/SettingsPage.cpp:1596 msgid "⏳ Disattivazione aggiornamento automatico..." msgstr "⏳ Disabling automatic update..." #: ../src/SettingsPage.cpp:1603 msgid "✔ Aggiornamento automatico abilitato (ogni 2 ore)" msgstr "✔ Automatic update enabled (every 2 hours)" #: ../src/SettingsPage.cpp:1604 msgid "ℹ️ Aggiornamento automatico disabilitato" msgstr "ℹ️ Automatic update disabled" #: ../src/SettingsPage.cpp:1606 msgid "❌ Errore nella modifica del timer automatico" msgstr "❌ Error modifying automatic timer" #: ../src/SettingsPage.cpp:1616 msgid "Usa Google Safe Browsing (verifica aggiuntiva)" msgstr "Use Google Safe Browsing (additional verification)" #: ../src/SettingsPage.cpp:1619 msgid "Chiave API Google Safe Browsing:" msgstr "Google Safe Browsing API Key:" #: ../src/SettingsPage.cpp:1622 msgid "Inserisci la tua API key..." msgstr "Enter your API key..." #: ../src/SettingsPage.cpp:1629 ../src/SettingsPage.cpp:2834 #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:84 #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:113 msgid "Salva" msgstr "Save" #: ../src/SettingsPage.cpp:1634 msgid "Chiave Google Safe salvata" msgstr "Google Safe key saved" #: ../src/SettingsPage.cpp:1637 ../src/SettingsPage.cpp:1647 #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:82 #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:111 #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:229 #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:237 msgid "Mostra" msgstr "Show" #: ../src/SettingsPage.cpp:1647 #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:229 #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:237 msgid "Nascondi" msgstr "Hide" #: ../src/SettingsPage.cpp:1653 msgid "Verifica" msgstr "Verify" #: ../src/SettingsPage.cpp:1655 msgid "Verifica chiave Google Safe..." msgstr "Verifying Google Safe Browsing key..." #: ../src/SettingsPage.cpp:1660 msgid "Chiave Google Safe valida" msgstr "Google Safe Browsing key is valid" #: ../src/SettingsPage.cpp:1662 msgid "Chiave Google Safe non valida" msgstr "Google Safe Browsing key is invalid" #: ../src/SettingsPage.cpp:1687 msgid "✔ Google Safe Browsing abilitato" msgstr "✔ Google Safe Browsing enabled" #: ../src/SettingsPage.cpp:1688 msgid "ℹ️ Google Safe Browsing disabilitato" msgstr "ℹ️ Google Safe Browsing disabled" #: ../src/SettingsPage.cpp:1694 msgid "Blacklist caricate" msgstr "Blacklist loaded" #: ../src/SettingsPage.cpp:1705 msgid "Aggiorna blacklist" msgstr "Update blacklist" #: ../src/SettingsPage.cpp:1708 msgid "Aggiornamento blacklist..." msgstr "Updating blacklist..." #: ../src/SettingsPage.cpp:1715 msgid "Blacklist aggiornata" msgstr "Blacklist updated" #: ../src/SettingsPage.cpp:1722 msgid "♻ Riavvio servizio Anti-Phishing..." msgstr "♻ Restarting Anti-Phishing service..." #: ../src/SettingsPage.cpp:1725 msgid "✔ Servizio Anti-Phishing riavviato con nuova blacklist" msgstr "✔ Anti-Phishing service restarted with new blacklist" #: ../src/SettingsPage.cpp:1727 msgid "⚠ Errore durante il riavvio del servizio Anti-Phishing" msgstr "⚠ Error during Anti-Phishing service restart" #: ../src/SettingsPage.cpp:1732 msgid "Errore aggiornamento blacklist" msgstr "Blacklist update error" #: ../src/SettingsPage.cpp:1740 msgid "La lista completa aggiornata si trova in: phishing/blacklist.txt" msgstr "The complete updated list is located at: phishing/blacklist.txt" #: ../src/SettingsPage.cpp:1761 msgid "Blocco IP automatico (Firewall)" msgstr "Automatic IP Blocking (Firewall)" #: ../src/SettingsPage.cpp:1770 msgid "Abilita blocco IP automatico" msgstr "Enable automatic IP blocking" #: ../src/SettingsPage.cpp:1786 msgid "" "Blocca automaticamente gli IP malevoli rilevati dal modulo Anti-Phishing\n" "utilizzando il firewall di sistema (UFW / firewalld)." msgstr "" "Automatically block malicious IPs detected by the Anti-Phishing module\n" "using the system firewall (UFW / firewalld)." #: ../src/SettingsPage.cpp:1804 msgid "Firewall IP: Disattivato" msgstr "IP Firewall: Disabled" #: ../src/SettingsPage.cpp:1812 msgid "Firewall IP attivo: UFW" msgstr "IP Firewall active: UFW" #: ../src/SettingsPage.cpp:1815 msgid "Firewall IP attivo: firewalld" msgstr "IP Firewall active: firewalld" #: ../src/SettingsPage.cpp:1818 msgid "Firewall IP attivo" msgstr "IP Firewall active" #: ../src/SettingsPage.cpp:1833 msgid "Configura blocco IP firewall" msgstr "Configure firewall IP blocking" #: ../src/SettingsPage.cpp:1879 msgid "✔ Blocco IP firewall abilitato" msgstr "✔ Firewall IP blocking enabled" #: ../src/SettingsPage.cpp:1880 msgid "ℹ️ Blocco IP firewall disabilitato" msgstr "ℹ️ Firewall IP blocking disabled" #: ../src/SettingsPage.cpp:1900 msgid "Anti-Phishing" msgstr "Anti-Phishing" #: ../src/SettingsPage.cpp:1908 msgid "⏳ Avvio servizio Anti-Phishing..." msgstr "⏳ Starting Anti-Phishing service..." #: ../src/SettingsPage.cpp:1910 msgid "❌ Impossibile avviare il servizio Anti-Phishing" msgstr "❌ Cannot start Anti-Phishing service" #: ../src/SettingsPage.cpp:1916 msgid "Protezione Anti-Phishing: Attiva" msgstr "Anti-Phishing Protection: Active" #: ../src/SettingsPage.cpp:1919 msgid "⏳ Arresto servizio Anti-Phishing..." msgstr "⏳ Stopping Anti-Phishing service..." #: ../src/SettingsPage.cpp:1921 msgid "❌ Impossibile fermare il servizio Anti-Phishing" msgstr "❌ Cannot stop Anti-Phishing service" #: ../src/SettingsPage.cpp:1927 msgid "Protezione Anti-Phishing: Disattivata" msgstr "Anti-Phishing Protection: Disabled" #: ../src/SettingsPage.cpp:1933 msgid "⚠ refreshPhishLists chiamata ma phishStore non è inizializzato\n" msgstr "⚠ refreshPhishLists called but phishStore is not initialized\n" #: ../src/SettingsPage.cpp:1941 msgid "⚠ phishStore non inizializzato\n" msgstr "⚠ phishStore not initialized\n" #: ../src/SettingsPage.cpp:1964 msgid "Blacklist ridotta vuota in " msgstr "Reduced blacklist is empty in " #: ../src/SettingsPage.cpp:1967 msgid "Caricate " msgstr "Loaded " #: ../src/SettingsPage.cpp:1968 msgid "righe da blacklist ridotta" msgstr "lines from reduced blacklist" #: ../src/SettingsPage.cpp:1972 msgid "Nessuna blacklist ridotta trovata in " msgstr "No reduced blacklist found in " #: ../src/SettingsPage.cpp:1979 msgid "Lista completa in " msgstr "Full list in " #: ../src/SettingsPage.cpp:1982 msgid "Lista completa non trovata in " msgstr "Full list not found in " #: ../src/SettingsPage.cpp:2013 msgid "Lingua dell'applicazione" msgstr "Application Language" #: ../src/SettingsPage.cpp:2019 msgid "Seleziona lingua" msgstr "Select language" #: ../src/SettingsPage.cpp:2055 msgid "Applica" msgstr "Apply" #: ../src/SettingsPage.cpp:2076 msgid "✔ Lingua salvata in " msgstr "✔ Language saved in " #: ../src/SettingsPage.cpp:2078 msgid "❌ Impossibile salvare " msgstr "❌ Cannot save " #: ../src/SettingsPage.cpp:2085 msgid "Riavvio dei servizi in corso..." msgstr "Services are being restarted..." #: ../src/SettingsPage.cpp:2096 msgid "Attendere qualche secondo, l'app verrà riavviata automaticamente." msgstr "Please wait a few seconds, the application will restart automatically." #: ../src/SettingsPage.cpp:2120 ../src/SettingsPage.cpp:2129 msgid "[BastionGuard] ⚠ Impossibile riavviare " msgstr "[BastionGuard] ⚠ Unable to restart " #: ../src/SettingsPage.cpp:2121 msgid " tramite systemctl (anche con pkexec)" msgstr " via systemctl (even with pkexec)" #: ../src/SettingsPage.cpp:2163 msgid "❌ Impossibile rilanciare l’app (execl fallito)" msgstr "❌ Cannot relaunch the application (execl failed)" #: ../src/SettingsPage.cpp:2165 msgid "❌ Impossibile determinare il percorso dell’eseguibile" msgstr "❌ Cannot determine executable path" #: ../src/SettingsPage.cpp:2191 ../src/wizard/wizard_window.cpp:567 msgid "Sistema operativo / Distro" msgstr "Operating System / Distribution" #: ../src/SettingsPage.cpp:2196 ../src/wizard/wizard_window.cpp:571 msgid "Rilevamento automatico" msgstr "Automatic detection" #: ../src/SettingsPage.cpp:2230 msgid "Applica configurazione web" msgstr "Apply web configuration" #: ../src/SettingsPage.cpp:2308 msgid "[BastionGuard] Distro rilevata: " msgstr "[BastionGuard] Detected distro: " #: ../src/SettingsPage.cpp:2316 ../src/wizard/wizard_window.cpp:1252 msgid "Le porte devono essere numeriche valide." msgstr "Ports must be valid numeric values." #: ../src/SettingsPage.cpp:2317 ../src/SettingsPage.cpp:2326 #: ../src/SettingsPage.cpp:2383 msgid "BastionGuard - Errore" msgstr "BastionGuard - Error" #: ../src/SettingsPage.cpp:2325 msgid "Errore durante la sostituzione delle porte nel template." msgstr "Error while replacing ports in the template." #: ../src/SettingsPage.cpp:2355 ../src/wizard/wizard_window.cpp:1307 msgid "echo '[BastionGuard] Applicazione configurazione NGINX...'\n" msgstr "echo '[BastionGuard] Applying NGINX configuration...'\n" #: ../src/SettingsPage.cpp:2365 ../src/wizard/wizard_window.cpp:1320 msgid "echo '[BastionGuard] Verifica configurazione esistente...'\n" msgstr "echo '[BastionGuard] Checking existing configuration...'\n" #: ../src/SettingsPage.cpp:2371 msgid "" " echo '[BastionGuard] Configurazione già presente, aggiornamento non " "necessario.'\n" msgstr "" " echo '[BastionGuard] Configuration already present, update not necessary.'\n" #: ../src/SettingsPage.cpp:2381 msgid "[BastionGuard] Fallito:\n" msgstr "[BastionGuard] Failed:\n" #: ../src/SettingsPage.cpp:2382 msgid "Errore durante l’applicazione della configurazione:\n" msgstr "Error while applying configuration:\n" #: ../src/SettingsPage.cpp:2387 msgid "Configurazione NGINX aggiornata e servizio riavviato." msgstr "NGINX configuration updated and service restarted." #: ../src/SettingsPage.cpp:2388 msgid "BastionGuard - Esito" msgstr "BastionGuard - Result" #: ../src/SettingsPage.cpp:2400 msgid "Opzioni" msgstr "Options" #: ../src/SettingsPage.cpp:2407 msgid "Gestione Whitelist Anti-Phishing" msgstr "Anti-Phishing Whitelist Management" #: ../src/SettingsPage.cpp:2449 msgid "Cerca dominio..." msgstr "Search domain..." #: ../src/SettingsPage.cpp:2454 msgid "Inserisci dominio o IP (es. example.com)" msgstr "Enter domain or IP (e.g. example.com)" #: ../src/SettingsPage.cpp:2457 ../src/SettingsPage.cpp:2578 #: ../src/SettingsPage.cpp:2832 ../src/SambaPage.cpp:93 #: ../src/SambaPage.cpp:285 msgid "Aggiungi" msgstr "Add" #: ../src/SettingsPage.cpp:2458 ../src/SettingsPage.cpp:2833 msgid "Rimuovi selezionato" msgstr "Remove selected" #: ../src/SettingsPage.cpp:2459 msgid "Salva modifiche" msgstr "Save changes" #: ../src/SettingsPage.cpp:2460 msgid "Ricarica" msgstr "Reload" #: ../src/SettingsPage.cpp:2507 msgid "Dominio non valido" msgstr "Invalid domain" #: ../src/SettingsPage.cpp:2508 msgid "Usa solo lettere, numeri e punti." msgstr "Use only letters, numbers and dots." #: ../src/SettingsPage.cpp:2531 ../src/SettingsPage.cpp:2894 msgid "Errore" msgstr "Error" #: ../src/SettingsPage.cpp:2532 msgid "Impossibile salvare la whitelist utente." msgstr "Cannot save user whitelist." #: ../src/SettingsPage.cpp:2547 msgid "Whitelist salvata" msgstr "Whitelist saved" #: ../src/SettingsPage.cpp:2548 msgid "La whitelist è stata aggiornata in entrambi i percorsi." msgstr "The whitelist has been updated in both locations." #: ../src/SettingsPage.cpp:2552 msgid "Anti-Phishing whitelist" msgstr "Anti-Phishing whitelist" #: ../src/SettingsPage.cpp:2563 msgid "Allowlist SHA256 Anti-ransomware" msgstr "Anti-ransomware SHA256 Allowlist" #: ../src/SettingsPage.cpp:2569 msgid "SHA256" msgstr "SHA256" #: ../src/SettingsPage.cpp:2570 msgid "Regola (opzionale)" msgstr "Rule (optional)" #: ../src/SettingsPage.cpp:2579 ../src/SambaPage.cpp:94 msgid "Rimuovi" msgstr "Remove" #: ../src/SettingsPage.cpp:2592 msgid "Aggiungi SHA256" msgstr "Add SHA256" #: ../src/SettingsPage.cpp:2612 msgid "_Aggiungi" msgstr "_Add" #: ../src/SettingsPage.cpp:2645 msgid "Filtri Anti-Falsi Positivi" msgstr "Anti-False Positives Filters" #: ../src/SettingsPage.cpp:2652 msgid "Analizza solo file sospetti" msgstr "Analyze only suspicious files" #: ../src/SettingsPage.cpp:2653 msgid "Percorsi da ignorare" msgstr "Paths to ignore" #: ../src/SettingsPage.cpp:2658 msgid "Percorsi aziendali sicuri" msgstr "Safe corporate paths" #: ../src/SettingsPage.cpp:2663 msgid "Estensioni da ignorare" msgstr "Extensions to ignore" #: ../src/SettingsPage.cpp:2668 msgid "Estensioni sospette" msgstr "Suspicious extensions" #: ../src/SettingsPage.cpp:2687 msgid "Salva impostazioni avanzate" msgstr "Save advanced settings" #: ../src/SettingsPage.cpp:2700 msgid "✔ Impostazioni avanzate salvate" msgstr "✔ Advanced settings saved" #: ../src/SettingsPage.cpp:2706 msgid "Anti-Ransomware avanzate" msgstr "Advanced Anti-Ransomware" #: ../src/SettingsPage.cpp:2725 msgid "Pagamenti Sicuri (CEF)" msgstr "Secure Payments (CEF)" #: ../src/SettingsPage.cpp:2732 msgid "" "Questa opzione apre in sandbox CEF delle pagine tipiche di pagamento " "(checkout, gateway, 3D Secure)\n" "\n" "Consigliato per acquisti online e inserimento dati carta." msgstr "" "This option opens typical payment pages (checkout, gateway, 3D Secure)\n" "in CEF sandbox\n" "\n" "Recommended for online purchases and card data entry." #: ../src/SettingsPage.cpp:2743 msgid "" "ℹ️ I pagamenti sicuri utilizzano un browser isolato (CEF sandbox) per ridurre " "il rischio di furto di credenziali e dati di pagamento.\n" "Questa modalità non modifica il funzionamento del sito e non salva alcuna " "informazione sensibile." msgstr "" "ℹ️ Secure payments use an isolated browser (CEF sandbox) to reduce the risk\n" "of credential and payment data theft.\n" "This mode does not change the website's functionality and does not save any\n" "sensitive information." #: ../src/SettingsPage.cpp:2754 msgid "Abilita pagamenti sicuri" msgstr "Enable secure payments" #: ../src/SettingsPage.cpp:2774 msgid "✔ Pagamenti sicuri: abilitati" msgstr "✔ Secure payments: enabled" #: ../src/SettingsPage.cpp:2775 msgid "ℹ️ Pagamenti sicuri: disabilitati" msgstr "ℹ️ Secure payments: disabled" #: ../src/SettingsPage.cpp:2784 msgid "Domini/URL per Pagamenti Sicuri" msgstr "Domains/URLs for Secure Payments" #: ../src/SettingsPage.cpp:2828 msgid "" "Inserisci dominio o URL (es. paypal.com oppure https://checkout.stripe.com)" msgstr "" "Enter domain or URL (e.g. paypal.com or https://checkout.stripe.com)" #: ../src/SettingsPage.cpp:2835 ../src/QuarantinePage.cpp:124 msgid "Ripristina" msgstr "Restore" #: ../src/SettingsPage.cpp:2850 msgid "Valore non valido" msgstr "Invalid value" #: ../src/SettingsPage.cpp:2851 msgid "Inserisci un dominio o URL valido." msgstr "Enter a valid domain or URL." #: ../src/SettingsPage.cpp:2895 msgid "Impossibile salvare payments.json." msgstr "Cannot save payments.json." #: ../src/SettingsPage.cpp:2900 msgid "✔ Lista pagamenti salvata" msgstr "✔ Payments list saved" #: ../src/SettingsPage.cpp:2916 msgid "Pagamenti Sicuri" msgstr "Secure Payments" #: ../src/SettingsPage.cpp:2928 msgid "Servizi Utente (systemd --user)" msgstr "User Services (systemd --user)" #: ../src/SettingsPage.cpp:2934 msgid "" "Questi servizi vengono gestiti con systemd --user.\n" "Abilitare = avvio automatico al login. Disabilitare = non parte " "automaticamente." msgstr "" "These services are managed with systemd --user.\n" "Enable = automatic start at login. Disable = does not start automatically." #: ../src/SettingsPage.cpp:2943 msgid "Nota: puoi avviarli manualmente con: systemctl --user start " msgstr "Note: you can start them manually with: systemctl --user start " #: ../src/SettingsPage.cpp:2950 #: ../src/first_run/first-run-services-window.cpp:324 msgid "Privacy Guard" msgstr "Privacy Guard" #: ../src/SettingsPage.cpp:2950 #: ../src/first_run/first-run-services-window.cpp:324 msgid "Blocco microfono e webcam quando non in uso" msgstr "Microphone and webcam blocking when not in use" #: ../src/SettingsPage.cpp:2951 #: ../src/first_run/first-run-services-window.cpp:325 msgid "Ransomware Alert" msgstr "Ransomware Alert" #: ../src/SettingsPage.cpp:2951 #: ../src/first_run/first-run-services-window.cpp:325 msgid "Notifiche su possibili attività ransomware" msgstr "Notifications about possible ransomware activity" #: ../src/SettingsPage.cpp:2952 #: ../src/first_run/first-run-services-window.cpp:326 msgid "Ransomware Realtime Alert" msgstr "Ransomware Realtime Alert" #: ../src/SettingsPage.cpp:2952 #: ../src/first_run/first-run-services-window.cpp:326 msgid "Avvisi in tempo reale su comportamenti sospetti" msgstr "Real-time alerts on suspicious behavior" #: ../src/SettingsPage.cpp:2953 #: ../src/first_run/first-run-services-window.cpp:327 msgid "Ransomware Scanner" msgstr "Ransomware Scanner" #: ../src/SettingsPage.cpp:2953 #: ../src/first_run/first-run-services-window.cpp:327 msgid "Scansione periodica alla ricerca di comportamenti malevoli" msgstr "Periodic scanning for malicious behavior" #: ../src/SettingsPage.cpp:2954 #: ../src/first_run/first-run-services-window.cpp:328 msgid "User-Agent Randomizer" msgstr "User-Agent Randomizer" #: ../src/SettingsPage.cpp:2954 #: ../src/first_run/first-run-services-window.cpp:328 msgid "Modifica user-agent per aumentare anonimato" msgstr "User-agent modification to increase anonymity" #: ../src/SettingsPage.cpp:2955 #: ../src/first_run/first-run-services-window.cpp:329 msgid "PAC Daemon" msgstr "PAC Daemon" #: ../src/SettingsPage.cpp:2955 #: ../src/first_run/first-run-services-window.cpp:329 msgid "Gestione automatica di proxy PAC sicuri" msgstr "Automatic management of secure PAC proxies" #: ../src/SettingsPage.cpp:2956 #: ../src/first_run/first-run-services-window.cpp:330 msgid "CEF Sandbox Service" msgstr "CEF Sandbox Service" #: ../src/SettingsPage.cpp:2956 #: ../src/first_run/first-run-services-window.cpp:330 msgid "Supporto in background per pagamenti sicuri con CEF" msgstr "Background support for secure payments with CEF" #: ../src/SettingsPage.cpp:2964 msgid "Servizi Utente" msgstr "User Services" #: ../src/SettingsPage.cpp:2976 msgid "Servizi di Sistema (pkexec)" msgstr "System Services (pkexec)" #: ../src/SettingsPage.cpp:2982 msgid "" "Questi servizi richiedono privilegi amministrativi.\n" "Vengono gestiti con: pkexec systemctl ..." msgstr "" "These services require administrative privileges.\n" "They are managed with: pkexec systemctl ..." #: ../src/SettingsPage.cpp:2991 msgid "" "Durante l’attivazione/disattivazione potrebbe essere richiesta la password." msgstr "" "During activation/deactivation, the password may be requested." #: ../src/SettingsPage.cpp:2998 #: ../src/first_run/first-run-services-window.cpp:333 msgid "Phishing Scanner (System)" msgstr "Phishing Scanner (System)" #: ../src/SettingsPage.cpp:2998 #: ../src/first_run/first-run-services-window.cpp:333 msgid "Scansione anti-phishing a livello di sistema" msgstr "System-level anti-phishing scanning" #: ../src/SettingsPage.cpp:2999 #: ../src/first_run/first-run-services-window.cpp:335 msgid "Ransomware Realtime (System)" msgstr "Ransomware Realtime (System)" #: ../src/SettingsPage.cpp:2999 #: ../src/first_run/first-run-services-window.cpp:335 msgid "Monitor realtime ransomware a livello di sistema" msgstr "System-level realtime ransomware monitoring" #: ../src/SettingsPage.cpp:3000 #: ../src/first_run/first-run-services-window.cpp:334 msgid "USB Protection (System)" msgstr "USB Protection (System)" #: ../src/SettingsPage.cpp:3000 #: ../src/first_run/first-run-services-window.cpp:334 msgid "Monitoraggio e blocco dispositivi USB sospetti" msgstr "Monitoring and blocking of suspicious USB devices" #: ../src/SettingsPage.cpp:3008 msgid "Servizi Sistema" msgstr "System Services" #: ../src/SettingsPage.cpp:3099 msgid "Impossibile abilitare il servizio" msgstr "Unable to enable the service" #: ../src/SettingsPage.cpp:3100 msgid "Impossibile disabilitare il servizio" msgstr "Unable to disable the service" #: ../src/SettingsPage.cpp:3117 msgid "Aggiorna stato servizi" msgstr "Refresh services status" #: ../src/SettingsPage.cpp:3249 msgid "" "Servizio: %1\n" "\n" "Verifica i permessi o prova ad eseguire il comando da terminale." msgstr "" "Service: %1\n" "\n" "Check permissions or try running the command from the terminal." #: ../src/SettingsPage.cpp:3280 ../src/SettingsPage.cpp:3352 msgid "[SettingsPage] ❌ Impossibile scrivere " msgstr "[SettingsPage] ❌ Unable to write " #: ../src/SettingsPage.cpp:3300 msgid "[SettingsPage] ✅ Allowlist salvata in " msgstr "[SettingsPage] ✅ Allowlist saved in " #: ../src/SettingsPage.cpp:3356 msgid "# --- BastionGuard Anti-Ransomware Config ---\n" msgstr "# --- BastionGuard Anti-Ransomware Configuration ---\n" #: ../src/SettingsPage.cpp:3369 msgid "[SettingsPage] ✅ Config salvata in " msgstr "[SettingsPage] ✅ Configuration saved in " #: ../src/SettingsPage.cpp:3376 msgid "Configurazione salvata correttamente." msgstr "Configuration saved successfully." #: ../src/SettingsPage.cpp:3384 msgid "" "Le impostazioni aggiornate sono state caricate e applicate.\n" "Non serve riavviare il programma." msgstr "" "The updated settings have been loaded and applied.\n" "No need to restart the program." #: ../src/SettingsPage.cpp:3391 msgid "[SettingsPage] ⚠ Errore in saveAdvancedConfig: " msgstr "[SettingsPage] ⚠ Error in saveAdvancedConfig: " #: ../src/SettingsPage.cpp:3428 msgid "[SettingsPage] 🔄 Configurazione caricata da " msgstr "[SettingsPage] 🔄 Configuration loaded from " #: ../src/SettingsPage.cpp:3431 msgid "[SettingsPage] ⚠ Errore caricando configurazione: " msgstr "[SettingsPage] ⚠ Error loading configuration: " #: ../src/SettingsPage.cpp:3476 msgid "" "Servizio: %1\n" "\n" "Possibili cause:\n" "• Il file .service non esiste\n" "• systemd --user non è attivo per l'utente\n" "• Problemi di permessi o path\n" "• Errore di sintassi nel file di servizio" msgstr "" "Service: %1\n" "\n" "Possible causes:\n" "• The .service file does not exist\n" "• systemd --user is not active for the user\n" "• Permission or path issues\n" "• Syntax error in the service file" #: ../src/ScanPage.cpp:68 msgid "Scansione automatica" msgstr "Automatic scanning" #: ../src/ScanPage.cpp:79 msgid "⚙️ Scansione automatica attiva" msgstr "⚙️ Automatic scanning active" #: ../src/ScanPage.cpp:80 msgid "⛔ Scansione automatica disattivata" msgstr "⛔ Automatic scanning disabled" #: ../src/ScanPage.cpp:111 msgid "API Key VirusTotal:" msgstr "VirusTotal API Key:" #: ../src/ScanPage.cpp:139 msgid "Privacy e dati cloud" msgstr "Privacy and cloud data" #: ../src/ScanPage.cpp:169 msgid "Privacy / Dati cloud" msgstr "Privacy / Cloud Data" #: ../src/ScanPage.cpp:191 msgid "❌ Errore: inotify non inizializzato" msgstr "❌ Error: inotify not initialized" #: ../src/ScanPage.cpp:193 msgid "📡 Inotify inizializzato" msgstr "📡 Inotify initialized" #: ../src/ScanPage.cpp:284 msgid "⚠️ Impossibile monitorare: " msgstr "⚠️ Unable to monitor: " #: ../src/ScanPage.cpp:289 msgid "📁 Watch attivo: " msgstr "📁 Watch active: " #: ../src/ScanPage.cpp:347 ../src/AntiRansomwarePage.cpp:162 #: ../src/ScanPage.hpp:33 msgid "Seleziona cartella" msgstr "Select folder" #: ../src/ScanPage.cpp:368 msgid "📁 Cartella selezionata: " msgstr "📁 Selected folder: " #: ../src/ScanPage.cpp:380 ../src/AntiRansomwarePage.cpp:144 #: ../src/ScanPage.hpp:34 msgid "Seleziona file" msgstr "Select file" #: ../src/ScanPage.cpp:401 ../src/AntiRansomwarePage.cpp:152 msgid "📄 File selezionato: " msgstr "📄 Selected file: " #: ../src/ScanPage.cpp:438 msgid "🔑 API Key VirusTotal caricata da cloud.conf" msgstr "🔑 VirusTotal API Key loaded from cloud.conf" #: ../src/ScanPage.cpp:442 msgid "⚠️ Errore caricamento cloud.conf" msgstr "⚠️ Error loading cloud.conf" #: ../src/ScanPage.cpp:458 msgid "💾 API Key salvata in cloud.conf" msgstr "💾 API Key saved in cloud.conf" #: ../src/ScanPage.cpp:462 msgid "❌ Errore salvataggio cloud.conf" msgstr "❌ Error saving cloud.conf" #: ../src/ScanPage.cpp:527 msgid "🛑 Tutti i monitor inotify sono stati disattivati" msgstr "🛑 All inotify monitors have been disabled" #: ../src/ScanPage.cpp:535 msgid "⏳ È già in corso un'altra scansione..." msgstr "⏳ Another scan is already in progress..." #: ../src/ScanPage.cpp:540 msgid "⚠️ Nessun file o cartella selezionato.\n" msgstr "⚠️ No file or folder selected.\n" #: ../src/ScanPage.cpp:547 msgid "" "🔍 Avvio scansione con clamdscan...\n" "\n" msgstr "" "🔍 Starting scan with clamdscan...\n" "\n" #: ../src/ScanPage.cpp:578 msgid "❌ Errore avvio clamdscan: " msgstr "❌ Error starting clamdscan: " #: ../src/ScanPage.cpp:595 msgid "✅ Scansione completata.\n" msgstr "✅ Scan completed.\n" #: ../src/ScanPage.cpp:634 msgid "❌ Errore lettura output: " msgstr "❌ Error reading output: " #: ../src/ScanPage.cpp:650 msgid "📁 Ignorato (non è un file regolare): " msgstr "📁 Ignored (not a regular file): " #: ../src/ScanPage.cpp:658 msgid "⏳ File troppo piccolo, potrebbe essere ancora in scrittura: " msgstr "⏳ File too small, might still be writing: " #: ../src/ScanPage.cpp:663 msgid "❌ Impossibile determinare dimensione file: " msgstr "❌ Unable to determine file size: " #: ../src/ScanPage.cpp:680 msgid "🔍 Scansione automatica per: " msgstr "🔍 Automatic scan for: " #: ../src/ScanPage.cpp:725 msgid "⬜ ClamAV pulito, avvio controllo cloud..." msgstr "⬜ ClamAV clean, starting cloud check..." #: ../src/ScanPage.cpp:734 msgid "⬜ File pulito da ClamAV, controllo cloud..." msgstr "⬜ File clean by ClamAV, cloud check..." #: ../src/ScanPage.cpp:739 msgid "❌ Errore scansione automatica" msgstr "❌ Automatic scan error" #: ../src/ScanPage.cpp:747 msgid "❌ Errore accesso file: " msgstr "❌ File access error: " #: ../src/ScanPage.cpp:875 msgid "📡 Monitoraggio Download attivo (inotify)" msgstr "📡 Download monitoring active (inotify)" #: ../src/ScanPage.cpp:933 msgid "🌍 Monitor globale inotify attivo" msgstr "🌍 Global inotify monitor active" #: ../src/ScanPage.cpp:952 msgid "⚠️ PKGBUILD sospetto: " msgstr "⚠️ Suspicious PKGBUILD: " #: ../src/ScanPage.cpp:957 ../src/AurScan.cpp:127 msgid "📦 PKGBUILD rilevato: " msgstr "📦 PKGBUILD detected: " #: ../src/ScanPage.cpp:969 ../src/AurScan.cpp:258 msgid "❌ PKGBUILD non trovato: " msgstr "❌ PKGBUILD not found: " #: ../src/ScanPage.cpp:973 msgid "🦠 Scansione AUR: " msgstr "🦠 AUR scanning: " #: ../src/ScanPage.cpp:1015 msgid "✅ PKGBUILD pulito: " msgstr "✅ Clean PKGBUILD: " #: ../src/ScanPage.cpp:1019 msgid "❌ Errore lettura output AUR" msgstr "❌ Error reading AUR output" #: ../src/ScanPage.cpp:1027 msgid "❌ Errore avvio clamdscan per PKGBUILD" msgstr "❌ Error starting clamdscan for PKGBUILD" #: ../src/ScanPage.cpp:1051 msgid "🔏 Nessun match cloud → File sicuro." msgstr "🔏 No cloud match → File is safe." #: ../src/ScanPage.cpp:1098 msgid "🌐 Avvio controllo cloud..." msgstr "🌐 Starting cloud check..." #: ../src/ScanPage.cpp:1139 msgid "⚠️ Alert inviato per file infetto: " msgstr "⚠️ Alert sent for infected file: " #: ../src/ScanPage.cpp:1145 msgid "File infetto rilevato:\n" msgstr "Infected file detected:\n" #: ../src/ScanPage.cpp:1178 msgid "⚠️ File infetto: " msgstr "⚠️ Infected file: " #: ../src/ScanPage.cpp:1183 msgid "File infetto:\n" msgstr "Infected file:\n" #: ../src/ScanPage.cpp:1201 msgid "Minaccia rilevata:\n" msgstr "Threat detected:\n" #: ../src/ScanPage.cpp:1201 msgid "" "\n" "Tipo: " msgstr "" "\n" "Type: " #: ../src/ScanPage.cpp:1281 msgid "🔐 Privacy – Controllo Cloud" msgstr "🔐 Privacy – Cloud Check" #: ../src/ScanPage.cpp:1286 msgid "" "BastionGuard NON carica alcun file online.\n" "\n" "• Nessun contenuto locale viene trasmesso\n" "• Viene calcolato solo l’hash SHA256 del file\n" "• L’hash è confrontato con database pubblici\n" "• Nessun percorso o dato personale viene inviato\n" "• La API Key resta salvata esclusivamente in locale\n" "\n" "Il controllo cloud è una verifica di reputazione, non un upload del file." msgstr "" "BastionGuard does NOT upload any file online.\n" "\n" "• No local content is transmitted\n" "• Only the file's SHA256 hash is calculated\n" "• The hash is checked against public databases\n" "• No path or personal data is sent\n" "• The API Key remains stored only locally\n" "\n" "The cloud check is a reputation verification, not a file upload." #: ../src/BastionGuard-privacyd.cpp:81 msgid "[privacyd] Errore scrittura log." msgstr "[privacyd] Error writing log." #: ../src/BastionGuard-privacyd.cpp:132 msgid "[privacyd] Avviato monitoraggio webcam/microfono." msgstr "[privacyd] Started webcam/microphone monitoring." #: ../src/BastionGuard-privacyd.cpp:140 msgid "Nuovo accesso: " msgstr "New access: " #: ../src/BastionGuard-privacyd.cpp:148 msgid "Accesso terminato: %1" msgstr "Access terminated: %1" #: ../src/BastionGuard-privacyd.cpp:159 msgid "[privacyd] Monitoraggio terminato." msgstr "[privacyd] Monitoring terminated." #: ../src/BastionGuard-privacyd.cpp:177 msgid "=== Avvio BastionGuard-privacyd (headless) ===" msgstr "=== Starting BastionGuard-privacyd (headless) ===" #: ../src/BastionGuard-privacyd.cpp:185 msgid "=== Arresto BastionGuard-privacyd ===" msgstr "=== Stopping BastionGuard-privacyd ===" #: ../src/IdentityLeakPage/providers/HibpProvider.cpp:48 msgid "HIBP: API key non valida (401)" msgstr "HIBP: Invalid API key (401)" #: ../src/IdentityLeakPage/providers/HibpProvider.cpp:53 msgid "HIBP: rate limit superato (429)" msgstr "HIBP: Rate limit exceeded (429)" #: ../src/IdentityLeakPage/providers/HibpProvider.cpp:68 msgid "HIBP: JSON non valido" msgstr "HIBP: Invalid JSON" #: ../src/IdentityLeakPage/providers/LeakCheckProvider.cpp:40 msgid "Rilevato da LeakCheck Public API" msgstr "Detected by LeakCheck Public API" #: ../src/IdentityLeakPage/worker/LeakCheckWorker.cpp:22 msgid "Normalizzazione identità…" msgstr "Normalizing identity…" #: ../src/IdentityLeakPage/worker/LeakCheckWorker.cpp:49 msgid "Fonte attiva: HIBP (copertura completa)" msgstr "Active source: HIBP (full coverage)" #: ../src/IdentityLeakPage/worker/LeakCheckWorker.cpp:51 msgid "⚠ HIBP non configurato" msgstr "⚠ HIBP not configured" #: ../src/IdentityLeakPage/worker/LeakCheckWorker.cpp:52 msgid " Uso LeakCheck (copertura limitata)" msgstr " Using LeakCheck (limited coverage)" #: ../src/IdentityLeakPage/worker/LeakCheckWorker.cpp:70 msgid "❌ Errore durante la verifica: " msgstr "❌ Error during verification: " #: ../src/IdentityLeakPage/worker/LeakCheckWorker.cpp:78 msgid "✔ Nessuna violazione rilevata." msgstr "✔ No breaches detected." #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:31 msgid "🛡️ Controllo violazioni identità" msgstr "🛡️ Identity breach check" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:55 msgid "Inserisci email da monitorare" msgstr "Enter email to monitor" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:58 msgid "ℹ️ Privacy" msgstr "ℹ️ Privacy" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:77 msgid "HIBP API Key" msgstr "HIBP API Key" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:105 msgid "LeakCheck API Key" msgstr "LeakCheck API Key" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:115 msgid "⚠️ Info" msgstr "⚠️ Info" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:141 msgid "Verifica password compromessa" msgstr "Check compromised password" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:145 msgid "Verifica password" msgstr "Verify password" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:159 msgid "Monitor automatico (ogni 24h)" msgstr "Automatic monitoring (every 24h)" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:172 msgid "Verifica violazioni" msgstr "Check breaches" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:251 msgid "⚠ HIBP API rimossa" msgstr "⚠ HIBP API removed" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:252 msgid "✔ HIBP API salvata" msgstr "✔ HIBP API saved" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:262 msgid "⚠ LeakCheck API rimossa" msgstr "⚠ LeakCheck API removed" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:263 msgid "✔ LeakCheck API salvata" msgstr "✔ LeakCheck API saved" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:275 msgid "Monitor automatico attivato (24h)" msgstr "Automatic monitoring activated (24h)" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:307 msgid "Monitor automatico disattivato" msgstr "Automatic monitoring deactivated" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:310 msgid "Monitor automatico abilitato" msgstr "Automatic monitoring enabled" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:331 msgid "Avvio controllo violazioni…" msgstr "Starting breach check…" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:344 msgid "Controllo completato." msgstr "Check completed." #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:361 msgid "🔐 Controllo password (HIBP)…" msgstr "🔐 Password check (HIBP)…" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:369 msgid "❌ Password compromessa – trovata in " msgstr "❌ Compromised password – found in " #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:371 msgid " violazioni" msgstr " breaches" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:373 msgid " → Cambiala immediatamente" msgstr " → Change it immediately" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:376 msgid "✔ Password NON presente in database noti" msgstr "✔ Password NOT present in known databases" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:381 msgid "❌ Errore controllo password: " msgstr "❌ Password check error: " #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:449 msgid "🔐 Tutela della privacy" msgstr "🔐 Privacy protection" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:454 msgid "" "Nessun dato personale viene inviato o memorizzato da BastionGuard.\n" "\n" "• Le email vengono verificate tramite API ufficiali\n" "• Le password NON vengono mai trasmesse\n" "• Il controllo password usa solo hash parziali (HIBP Range)\n" "• Nessuna informazione viene salvata su server esterni\n" "\n" "Il controllo avviene nel rispetto totale della privacy." msgstr "" "No personal data is sent or stored by BastionGuard.\n" "\n" "• Emails are verified through official APIs\n" "• Passwords are NEVER transmitted\n" "• Password check uses only partial hashes (HIBP Range)\n" "• No information is saved on external servers\n" "\n" "The check is performed with full respect for privacy." #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:465 #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:551 msgid "Ho capito" msgstr "I understand" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:535 msgid "⚠️ Avviso su LeakCheck" msgstr "⚠️ Notice about LeakCheck" #: ../src/IdentityLeakPage/ui/IdentityLeakPage.cpp:540 msgid "" "Le API utilizzate da BastionGuard per LeakCheck NON sono le stesse impiegate " "dal sito web ufficiale.\n" "\n" "• BastionGuard non è affiliato a LeakCheck\n" "• Non esiste alcuna partnership o approvazione implicita\n" "• I risultati possono differire da quelli mostrati sul sito\n" "\n" "L’utente è responsabile dell’utilizzo delle API." msgstr "" "The APIs used by BastionGuard for LeakCheck are NOT the same as those used " "by the official website.\n" "\n" "• BastionGuard is not affiliated with LeakCheck\n" "• There is no partnership or implied endorsement\n" "• Results may differ from those shown on the website\n" "\n" "The user is responsible for using the APIs." #: ../src/IdentityLeakPage/monitor/LeakMonitor.cpp:71 msgid "Monitor Identity Leak attivo (HIBP + LeakCheck)" msgstr "Identity Leak monitor active (HIBP + LeakCheck)" #: ../src/IdentityLeakPage/monitor/LeakMonitor.cpp:74 msgid "" "⚠ Monitor Identity Leak attivo in modalità LIMITATA (solo LeakCheck, API " "HIBP mancante)" msgstr "" "⚠ Identity Leak monitor active in LIMITED mode (only LeakCheck, HIBP API missing)" #: ../src/IdentityLeakPage/monitor/LeakMonitor.cpp:90 msgid "⚠ Nuova violazione rilevata per identità: " msgstr "⚠ New breach detected for identity: " #: ../src/IdentityLeakPage/monitor/LeakMonitor.cpp:94 msgid "" "⚠ Possibile esposizione rilevata (fonte LeakCheck, verifica manuale " "consigliata)" msgstr "" "⚠ Possible exposure detected (LeakCheck source, manual verification recommended)" #: ../src/IdentityLeakPage/monitor/LeakMonitor.cpp:101 msgid "❌ Errore monitor Identity Leak: " msgstr "❌ Identity Leak monitor error: " #: ../src/IdentityLeakPage/monitor/LeakMonitor.cpp:114 msgid "Monitor Identity Leak fermato" msgstr "Identity Leak monitor stopped" #: ../src/IdentityLeakPage/storage/LeakDatabase.cpp:47 msgid "SQLite: open failed" msgstr "SQLite: open failed" #: ../src/Backend.cpp:262 msgid "Impossibile scrivere la configurazione Samba" msgstr "Unable to write Samba configuration" #: ../src/Backend.cpp:269 msgid "Stato Samba salvato: " msgstr "Samba status saved: " #: ../src/Backend.cpp:270 msgid "abilitato" msgstr "enabled" #: ../src/Backend.cpp:270 msgid "disabilitato" msgstr "disabled" #: ../src/Backend.cpp:288 msgid "✔ Riavviato clamav-daemon\n" msgstr "✔ Restarted clamav-daemon\n" #: ../src/Backend.cpp:291 msgid "✔ Riavviato clamd\n" msgstr "✔ Restarted clamd\n" #: ../src/Backend.cpp:293 msgid "⚠ Nessun servizio clamd/clamav-daemon trovato\n" msgstr "⚠ No clamd/clamav-daemon service found\n" #: ../src/Backend.cpp:306 msgid "⚠ install_to_system_data: pkexec failed (code " msgstr "⚠ install_to_system_data: pkexec failed (code " #: ../src/Backend.cpp:313 msgid "❌ install_to_system_data exception: " msgstr "❌ install_to_system_data exception: " #: ../src/Backend.cpp:345 ../src/Backend.cpp:1524 msgid "Impossibile aprire il file di configurazione per scrittura: " msgstr "Unable to open configuration file for writing: " #: ../src/Backend.cpp:353 msgid "Percorso quarantena salvato in configurazione: " msgstr "Quarantine path saved in configuration: " #: ../src/Backend.cpp:355 msgid "Errore durante la scrittura della configurazione: " msgstr "Error writing configuration: " #: ../src/Backend.cpp:385 ../src/QuarantinePage.cpp:77 ../src/Quarantine.cpp:56 msgid "❌ Errore creazione cartella quarantena: " msgstr "❌ Error creating quarantine folder: " #: ../src/Backend.cpp:422 msgid "❌ Errore copia " msgstr "❌ Copy error " #: ../src/Backend.cpp:475 msgid "Abilitata" msgstr "Enabled" #: ../src/Backend.cpp:475 msgid "Disabilitata" msgstr "Disabled" #: ../src/Backend.cpp:538 ../src/Backend.cpp:588 ../src/Backend.cpp:648 #: ../src/Backend.cpp:656 ../src/DashboardPage.cpp:229 #: ../src/MainWindow.cpp:131 msgid "sconosciuta" msgstr "unknown" #: ../src/Backend.cpp:667 msgid "✔ clamd già installato\n" msgstr "✔ clamd already installed\n" #: ../src/Backend.cpp:672 msgid "⚠ clamd non trovato, tentativo installazione per " msgstr "⚠ clamd not found, attempting installation for " #: ../src/Backend.cpp:690 msgid "❌ Distribuzione non riconosciuta: " msgstr "❌ Distribution not recognized: " #: ../src/Backend.cpp:695 msgid "✔ clamd installato correttamente\n" msgstr "✔ clamd installed correctly\n" #: ../src/Backend.cpp:698 msgid "❌ Errore durante l’installazione di clamd\n" msgstr "❌ Error during clamd installation\n" #: ../src/Backend.cpp:742 msgid "[Backend] ⚠ Errore lettura configurazione firewall\n" msgstr "[Backend] ⚠ Error reading firewall configuration\n" #: ../src/Backend.cpp:748 msgid "[Backend] 🛰️ Listener D-Bus ransomware attivo\n" msgstr "[Backend] 🛰️ Ransomware D-Bus listener active\n" #: ../src/Backend.cpp:750 msgid "[Backend] ⚠ Impossibile avviare listener D-Bus ransomware: " msgstr "[Backend] ⚠ Unable to start ransomware D-Bus listener: " #: ../src/Backend.cpp:774 msgid "[Backend] Configurazione Google Safe caricata da " msgstr "[Backend] Google Safe configuration loaded from " #: ../src/Backend.cpp:777 msgid "[Backend] ⚠ Impossibile leggere config Google Safe\n" msgstr "[Backend] ⚠ Unable to read Google Safe config\n" #: ../src/Backend.cpp:782 msgid "[Backend] Google Safe Browsing attivo (API Key: %1)\n" msgstr "[Backend] Google Safe Browsing active (API Key: %1)\n" #: ../src/Backend.cpp:783 msgid "vuota" msgstr "empty" #: ../src/Backend.cpp:783 msgid "presente" msgstr "present" #: ../src/Backend.cpp:787 msgid "[Backend] Google Safe Browsing disattivato.\n" msgstr "[Backend] Google Safe Browsing disabled.\n" #: ../src/Backend.cpp:793 msgid "[Backend] Blacklist non trovata in " msgstr "[Backend] Blacklist not found in " #: ../src/Backend.cpp:794 msgid " — provo a scaricarla con updatePhishLists()\n" msgstr " — attempting to download it with updatePhishLists()\n" #: ../src/Backend.cpp:797 msgid "[Backend] Blacklist aggiornata e trovata in " msgstr "[Backend] Blacklist updated and found in " #: ../src/Backend.cpp:799 msgid "[Backend] updatePhishLists() fallita, continuerò senza WebProbe\n" msgstr "[Backend] updatePhishLists() failed, continuing without WebProbe\n" #: ../src/Backend.cpp:808 msgid "[Backend] WebProbe avviato su porta " msgstr "[Backend] WebProbe started on port " #: ../src/Backend.cpp:809 msgid " con blacklist: " msgstr " with blacklist: " #: ../src/Backend.cpp:811 msgid "[Backend] Errore inizializzazione WebProbe: " msgstr "[Backend] WebProbe initialization error: " #: ../src/Backend.cpp:815 msgid "[Backend] Nessuna blacklist disponibile, WebProbe non inizializzato\n" msgstr "[Backend] No blacklist available, WebProbe not initialized\n" #: ../src/Backend.cpp:821 msgid "[Backend] Whitelist caricata con " msgstr "[Backend] Whitelist loaded with " #: ../src/Backend.cpp:824 msgid "[Backend] ⚠ Errore caricamento whitelist: " msgstr "[Backend] ⚠ Error loading whitelist: " #: ../src/Backend.cpp:844 msgid "✔ Servizio Anti-Ransomware avviato\n" msgstr "✔ Anti-Ransomware service started\n" #: ../src/Backend.cpp:846 msgid "❌ Errore avvio servizio Anti-Ransomware\n" msgstr "❌ Error starting Anti-Ransomware service\n" #: ../src/Backend.cpp:855 msgid "✔ Servizio Anti-Ransomware fermato\n" msgstr "✔ Anti-Ransomware service stopped\n" #: ../src/Backend.cpp:857 msgid "⚠ Impossibile fermare il servizio Anti-Ransomware\n" msgstr "⚠ Unable to stop Anti-Ransomware service\n" #: ../src/Backend.cpp:928 msgid "⬇ Inizio aggiornamento delle regole YARA..." msgstr "⬇ Starting YARA rules update..." #: ../src/Backend.cpp:964 msgid "✔ Aggiornato: " msgstr "✔ Updated: " #: ../src/Backend.cpp:972 msgid "Totale riusciti: " msgstr "Total successful: " #: ../src/Backend.cpp:973 msgid "Falliti: " msgstr "Failed: " #: ../src/Backend.cpp:976 msgid "⚠ Alcuni download sono stati bloccati dall'AntiPhishing." msgstr "⚠ Some downloads were blocked by AntiPhishing." #: ../src/Backend.cpp:979 msgid "📁 Regole salvate in: " msgstr "📁 Rules saved in: " #: ../src/Backend.cpp:994 msgid "✔ Copiate anche in /usr/share/BastionGuard/data/yara" msgstr "✔ Also copied to /usr/share/BastionGuard/data/yara" #: ../src/Backend.cpp:996 msgid "⚠ Impossibile copiare in /usr/share (permessi negati)" msgstr "⚠ Unable to copy to /usr/share (permission denied)" #: ../src/Backend.cpp:1075 msgid "❌ Impossibile scrivere " msgstr "❌ Unable to write " #: ../src/Backend.cpp:1105 msgid "⚠ Nessun dato da " msgstr "⚠ No data from " #: ../src/Backend.cpp:1131 msgid "# ... lista completa salvata in blacklist.txt\n" msgstr "# ... complete list saved in blacklist.txt\n" #: ../src/Backend.cpp:1146 msgid "❌ Impossibile aprire la blacklist per generare dnsmasq." msgstr "❌ Unable to open blacklist to generate dnsmasq." #: ../src/Backend.cpp:1150 msgid "❌ Impossibile creare file temporaneo dnsmasq." msgstr "❌ Unable to create temporary dnsmasq file." #: ../src/Backend.cpp:1255 msgid "[Backend] ✅ Whitelist utente/banca caricata: " msgstr "[Backend] ✅ User/bank whitelist loaded: " #: ../src/Backend.cpp:1257 msgid "[Backend] ✅ Whitelist infrastrutturale: " msgstr "[Backend] ✅ Infrastructure whitelist: " #: ../src/Backend.cpp:1258 ../src/SecureBrowser.cpp:662 msgid " domini.\n" msgstr " domains.\n" #: ../src/Backend.cpp:1317 msgid "✔ File dnsmasq generato: " msgstr "✔ dnsmasq file generated: " #: ../src/Backend.cpp:1318 msgid " voci. Skipped whitelist: " msgstr " entries. Skipped whitelist: " #: ../src/Backend.cpp:1319 msgid " | Skipped IP: " msgstr " | Skipped IP: " #: ../src/Backend.cpp:1329 msgid "⚠ Errore generazione dnsmasq blocklist: " msgstr "⚠ Error generating dnsmasq blocklist: " #: ../src/Backend.cpp:1339 msgid "[Firewall] Blocco IP disabilitato — salto applicazione regole.\n" msgstr "[Firewall] IP blocking disabled — skipping rules application.\n" #: ../src/Backend.cpp:1341 msgid "[Firewall] Nessun firewall supportato rilevato.\n" msgstr "[Firewall] No supported firewall detected.\n" #: ../src/Backend.cpp:1354 msgid "[Firewall] Tentata applicazione regole da " msgstr "[Firewall] Attempting to apply rules from " #: ../src/Backend.cpp:1355 msgid " righe blacklist " msgstr " blacklist lines " #: ../src/Backend.cpp:1360 msgid "[Firewall] Errore applicazione regole firewall: " msgstr "[Firewall] Error applying firewall rules: " #: ../src/Backend.cpp:1364 msgid "[Firewall] Errore sconosciuto applicazione regole firewall.\n" msgstr "[Firewall] Unknown error applying firewall rules.\n" #: ../src/Backend.cpp:1368 msgid "✔ Blacklist phishing aggiornata in " msgstr "✔ Phishing blacklist updated in " #: ../src/Backend.cpp:1369 msgid " e ridotta in " msgstr " and reduced in " #: ../src/Backend.cpp:1378 msgid "▶ Avvio protezione Anti-Phishing...\n" msgstr "▶ Starting Anti-Phishing protection...\n" #: ../src/Backend.cpp:1381 msgid "✔ Servizio Anti-Phishing avviato\n" msgstr "✔ Anti-Phishing service started\n" #: ../src/Backend.cpp:1383 msgid "❌ Errore avvio servizio Anti-Phishing\n" msgstr "❌ Error starting Anti-Phishing service\n" #: ../src/Backend.cpp:1388 msgid "⏹ Arresto protezione Anti-Phishing...\n" msgstr "⏹ Stopping Anti-Phishing protection...\n" #: ../src/Backend.cpp:1391 msgid "✔ Servizio Anti-Phishing fermato\n" msgstr "✔ Anti-Phishing service stopped\n" #: ../src/Backend.cpp:1393 msgid "⚠ Errore arresto BastionGuard-phishing-scanner.service\n" msgstr "⚠ Error stopping BastionGuard-phishing-scanner.service\n" #: ../src/Backend.cpp:1423 msgid "⬇ Inizio aggiornamento Sanesecurity DB..." msgstr "⬇ Starting Sanesecurity DB update..." #: ../src/Backend.cpp:1435 msgid "⬇ Scarico " msgstr "⬇ Downloading " #: ../src/Backend.cpp:1441 msgid "⚠ Errore download o file vuoto: " msgstr "⚠ Download error or empty file: " #: ../src/Backend.cpp:1449 msgid "❌ Errore copia locale " msgstr "❌ Local copy error " #: ../src/Backend.cpp:1455 msgid "✔ " msgstr "✔ " #: ../src/Backend.cpp:1455 msgid " installato system-wide in " msgstr " installed system-wide in " #: ../src/Backend.cpp:1457 msgid "ℹ " msgstr "ℹ " #: ../src/Backend.cpp:1457 msgid " disponibile solo in " msgstr " available only in " #: ../src/Backend.cpp:1464 msgid "✔ Database Sanesecurity aggiornato in " msgstr "✔ Sanesecurity database updated in " #: ../src/Backend.cpp:1513 msgid "Variabile HOME non trovata" msgstr "HOME variable not found" #: ../src/Backend.cpp:1529 msgid "Configurazione Google Safe Browsing" msgstr "Google Safe Browsing Configuration" #: ../src/Backend.cpp:1534 msgid "Configurazione Google Safe salvata in " msgstr "Google Safe configuration saved in " #: ../src/Backend.cpp:1536 msgid "Errore durante il salvataggio della configurazione Google Safe: " msgstr "Error saving Google Safe configuration: " #: ../src/Backend.cpp:1543 msgid "Nessuna chiave API Google Safe impostata" msgstr "No Google Safe API key set" #: ../src/Backend.cpp:1549 msgid "Impossibile inizializzare la libreria CURL" msgstr "Unable to initialize CURL library" #: ../src/Backend.cpp:1571 msgid "Errore nella richiesta HTTP a Google Safe: " msgstr "Error in HTTP request to Google Safe: " #: ../src/Backend.cpp:1581 msgid "Chiave Google Safe valida e attiva" msgstr "Google Safe key is valid and active" #: ../src/Backend.cpp:1584 msgid "Chiave API non valida o risposta inattesa dal server" msgstr "API key invalid or unexpected server response" #: ../src/Backend.cpp:1602 msgid "Timer aggiornamento phishing attivato correttamente." msgstr "Phishing update timer activated successfully." #: ../src/Backend.cpp:1604 msgid "Timer aggiornamento phishing disattivato." msgstr "Phishing update timer deactivated." #: ../src/Backend.cpp:1609 msgid "Errore durante l’attivazione del timer di aggiornamento phishing!" msgstr "Error activating phishing update timer!" #: ../src/Backend.cpp:1611 msgid "Errore durante la disattivazione del timer di aggiornamento phishing!" msgstr "Error deactivating phishing update timer!" #: ../src/Backend.cpp:1801 msgid "❌ Impossibile scrivere credenziali SMB\n" msgstr "❌ Unable to write SMB credentials\n" #: ../src/Backend.cpp:1812 msgid "✔ Credenziali SMB salvate in modo sicuro (XOR + Base64)\n" msgstr "✔ SMB credentials saved securely (XOR + Base64)\n" #: ../src/Backend.cpp:1843 msgid "✔ Credenziali SMB caricate: " msgstr "✔ SMB credentials loaded: " #: ../src/Backend.cpp:1903 msgid "SMB ERROR: contesto SMB nullo\n" msgstr "SMB ERROR: null SMB context\n" #: ../src/Backend.cpp:1929 msgid "SMB ERROR: funzioni SMB mancanti (contesto non valido)\n" msgstr "SMB ERROR: missing SMB functions (invalid context)\n" #: ../src/Backend.cpp:1937 msgid "SMB ERROR: impossibile aprire " msgstr "SMB ERROR: unable to open " #: ../src/Backend.cpp:1981 msgid "SMB ERROR: ctx nullo\n" msgstr "SMB ERROR: null ctx\n" #: ../src/Backend.cpp:1992 msgid "SMB ERROR: funzioni SMB non disponibili\n" msgstr "SMB ERROR: SMB functions not available\n" #: ../src/Backend.cpp:1999 msgid "SMB ERROR: impossibile aprire file: " msgstr "SMB ERROR: unable to open file: " #: ../src/Backend.cpp:2010 msgid "SMB ERROR: callback fallita\n" msgstr "SMB ERROR: callback failed\n" #: ../src/Backend.cpp:2030 msgid "SMB ERROR: impossibile creare contesto SMB\n" msgstr "SMB ERROR: unable to create SMB context\n" #: ../src/Backend.cpp:2039 msgid "SMB ERROR: impossibile creare directory " msgstr "SMB ERROR: unable to create directory " #: ../src/Backend.cpp:2048 msgid "SMB ERROR: impossibile aprire file locale " msgstr "SMB ERROR: unable to open local file " #: ../src/Backend.cpp:2049 msgid " per scrittura\n" msgstr " for writing\n" #: ../src/Backend.cpp:2073 msgid "SMB ERROR: copia fallita per: " msgstr "SMB ERROR: copy failed for: " #: ../src/Backend.cpp:2121 msgid "=== Scansione Samba: " msgstr "=== Samba Scan: " #: ../src/Backend.cpp:2135 msgid "Percorso SMB rilevato. Creo contesto SMB..." msgstr "SMB path detected. Creating SMB context..." #: ../src/Backend.cpp:2140 msgid "ERRORE: impossibile creare contesto SMB." msgstr "ERROR: unable to create SMB context." #: ../src/Backend.cpp:2149 msgid "ERRORE: impossibile elencare la share SMB." msgstr "ERROR: unable to list SMB share." #: ../src/Backend.cpp:2157 msgid "File trovati via SMB: " msgstr "Files found via SMB: " #: ../src/Backend.cpp:2166 msgid "ERRORE: directory locale non trovata." msgstr "ERROR: local directory not found." #: ../src/Backend.cpp:2182 msgid "ERRORE: impossibile scansionare la directory locale." msgstr "ERROR: unable to scan local directory." #: ../src/Backend.cpp:2187 msgid "Nessun file da scansionare." msgstr "No files to scan." #: ../src/Backend.cpp:2192 msgid "File trovati localmente: " msgstr "Files found locally: " #: ../src/Backend.cpp:2209 msgid "ERRORE: clamdscan non trovato." msgstr "ERROR: clamdscan not found." #: ../src/Backend.cpp:2220 msgid "ERRORE: il demone clamd non è attivo." msgstr "ERROR: clamd daemon is not running." #: ../src/Backend.cpp:2225 msgid "Demone ClamAV rilevato." msgstr "ClamAV daemon detected." #: ../src/Backend.cpp:2235 msgid "ERRORE: impossibile creare temp dir." msgstr "ERROR: unable to create temporary directory." #: ../src/Backend.cpp:2249 msgid "Trovati " msgstr "Found " #: ../src/Backend.cpp:2249 msgid " file da copiare." msgstr " files to copy." #: ../src/Backend.cpp:2268 msgid "ERRORE copia locale: " msgstr "ERROR local copy: " #: ../src/Backend.cpp:2297 msgid "ERRORE lettura SMB: " msgstr "ERROR reading SMB: " #: ../src/Backend.cpp:2306 msgid "Copiato: " msgstr "Copied: " #: ../src/Backend.cpp:2324 msgid "Eseguo comando: " msgstr "Executing command: " #: ../src/Backend.cpp:2328 msgid "ERRORE: popen() fallita." msgstr "ERROR: popen() failed." #: ../src/Backend.cpp:2372 msgid "=== Scansione completata ===" msgstr "=== Scan completed ===" #: ../src/Backend.cpp:2373 ../src/usb/USBScanPage.cpp:652 msgid "File analizzati: " msgstr "Files analyzed: " #: ../src/Backend.cpp:2374 msgid "File infetti: " msgstr "Infected files: " #: ../src/Backend.cpp:2377 msgid "Scansione completata." msgstr "Scan completed." #: ../src/Backend.cpp:2401 msgid "Directory Samba non trovata: " msgstr "Samba directory not found: " #: ../src/Backend.cpp:2413 msgid "⚠️ Impossibile riscrivere la configurazione Samba\n" msgstr "⚠️ Unable to rewrite Samba configuration\n" #: ../src/Backend.cpp:2423 msgid "Rimossa directory Samba: " msgstr "Removed Samba directory: " #: ../src/Backend.cpp:2443 msgid "🔧 Inizializzazione canale D-Bus per invio alert..." msgstr "🔧 Initializing D-Bus channel for sending alerts..." #: ../src/Backend.cpp:2470 msgid "🟢 Servizio BastionGuard-ransomware-alert trovato su D-Bus." msgstr "🟢 BastionGuard-ransomware-alert service found on D-Bus." #: ../src/Backend.cpp:2472 msgid "" "⚠️ Servizio BastionGuard-ransomware-alert non attivo. Gli avvisi non verranno " "mostrati." msgstr "" "⚠️ BastionGuard-ransomware-alert service not active. Alerts will not be shown." #: ../src/Backend.cpp:2475 msgid "❌ Errore inizializzazione D-Bus: " msgstr "❌ D-Bus initialization error: " #: ../src/Backend.cpp:2506 msgid "⚠️ Impossibile verificare il listener D-Bus: " msgstr "⚠️ Unable to verify D-Bus listener: " #: ../src/Backend.cpp:2511 msgid "" "⚠️ Listener org.BastionGuard.Ransomware.Alert non attivo — nessun popup verrà " "mostrato." msgstr "" "⚠️ Listener org.BastionGuard.Ransomware.Alert not active — no popups will be shown." #: ../src/Backend.cpp:2534 msgid "" "📢 Alert ransomware inviato via D-Bus:\n" " - File: %1\n" " - Famiglia: %2" msgstr "" "📢 Ransomware alert sent via D-Bus:\n" " - File: %1\n" " - Family: %2" #: ../src/Backend.cpp:2539 msgid "❌ Errore nell'invio alert D-Bus: " msgstr "❌ Error sending D-Bus alert: " #: ../src/Backend.cpp:2560 msgid "⚠️ Impossibile spostare il file, provo copia: " msgstr "⚠️ Unable to move file, attempting copy: " #: ../src/Backend.cpp:2568 msgid "🧰 File spostato in quarantena: " msgstr "🧰 File moved to quarantine: " #: ../src/Backend.cpp:2573 msgid "File spostato in quarantena con successo:\n" msgstr "File successfully moved to quarantine:\n" #: ../src/Backend.cpp:2579 msgid "Quarantena completata" msgstr "Quarantine completed" #: ../src/Backend.cpp:2584 msgid "❌ Errore durante la quarantena: " msgstr "❌ Error during quarantine: " #: ../src/Backend.cpp:2603 msgid "📁 Creata directory di quarantena: " msgstr "📁 Quarantine directory created: " #: ../src/Backend.cpp:2614 msgid "❌ Errore in ensureQuarantinePath(): " msgstr "❌ Error in ensureQuarantinePath(): " #: ../src/Backend.cpp:2658 msgid "[Backend] ❌ Errore: init cURL\n" msgstr "[Backend] ❌ Error: cURL initialization\n" #: ../src/Backend.cpp:2664 msgid "[Backend] ❌ Errore apertura file " msgstr "[Backend] ❌ Error opening file " #: ../src/Backend.cpp:2669 msgid "[Backend] 🌍 Download da URL: " msgstr "[Backend] 🌍 Downloading from URL: " #: ../src/Backend.cpp:2694 msgid "[Backend] Risultato cURL: " msgstr "[Backend] cURL result: " #: ../src/Backend.cpp:2697 msgid "[Backend] ❌ Errore rete o HTTP (" msgstr "[Backend] ❌ Network or HTTP error (" #: ../src/Backend.cpp:2702 msgid "[Backend] ⚠ banks.json scaricato ma vuoto.\n" msgstr "[Backend] ⚠ banks.json downloaded but empty.\n" #: ../src/Backend.cpp:2706 msgid "[Backend] ✅ Lista banche aggiornata (" msgstr "[Backend] ✅ Banks list updated (" #: ../src/Backend.cpp:2740 msgid "✔ Whitelist salvata (" msgstr "✔ Whitelist saved (" #: ../src/Backend.cpp:2742 msgid "❌ Errore salvataggio whitelist: " msgstr "❌ Error saving whitelist: " #: ../src/Backend.cpp:2759 msgid "✔ Whitelist caricata (" msgstr "✔ Whitelist loaded (" #: ../src/Backend.cpp:2761 msgid "⚠ Errore caricamento whitelist: " msgstr "⚠ Error loading whitelist: " #: ../src/Backend.cpp:2772 msgid "✔ dnsmasq ricaricato correttamente.\n" msgstr "✔ dnsmasq reloaded successfully.\n" #: ../src/Backend.cpp:2775 msgid "⚠️ Errore nel reload di dnsmasq.\n" msgstr "⚠️ Error reloading dnsmasq.\n" #: ../src/Backend.cpp:2781 msgid "[Backend] setPhishingPort(" msgstr "[Backend] setPhishingPort(" #: ../src/Backend.cpp:2781 msgid ") — funzione non più usata." msgstr ") — function no longer used." #: ../src/Backend.cpp:2815 msgid "[Firewall] Nessun IP valido estratto\n" msgstr "[Firewall] No valid IP extracted\n" #: ../src/Backend.cpp:2899 msgid "[Firewall] Impossibile aprire blacklist\n" msgstr "[Firewall] Unable to open blacklist\n" #: ../src/Backend.cpp:2915 msgid "[Firewall] Nessun IP valido trovato\n" msgstr "[Firewall] No valid IP found\n" #: ../src/QuarantinePage.cpp:45 msgid "Nessun file in quarantena" msgstr "No files in quarantine" #: ../src/QuarantinePage.cpp:88 msgid "⚠ Errore attivazione monitor quarantena: " msgstr "⚠ Error activating quarantine monitor: " #: ../src/QuarantinePage.cpp:127 msgid "Elimina" msgstr "Delete" #: ../src/RealtimePage.cpp:10 msgid "▶ Avvia protezione" msgstr "▶ Start protection" #: ../src/RealtimePage.cpp:11 msgid "■ Ferma protezione" msgstr "■ Stop protection" #: ../src/RealtimePage.cpp:26 ../src/MainWindow.cpp:285 msgid "Protezione in tempo reale" msgstr "Real-time protection" #: ../src/RealtimePage.cpp:42 msgid "Monitoraggio in tempo reale con AntiRansom Engine..." msgstr "Real-time monitoring with AntiRansom Engine..." #: ../src/RealtimePage.cpp:73 msgid "🔐 Protezione realtime pronta." msgstr "🔐 Real-time protection ready." #: ../src/RealtimePage.cpp:81 msgid "[RealtimePage] Avvio protezione richiesto" msgstr "[RealtimePage] Protection start requested" #: ../src/RealtimePage.cpp:82 msgid ">>> Protezione avviata" msgstr ">>> Protection started" #: ../src/RealtimePage.cpp:95 msgid "[RealtimePage] Arresto protezione richiesto" msgstr "[RealtimePage] Protection stop requested" #: ../src/RealtimePage.cpp:96 msgid ">>> Protezione fermata" msgstr ">>> Protection stopped" #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:115 msgid "Utente grafico rilevato: " msgstr "Graphical user detected: " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:131 msgid "ERRORE: impossibile determinare l'utente grafico." msgstr "ERROR: unable to determine graphical user." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:137 msgid "ERRORE: getpwnam fallito per utente: " msgstr "ERROR: getpwnam failed for user: " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:150 msgid "ERRORE: impossibile scrivere token utente: " msgstr "ERROR: unable to write user token: " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:160 msgid "Token copiato con successo all'utente: " msgstr "Token successfully copied to user: " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:175 msgid "Token caricato da /etc" msgstr "Token loaded from /etc" #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:180 msgid "Token non presente, creazione nuovo..." msgstr "Token not present, creating new one..." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:218 msgid "Token creato in /etc" msgstr "Token created in /etc" #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:245 msgid "Alert inviato: " msgstr "Alert sent: " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:466 msgid "DelayedScanQueue: aggiunto " msgstr "DelayedScanQueue: added " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:474 msgid "DelayedScanQueue: thread avviato" msgstr "DelayedScanQueue: thread started" #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:498 msgid "DelayedScanQueue: SCANSIONE RITARDATA → " msgstr "DelayedScanQueue: DELAYED SCAN → " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:505 msgid "DelayedScanQueue: thread terminato" msgstr "DelayedScanQueue: thread terminated" #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:583 #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:788 msgid " non accessibile" msgstr " not accessible" #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:693 msgid "ATOMIC RENAME rilevato → " msgstr "ATOMIC RENAME detected → " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:728 msgid "Avvio Anti-Ransomware (Realtime + YARA + Delayed Scan)" msgstr "Starting Anti-Ransomware (Realtime + YARA + Delayed Scan)" #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:737 msgid "ERRORE: impossibile caricare/creare token." msgstr "ERROR: unable to load/create token." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:746 msgid "ERRORE FATALE: impossibile determinare utente desktop." msgstr "FATAL ERROR: unable to determine desktop user." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:752 msgid "ERRORE: getpwnam fallito per utente " msgstr "ERROR: getpwnam failed for user " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:760 msgid "ERRORE FATALE: HOME non accessibile: " msgstr "FATAL ERROR: HOME not accessible: " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:764 msgid "Utente rilevato: " msgstr "User detected: " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:765 msgid "Home monitorata: " msgstr "Monitored home: " #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:796 msgid " non accessibile (area protetta/FUSE)" msgstr " not accessible (protected area/FUSE)" #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:802 msgid "Lista directory monitorate:" msgstr "List of monitored directories:" #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:812 msgid "ERRORE FATALE: impossibile caricare regole YARA." msgstr "FATAL ERROR: unable to load YARA rules." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:816 msgid "Regole YARA caricate correttamente." msgstr "YARA rules loaded successfully." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:828 msgid "Thread delayed avviato (ritardo 30 secondi)." msgstr "Delayed thread started (30 seconds delay)." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:836 msgid "ERRORE FATALE: inotify init fallito." msgstr "FATAL ERROR: inotify init failed." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:842 msgid "Inotify inizializzato correttamente." msgstr "Inotify initialized successfully." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:848 msgid "Thread realtime avviato." msgstr "Realtime thread started." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:861 msgid "Richiesta terminazione..." msgstr "Termination requested..." #: ../src/scanner-ransomware/BastionGuard-ransomware-realtime.cpp:868 msgid "Anti-Ransomware terminato correttamente." msgstr "Anti-Ransomware terminated successfully." #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:329 msgid "[D-Bus] Alert inviato: " msgstr "[D-Bus] Alert sent: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:333 msgid "[D-Bus] Errore alert: " msgstr "[D-Bus] Alert error: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:375 msgid "Allowlist non trovata: " msgstr "Allowlist not found: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:379 msgid "Allowlist caricata da: " msgstr "Allowlist loaded from: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:401 msgid "voci allowlist caricate" msgstr "allowlist entries loaded" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:474 msgid "Config non trovata, uso default (YARA=1, DB=0, scan=/home)" msgstr "Config not found, using default (YARA=1, DB=0, scan=/home)" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:492 msgid "Config trovata: " msgstr "Config found: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:528 msgid "Parametro max_memory invalido: " msgstr "Invalid max_memory parameter: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:534 msgid "Parametro scan_interval invalido: " msgstr "Invalid scan_interval parameter: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:568 msgid "Uso cartella YARA utente: " msgstr "Using user YARA folder: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:571 msgid "Uso cartella YARA di sistema: " msgstr "Using system YARA folder: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:574 msgid "Cartella YARA non trovata, uso fallback interno: " msgstr "YARA folder not found, using internal fallback: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:578 msgid "Percorso YARA specificato non trovato: " msgstr "Specified YARA path not found: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:585 msgid "Config caricata correttamente" msgstr "Configuration loaded successfully" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:598 msgid "Nessuna configurazione Samba trovata: " msgstr "No Samba configuration found: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:609 msgid "directory Samba caricate" msgstr "Samba directories loaded" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:685 msgid "Errore creazione compilatore YARA" msgstr "Error creating YARA compiler" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:702 msgid "Caricata regola YARA: " msgstr "Loaded YARA rule: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:704 msgid "Errore compilando: " msgstr "Error compiling: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:708 msgid "Cartella YARA non valida: " msgstr "Invalid YARA folder: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:715 msgid "Integrità compromessa per la regola Zero-Day!" msgstr "Integrity compromised for Zero-Day rule!" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:716 msgid "SHA256 atteso: " msgstr "Expected SHA256: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:717 msgid "SHA256 trovato: " msgstr "Found SHA256: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:726 msgid "Caricata regola Zero-Day protetta: " msgstr "Loaded protected Zero-Day rule: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:728 msgid "Errore compilando Zero-Day: " msgstr "Error compiling Zero-Day: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:733 msgid "Regola Zero-Day non trovata: " msgstr "Zero-Day rule not found: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:738 msgid "Nessuna regola YARA valida trovata." msgstr "No valid YARA rules found." #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:743 msgid "Errore compilazione regole YARA" msgstr "Error compiling YARA rules" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:749 msgid "regole YARA totali compilate" msgstr "total YARA rules compiled" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:757 msgid "📄 Scansione file: " msgstr "📄 Scanning file: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:760 #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1031 msgid "❌ File non trovato: " msgstr "❌ File not found: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:767 #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:820 msgid "❌ Errore caricamento regole YARA\n" msgstr "❌ Error loading YARA rules\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:784 msgid "❌ Errore durante la scansione YARA\n" msgstr "❌ Error during YARA scanning\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:791 msgid "✔ Nessuna regola YARA ha matchato.\n" msgstr "✔ No YARA rules matched.\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:797 msgid "⚠ RILEVATO!\n" msgstr "⚠ DETECTED!\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:798 msgid " Regole trovate:\n" msgstr " Rules found:\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:802 msgid " Severità massima: " msgstr " Maximum severity: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:810 #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1077 msgid "📁 Scansione directory: " msgstr "📁 Scanning directory: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:813 msgid "❌ Directory non trovata: " msgstr "❌ Directory not found: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:847 msgid "⚠ RILEVATO: " msgstr "⚠ DETECTED: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:856 msgid "✔ Nessun file infetto trovato.\n" msgstr "✔ No infected files found.\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:860 msgid "⚠ Trovati " msgstr "⚠ Found " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:860 msgid " file infetti.\n" msgstr " infected files.\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:927 msgid "Errore inizializzazione YARA" msgstr "Error initializing YARA" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:938 msgid "🧠 Max memory dinamica settata a: " msgstr "🧠 Dynamic max memory set to: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:985 msgid "Uso:\n" msgstr "Usage:\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:986 msgid " BastionGuard-antiransomware (modalità demone)\n" msgstr " BastionGuard-antiransomware (daemon mode)\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:987 msgid "" " BastionGuard-antiransomware --scan (scansiona un singolo " "file)\n" msgstr "" " BastionGuard-antiransomware --scan (scan a single file)\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:988 msgid "" " BastionGuard-antiransomware --scan-dir (scansiona una " "directory)\n" msgstr "" " BastionGuard-antiransomware --scan-dir (scan a directory)\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:989 msgid "" " BastionGuard-antiransomware --rules-dir (override path regole)\n" msgstr "" " BastionGuard-antiransomware --rules-dir (override rules path)\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:990 msgid " BastionGuard-antiransomware --0day-protection \n" msgstr " BastionGuard-antiransomware --0day-protection \n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:991 msgid " BastionGuard-antiransomware --help\n" msgstr " BastionGuard-antiransomware --help\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1000 msgid "❌ Non puoi usare --scan e --scan-dir insieme.\n" msgstr "❌ You cannot use --scan and --scan-dir together.\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1010 msgid "" "❌ Impossibile compilare le regole YARA; il demone continuerà senza YARA\n" msgstr "" "❌ Unable to compile YARA rules; daemon will continue without YARA\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1043 msgid "🔍 Scansione file: " msgstr "🔍 Scanning file: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1058 msgid "⚠ RILEVATO nel file di test!\n" msgstr "⚠ DETECTED in test file!\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1061 msgid "✔ Nessuna regola matchata.\n" msgstr "✔ No rules matched.\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1113 msgid "▶ Demone Anti-Ransomware avviato\n" msgstr "▶ Anti-Ransomware daemon started\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1198 msgid "🟡 Allowlist: " msgstr "🟡 Allowlist: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1210 msgid "⚠️ [YARA_SAMBA] Ransomware in Samba: " msgstr "⚠️ [YARA_SAMBA] Ransomware in Samba: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1229 msgid "⚠️ [YARA] Ransomware rilevato: " msgstr "⚠️ [YARA] Ransomware detected: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1272 msgid "🌐 Scansione Samba: " msgstr "🌐 Samba scanning: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1289 msgid "⏩ Samba OFF. Solo YARA.\n" msgstr "⏩ Samba OFF. Only YARA.\n" #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1295 msgid "🔍 Scansione directory: " msgstr "🔍 Scanning directory: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1312 msgid "Errore scansione: " msgstr "Scan error: " #: ../src/scanner-ransomware/BastionGuard-ransomware-scanner.cpp:1327 msgid "⏹ Demone Anti-Ransomware terminato\n" msgstr "⏹ Anti-Ransomware daemon terminated\n" #: ../src/ClamdConfig.cpp:109 msgid "❌ Errore backup: " msgstr "❌ Backup error: " #: ../src/ClamdConfig.cpp:116 msgid "❌ Impossibile creare il backup di " msgstr "❌ Unable to create backup of " #: ../src/first_run/first-run-services-window.cpp:106 msgid "Impossibile creare directory config: " msgstr "Unable to create config directory: " #: ../src/first_run/first-run-services-window.cpp:126 msgid "Impossibile creare directory flag: " msgstr "Unable to create flag directory: " #: ../src/first_run/first-run-services-window.cpp:145 msgid "Errore durante scrittura flag file: " msgstr "Error writing flag file: " #: ../src/first_run/first-run-services-window.cpp:177 msgid "Errore: impossibile aprire config.json per scrittura" msgstr "Error: unable to open config.json for writing" #: ../src/first_run/first-run-services-window.cpp:182 msgid "Errore durante il salvataggio config: " msgstr "Error saving configuration: " #: ../src/first_run/first-run-services-window.cpp:223 msgid "BastionGuard - Configurazione iniziale" msgstr "BastionGuard - Initial Configuration" #: ../src/first_run/first-run-services-window.cpp:239 msgid "⚠ Errore caricamento icona minimize\n" msgstr "⚠ Error loading minimize icon\n" #: ../src/first_run/first-run-services-window.cpp:250 msgid "⚠ Errore caricamento icona close\n" msgstr "⚠ Error loading close icon\n" #: ../src/first_run/first-run-services-window.cpp:277 msgid "⚠ Impossibile caricare logo-sidebar.png\n" msgstr "⚠ Unable to load logo-sidebar.png\n" #: ../src/first_run/first-run-services-window.cpp:300 msgid "Scegli quali servizi di protezione attivare" msgstr "Choose which protection services to activate" #: ../src/first_run/first-run-services-window.cpp:305 msgid "" "I servizi selezionati verranno avviati automaticamente al login.\n" "Potrai modificarli in qualsiasi momento dalle impostazioni." msgstr "" "The selected services will start automatically at login.\n" "You can modify them at any time from the settings." #: ../src/first_run/first-run-services-window.cpp:366 msgid "Configurazione minima" msgstr "Minimal configuration" #: ../src/first_run/first-run-services-window.cpp:370 msgid "Attiva tutto" msgstr "Activate everything" #: ../src/first_run/first-run-services-window.cpp:374 msgid "Applica e continua" msgstr "Apply and continue" #: ../src/UpdatePage.cpp:56 msgid "Aggiorna firme (freshclam)" msgstr "Update signatures (freshclam)" #: ../src/UpdatePage.cpp:58 msgid "Aggiungi sorgente" msgstr "Add source" #: ../src/UpdatePage.cpp:59 msgid "Salva sorgenti" msgstr "Save sources" #: ../src/UpdatePage.cpp:60 msgid "Sorgenti aggiuntive" msgstr "Additional sources" #: ../src/UpdatePage.cpp:75 msgid "Servizio automatico Freshclam:" msgstr "Automatic Freshclam service:" #: ../src/UpdatePage.cpp:79 msgid "Aggiorna automaticamente le firme SaneSecurity (ogni 2 ore):" msgstr "Automatically update SaneSecurity signatures (every 2 hours):" #: ../src/UpdatePage.cpp:101 msgid "Sorgenti di aggiornamento aggiuntive" msgstr "Additional update sources" #: ../src/UpdatePage.cpp:136 msgid "Abilito" msgstr "Enabling" #: ../src/UpdatePage.cpp:136 msgid "Disabilito" msgstr "Disabling" #: ../src/UpdatePage.cpp:162 msgid "🔄 Avvio aggiornamento delle firme...\n" msgstr "🔄 Starting signatures update...\n" #: ../src/UpdatePage.cpp:174 msgid "⏸️ Arresto servizio clamav-freshclam...\n" msgstr "⏸️ Stopping clamav-freshclam service...\n" #: ../src/UpdatePage.cpp:178 msgid "🚀 Avvio aggiornamento con pkexec freshclam...\n" msgstr "🚀 Starting update with pkexec freshclam...\n" #: ../src/UpdatePage.cpp:182 msgid "❌ Errore freshclam: " msgstr "❌ freshclam error: " #: ../src/UpdatePage.cpp:192 msgid "" "\n" "🧾 Codice di uscita: %1\n" msgstr "" "\n" "🧾 Exit code: %1\n" #: ../src/UpdatePage.cpp:195 msgid "▶️ Riavvio del servizio clamav-freshclam...\n" msgstr "▶️ Restarting clamav-freshclam service...\n" #: ../src/UpdatePage.cpp:199 ../src/UpdatePage.cpp:235 msgid "" "\n" "🔽 Scarico firme aggiuntive dalle sorgenti configurate...\n" msgstr "" "\n" "🔽 Downloading additional signatures from configured sources...\n" #: ../src/UpdatePage.cpp:203 msgid "🔐 Aggiornamento firme SaneSecurity...\n" msgstr "🔐 Updating SaneSecurity signatures...\n" #: ../src/UpdatePage.cpp:207 msgid "🔁 Ricarico clamd (clamav-daemon)...\n" msgstr "🔁 Reloading clamd (clamav-daemon)...\n" #: ../src/UpdatePage.cpp:210 msgid "⚠ Reload clamav-daemon fallito (codice non zero).\n" msgstr "⚠ clamav-daemon reload failed (non-zero exit code).\n" #: ../src/UpdatePage.cpp:215 msgid "✅ Aggiornamento completato con successo.\n" msgstr "✅ Update completed successfully.\n" #: ../src/UpdatePage.cpp:222 msgid "❌ Errore durante l'aggiornamento: %1\n" msgstr "❌ Error during update: %1\n" #: ../src/UpdatePage.cpp:286 msgid "⬇️ Scarico da: " msgstr "⬇️ Downloading from: " #: ../src/UpdatePage.cpp:293 msgid "" "\n" "✅ Aggiornamento firme extra completato.\n" msgstr "" "\n" "✅ Extra signatures update completed.\n" #: ../src/UpdatePage.cpp:315 ../src/UpdatePage.cpp:434 msgid "➕ Nuova sorgente" msgstr "➕ New source" #: ../src/UpdatePage.cpp:335 msgid "Nome sorgente (es. Sanesecurity)" msgstr "Source name (e.g. Sanesecurity)" #: ../src/UpdatePage.cpp:339 msgid "https://example.com/firme.cvd" msgstr "https://example.com/signatures.cvd" #: ../src/UpdatePage.cpp:342 msgid "_Richiede autenticazione" msgstr "_Requires authentication" #: ../src/UpdatePage.cpp:346 msgid "Username" msgstr "Username" #: ../src/UpdatePage.cpp:350 msgid "Password" msgstr "Password" #: ../src/UpdatePage.cpp:355 msgid "_Test connessione" msgstr "_Test connection" #: ../src/UpdatePage.cpp:356 msgid "_Salva sorgente" msgstr "_Save source" #: ../src/UpdatePage.cpp:357 msgid "_Elimina sorgente" msgstr "_Delete source" #: ../src/UpdatePage.cpp:456 msgid "💾 Sorgente salvata.\n" msgstr "💾 Source saved.\n" #: ../src/UpdatePage.cpp:461 msgid "❌ Sorgente rimossa.\n" msgstr "❌ Source removed.\n" #: ../src/UpdatePage.cpp:486 msgid "Sorgenti salvate in ~/.config/BastionGuard/sources.conf\n" msgstr "Sources saved in ~/.config/BastionGuard/sources.conf\n" #: ../src/UpdatePage.cpp:539 msgid "⚠ Nessun URL specificato per " msgstr "⚠ No URL specified for " #: ../src/UpdatePage.cpp:543 msgid "🔍 Test connessione a " msgstr "🔍 Testing connection to " #: ../src/UpdatePage.cpp:550 msgid "⚠ Nessuna password trovata per " msgstr "⚠ No password found for " #: ../src/UpdatePage.cpp:560 msgid "Errore: " msgstr "Error: " #: ../src/UpdatePage.cpp:563 msgid "Risposta HTTP: " msgstr "HTTP response: " #: ../src/UpdatePage.cpp:565 msgid "✅ Connessione riuscita.\n" msgstr "✅ Connection successful.\n" #: ../src/UpdatePage.cpp:567 msgid "❌ Connessione fallita o accesso negato.\n" msgstr "❌ Connection failed or access denied.\n" #: ../src/UpdatePage.cpp:626 msgid "🌐 Aggiornamento database SaneSecurity (mirror sicuro)...\n" msgstr "🌐 Updating SaneSecurity database (secure mirror)...\n" #: ../src/UpdatePage.cpp:648 msgid "❌ Errore rsync: " msgstr "❌ rsync error: " #: ../src/UpdatePage.cpp:674 msgid "📦 Firme SaneSecurity aggiornate senza toccare i database ufficiali.\n" msgstr "📦 SaneSecurity signatures updated without touching official databases.\n" #: ../src/UpdatePage.cpp:707 msgid "⏱️ Attivo aggiornamento automatico SaneSecurity ogni 2 ore...\n" msgstr "⏱️ Enabling automatic SaneSecurity update every 2 hours...\n" #: ../src/UpdatePage.cpp:708 msgid "⏸️ Disattivo aggiornamento automatico SaneSecurity...\n" msgstr "⏸️ Disabling automatic SaneSecurity update...\n" #: ../src/AntiRansomwarePage.cpp:31 msgid "⚠ Regola MATCH: " msgstr "⚠ MATCHING rule: " #: ../src/AntiRansomwarePage.cpp:73 msgid "📄 Scegli file" msgstr "📄 Choose file" #: ../src/AntiRansomwarePage.cpp:74 msgid "📂 Scegli cartella" msgstr "📂 Choose folder" #: ../src/AntiRansomwarePage.cpp:75 msgid "🧪 Scansiona" msgstr "🧪 Scan" #: ../src/AntiRansomwarePage.cpp:76 msgid "🔔 Test notifica" msgstr "🔔 Test notification" #: ../src/AntiRansomwarePage.cpp:103 msgid "🔐 Anti-Ransomware pronto.\n" msgstr "🔐 Anti-Ransomware ready.\n" #: ../src/AntiRansomwarePage.cpp:146 ../src/AntiRansomwarePage.cpp:165 #: ../src/firewall/FirewallChoiceDialog.cpp:13 ../src/bankgui-main.cpp:108 #: ../src/usb/ScanPromptWindow.cpp:11 ../src/usb/LiveScanDialog.cpp:100 #: ../src/payment_secure/BastionGuard-secure-main.cpp:103 #: ../src/SambaPage.cpp:286 msgid "Annulla" msgstr "Cancel" #: ../src/AntiRansomwarePage.cpp:147 ../src/AntiRansomwarePage.cpp:166 msgid "Seleziona" msgstr "Select" #: ../src/AntiRansomwarePage.cpp:171 msgid "📂 Cartella selezionata: " msgstr "📂 Selected folder: " #: ../src/AntiRansomwarePage.cpp:186 msgid "⚠ Nessun file o cartella selezionata." msgstr "⚠ No file or folder selected." #: ../src/AntiRansomwarePage.cpp:195 msgid "❌ Percorso non valido." msgstr "❌ Invalid path." #: ../src/AntiRansomwarePage.cpp:217 msgid "⚠ Nessuna regola YARA trovata." msgstr "⚠ No YARA rules found." #: ../src/AntiRansomwarePage.cpp:230 msgid "📜 Regole YARA caricate." msgstr "📜 YARA rules loaded." #: ../src/AntiRansomwarePage.cpp:242 msgid "🔍 Scansione: " msgstr "🔍 Scanning: " #: ../src/AntiRansomwarePage.cpp:249 msgid "❌ Errore YARA: " msgstr "❌ YARA error: " #: ../src/AntiRansomwarePage.cpp:258 msgid "⚠️ Rilevata regola YARA: " msgstr "⚠️ YARA rule detected: " #: ../src/AntiRansomwarePage.cpp:279 msgid "Rilevato ransomware:\n" msgstr "Ransomware detected:\n" #: ../src/AntiRansomwarePage.cpp:279 msgid "" "\n" "Regola: " msgstr "" "\n" "Rule: " #: ../src/AntiRansomwarePage.cpp:312 msgid "⚠ Impossibile leggere log realtime." msgstr "⚠ Unable to read realtime log." #: ../src/AntiRansomwarePage.cpp:352 msgid "Alert inviato:" msgstr "Alert sent:" #: ../src/AntiRansomwarePage.cpp:372 msgid "🚨 ALERT realtime: " msgstr "🚨 Realtime ALERT: " #: ../src/xdg-main.cpp:50 msgid "Usage: BastionGuard-bankopener \n" msgstr "Usage: BastionGuard-bankopener \n" #: ../src/xdg-main.cpp:55 msgid "[BankOpener] 🔍 Verifico dominio: " msgstr "[BankOpener] 🔍 Checking domain: " #: ../src/xdg-main.cpp:64 msgid "" "[BankOpener] 🖥️ Sessione Wayland rilevata → uso backend Wayland per CEF.\n" msgstr "" "[BankOpener] 🖥️ Wayland session detected → using Wayland backend for CEF.\n" #: ../src/xdg-main.cpp:71 msgid "[BankOpener] 🖥️ Sessione X11 rilevata → uso backend X11 per CEF.\n" msgstr "" "[BankOpener] 🖥️ X11 session detected → using X11 backend for CEF.\n" #: ../src/xdg-main.cpp:76 msgid "" "[BankOpener] ⚠️ Nessuna sessione grafica rilevata → fallback X11 software.\n" msgstr "" "[BankOpener] ⚠️ No graphical session detected → falling back to software X11.\n" #: ../src/xdg-main.cpp:105 msgid "[BankOpener] 🌍 Apertura browser di sistema: " msgstr "[BankOpener] 🌍 Opening system browser: " #: ../src/xdg-main.cpp:109 msgid "[BankOpener] ⚠️ Errore esecuzione comando: " msgstr "[BankOpener] ⚠️ Command execution error: " #: ../src/AntiPhishingEngine.cpp:45 msgid "Impossibile aprire blacklist phishing: " msgstr "Unable to open phishing blacklist: " #: ../src/AntiPhishingEngine.cpp:56 msgid "Blacklist phishing vuota o non caricata da " msgstr "Phishing blacklist empty or not loaded from " #: ../src/AntiPhishingEngine.cpp:59 msgid "voci caricate da blacklist phishing in " msgstr "entries loaded from phishing blacklist in " #: ../src/AntiPhishingEngine.cpp:80 msgid "⚠ URL in blacklist: " msgstr "⚠ URL in blacklist: " #: ../src/AntiPhishingEngine.cpp:84 msgid "⚠ URL sospetto (phishing euristico): " msgstr "⚠ Suspicious URL (heuristic phishing): " #: ../src/AntiPhishingEngine.cpp:104 msgid ">>> AntiPhishing avviato" msgstr ">>> AntiPhishing started" #: ../src/AntiPhishingEngine.cpp:109 msgid ">>> AntiPhishing fermato" msgstr ">>> AntiPhishing stopped" #: ../src/DashboardPage.cpp:54 msgid "Inizializzazione..." msgstr "Initializing..." #: ../src/DashboardPage.cpp:55 ../src/DashboardPage.cpp:232 msgid "Versione firme: sconosciuta" msgstr "Signatures version: unknown" #: ../src/DashboardPage.cpp:56 ../src/DashboardPage.cpp:239 msgid "Data aggiornamento: sconosciuta" msgstr "Update date: unknown" #: ../src/DashboardPage.cpp:57 msgid "Anti-Ransomware: stato sconosciuto" msgstr "Anti-Ransomware: unknown status" #: ../src/DashboardPage.cpp:58 msgid "Anti-Phishing: stato sconosciuto" msgstr "Anti-Phishing: unknown status" #: ../src/DashboardPage.cpp:84 msgid "Stato" msgstr "Status" #: ../src/DashboardPage.cpp:85 msgid "Versione Firme" msgstr "Signatures Version" #: ../src/DashboardPage.cpp:86 msgid "Ultimo aggiornamento" msgstr "Last update" #: ../src/DashboardPage.cpp:101 msgid "Ultimi file scansionati" msgstr "Recently scanned files" #: ../src/DashboardPage.cpp:128 msgid "⚠ Impossibile caricare immagine: " msgstr "⚠ Unable to load image: " #: ../src/DashboardPage.cpp:179 ../src/MainWindow.cpp:239 msgid "⚠ Impossibile caricare icona: " msgstr "⚠ Unable to load icon: " #: ../src/DashboardPage.cpp:227 msgid "Antivirus engine: Attivo" msgstr "Antivirus engine: Active" #: ../src/DashboardPage.cpp:255 msgid "Nessun file scansionato di recente." msgstr "No files scanned recently." #: ../src/DashboardPage.cpp:262 msgid "Anti-Ransomware: Attivo" msgstr "Anti-Ransomware: Active" #: ../src/DashboardPage.cpp:266 msgid "" "Anti-Ransomware: Disattivato" msgstr "" "Anti-Ransomware: Disabled" #: ../src/DashboardPage.cpp:274 msgid "Anti-Phishing: Attivo" msgstr "Anti-Phishing: Active" #: ../src/DashboardPage.cpp:278 msgid "Anti-Phishing: Disattivato" msgstr "Anti-Phishing: Disabled" #: ../src/SaneSecurityUpdater.cpp:35 msgid "Errore: impossibile creare la cartella temporanea" msgstr "Error: unable to create temporary folder" #: ../src/SaneSecurityUpdater.cpp:47 msgid "Errore durante rsync (codice " msgstr "Error during rsync (code " #: ../src/SaneSecurityUpdater.cpp:66 msgid "Errore copiando i file SaneSecurity" msgstr "Error copying SaneSecurity files" #: ../src/SaneSecurityUpdater.cpp:73 msgid "⚠ Impossibile ricaricare il servizio ClamAV: servizio non trovato" msgstr "⚠ Unable to reload ClamAV service: service not found" #: ../src/SecureBrowser.cpp:132 msgid "[SecureBrowser] ⚠ File non trovato: " msgstr "[SecureBrowser] ⚠ File not found: " #: ../src/SecureBrowser.cpp:139 msgid "[SecureBrowser] ⚠ Impossibile aprire: " msgstr "[SecureBrowser] ⚠ Unable to open: " #: ../src/SecureBrowser.cpp:168 msgid "[SecureBrowser] ✅ Caricati " msgstr "[SecureBrowser] ✅ Loaded " #: ../src/SecureBrowser.cpp:169 msgid " domini trusted da " msgstr " trusted domains from " #: ../src/SecureBrowser.cpp:172 msgid "[SecureBrowser] ❌ Errore parsing JSON (%1): %2" msgstr "[SecureBrowser] ❌ JSON parsing error (%1): %2" #: ../src/SecureBrowser.cpp:185 msgid "[SecureBrowser] 🔍 Caricamento domini trusted...\n" msgstr "[SecureBrowser] 🔍 Loading trusted domains...\n" #: ../src/SecureBrowser.cpp:195 msgid "[SecureBrowser] ✅ Cache inizializzata: " msgstr "[SecureBrowser] ✅ Cache initialized: " #: ../src/SecureBrowser.cpp:196 ../src/phishing/BastionGuard-daemon.cpp:93 msgid " domini trusted.\n" msgstr " trusted domains.\n" #: ../src/SecureBrowser.cpp:199 msgid "[SecureBrowser] 🔎 Verifica: 'intesasanpaolo.com' presente in cache.\n" msgstr "[SecureBrowser] 🔎 Check: 'intesasanpaolo.com' present in cache.\n" #: ../src/SecureBrowser.cpp:201 msgid "" "[SecureBrowser] 🔎 Verifica: 'intesasanpaolo.com' NON presente in cache.\n" msgstr "" "[SecureBrowser] 🔎 Check: 'intesasanpaolo.com' NOT present in cache.\n" #: ../src/SecureBrowser.cpp:209 msgid "[SecureBrowser] 🟢 Trusted (match diretto): " msgstr "[SecureBrowser] 🟢 Trusted (direct match): " #: ../src/SecureBrowser.cpp:219 msgid "[SecureBrowser] 🟢 Trusted (match parent '%1'): %2" msgstr "[SecureBrowser] 🟢 Trusted (parent match '%1'): %2" #: ../src/SecureBrowser.cpp:228 msgid "[SecureBrowser] 🔴 NON trusted: " msgstr "[SecureBrowser] 🔴 NOT trusted: " #: ../src/SecureBrowser.cpp:247 msgid "[SecureBrowser] 🌐 Browser creato.\n" msgstr "[SecureBrowser] 🌐 Browser created.\n" #: ../src/SecureBrowser.cpp:260 msgid "[SecureBrowser] 🔒 Tutte le finestre chiuse — uscita loop.\n" msgstr "[SecureBrowser] 🔒 All windows closed — exiting loop.\n" #: ../src/SecureBrowser.cpp:275 msgid "[SecureBrowser] 🌍 URL richiesto: " msgstr "[SecureBrowser] 🌍 Requested URL: " #: ../src/SecureBrowser.cpp:276 msgid "[SecureBrowser] 🧩 Host estratto: " msgstr "[SecureBrowser] 🧩 Extracted host: " #: ../src/SecureBrowser.cpp:280 msgid "[SecureBrowser] ✅ Dominio locale consentito.\n" msgstr "[SecureBrowser] ✅ Local domain allowed.\n" #: ../src/SecureBrowser.cpp:298 msgid "[SecureBrowser] 🟢 Consentito (entry trusted): " msgstr "[SecureBrowser] 🟢 Allowed (trusted entry): " #: ../src/SecureBrowser.cpp:308 msgid "[SecureBrowser] 🟢 Consentito (subframe in sessione trusted): " msgstr "[SecureBrowser] 🟢 Allowed (subframe in trusted session): " #: ../src/SecureBrowser.cpp:313 msgid "" "[SecureBrowser] 🟢 Consentito (main-frame senza gesto utente, sessione " "trusted): " msgstr "" "[SecureBrowser] 🟢 Allowed (main-frame without user gesture, trusted session): " #: ../src/SecureBrowser.cpp:321 msgid "[SecureBrowser] 🟢 Consentito (main-frame click verso trusted): " msgstr "[SecureBrowser] 🟢 Allowed (main-frame click to trusted): " #: ../src/SecureBrowser.cpp:325 msgid "" "[SecureBrowser] 🚫 Bloccato (uscita main-frame user-initiated da sessione " "trusted): " msgstr "" "[SecureBrowser] 🚫 Blocked (user-initiated main-frame exit from trusted session): " #: ../src/SecureBrowser.cpp:336 msgid "[SecureBrowser] 🟢 Consentito (bank domain): " msgstr "[SecureBrowser] 🟢 Allowed (bank domain): " #: ../src/SecureBrowser.cpp:340 msgid "[SecureBrowser] 🟢 Consentito (payment domain): " msgstr "[SecureBrowser] 🟢 Allowed (payment domain): " #: ../src/SecureBrowser.cpp:344 msgid "[SecureBrowser] 🚫 Navigazione bloccata verso dominio non trusted: " msgstr "[SecureBrowser] 🚫 Navigation blocked to untrusted domain: " #: ../src/SecureBrowser.cpp:364 msgid "[SecureBrowser] ✅ Bypass cert error (" msgstr "[SecureBrowser] ✅ Bypassing cert error (" #: ../src/SecureBrowser.cpp:365 msgid ") per dominio trusted/payment: " msgstr ") for trusted/payment domain: " #: ../src/SecureBrowser.cpp:370 msgid "[SecureBrowser] ⛔ Cert error (" msgstr "[SecureBrowser] ⛔ Certificate error (" #: ../src/SecureBrowser.cpp:371 msgid ") per dominio NON trusted: " msgstr ") for NON-trusted domain: " #: ../src/SecureBrowser.cpp:523 msgid "" "[SecureBrowser] ⚠️ Richiesta duplicata nello stesso processo. Apro via " "sistema.\n" msgstr "" "[SecureBrowser] ⚠️ Duplicate request in same process. Opening via system.\n" #: ../src/SecureBrowser.cpp:530 msgid "[SecureBrowser] ℹ️ Istanza già attiva. Apro nel browser di sistema.\n" msgstr "[SecureBrowser] ℹ️ Instance already active. Opening in system browser.\n" #: ../src/SecureBrowser.cpp:536 msgid "[SecureBrowser] 🧩 Avvio sandbox Blink/CEF per URL: " msgstr "[SecureBrowser] 🧩 Starting Blink/CEF sandbox for URL: " #: ../src/SecureBrowser.cpp:548 msgid "[SecureBrowser] ⚠️ Creazione cache_dir fallita: " msgstr "[SecureBrowser] ⚠️ cache_dir creation failed: " #: ../src/SecureBrowser.cpp:569 msgid "[SecureBrowser] ❌ CefInitialize returned false for backend: " msgstr "[SecureBrowser] ❌ CefInitialize returned false for backend: " #: ../src/SecureBrowser.cpp:578 msgid "[SecureBrowser] ⚠️ CEF init (Wayland?) fallito → ritento con X11.\n" msgstr "[SecureBrowser] ⚠️ CEF init (Wayland?) failed → retrying with X11.\n" #: ../src/SecureBrowser.cpp:584 msgid "" "[SecureBrowser] ❌ CefInitialize fallito definitivamente. Fallback a xdg-" "open.\n" msgstr "" "[SecureBrowser] ❌ CefInitialize definitively failed. Falling back to xdg-open.\n" #: ../src/SecureBrowser.cpp:600 msgid "" "[SecureBrowser] ❌ CreateBrowserView() ha restituito nullptr. Fallback a xdg-" "open.\n" msgstr "" "[SecureBrowser] ❌ CreateBrowserView() returned nullptr. Falling back to xdg-open.\n" #: ../src/SecureBrowser.cpp:631 msgid "[SecureBrowser] ✅ Sandbox chiusa correttamente.\n" msgstr "[SecureBrowser] ✅ Sandbox closed successfully.\n" #: ../src/SecureBrowser.cpp:647 msgid "[SecureBrowser] 🔍 Caricamento domini pagamenti...\n" msgstr "[SecureBrowser] 🔍 Loading payment domains...\n" #: ../src/SecureBrowser.cpp:661 msgid "[SecureBrowser] ✅ Cache pagamenti inizializzata: " msgstr "[SecureBrowser] ✅ Payments cache initialized: " #: ../src/SecureBrowser.cpp:670 msgid "[SecureBrowser] 🟢 Payment trusted (match diretto): " msgstr "[SecureBrowser] 🟢 Payment trusted (direct match): " #: ../src/SecureBrowser.cpp:679 msgid "[SecureBrowser] 🟢 Payment trusted (match parent '" msgstr "[SecureBrowser] 🟢 Payment trusted (parent match '" #: ../src/alert/AlertWindowRealtime.cpp:13 msgid "⚠️ Ransomware rilevato in tempo reale" msgstr "⚠️ Ransomware detected in real time" #: ../src/alert/AlertWindowRealtime.cpp:16 msgid "" "Famiglia: %1\n" "File: %2" msgstr "" "Family: %1\n" "File: %2" #: ../src/alert/AlertWindowRealtime.cpp:21 #: ../src/alert/BastionGuard-ransomware-alert.cpp:34 msgid "Metti in quarantena" msgstr "Quarantine" #: ../src/alert/AlertWindowRealtime.cpp:22 #: ../src/alert/BastionGuard-ransomware-alert.cpp:35 msgid "Ignora" msgstr "Ignore" #: ../src/alert/AlertWindowRealtime.cpp:23 #: ../src/alert/BastionGuard-ransomware-alert.cpp:36 msgid "Ignora tutti" msgstr "Ignore all" #: ../src/alert/AlertWindowRealtime.cpp:48 #: ../src/firewall/FirewallChoiceDialog.cpp:43 msgid "Errore caricamento CSS\n" msgstr "CSS loading error\n" #: ../src/alert/AlertWindowRealtime.cpp:72 #: ../src/firewall/FirewallChoiceDialog.cpp:64 msgid "Icona X non trovata\n" msgstr "X icon not found\n" #: ../src/alert/AlertWindowRealtime.cpp:105 msgid "Errore caricamento icona alert\n" msgstr "Alert icon loading error\n" #: ../src/alert/AlertWindowRealtime.cpp:116 #: ../src/alert/BastionGuard-ransomware-alert.cpp:107 msgid "🕒 %1 altri in attesa..." msgstr "🕒 %1 others pending..." #: ../src/alert/AlertWindowRealtime.cpp:164 msgid "[✔] File quarantena: %1" msgstr "[✔] Quarantine file: %1" #: ../src/alert/AlertWindowRealtime.cpp:169 msgid "[ERROR] Quarantena fallita per: %1" msgstr "[ERROR] Quarantine failed for: %1" #: ../src/alert/BastionGuard-ransomware-alert.cpp:32 msgid "⚠️ Attenzione: BastionGuard ha rilevato un'infezione" msgstr "⚠️ Warning: BastionGuard detected an infection" #: ../src/alert/BastionGuard-ransomware-alert.cpp:33 msgid "Famiglia: " msgstr "Family: " #: ../src/alert/BastionGuard-ransomware-alert.cpp:33 msgid "File: " msgstr "File: " #: ../src/alert/BastionGuard-ransomware-alert.cpp:165 msgid "[✔] File in quarantena: " msgstr "[✔] File in quarantine: " #: ../src/alert/BastionGuard-ransomware-alert.cpp:167 msgid "❌ Errore quarantena: " msgstr "❌ Quarantine error: " #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:83 msgid "[ERRORE] Token root NON trovato: " msgstr "[ERROR] Root token NOT found: " #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:92 msgid "[INFO] Vecchio token utente rimosso" msgstr "[INFO] Old user token removed" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:94 msgid "[ERRORE] Non posso rimuovere vecchio token utente" msgstr "[ERROR] Cannot remove old user token" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:100 msgid "[ERRORE] Non posso aprire token root" msgstr "[ERROR] Cannot open root token" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:106 msgid "[ERRORE] Non posso creare token utente" msgstr "[ERROR] Cannot create user token" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:117 msgid "[OK] Token copiato nella home: " msgstr "[OK] Token copied to home: " #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:128 msgid "[ERRORE] Non posso aprire token utente" msgstr "[ERROR] Cannot open user token" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:134 msgid "[ERRORE] Token utente vuoto" msgstr "[ERROR] User token empty" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:136 msgid "[OK] Token caricato: " msgstr "[OK] Token loaded: " #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:165 msgid "[INFO] Avvio listener TCP..." msgstr "[INFO] Starting TCP listener..." #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:169 msgid "[ERRORE] socket fallita" msgstr "[ERROR] socket failed" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:182 msgid "[ERRORE] bind fallita: " msgstr "[ERROR] bind failed: " #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:187 msgid "[OK] Bind su 127.0.0.1:1025" msgstr "[OK] Bound to 127.0.0.1:1025" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:190 msgid "[ERRORE] listen fallita" msgstr "[ERROR] listen failed" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:195 msgid "[OK] Listener avviato" msgstr "[OK] Listener started" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:227 msgid "[IGNORATO] Alert proveniente dal log interno" msgstr "[IGNORED] Alert coming from internal log" #: ../src/alert/BastionGuard-ransomware-realtime-alert.cpp:233 msgid "[SCARTATO] Token non valido" msgstr "[DISCARDED] Invalid token" #: ../src/MainWindow.cpp:61 msgid "✔ Caricato config da: " msgstr "✔ Loaded config from: " #: ../src/MainWindow.cpp:68 msgid "❌ Errore: impossibile leggere clamd.conf in nessuno dei percorsi noti" msgstr "❌ Error: unable to read clamd.conf in any known path" #: ../src/MainWindow.cpp:168 ../src/bankgui-main.cpp:159 #: ../src/payment_secure/BastionGuard-secure-main.cpp:151 msgid "⚠ Errore caricamento icona minimize" msgstr "⚠ Error loading minimize icon" #: ../src/MainWindow.cpp:179 msgid "[MainWindow] Pulsante close → nascondo nella tray" msgstr "[MainWindow] Close button → hiding in tray" #: ../src/MainWindow.cpp:183 ../src/bankgui-main.cpp:173 #: ../src/payment_secure/BastionGuard-secure-main.cpp:165 #: ../src/SettingsWindow.cpp:81 msgid "⚠ Errore caricamento icona close" msgstr "⚠ Error loading close icon" #: ../src/MainWindow.cpp:206 ../src/bankgui-main.cpp:69 #: ../src/payment_secure/BastionGuard-secure-main.cpp:53 msgid "⚠ Impossibile caricare data/logo-sidebar.png" msgstr "⚠ Unable to load data/logo-sidebar.png" #: ../src/MainWindow.cpp:277 msgid "Dashboard" msgstr "Dashboard" #: ../src/MainWindow.cpp:283 msgid "Scansione in tempo reale" msgstr "Real-time scanning" #: ../src/MainWindow.cpp:284 msgid "Protezione Ransomware" msgstr "Ransomware Protection" #: ../src/MainWindow.cpp:286 ../src/wizard/wizard_window.cpp:458 msgid "Banche" msgstr "Banks" #: ../src/MainWindow.cpp:287 msgid "Privacy Webcam" msgstr "Webcam Privacy" #: ../src/MainWindow.cpp:288 msgid "Log" msgstr "Log" #: ../src/MainWindow.cpp:289 msgid "Quarantena" msgstr "Quarantine" #: ../src/MainWindow.cpp:290 msgid "Periferiche USB" msgstr "USB Devices" #: ../src/MainWindow.cpp:291 msgid "Samba" msgstr "Samba" #: ../src/MainWindow.cpp:292 msgid "Violazioni Identità" msgstr "Identity Breaches" #: ../src/MainWindow.cpp:316 ../src/TrayIcon.cpp:45 msgid "Impostazioni" msgstr "Settings" #: ../src/MainWindow.cpp:333 msgid "Aggiornamenti" msgstr "Updates" #: ../src/MainWindow.cpp:350 msgid "Informazioni" msgstr "About" #: ../src/MainWindow.cpp:351 msgid "Donazioni" msgstr "Donations" #: ../src/MainWindow.cpp:376 msgid "[MainWindow] Nascondo finestra nella tray invece di chiudere" msgstr "[MainWindow] Hiding window in tray instead of closing" #: ../src/MainWindow.cpp:390 msgid "[MainWindow] Ritorno alla Dashboard" msgstr "[MainWindow] Returning to Dashboard" #: ../src/MainWindow.cpp:392 msgid "⚠ Errore durante il ritorno alla Dashboard: " msgstr "⚠ Error returning to Dashboard: " #: ../src/firewall/FirewallChoiceDialog.cpp:8 msgid "Protezione Firewall" msgstr "Firewall Protection" #: ../src/firewall/FirewallChoiceDialog.cpp:9 msgid "Scegli quale firewall usare per bloccare gli IP malevoli:" msgstr "Choose which firewall to use to block malicious IPs:" #: ../src/firewall/FirewallChoiceDialog.cpp:10 msgid "Usa firewalld" msgstr "Use firewalld" #: ../src/firewall/FirewallChoiceDialog.cpp:11 msgid "Usa UFW" msgstr "Use UFW" #: ../src/firewall/FirewallChoiceDialog.cpp:12 msgid "Installa firewall" msgstr "Install firewall" #: ../src/firewall/FirewallChoiceDialog.cpp:104 msgid "Installa firewall (%1)" msgstr "Install firewall (%1)" #: ../src/firewall/FirewallChoiceDialog.cpp:142 msgid "" "Per installare il firewall esegui il comando:\n" "\n" msgstr "" "To install the firewall, run the command:\n" "\n" #: ../src/firewall/FirewallRuleManager.cpp:23 msgid "[Firewall] Command failed: " msgstr "[Firewall] Command failed: " #: ../src/firewall/FirewallRuleManager.cpp:35 #: ../src/firewall/FirewallRuleManager.cpp:71 msgid "[Firewall] SKIP non-IP: " msgstr "[Firewall] SKIP non-IP: " #: ../src/firewall/FirewallRuleManager.cpp:39 #: ../src/firewall/FirewallRuleManager.cpp:75 msgid "[Firewall] Nessun IP valido da applicare.\n" msgstr "[Firewall] No valid IP to apply.\n" #: ../src/firewall/FirewallRuleManager.cpp:89 msgid "[Firewall] Applying rules with firewalld (ipset)\n" msgstr "[Firewall] Applying rules with firewalld (ipset)\n" #: ../src/firewall/FirewallRuleManager.cpp:94 msgid "[Firewall] Applying rules with UFW\n" msgstr "[Firewall] Applying rules with UFW\n" #: ../src/firewall/FirewallRuleManager.cpp:99 msgid "[Firewall] Nessun firewall selezionato.\n" msgstr "[Firewall] No firewall selected.\n" #: ../src/TrayIcon.cpp:51 msgid "Mostra/Maximizza finestra" msgstr "Show/Maximize window" #: ../src/TrayIcon.cpp:57 msgid "Esci" msgstr "Quit" #: ../src/ScanPage.hpp:35 ../src/usb/ScanPromptWindow.cpp:10 msgid "Scansiona" msgstr "Scan" #: ../src/AntiRansomEngine.cpp:45 msgid "❌ Errore: impossibile inizializzare YARA\n" msgstr "❌ Error: unable to initialize YARA\n" #: ../src/AntiRansomEngine.cpp:67 msgid "❌ Errore: creazione compilatore YARA\n" msgstr "❌ Error: YARA compiler creation failed\n" #: ../src/AntiRansomEngine.cpp:77 msgid "❌ Errore YARA in " msgstr "❌ YARA error in " #: ../src/AntiRansomEngine.cpp:78 msgid "??" msgstr "??" #: ../src/AntiRansomEngine.cpp:88 msgid "⚠ Regole non trovate: " msgstr "⚠ Rules not found: " #: ../src/AntiRansomEngine.cpp:95 msgid "⚠ Impossibile aprire regole: " msgstr "⚠ Unable to open rules: " #: ../src/AntiRansomEngine.cpp:104 msgid "❌ Errori trovati, regole YARA non caricate\n" msgstr "❌ Errors found, YARA rules not loaded\n" #: ../src/AntiRansomEngine.cpp:110 msgid "❌ Errore compilazione regole YARA\n" msgstr "❌ YARA rules compilation error\n" #: ../src/AntiRansomEngine.cpp:112 msgid "✔ Regole YARA caricate da " msgstr "✔ YARA rules loaded from " #: ../src/AntiRansomEngine.cpp:127 msgid "⚠ Ransomware rilevato: " msgstr "⚠ Ransomware detected: " #: ../src/AntiRansomEngine.cpp:137 msgid "Nessuna regola YARA caricata, impossibile scansionare " msgstr "No YARA rules loaded, unable to scan " #: ../src/AntiRansomEngine.cpp:142 msgid "File inesistente o non accessibile: " msgstr "File does not exist or is not accessible: " #: ../src/AntiRansomEngine.cpp:146 msgid "Scansione file: " msgstr "Scanning file: " #: ../src/AntiRansomEngine.cpp:160 msgid "Errore scansione file: " msgstr "File scan error: " #: ../src/AntiRansomEngine.cpp:170 msgid ">>> AntiRansomEngine avviato" msgstr ">>> AntiRansomEngine started" #: ../src/AntiRansomEngine.cpp:188 msgid "⚠ Comportamento sospetto rilevato: " msgstr "⚠ Suspicious behavior detected: " #: ../src/AntiRansomEngine.cpp:192 msgid "❌ Errore durante la scansione: " msgstr "❌ Error during scanning: " #: ../src/AntiRansomEngine.cpp:201 msgid ">>> AntiRansomEngine fermato" msgstr ">>> AntiRansomEngine stopped" #: ../src/AntiRansomEngine.cpp:207 msgid "[AntiRansomEngine] Avvio monitoraggio..." msgstr "[AntiRansomEngine] Starting monitoring..." #: ../src/AntiRansomEngine.cpp:215 msgid "[AntiRansomEngine] Arresto monitoraggio..." msgstr "[AntiRansomEngine] Stopping monitoring..." #: ../src/wizard/wizard_window.cpp:113 msgid "Script di rete non trovato: " msgstr "Network script not found: " #: ../src/wizard/wizard_window.cpp:123 msgid "Avvio BastionGuard-net-setup.sh con pkexec..." msgstr "Starting BastionGuard-net-setup.sh with pkexec..." #: ../src/wizard/wizard_window.cpp:150 msgid "✅ Setup di rete completato con successo (pkexec)." msgstr "✅ Network setup completed successfully (pkexec)." #: ../src/wizard/wizard_window.cpp:153 msgid "⚠️ Errore esecuzione BastionGuard-net-setup.sh, codice: " msgstr "⚠️ Error executing BastionGuard-net-setup.sh, code: " #: ../src/wizard/wizard_window.cpp:158 msgid "ERRORE GLib: " msgstr "GLib ERROR: " #: ../src/wizard/wizard_window.cpp:161 ../src/wizard/wizard_window.cpp:189 msgid "Eccezione: " msgstr "Exception: " #: ../src/wizard/wizard_window.cpp:164 msgid "Errore sconosciuto durante run_net_setup()." msgstr "Unknown error during run_net_setup()." #: ../src/wizard/wizard_window.cpp:175 msgid "Script non trovato: " msgstr "Script not found: " #: ../src/wizard/wizard_window.cpp:182 msgid "User agents abilitati con successo." msgstr "User agents enabled successfully." #: ../src/wizard/wizard_window.cpp:185 msgid "Errore nell'esecuzione dello script, codice: " msgstr "Error executing script, code: " #: ../src/wizard/wizard_window.cpp:192 msgid "Errore sconosciuto durante l'esecuzione dello script." msgstr "Unknown error during script execution." #: ../src/wizard/wizard_window.cpp:223 msgid "" "Benvenuto nel setup iniziale di BastionGuard.\n" "Questo wizard ti guiderà passo passo nella configurazione iniziale.\n" "\n" "Sono previsti 9 passaggi principali:\n" "1) Configurazione del resolver locale (DNS 127.0.0.1)\n" "2) Apertura delle porte firewall necessarie\n" "3) Configurazione avanzata del firewall (nftables)\n" "4) Generazione e installazione della CA di sistema\n" "5) Configurazione del webserver (porte HTTP/HTTPS)\n" "6) Installazione del Native Messaging Host per browser\n" "7) Abilitazione del servizio User Agent\n" "8) Download della lista delle banche (MISP)\n" "9) Riepilogo ed esecuzione delle azioni selezionate.\n" "\n" "Puoi usare i pulsanti Avanti e Indietro per navigare tra le sezioni." msgstr "" "Welcome to the initial BastionGuard setup.\n" "This wizard will guide you step by step through the initial configuration.\n" "\n" "There are 9 main steps:\n" "1) Local resolver configuration (DNS 127.0.0.1)\n" "2) Opening necessary firewall ports\n" "3) Advanced firewall configuration (nftables)\n" "4) Generation and installation of system CA\n" "5) Webserver configuration (HTTP/HTTPS ports)\n" "6) Native Messaging Host installation for browsers\n" "7) User Agent service enabling\n" "8) Download of banks list (MISP)\n" "9) Summary and execution of selected actions.\n" "\n" "You can use the Next and Back buttons to navigate between sections." #: ../src/wizard/wizard_window.cpp:237 msgid "" "In questa sezione puoi abilitare un resolver DNS locale (127.0.0.1). Serve " "per instradare le richieste DNS attraverso BastionGuard, migliorando " "sicurezza e controllo." msgstr "" "In this section you can enable a local DNS resolver (127.0.0.1). It is used " "to route DNS requests through BastionGuard, improving security and control." #: ../src/wizard/wizard_window.cpp:240 msgid "" "Qui puoi aprire automaticamente le porte necessarie al funzionamento di " "BastionGuard: 53/udp per DNS, 81/tcp http e 444/tcp https per comunicazioni " "interne. Viene aggiunto il gruppo adm e system-journal all'utente." msgstr "" "Here you can automatically open the ports necessary for BastionGuard to " "function: 53/udp for DNS, 81/tcp http and 444/tcp https for internal " "communications. The adm and system-journal groups are added to the user." #: ../src/wizard/wizard_window.cpp:244 msgid "" "In questa sezione puoi installare e configurare automaticamente il firewall " "nftables se nessun altro firewall (come UFW o firewalld) è attivo sul " "sistema.\n" "\n" "nftables rappresenta il sistema firewall moderno sostitutivo di iptables. " "BastionGuard può configurarlo per aprire solo le porte necessarie (53/udp, " "81/tcp, 444/tcp) e applicare regole di base sicure per il traffico locale." msgstr "" "In this section you can automatically install and configure the nftables " "firewall if no other firewall (such as UFW or firewalld) is active on the " "system.\n" "\n" "nftables is the modern firewall system that replaces iptables. BastionGuard " "can configure it to open only the necessary ports (53/udp, 81/tcp, 444/tcp) " "and apply basic secure rules for local traffic." #: ../src/wizard/wizard_window.cpp:251 msgid "" "Questa opzione genera certificati locali e installa una CA (Certificate " "Authority) di sistema. Serve per permettere a BastionGuard di validare " "connessioni HTTPS in modo sicuro." msgstr "" "This option generates local certificates and installs a system Certificate " "Authority (CA). It allows BastionGuard to securely validate HTTPS connections." #: ../src/wizard/wizard_window.cpp:254 msgid "" "Configurazione del webserver (Apache, Nginx, ecc.) per impostare " "automaticamente le porte HTTP/HTTPS usate da BastionGuard per proxy e " "interfaccia web." msgstr "" "Webserver configuration (Apache, Nginx, etc.) to automatically set the " "HTTP/HTTPS ports used by BastionGuard for proxy and web interface." #: ../src/wizard/wizard_window.cpp:257 msgid "" "Il Native Messaging Host permette l’integrazione con i browser web (es. " "Firefox, Chromium). È necessario per comunicare con le estensioni di " "BastionGuard." msgstr "" "The Native Messaging Host allows integration with web browsers (e.g. " "Firefox, Chromium). It is necessary to communicate with BastionGuard " "extensions." #: ../src/wizard/wizard_window.cpp:260 msgid "" "Il servizio User Agent consente di avviare automaticamente componenti " "aggiuntivi di BastionGuard per tutti gli utenti attivi. È consigliato " "abilitarlo per ricevere notifiche e scansioni in tempo reale." msgstr "" "The User Agent service allows automatic startup of additional BastionGuard " "components for all active users. It is recommended to enable it to receive " "real-time notifications and scans." #: ../src/wizard/wizard_window.cpp:263 msgid "Configura resolver locale (DNS → 127.0.0.1)" msgstr "Configure local resolver (DNS → 127.0.0.1)" #: ../src/wizard/wizard_window.cpp:264 msgid "" "Apri automaticamente le porte firewall necessarie (53/udp, 81/tcp, 444/tcp)" msgstr "" "Automatically open necessary firewall ports (53/udp, 81/tcp, 444/tcp)" #: ../src/wizard/wizard_window.cpp:265 msgid "Installa e abilita automaticamente nftables se non è attivo un firewall" msgstr "Automatically install and enable nftables if no firewall is active" #: ../src/wizard/wizard_window.cpp:266 msgid "Genera certificati locali e installa la CA di sistema" msgstr "Generate local certificates and install system CA" #: ../src/wizard/wizard_window.cpp:267 ../src/wizard/wizard_window.cpp:559 msgid "Configura automaticamente il webserver (porte e moduli)" msgstr "Automatically configure webserver (ports and modules)" #: ../src/wizard/wizard_window.cpp:268 msgid "Installa Native Messaging Host (per browser)" msgstr "Install Native Messaging Host (for browsers)" #: ../src/wizard/wizard_window.cpp:269 msgid "" "Abilita automaticamente il servizio BastionGuard User Agent per gli utenti " "attivi" msgstr "" "Automatically enable BastionGuard User Agent service for active users" #: ../src/wizard/wizard_window.cpp:270 ../src/wizard/wizard_window.cpp:504 msgid "Scarica automaticamente la lista delle banche (MISP)" msgstr "Automatically download banks list (MISP)" #: ../src/wizard/wizard_window.cpp:271 msgid "Esegui abilitazione ora" msgstr "Execute enabling now" #: ../src/wizard/wizard_window.cpp:272 msgid "_Indietro" msgstr "_Back" #: ../src/wizard/wizard_window.cpp:273 msgid "_Avanti" msgstr "_Next" #: ../src/wizard/wizard_window.cpp:274 msgid "_Esegui" msgstr "_Execute" #: ../src/wizard/wizard_window.cpp:450 msgid "Benvenuto" msgstr "Welcome" #: ../src/wizard/wizard_window.cpp:451 msgid "Resolver" msgstr "Resolver" #: ../src/wizard/wizard_window.cpp:452 msgid "Firewall" msgstr "Firewall" #: ../src/wizard/wizard_window.cpp:453 msgid "Firewall avanzato" msgstr "Advanced Firewall" #: ../src/wizard/wizard_window.cpp:454 msgid "Certificati" msgstr "Certificates" #: ../src/wizard/wizard_window.cpp:455 msgid "Webserver" msgstr "Webserver" #: ../src/wizard/wizard_window.cpp:456 msgid "Native Host" msgstr "Native Host" #: ../src/wizard/wizard_window.cpp:457 msgid "User Agent" msgstr "User Agent" #: ../src/wizard/wizard_window.cpp:459 msgid "Riepilogo" msgstr "Summary" #: ../src/wizard/wizard_window.cpp:493 msgid "" "BastionGuard può scaricare automaticamente la lista ufficiale delle banche " "dal progetto MISP (Malware Information Sharing Platform). Questa lista serve " "per identificare i siti bancari reali e proteggerli da falsi positivi o da " "phishing.\n" "\n" "Il file verrà salvato nella tua cartella utente (~/.local/share/BastionGuard/" "banks.json). Non richiede privilegi di amministratore." msgstr "" "BastionGuard can automatically download the official banks list from the " "MISP project (Malware Information Sharing Platform). This list helps " "identify real banking sites and protect them from false positives or " "phishing.\n" "\n" "The file will be saved in your user folder (~/.local/share/BastionGuard/" "banks.json). No administrator privileges are required." #: ../src/wizard/wizard_window.cpp:525 msgid "" "BastionGuard può configurare automaticamente nftables come firewall di " "sistema se non sono attivi altri firewall (UFW o firewalld).\n" "\n" "Durante il riepilogo finale, il programma installerà e attiverà nftables " "aprendo solo le porte necessarie (53/udp, 81/tcp, 444/tcp) e applicando " "regole sicure per il traffico locale." msgstr "" "BastionGuard can automatically configure nftables as the system firewall if " "no other firewalls (UFW or firewalld) are active.\n" "\n" "During the final summary, the program will install and activate nftables, " "opening only the necessary ports (53/udp, 81/tcp, 444/tcp) and applying " "secure rules for local traffic." #: ../src/wizard/wizard_window.cpp:534 msgid "Installa e abilita automaticamente nftables" msgstr "Automatically install and enable nftables" #: ../src/wizard/wizard_window.cpp:631 msgid "Servizio abilitato correttamente." msgstr "Service enabled successfully." #: ../src/wizard/wizard_window.cpp:631 msgid "Errore durante l'abilitazione." msgstr "Error during enabling." #: ../src/wizard/wizard_window.cpp:664 msgid "" "Riepilogo delle azioni selezionate:\n" "\n" msgstr "" "Summary of selected actions:\n" "\n" #: ../src/wizard/wizard_window.cpp:667 msgid "Resolver locale (DNS → 127.0.0.1) + Policies browser" msgstr "Local resolver (DNS → 127.0.0.1) + Browser policies" #: ../src/wizard/wizard_window.cpp:668 msgid "Resolver locale" msgstr "Local resolver" #: ../src/wizard/wizard_window.cpp:671 msgid "Apertura porte firewall (53/udp, 81/tcp, 444/tcp) e gruppi utenti" msgstr "Opening firewall ports (53/udp, 81/tcp, 444/tcp) and user groups" #: ../src/wizard/wizard_window.cpp:672 msgid "Apertura porte firewall" msgstr "Opening firewall ports" #: ../src/wizard/wizard_window.cpp:674 msgid "Firewall avanzato nftables (installazione e configurazione automatica)" msgstr "Advanced nftables firewall (automatic installation and configuration)" #: ../src/wizard/wizard_window.cpp:675 msgid "Firewall avanzato nftables" msgstr "Advanced nftables firewall" #: ../src/wizard/wizard_window.cpp:678 msgid "Certificati CA (generazione + installazione)" msgstr "CA certificates (generation + installation)" #: ../src/wizard/wizard_window.cpp:679 msgid "Certificati CA" msgstr "CA certificates" #: ../src/wizard/wizard_window.cpp:682 msgid "Configurazione automatica del webserver (porte e moduli)" msgstr "Automatic webserver configuration (ports and modules)" #: ../src/wizard/wizard_window.cpp:683 msgid "Configurazione webserver" msgstr "Webserver configuration" #: ../src/wizard/wizard_window.cpp:686 msgid "Native Messaging Host (integrazione browser)" msgstr "Native Messaging Host (browser integration)" #: ../src/wizard/wizard_window.cpp:687 msgid "Native Messaging Host" msgstr "Native Messaging Host" #: ../src/wizard/wizard_window.cpp:690 msgid "Servizio User Agent (notifiche e scansioni in tempo reale)" msgstr "User Agent service (real-time notifications and scans)" #: ../src/wizard/wizard_window.cpp:691 msgid "Servizio User Agent" msgstr "User Agent service" #: ../src/wizard/wizard_window.cpp:693 ../src/wizard/wizard_window.cpp:694 msgid "Download lista banche (MISP)" msgstr "Download banks list (MISP)" #: ../src/wizard/wizard_window.cpp:721 msgid "Errore scrivendo il file di configurazione" msgstr "Error writing configuration file" #: ../src/wizard/wizard_window.cpp:724 msgid "Controlla i permessi della cartella di configurazione." msgstr "Check the permissions of the configuration folder." #: ../src/wizard/wizard_window.cpp:732 msgid "Abilitazione servizio User Agent..." msgstr "Enabling User Agent service..." #: ../src/wizard/wizard_window.cpp:734 msgid "OK: User Agent abilitato." msgstr "OK: User Agent enabled." #: ../src/wizard/wizard_window.cpp:734 msgid "ERRORE: impossibile abilitare User Agent." msgstr "ERROR: unable to enable User Agent." #: ../src/wizard/wizard_window.cpp:739 msgid "Nessun firewall attivo rilevato, installazione nftables..." msgstr "No active firewall detected, installing nftables..." #: ../src/wizard/wizard_window.cpp:742 msgid "OK: nftables installato e configurato." msgstr "OK: nftables installed and configured." #: ../src/wizard/wizard_window.cpp:745 msgid "ERRORE: installazione nftables fallita." msgstr "ERROR: nftables installation failed." #: ../src/wizard/wizard_window.cpp:750 msgid "" "Eseguo il setup di rete (BastionGuard-net-setup.sh) prima delle azioni " "privilegiate..." msgstr "" "Executing network setup (BastionGuard-net-setup.sh) before privileged actions..." #: ../src/wizard/wizard_window.cpp:753 msgid "OK: setup di rete completato con successo." msgstr "OK: network setup completed successfully." #: ../src/wizard/wizard_window.cpp:755 msgid "" "ERRORE: setup di rete fallito o incompleto. Continuo con le altre operazioni." msgstr "" "ERROR: network setup failed or incomplete. Continuing with other operations." #: ../src/wizard/wizard_window.cpp:760 msgid "Avvio download lista banche (utente locale)..." msgstr "Starting download of banks list (local user)..." #: ../src/wizard/wizard_window.cpp:763 msgid "OK: lista banche scaricata correttamente." msgstr "OK: banks list downloaded successfully." #: ../src/wizard/wizard_window.cpp:764 msgid "ERRORE: impossibile scaricare la lista banche." msgstr "ERROR: unable to download banks list." #: ../src/wizard/wizard_window.cpp:783 msgid "Inizio esecuzione wizard..." msgstr "Starting wizard execution..." #: ../src/wizard/wizard_window.cpp:788 msgid "Richiesta autenticazione amministratore..." msgstr "Requesting administrator authentication..." #: ../src/wizard/wizard_window.cpp:818 msgid "Inizio esecuzione wizard combinato..." msgstr "Starting combined wizard execution..." #: ../src/wizard/wizard_window.cpp:822 msgid "Configuro i browser per usare il resolver locale..." msgstr "Configuring browsers to use local resolver..." #: ../src/wizard/wizard_window.cpp:825 msgid "OK: browser configurati." msgstr "OK: browsers configured." #: ../src/wizard/wizard_window.cpp:825 msgid "Avviso: policies browser non completamente scritte (permessi)." msgstr "Warning: browser policies not completely written (permissions)." #: ../src/wizard/wizard_window.cpp:852 msgid "Esecuzione privilegiata unica (una sola autenticazione)..." msgstr "Single privileged execution (one authentication only)..." #: ../src/wizard/wizard_window.cpp:856 msgid "ERRORE: esecuzione privilegiata fallita." msgstr "ERROR: privileged execution failed." #: ../src/wizard/wizard_window.cpp:860 msgid "OK: operazioni privilegiate completate." msgstr "OK: privileged operations completed." #: ../src/wizard/wizard_window.cpp:877 msgid "Installo Native Messaging Host (user-level)..." msgstr "Installing Native Messaging Host (user-level)..." #: ../src/wizard/wizard_window.cpp:880 msgid "OK: native host installato." msgstr "OK: native host installed." #: ../src/wizard/wizard_window.cpp:880 msgid "ERRORE: native host fallito." msgstr "ERROR: native host failed." #: ../src/wizard/wizard_window.cpp:895 msgid "Setup completato con successo." msgstr "Setup completed successfully." #: ../src/wizard/wizard_window.cpp:896 msgid "" "Il servizio BastionGuard-phishing-scanner è stato riavviato correttamente." msgstr "BastionGuard-phishing-scanner service has been restarted successfully." #: ../src/wizard/wizard_window.cpp:898 msgid "Setup completato" msgstr "Setup completed" #: ../src/wizard/wizard_window.cpp:899 msgid "" "BastionGuard è stato configurato correttamente.\n" "Il servizio phishing-scanner è stato riavviato.\n" "Riavvia il browser se hai installato il Native Host." msgstr "" "BastionGuard has been configured correctly.\n" "The phishing-scanner service has been restarted.\n" "Restart your browser if you installed the Native Host." #: ../src/wizard/wizard_window.cpp:905 msgid "Setup completato con errori." msgstr "Setup completed with errors." #: ../src/wizard/wizard_window.cpp:906 msgid "Completato con errori" msgstr "Completed with errors" #: ../src/wizard/wizard_window.cpp:907 msgid "" "Alcuni passaggi non sono riusciti. Controlla il log per maggiori dettagli." msgstr "" "Some steps failed. Check the log for more details." #: ../src/wizard/wizard_window.cpp:929 msgid "Errore scrivendo il file di configurazione:" msgstr "Error writing configuration file:" #: ../src/wizard/wizard_window.cpp:998 msgid "ERRORE: impossibile scrivere policies Firefox: " msgstr "ERROR: unable to write Firefox policies: " #: ../src/wizard/wizard_window.cpp:1016 ../src/wizard/wizard_window.cpp:1081 msgid "OK: policy per Firefox/Chromium/Chrome/Edge installate." msgstr "OK: policies for Firefox/Chromium/Chrome/Edge installed." #: ../src/wizard/wizard_window.cpp:1019 msgid "Avviso: alcune policies browser non sono state scritte (permessi?)." msgstr "Warning: some browser policies were not written (permissions?)." #: ../src/wizard/wizard_window.cpp:1023 msgid "ERRORE: configure_browser_doh eccezione: " msgstr "ERROR: configure_browser_doh exception: " #: ../src/wizard/wizard_window.cpp:1084 msgid "ERRORE: impossibile scrivere le policies browser: " msgstr "ERROR: unable to write browser policies: " #: ../src/wizard/wizard_window.cpp:1257 msgid "Nessun server NGINX rilevato sul sistema." msgstr "No NGINX server detected on the system." #: ../src/wizard/wizard_window.cpp:1280 msgid "Errore durante la sostituzione delle porte nel template NGINX." msgstr "Error while replacing ports in NGINX template." #: ../src/wizard/wizard_window.cpp:1322 msgid " echo '[BastionGuard] Inserisco blocco mancante in nginx.conf...'\n" msgstr " echo '[BastionGuard] Inserting missing block in nginx.conf...'\n" #: ../src/wizard/wizard_window.cpp:1326 msgid "" " echo '[BastionGuard] Configurazione già presente, nessuna modifica " "necessaria.'\n" msgstr "" " echo '[BastionGuard] Configuration already present, no changes necessary.'\n" #: ../src/wizard/wizard_window.cpp:1339 msgid "Impossibile creare lo script temporaneo." msgstr "Unable to create temporary script." #: ../src/wizard/wizard_window.cpp:1356 msgid "Errore durante l’applicazione della configurazione NGINX." msgstr "Error while applying NGINX configuration." #: ../src/wizard/wizard_window.cpp:1360 msgid "Configurazione NGINX applicata con successo." msgstr "NGINX configuration applied successfully." #: ../src/wizard/wizard_window.cpp:1364 msgid "Errore apply_web_config: " msgstr "Error apply_web_config: " #: ../src/wizard/wizard_window.cpp:1384 msgid "Scarico la lista delle banche da MISP (solo utente)..." msgstr "Downloading banks list from MISP (user only)..." #: ../src/wizard/wizard_window.cpp:1388 msgid "✅ Lista banche salvata in: " msgstr "✅ Banks list saved in: " #: ../src/wizard/wizard_window.cpp:1391 msgid "❌ Errore durante il download della lista delle banche (curl fallito)." msgstr "❌ Error downloading banks list (curl failed)." #: ../src/wizard/wizard_window.cpp:1395 msgid "Eccezione download_bank_list_user(): " msgstr "Exception download_bank_list_user(): " #: ../src/wizard/StyleProvider.cpp:50 ../src/wizard/StyleProvider.cpp:53 msgid "✔ CSS caricato da " msgstr "✔ CSS loaded from " #: ../src/wizard/StyleProvider.cpp:55 msgid "⚠ Nessun file CSS trovato:\n" msgstr "⚠ No CSS file found:\n" #: ../src/wizard/StyleProvider.cpp:65 ../src/StyleProvider.cpp:48 msgid "❌ Errore CSS: " msgstr "❌ CSS error: " #: ../src/wizard/wizard_setup.cpp:134 ../src/wizard/wizard_setup.cpp:256 msgid "fdopen fallita" msgstr "fdopen failed" #: ../src/wizard/wizard_setup.cpp:163 msgid "" "\n" "===== [BastionGuard DEBUG: write_temp_script_and_elevate] =====\n" msgstr "" "\n" "===== [BastionGuard DEBUG: write_temp_script_and_elevate] =====\n" #: ../src/wizard/wizard_setup.cpp:164 msgid "Comando elevato eseguito:\n" msgstr "Elevated command executed:\n" #: ../src/wizard/wizard_setup.cpp:169 msgid "(nessun output catturato)\n" msgstr "(no output captured)\n" #: ../src/wizard/wizard_setup.cpp:301 msgid "echo '[BastionGuard] Imposto resolver locale...' >&2" msgstr "echo '[BastionGuard] Setting local resolver...' >&2" #: ../src/wizard/wizard_setup.cpp:307 msgid "echo '[BastionGuard] Apertura porte e setup nftables...' >&2" msgstr "echo '[BastionGuard] Opening ports and setting up nftables...' >&2" #: ../src/wizard/wizard_setup.cpp:320 msgid "echo '[BastionGuard] Generazione certificati...' >&2" msgstr "echo '[BastionGuard] Generating certificates...' >&2" #: ../src/wizard/wizard_setup.cpp:337 msgid "echo '[BastionGuard] Configuro webserver (nginx) porte...' >&2" msgstr "echo '[BastionGuard] Configuring webserver (nginx) ports...' >&2" #: ../src/wizard/wizard_setup.cpp:358 msgid "Configuro override del resolver locale..." msgstr "Configuring local resolver override..." #: ../src/wizard/wizard_setup.cpp:370 msgid "Backup di resolv.conf creato in: " msgstr "Backup of resolv.conf created in: " #: ../src/wizard/wizard_setup.cpp:386 msgid "Impostato nameserver 127.0.0.1 tramite resolvectl" msgstr "Set nameserver 127.0.0.1 via resolvectl" #: ../src/wizard/wizard_setup.cpp:400 msgid "Impostato nameserver 127.0.0.1 tramite nmcli" msgstr "Set nameserver 127.0.0.1 via nmcli" #: ../src/wizard/wizard_setup.cpp:417 msgid "Scrittura diretta di /etc/resolv.conf eseguita" msgstr "Direct write to /etc/resolv.conf executed" #: ../src/wizard/wizard_setup.cpp:420 msgid "Fallback scrittura diretta /etc/resolv.conf fallito" msgstr "Fallback direct write to /etc/resolv.conf failed" #: ../src/wizard/wizard_setup.cpp:425 msgid "Eccezione in setup_resolv_override:" msgstr "Exception in setup_resolv_override:" #: ../src/wizard/wizard_setup.cpp:437 msgid "Backup non trovato:" msgstr "Backup not found:" #: ../src/wizard/wizard_setup.cpp:450 msgid "Ripristino resolv.conf fallito:" msgstr "resolv.conf restoration failed:" #: ../src/wizard/wizard_setup.cpp:454 msgid "Ripristinato resolv.conf da backup:" msgstr "Restored resolv.conf from backup:" #: ../src/wizard/wizard_setup.cpp:457 msgid "Eccezione in restore_resolv_backup:" msgstr "Exception in restore_resolv_backup:" #: ../src/wizard/wizard_setup.cpp:467 msgid "" "Apro le porte firewall necessarie (53/udp, 81/tcp, 444/tcp, 4443/tcp)..." msgstr "" "Opening necessary firewall ports (53/udp, 81/tcp, 444/tcp, 4443/tcp)..." #: ../src/wizard/wizard_setup.cpp:496 msgid "Rilevata distribuzione: " msgstr "Detected distribution: " #: ../src/wizard/wizard_setup.cpp:513 msgid "Porte aperte tramite firewalld." msgstr "Ports opened via firewalld." #: ../src/wizard/wizard_setup.cpp:525 msgid "Porte aperte tramite ufw." msgstr "Ports opened via ufw." #: ../src/wizard/wizard_setup.cpp:546 msgid "Regole nftables applicate (best-effort)." msgstr "nftables rules applied (best-effort)." #: ../src/wizard/wizard_setup.cpp:560 msgid "Regole iptables applicate (best-effort)." msgstr "iptables rules applied (best-effort)." #: ../src/wizard/wizard_setup.cpp:573 msgid "" "Nessuno strumento firewall rilevato; apri manualmente le porte se necessario." msgstr "" "No firewall tool detected; open ports manually if necessary." #: ../src/wizard/wizard_setup.cpp:591 msgid "Utente effettivo: " msgstr "Effective user: " #: ../src/wizard/wizard_setup.cpp:602 msgid "Aggiungo l'utente ai gruppi 'adm' e 'systemd-journal'..." msgstr "Adding user to groups 'adm' and 'systemd-journal'..." #: ../src/wizard/wizard_setup.cpp:605 msgid "Utente aggiunto ai gruppi richiesti." msgstr "User added to required groups." #: ../src/wizard/wizard_setup.cpp:608 msgid "Errore aggiungendo l'utente ai gruppi: " msgstr "Error adding user to groups: " #: ../src/wizard/wizard_setup.cpp:611 msgid "Utente già presente nei gruppi 'adm' o 'systemd-journal'." msgstr "User already present in groups 'adm' or 'systemd-journal'." #: ../src/wizard/wizard_setup.cpp:614 msgid "Impossibile determinare l'utente effettivo; salto l'aggiunta ai gruppi." msgstr "Unable to determine effective user; skipping group addition." #: ../src/wizard/wizard_setup.cpp:622 msgid "" "Per completare la configurazione,\n" "termina e riavvia la sessione utente." msgstr "" "To complete the configuration,\n" "log out and restart your user session." #: ../src/wizard/wizard_setup.cpp:628 msgid "BastionGuard - Permessi aggiornati" msgstr "BastionGuard - Permissions updated" #: ../src/wizard/wizard_setup.cpp:630 msgid "" "I nuovi permessi di accesso ai log diventeranno attivi dopo il logout.\n" "Chiudi e riapri la sessione per visualizzare correttamente l'avvio " "dell'applicazione BastionGuard." msgstr "" "New log access permissions will become active after logout.\n" "Close and reopen the session to properly see BastionGuard application startup." #: ../src/wizard/wizard_setup.cpp:638 msgid "Riavvio del servizio BastionGuard-phishing-scanner..." msgstr "Restarting BastionGuard-phishing-scanner service..." #: ../src/wizard/wizard_setup.cpp:646 msgid "systemd non presente: salto il riavvio del servizio." msgstr "systemd not present: skipping service restart." #: ../src/wizard/wizard_setup.cpp:655 msgid "Servizio BastionGuard-phishing-scanner riavviato." msgstr "BastionGuard-phishing-scanner service restarted." #: ../src/wizard/wizard_setup.cpp:657 msgid "Tentativo di riavvio eseguito (codice " msgstr "Restart attempt executed (code " #: ../src/wizard/wizard_setup.cpp:657 msgid "). Verifica lo stato del servizio." msgstr "). Check the service status." #: ../src/wizard/wizard_setup.cpp:660 msgid "" "Unità systemd BastionGuard-phishing-scanner non trovata: salto il riavvio." msgstr "" "systemd unit BastionGuard-phishing-scanner not found: skipping restart." #: ../src/wizard/wizard_setup.cpp:668 msgid "Eccezione in setup_firewall_ports: " msgstr "Exception in setup_firewall_ports: " #: ../src/wizard/wizard_setup.cpp:675 msgid "[wizard] 🔧 Configurazione rete e nftables (modalità agent)...\n" msgstr "[wizard] 🔧 Network and nftables configuration (agent mode)...\n" #: ../src/wizard/wizard_setup.cpp:682 msgid "[wizard] ⚠ File di configurazione nftables non trovato: " msgstr "[wizard] ⚠ nftables configuration file not found: " #: ../src/wizard/wizard_setup.cpp:693 msgid "echo '[BastionGuard] ▶ Configurazione nftables e rete...'\n" msgstr "echo '[BastionGuard] ▶ nftables and network configuration...'\n" #: ../src/wizard/wizard_setup.cpp:700 msgid " echo '[BastionGuard] Abilito e avvio nftables.service...'\n" msgstr " echo '[BastionGuard] Enabling and starting nftables.service...'\n" #: ../src/wizard/wizard_setup.cpp:703 msgid "" " echo '[BastionGuard] UFW o Firewalld rilevati: mantengo configurazione " "esistente.'\n" msgstr "" " echo '[BastionGuard] UFW or Firewalld detected: keeping existing configuration.'\n" #: ../src/wizard/wizard_setup.cpp:708 msgid "" "echo '[BastionGuard] ▶ Eseguo BastionGuard-net-setup.sh (modalità " "agent)...'\n" msgstr "" "echo '[BastionGuard] ▶ Executing BastionGuard-net-setup.sh (agent mode)...'\n" #: ../src/wizard/wizard_setup.cpp:711 msgid "echo '[BastionGuard] Nessuno script di rete trovato.'\n" msgstr "echo '[BastionGuard] No network script found.'\n" #: ../src/wizard/wizard_setup.cpp:714 msgid "echo '[BastionGuard] ✅ Configurazione nftables + rete completata.'\n" msgstr "echo '[BastionGuard] ✅ nftables + network configuration completed.'\n" #: ../src/wizard/wizard_setup.cpp:720 msgid "[wizard][DEBUG] Output BastionGuard-net-setup.sh:\n" msgstr "[wizard][DEBUG] BastionGuard-net-setup.sh output:\n" #: ../src/wizard/wizard_setup.cpp:723 msgid "[wizard] ✅ nftables e rete configurati con successo (agent mode)\n" msgstr "[wizard] ✅ nftables and network configured successfully (agent mode)\n" #: ../src/wizard/wizard_setup.cpp:725 msgid "[wizard] ⚠ Errore configurando nftables o rete:\n" msgstr "[wizard] ⚠ Error configuring nftables or network:\n" #: ../src/wizard/wizard_setup.cpp:730 msgid "[wizard] ⚠ Eccezione in install_nftables_conf: " msgstr "[wizard] ⚠ Exception in install_nftables_conf: " #: ../src/wizard/wizard_setup.cpp:741 msgid "File CA non trovato:" msgstr "CA file not found:" #: ../src/wizard/wizard_setup.cpp:791 msgid "Installazione CA: script restituisce warning o errore" msgstr "CA installation: script returned warning or error" #: ../src/wizard/wizard_setup.cpp:793 ../src/wizard/wizard_setup.cpp:803 msgid "CA installata nel trust store di sistema" msgstr "CA installed in system trust store" #: ../src/wizard/wizard_setup.cpp:797 msgid "" "CA copiata in directory comuni, ma potresti doverla abilitare manualmente" msgstr "" "CA copied to common directories, but you may need to enable it manually" #: ../src/wizard/wizard_setup.cpp:807 msgid "Eccezione in install_system_ca:" msgstr "Exception in install_system_ca:" #: ../src/wizard/wizard_setup.cpp:815 msgid "Generazione CA locale e certificato per il warning server..." msgstr "Generating local CA and certificate for warning server..." #: ../src/wizard/wizard_setup.cpp:845 msgid "[wizard] Certificati: errore nello script\n" msgstr "[wizard] Certificates: error in script\n" #: ../src/wizard/wizard_setup.cpp:851 msgid "[wizard] ⚠️ Attenzione: installazione CA di sistema non riuscita." msgstr "[wizard] ⚠️ Warning: system CA installation failed." #: ../src/wizard/wizard_setup.cpp:852 msgid "" "[wizard] L'utente può installare manualmente il file: /etc/BastionGuard/" "certs/BastionGuard-ca.crt.pem" msgstr "" "[wizard] The user can manually install the file: /etc/BastionGuard/certs/BastionGuard-ca.crt.pem" #: ../src/wizard/wizard_setup.cpp:856 msgid "" "[wizard] ✅ Certificati generati in /etc/BastionGuard/certs e CA installata " "nel sistema" msgstr "" "[wizard] ✅ Certificates generated in /etc/BastionGuard/certs and CA installed in the system" #: ../src/wizard/wizard_setup.cpp:860 msgid "[wizard] Eccezione in setup_certificates: " msgstr "[wizard] Exception in setup_certificates: " #: ../src/wizard/wizard_setup.cpp:872 msgid "Blacklist phishing copiata in:" msgstr "Phishing blacklist copied to:" #: ../src/wizard/wizard_setup.cpp:875 msgid "Errore copiando blacklist:" msgstr "Error copying blacklist:" #: ../src/wizard/wizard_setup.cpp:885 msgid "Installazione native messaging host..." msgstr "Installing native messaging host..." #: ../src/wizard/wizard_setup.cpp:900 msgid "Impossibile impostare i permessi eseguibili: " msgstr "Unable to set executable permissions: " #: ../src/wizard/wizard_setup.cpp:905 msgid "Avviso: binario native host non trovato: " msgstr "Warning: native host binary not found: " #: ../src/wizard/wizard_setup.cpp:977 msgid "Impossibile creare la directory: " msgstr "Unable to create directory: " #: ../src/wizard/wizard_setup.cpp:984 msgid "Manifest già presente, salto: " msgstr "Manifest already present, skipping: " #: ../src/wizard/wizard_setup.cpp:992 msgid "Manifest scritto in: " msgstr "Manifest written to: " #: ../src/wizard/wizard_setup.cpp:995 msgid "Impossibile scrivere manifest in: " msgstr "Unable to write manifest to: " #: ../src/wizard/wizard_setup.cpp:1000 msgid "Native host configurato, manifest creati" msgstr "Native host configured, manifests created" #: ../src/wizard/wizard_setup.cpp:1004 msgid "Nessun manifest creato (tutti già presenti?)" msgstr "No manifests created (all already present?)" #: ../src/wizard/wizard_setup.cpp:1008 msgid "Eccezione in install_native_host: " msgstr "Exception in install_native_host: " #: ../src/wizard/wizard_setup.cpp:1025 msgid "" "[wizard] 🔁 Esecuzione privilegiata combinata (una sola autenticazione)...\n" msgstr "" "[wizard] 🔁 Combined privileged execution (single authentication)...\n" #: ../src/wizard/wizard_setup.cpp:1029 msgid "echo '[BastionGuard] Configuro DNS temporaneo...' >&2" msgstr "echo '[BastionGuard] Configuring temporary DNS...' >&2" #: ../src/wizard/wizard_setup.cpp:1039 msgid "echo '[BastionGuard] Ripristino resolv.conf...' >&2" msgstr "echo '[BastionGuard] Restoring resolv.conf...' >&2" #: ../src/wizard/wizard_setup.cpp:1047 msgid "echo '[BastionGuard] Configuro firewall (nftables)...' >&2" msgstr "echo '[BastionGuard] Configuring firewall (nftables)...' >&2" #: ../src/wizard/wizard_setup.cpp:1061 msgid "echo '[BastionGuard] Genero certificati locali...' >&2" msgstr "echo '[BastionGuard] Generating local certificates...' >&2" #: ../src/wizard/wizard_setup.cpp:1093 msgid "echo '[BastionGuard] Copio blacklist phishing...' >&2" msgstr "echo '[BastionGuard] Copying phishing blacklist...' >&2" #: ../src/wizard/wizard_setup.cpp:1099 msgid "echo '[BastionGuard] Riavvio BastionGuard-phishing-scanner...' >&2" msgstr "echo '[BastionGuard] Restarting BastionGuard-phishing-scanner...' >&2" #: ../src/wizard/wizard_setup.cpp:1110 msgid "[wizard] ⚠ Errore nello script privilegiato:\n" msgstr "[wizard] ⚠ Error in privileged script:\n" #: ../src/wizard/wizard_setup.cpp:1113 msgid "[wizard] ✅ Tutte le operazioni privilegiate completate." msgstr "[wizard] ✅ All privileged operations completed." #: ../src/bankgui-main.cpp:95 msgid "Inserisci l'URL della banca o un identificatore:" msgstr "Enter the bank URL or an identifier:" #: ../src/bankgui-main.cpp:112 #: ../src/payment_secure/BastionGuard-secure-main.cpp:107 msgid "Apri in Secure Browser" msgstr "Open in Secure Browser" #: ../src/bankgui-main.cpp:196 msgid "Inserisci un URL valido." msgstr "Enter a valid URL." #: ../src/bankgui-main.cpp:196 msgid "Il campo non può essere vuoto." msgstr "The field cannot be empty." #: ../src/bankgui-main.cpp:211 #: ../src/payment_secure/BastionGuard-secure-main.cpp:259 msgid "Errore avvio subprocess." msgstr "Error starting subprocess." #: ../src/BankPage.cpp:60 msgid "🏦 Zona Sicura – Banche" msgstr "🏦 Safe Zone – Banks" #: ../src/BankPage.cpp:78 msgid "URL sorgente (es. MISP bank-website/list.json)" msgstr "Source URL (e.g. MISP bank-website/list.json)" #: ../src/BankPage.cpp:84 msgid "🔄 Aggiorna lista" msgstr "🔄 Update list" #: ../src/BankPage.cpp:91 msgid "Aggiornamento automatico ogni 6 ore" msgstr "Automatic update every 6 hours" #: ../src/BankPage.cpp:107 msgid "🔁 Aggiornamento automatico abilitato." msgstr "🔁 Automatic update enabled." #: ../src/BankPage.cpp:110 msgid "⏸️ Aggiornamento automatico disattivato." msgstr "⏸️ Automatic update disabled." #: ../src/BankPage.cpp:118 msgid "🔁 Aggiornamento automatico attivo." msgstr "🔁 Automatic update active." #: ../src/BankPage.cpp:139 msgid "Aggiungi dominio alla whitelist..." msgstr "Add domain to whitelist..." #: ../src/BankPage.cpp:141 msgid "➕ Aggiungi" msgstr "➕ Add" #: ../src/BankPage.cpp:184 msgid "⬇️ Download in corso..." msgstr "⬇️ Download in progress..." #: ../src/BankPage.cpp:194 msgid "✅ Lista aggiornata da MISP." msgstr "✅ List updated from MISP." #: ../src/BankPage.cpp:198 msgid "❌ Errore nel download della lista." msgstr "❌ Error downloading the list." #: ../src/BankPage.cpp:218 msgid "pkexec fallito o annullato dall'utente" msgstr "pkexec failed or cancelled by user" #: ../src/BankPage.cpp:222 msgid "\\nAggiornato il: " msgstr "\\nUpdated on: " #: ../src/BankPage.cpp:227 msgid "[BankPage] ✅ Lista copiata in " msgstr "[BankPage] ✅ List copied to " #: ../src/BankPage.cpp:229 msgid "[BankPage] ⚠️ Copia in /usr/share/BastionGuard/data/bank fallita: " msgstr "[BankPage] ⚠️ Copy to /usr/share/BastionGuard/data/bank failed: " #: ../src/BankPage.cpp:241 msgid "⚠ Nessuna lista trovata.\n" msgstr "⚠ No list found.\n" #: ../src/BankPage.cpp:249 msgid "❌ Errore parsing JSON.\n" msgstr "❌ JSON parsing error.\n" #: ../src/BankPage.cpp:254 msgid "" "🌍 Elenco banche conosciute:\n" "\n" msgstr "" "🌍 List of known banks:\n" "\n" #: ../src/BankPage.cpp:277 msgid "" "\n" "Totale banche: " msgstr "" "\n" "Total banks: " #: ../src/BankPage.cpp:282 msgid "" "🛡️ Whitelist:\n" "\n" msgstr "" "🛡️ Whitelist:\n" "\n" #: ../src/BankPage.cpp:286 msgid "(Nessun dominio whitelistato)\n" msgstr "(No whitelisted domains)\n" #: ../src/BankPage.cpp:297 msgid "⚠ Inserisci un dominio valido." msgstr "⚠ Enter a valid domain." #: ../src/BankPage.cpp:304 msgid "✅ Dominio aggiunto alla whitelist." msgstr "✅ Domain added to whitelist." #: ../src/BankPage.cpp:307 msgid "ℹ️ Dominio già presente nella whitelist." msgstr "ℹ️ Domain already present in whitelist." #: ../src/BankPage.cpp:361 msgid "[BankPage] ⏱️ Auto-update attivo ogni 6 ore." msgstr "[BankPage] ⏱️ Auto-update active every 6 hours." #: ../src/BankPage.cpp:367 msgid "[BankPage] ⏹️ Auto-update disattivato." msgstr "[BankPage] ⏹️ Auto-update disabled." #: ../src/BankPage.cpp:377 msgid "[BankPage] ⏰ Aggiornamento automatico lista banche..." msgstr "[BankPage] ⏰ Automatic banks list update..." #: ../src/BankPage.cpp:382 msgid "✅ Lista aggiornata automaticamente da MISP." msgstr "✅ List automatically updated from MISP." #: ../src/BankPage.cpp:387 msgid "✅ Lista aggiornata automaticamente il: " msgstr "✅ List automatically updated on: " #: ../src/BankPage.cpp:389 msgid "⚠️ Errore nell'aggiornamento automatico." msgstr "⚠️ Error in automatic update." #: ../src/StyleProvider.cpp:45 msgid "[CSS] Caricato stile da: " msgstr "[CSS] Style loaded from: " #: ../src/DonatePage.cpp:40 msgid "Sostieni BastionGuard" msgstr "Support BastionGuard" #: ../src/DonatePage.cpp:47 msgid "" "Grazie al tuo contributo possiamo migliorare BastionGuard, basta un piccolo " "gesto. Il contributo è prettamente volontario, vi chiediamo solo di " "sostenerci a portare avanti qualcosa del tutto gratuito per voi." msgstr "" "Thanks to your contribution we can improve BastionGuard, just a small gesture. " "The contribution is purely voluntary, we only ask you to support us in continuing " "to offer something completely free for you." #: ../src/DonatePage.cpp:61 msgid "❌ Impossibile caricare l'immagine data/donate.png" msgstr "❌ Unable to load image data/donate.png" #: ../src/DonatePage.cpp:79 msgid "Vai alla donazione" msgstr "Go to donation" #: ../src/DonatePage.cpp:94 msgid "❌ Errore apertura link donazione: " msgstr "❌ Error opening donation link: " #: ../src/usb/BastionGuard-usbd.cpp:228 msgid "Monitor USB avviato." msgstr "USB monitor started." #: ../src/usb/BastionGuard-usbd.cpp:240 msgid "Collegato USB: " msgstr "USB connected: " #: ../src/usb/BastionGuard-usbd.cpp:252 msgid "Rimosso USB: " msgstr "USB removed: " #: ../src/usb/BastionGuard-usbd.cpp:263 msgid "Monitor USB terminato." msgstr "USB monitor terminated." #: ../src/usb/BastionGuard-usbd.cpp:281 msgid "Errore apertura system bus.\n" msgstr "Error opening system bus.\n" #: ../src/usb/BastionGuard-usbd.cpp:286 msgid "Errore registrazione nome DBus.\n" msgstr "Error registering DBus name.\n" #: ../src/usb/BastionGuard-usbd.cpp:290 msgid "BastionGuard-usbd avviato." msgstr "BastionGuard-usbd started." #: ../src/usb/BastionGuard-usbd.cpp:300 msgid "BastionGuard-usbd terminato." msgstr "BastionGuard-usbd terminated." #: ../src/usb/ScanPromptWindow.cpp:7 msgid "Unità USB rilevata" msgstr "USB device detected" #: ../src/usb/ScanPromptWindow.cpp:8 msgid "" "È stata collegata una nuova periferica USB:\n" "\n" msgstr "" "A new USB device has been connected:\n" "\n" #: ../src/usb/ScanPromptWindow.cpp:9 msgid "" "\n" "\n" "Vuoi eseguire una scansione antivirus?" msgstr "" "\n" "\n" "Do you want to run an antivirus scan?" #: ../src/usb/LiveScanDialog.cpp:61 msgid "Scansione della periferica USB in corso" msgstr "USB device scanning in progress" #: ../src/usb/LiveScanDialog.cpp:80 msgid "Percorso analizzato:\n" msgstr "Analyzed path:\n" #: ../src/usb/LiveScanDialog.cpp:89 msgid "Analisi in corso..." msgstr "Analysis in progress..." #: ../src/usb/LiveScanDialog.cpp:106 msgid "Interruzione in corso..." msgstr "Interrupting..." #: ../src/usb/LiveScanDialog.cpp:186 msgid "Completato" msgstr "Completed" #: ../src/usb/USBScanPage.cpp:104 msgid "🖴 Periferiche USB" msgstr "🖴 USB Devices" #: ../src/usb/USBScanPage.cpp:126 ../src/PrivacyPage.cpp:92 msgid "🔄 Aggiorna" msgstr "🔄 Refresh" #: ../src/usb/USBScanPage.cpp:130 msgid "Aggiornamento manuale lista USB." msgstr "Manual USB list update." #: ../src/usb/USBScanPage.cpp:134 msgid "Auto scan ogni 3 min" msgstr "Auto scan every 3 min" #: ../src/usb/USBScanPage.cpp:161 msgid "Autoscan USB attivato (ogni 3 minuti)" msgstr "USB autoscan enabled (every 3 minutes)" #: ../src/usb/USBScanPage.cpp:164 msgid "Autoscan USB disattivato" msgstr "USB autoscan disabled" #: ../src/usb/USBScanPage.cpp:184 msgid "📜 Log giornaliero USB" msgstr "📜 Daily USB log" #: ../src/usb/USBScanPage.cpp:335 msgid "Monta e Scansiona" msgstr "Mount and Scan" #: ../src/usb/USBScanPage.cpp:342 msgid "Richiesta scansione completa per: " msgstr "Full scan requested for: " #: ../src/usb/USBScanPage.cpp:386 msgid "Rilevato disco senza partizione montabile, uso: " msgstr "Detected disk without mountable partition, using: " #: ../src/usb/USBScanPage.cpp:389 msgid "Nessuna partizione valida trovata su " msgstr "No valid partition found on " #: ../src/usb/USBScanPage.cpp:397 msgid "Device già montato: " msgstr "Device already mounted: " #: ../src/usb/USBScanPage.cpp:423 msgid "Mount output: " msgstr "Mount output: " #: ../src/usb/USBScanPage.cpp:427 msgid "Errore udisksctl: " msgstr "udisksctl error: " #: ../src/usb/USBScanPage.cpp:432 msgid "Non è un filesystem montabile: " msgstr "Not a mountable filesystem: " #: ../src/usb/USBScanPage.cpp:442 msgid "Output udisksctl non interpretabile." msgstr "udisksctl output not interpretable." #: ../src/usb/USBScanPage.cpp:459 msgid "Mountpoint non valido o inesistente: " msgstr "Invalid or non-existent mountpoint: " #: ../src/usb/USBScanPage.cpp:467 msgid "Eccezione montaggio: " msgstr "Mount exception: " #: ../src/usb/USBScanPage.cpp:480 msgid "Device non trovato: " msgstr "Device not found: " #: ../src/usb/USBScanPage.cpp:485 msgid "Scansione già in corso per device: " msgstr "Scan already in progress for device: " #: ../src/usb/USBScanPage.cpp:489 msgid "Avvio scansione USB: " msgstr "Starting USB scan: " #: ../src/usb/USBScanPage.cpp:498 msgid "Errore: impossibile montare il dispositivo USB." msgstr "Error: unable to mount the USB device." #: ../src/usb/USBScanPage.cpp:621 msgid "Errore invio D-Bus alert: " msgstr "Error sending D-Bus alert: " #: ../src/usb/USBScanPage.cpp:651 msgid "=========== RISULTATO SCANSIONE ===========\n" msgstr "=========== SCAN RESULT ===========\n" #: ../src/usb/USBScanPage.cpp:653 msgid "File infetti: " msgstr "Infected files: " #: ../src/usb/USBScanPage.cpp:657 msgid "---- FILE INFETTI ----\n" msgstr "---- INFECTED FILES ----\n" #: ../src/usb/USBScanPage.cpp:662 msgid "" "Nessuna minaccia rilevata.\n" "\n" msgstr "" "No threats detected.\n" "\n" #: ../src/usb/USBScanPage.cpp:665 msgid "---- OUTPUT COMPLETO ----\n" msgstr "---- FULL OUTPUT ----\n" #: ../src/usb/USBScanPage.cpp:694 msgid "[ResultDialog] CSS error: " msgstr "[ResultDialog] CSS error: " #: ../src/usb/USBScanPage.cpp:729 msgid "Scansione USB completata" msgstr "USB scan completed" #: ../src/usb/USBScanPage.cpp:755 msgid "" "Minacce rilevate durante la scansione.\n" "Verifica la quarantena." msgstr "" "Threats detected during the scan.\n" "Check the quarantine." #: ../src/usb/USBScanPage.cpp:756 msgid "La scansione si è conclusa senza rilevare minacce." msgstr "The scan completed without detecting any threats." #: ../src/usb/USBScanPage.cpp:764 ../src/SambaPage.cpp:472 msgid "Chiudi" msgstr "Close" #: ../src/usb/USBScanPage.cpp:808 msgid "Collegata periferica: " msgstr "Device connected: " #: ../src/usb/USBScanPage.cpp:820 msgid "Avvio scansione richiesta dall’utente per: " msgstr "Starting user-requested scan for: " #: ../src/usb/USBScanPage.cpp:825 msgid "Scansione USB annullata per: " msgstr "USB scan cancelled for: " #: ../src/usb/USBScanPage.cpp:850 msgid "Rimossa periferica: " msgstr "Device removed: " #: ../src/usb/USBScanPage.cpp:955 msgid "(Nessun log disponibile)" msgstr "(No log available)" #: ../src/payment_secure/BastionGuard-secure.cpp:108 msgid "[BastionGuard-secure] ⚠ payments.json non trovato: " msgstr "[BastionGuard-secure] ⚠ payments.json not found: " #: ../src/payment_secure/BastionGuard-secure.cpp:114 msgid "[BastionGuard-secure] ⚠ Impossibile aprire: " msgstr "[BastionGuard-secure] ⚠ Unable to open: " #: ../src/payment_secure/BastionGuard-secure.cpp:123 msgid "[BastionGuard-secure] ❌ Errore parsing JSON (%1): %2" msgstr "[BastionGuard-secure] ❌ JSON parsing error (%1): %2" #: ../src/payment_secure/BastionGuard-secure.cpp:132 msgid "" "[BastionGuard-secure] ⚠ payments.json deve essere un oggetto con chiave " "\"list\"." msgstr "" "[BastionGuard-secure] ⚠ payments.json must be an object with key \"list\"." #: ../src/payment_secure/BastionGuard-secure.cpp:139 msgid "" "[BastionGuard-secure] ⚠ payments.json: chiave \"list\" mancante o non " "array.\n" msgstr "" "[BastionGuard-secure] ⚠ payments.json: missing or non-array \"list\" key.\n" #: ../src/payment_secure/BastionGuard-secure.cpp:149 msgid "[BastionGuard-secure] ✅ Caricati " msgstr "[BastionGuard-secure] ✅ Loaded " #: ../src/payment_secure/BastionGuard-secure.cpp:150 msgid " domini da payments.json (list)\n" msgstr " domains from payments.json (list)\n" #: ../src/payment_secure/BastionGuard-secure.cpp:191 msgid "[BastionGuard-secure] ⚠ Nessun dominio presente in payments.json.\n" msgstr "[BastionGuard-secure] ⚠ No domains present in payments.json.\n" #: ../src/payment_secure/BastionGuard-secure.cpp:201 msgid "[BastionGuard-secure] ⚠ URL vuoto.\n" msgstr "[BastionGuard-secure] ⚠ Empty URL.\n" #: ../src/payment_secure/BastionGuard-secure.cpp:207 msgid "[BastionGuard-secure] ❌ Impossibile estrarre dominio da: " msgstr "[BastionGuard-secure] ❌ Unable to extract domain from: " #: ../src/payment_secure/BastionGuard-secure.cpp:213 msgid "[BastionGuard-secure] 🟢 Dominio consentito (payments.json): " msgstr "[BastionGuard-secure] 🟢 Allowed domain (payments.json): " #: ../src/payment_secure/BastionGuard-secure.cpp:214 msgid "[BastionGuard-secure] 🔐 Avvio SecureBrowser (CEF)...\n" msgstr "[BastionGuard-secure] 🔐 Starting SecureBrowser (CEF)...\n" #: ../src/payment_secure/BastionGuard-secure.cpp:219 msgid "[BastionGuard-secure] 🔴 Dominio NON presente in payments.json: " msgstr "[BastionGuard-secure] 🔴 Domain NOT present in payments.json: " #: ../src/payment_secure/BastionGuard-secure.cpp:220 msgid "[BastionGuard-secure] → Apertura nel browser di sistema.\n" msgstr "[BastionGuard-secure] → Opening in system browser.\n" #: ../src/payment_secure/BastionGuard-secure-cli.cpp:33 msgid "[BastionGuard-secure] Sessione Wayland rilevata → backend Wayland.\n" msgstr "[BastionGuard-secure] Wayland session detected → Wayland backend.\n" #: ../src/payment_secure/BastionGuard-secure-cli.cpp:37 msgid "[BastionGuard-secure] Sessione X11 rilevata → backend X11.\n" msgstr "[BastionGuard-secure] X11 session detected → X11 backend.\n" #: ../src/payment_secure/BastionGuard-secure-cli.cpp:41 msgid "" "[BastionGuard-secure] Nessuna sessione grafica rilevata → fallback X11.\n" msgstr "" "[BastionGuard-secure] No graphical session detected → falling back to X11.\n" #: ../src/payment_secure/BastionGuard-secure-cli.cpp:50 msgid "" "[BastionGuard-secure] Forzo rendering software (LIBGL_ALWAYS_SOFTWARE=1)\n" msgstr "" "[BastionGuard-secure] Forcing software rendering (LIBGL_ALWAYS_SOFTWARE=1)\n" #: ../src/payment_secure/BastionGuard-secure-cli.cpp:95 msgid "[BastionGuard-secure] HOME non impostata.\n" msgstr "[BastionGuard-secure] HOME not set.\n" #: ../src/payment_secure/BastionGuard-secure-cli.cpp:179 msgid "" "[BastionGuard-secure] Bypass dnsmasq disabilitato (BASTIONGUARD_NO_BWRAP=1)\n" msgstr "" "[BastionGuard-secure] dnsmasq bypass disabled (BASTIONGUARD_NO_BWRAP=1)\n" #: ../src/payment_secure/BastionGuard-secure-cli.cpp:186 msgid "Usage: BastionGuard-secure \n" msgstr "Usage: BastionGuard-secure \n" #: ../src/payment_secure/BastionGuard-secure-cli.cpp:191 msgid "[BastionGuard-secure] URL richiesto: " msgstr "[BastionGuard-secure] Requested URL: " #: ../src/payment_secure/BastionGuard-secure-main.cpp:78 msgid "Seleziona un sito sicuro per i pagamenti/e-commerce:" msgstr "Select a safe site for payments/e-commerce:" #: ../src/payment_secure/BastionGuard-secure-main.cpp:94 msgid "" "La lista proviene da ~/.config/BastionGuard/payments.json (chiave: \"list\")." msgstr "" "The list comes from ~/.config/BastionGuard/payments.json (key: \"list\")." #: ../src/payment_secure/BastionGuard-secure-main.cpp:237 msgid "Seleziona un elemento valido." msgstr "Select a valid item." #: ../src/payment_secure/BastionGuard-secure-main.cpp:243 msgid "Dominio non valido." msgstr "Invalid domain." #: ../src/main.cpp:93 msgid "[Main] ⚠️ HOME non trovato, salto install wrapper" msgstr "[Main] ⚠️ HOME not found, skipping wrapper installation" #: ../src/main.cpp:108 msgid "[Main] ⚠️ Errore creando %1: %2" msgstr "[Main] ⚠️ Error creating %1: %2" #: ../src/main.cpp:135 msgid "[Main] 🔗 Creato symlink: %1 → %2" msgstr "[Main] 🔗 Created symlink: %1 → %2" #: ../src/main.cpp:138 msgid "[Main] ⚠️ Impossibile creare symlink %1: %2" msgstr "[Main] ⚠️ Unable to create symlink %1: %2" #: ../src/main.cpp:142 msgid "[Main] 🔁 Symlink già presente: %1 → %2" msgstr "[Main] 🔁 Symlink already exists: %1 → %2" #: ../src/main.cpp:169 msgid "[Main] ⚙️ Aggiornato %1" msgstr "[Main] ⚙️ Updated %1" #: ../src/main.cpp:180 msgid "[Main] ✅ PATH aggiornato per sessione corrente" msgstr "[Main] ✅ PATH updated for current session" #: ../src/main.cpp:184 msgid "[Main] ⚠️ Errore ensureUserWrapperInstalled(): %1" msgstr "[Main] ⚠️ Error ensureUserWrapperInstalled(): %1" #: ../src/main.cpp:253 msgid "BastionGuard in esecuzione" msgstr "BastionGuard is running" #: ../src/main.cpp:267 msgid "[TrayIcon] Quit richiesto" msgstr "[TrayIcon] Quit requested" #: ../src/main.cpp:308 msgid "[Lang] Config caricata da " msgstr "[Lang] Config loaded from " #: ../src/main.cpp:310 msgid "[Lang] Nessuna config trovata, uso locale di sistema" msgstr "[Lang] No config found, using system locale" #: ../src/main.cpp:351 msgid "Avvio aggiornamento blacklist (modalità headless)..." msgstr "Starting blacklist update (headless mode)..." #: ../src/main.cpp:355 msgid "✔ Blacklist aggiornata con successo." msgstr "✔ Blacklist successfully updated." #: ../src/main.cpp:358 msgid "❌ Errore durante l'aggiornamento blacklist." msgstr "❌ Error during blacklist update." #: ../src/main.cpp:362 msgid "Eccezione durante updatePhishLists(): " msgstr "Exception during updatePhishLists(): " #: ../src/main.cpp:371 msgid "[BastionGuard] Avvio aggiornamento SaneSecurity (modalità headless)..." msgstr "[BastionGuard] Starting SaneSecurity update (headless mode)..." #: ../src/main.cpp:377 msgid "[BastionGuard] ✔ Aggiornamento SaneSecurity completato." msgstr "[BastionGuard] ✔ SaneSecurity update completed." #: ../src/main.cpp:380 msgid "[BastionGuard] ❌ Errore durante l'aggiornamento SaneSecurity." msgstr "[BastionGuard] ❌ Error during SaneSecurity update." #: ../src/main.cpp:385 msgid "[BastionGuard] ❌ Eccezione durante updateSaneSecurity(): " msgstr "[BastionGuard] ❌ Exception during updateSaneSecurity(): " #: ../src/main.cpp:397 msgid "" "[Main] ❌ Utente 'clamav' non trovato. Lo scanner userà l'utente normale." msgstr "" "[Main] ❌ User 'clamav' not found. The scanner will use the normal user." #: ../src/main.cpp:413 msgid "" "[Main] 🔐 Processo configurato per lanciare i sottoprocessi come 'clamav'" msgstr "" "[Main] 🔐 Process configured to launch subprocesses as 'clamav'" #: ../src/AboutPage.cpp:118 msgid "" "© 2025-%1 Calogero Scarnà — BastionGuard™\n" "BastionGuard è stato depositato il 16/12/2025 presso UIBM (Italia) con il " "numero 302025000196519.\n" "Il motore anti-ransomware e anti-phishing è parte integrante della " "piattaforma di sicurezza.\n" "Il sistema include la scansione delle periferiche USB,\n" "scansione delle cartelle samba\n" "e le funzionalità di blocco di microfono e webcam.\n" "La protezione comprende la scansione in tempo reale con inotify.\n" "ClamAV® è un marchio registrato da Cisco\n" "%2\n" msgstr "" "© 2025-%1 Calogero Scarnà — BastionGuard™\n" "BastionGuard was registered on 16/12/2025 at UIBM (Italy) under number 302025000196519.\n" "The anti-ransomware and anti-phishing engine is an integral part of the security platform.\n" "The system includes USB device scanning,\n" "Samba folder scanning\n" "and microphone/webcam blocking features.\n" "Protection includes real-time scanning with inotify.\n" "ClamAV® is a registered trademark of Cisco\n" "%2\n" #: ../src/AboutPage.cpp:140 msgid "Programma" msgstr "Program" #: ../src/AboutPage.cpp:145 msgid "" "Questa applicazione utilizza:\n" "- ClamAV Antivirus Engine\n" "- GTK4 / gtkmm-4\n" "- SysTray / QT6\n" "- Image / libpng\n" "- Rules / yara\n" "- Udev\n" "- Libudev\n" "- Nginx\n" "- Sigc++\n" "- Libsecret\n" "- IDN2\n" "- SQLITE3\n" "- HYPERSCAN\n" "- RE2\n" "- Polkit\n" "- Nlohmann_json\n" "- DNSmasq /blocco pagine\n" "- Antiphishing server/ libsoup\n" "- Sandbox bancario/ chromium sandbox (CEF)\n" "- MISP lista per le banche\n" msgstr "" "This application uses:\n" "- ClamAV Antivirus Engine\n" "- GTK4 / gtkmm-4\n" "- SysTray / QT6\n" "- Image / libpng\n" "- Rules / yara\n" "- Udev\n" "- Libudev\n" "- Nginx\n" "- Sigc++\n" "- Libsecret\n" "- IDN2\n" "- SQLITE3\n" "- HYPERSCAN\n" "- RE2\n" "- Polkit\n" "- Nlohmann_json\n" "- DNSmasq / page blocking\n" "- Antiphishing server / libsoup\n" "- Banking sandbox / chromium sandbox (CEF)\n" "- MISP list for banks\n" #: ../src/AboutPage.cpp:169 msgid "Terze Parti" msgstr "Third Parties" #: ../src/AboutPage.cpp:189 msgid "Licenza" msgstr "License" #: ../src/AboutPage.cpp:209 msgid "Database" msgstr "Database" #: ../src/AboutPage.cpp:237 msgid "" "GNU GPL v3 license text not found.\n" "Assicurati che il file COPYING sia incluso nel progetto o che la tua " "distribuzione fornisca /usr/share/common-licenses/GPL-3." msgstr "" "GNU GPL v3 license text not found.\n" "Ensure that the COPYING file is included in the project or that your " "distribution provides /usr/share/common-licenses/GPL-3." #: ../src/AboutPage.cpp:247 msgid "Directory /var/lib/clamav non trovata.\n" msgstr "/var/lib/clamav directory not found.\n" #: ../src/AboutPage.cpp:250 msgid "" "📁 Database ClamAV trovati in /var/lib/clamav\n" "\n" msgstr "" "📁 ClamAV databases found in /var/lib/clamav\n" "\n" #: ../src/AboutPage.cpp:262 msgid " (database ufficiale ClamAV)\n" msgstr " (official ClamAV database)\n" #: ../src/pac/PacManager.cpp:45 ../src/pac/PacManager.cpp:64 msgid "systemctl non disponibile" msgstr "systemctl not available" #: ../src/pac/PacManager.cpp:52 msgid "bastionguard-pacd avviato (systemd --user)" msgstr "bastionguard-pacd started (systemd --user)" #: ../src/pac/PacManager.cpp:56 msgid "Impossibile avviare bastionguard-pacd (systemd --user)" msgstr "Unable to start bastionguard-pacd (systemd --user)" #: ../src/pac/PacManager.cpp:71 msgid "bastionguard-pacd fermato (systemd --user)" msgstr "bastionguard-pacd stopped (systemd --user)" #: ../src/pac/PacManager.cpp:113 ../src/pac/PacManager.cpp:136 msgid "gsettings non disponibile" msgstr "gsettings not available" #: ../src/pac/PacManager.cpp:124 msgid "Proxy GNOME impostato su AUTO (PAC)" msgstr "GNOME proxy set to AUTO (PAC)" #: ../src/pac/PacManager.cpp:128 msgid "Impossibile impostare proxy GNOME via gsettings" msgstr "Unable to set GNOME proxy via gsettings" #: ../src/pac/PacManager.cpp:144 msgid "Proxy GNOME ripristinato a NONE" msgstr "GNOME proxy restored to NONE" #: ../src/pac/PacManager.cpp:147 msgid "Impossibile disabilitare proxy GNOME" msgstr "Unable to disable GNOME proxy" #: ../src/pac/PacManager.cpp:178 msgid "" "Fallback headless: environment.d impostato (richiede relogin/riavvio " "sessione)" msgstr "" "Headless fallback: environment.d set (requires relogin/session restart)" #: ../src/pac/PacManager.cpp:181 msgid "Impossibile scrivere environment.d fallback" msgstr "Unable to write fallback environment.d" #: ../src/pac/PacManager.cpp:192 msgid "Fallback headless: environment.d rimosso" msgstr "Headless fallback: environment.d removed" #: ../src/pac/PacManager.cpp:195 msgid "Impossibile rimuovere environment.d fallback" msgstr "Unable to remove fallback environment.d" #: ../src/privhelper/bastionguard_privhelper.cpp:87 msgid "Errore disabilitando nodo PipeWire id=" msgstr "Error disabling PipeWire node id=" #: ../src/privhelper/bastionguard_privhelper.cpp:126 msgid "Errore riabilitando nodo PipeWire id=" msgstr "Error re-enabling PipeWire node id=" #: ../src/privhelper/bastionguard_privhelper.cpp:143 msgid "Errore: questo helper deve essere eseguito come root.\n" msgstr "Error: this helper must be run as root.\n" #: ../src/privhelper/bastionguard_privhelper.cpp:161 #: ../src/privhelper/bastionguard_privhelper.cpp:172 msgid "Comando non valido: " msgstr "Invalid command: " #: ../src/privhelper/bastionguard-firewall.cpp:39 msgid "[Firewall] Impossibile aprire blacklist: " msgstr "[Firewall] Unable to open blacklist: " #: ../src/privhelper/bastionguard-firewall.cpp:122 msgid "[Firewall] Deve essere eseguito come root.\n" msgstr "[Firewall] Must be run as root.\n" #: ../src/privhelper/bastionguard-firewall.cpp:136 msgid "[Firewall] Regole rimosse.\n" msgstr "[Firewall] Rules removed.\n" #: ../src/privhelper/bastionguard-firewall.cpp:141 msgid "[Firewall] Comando non valido: " msgstr "[Firewall] Invalid command: " #: ../src/privhelper/bastionguard-firewall.cpp:150 msgid "[Firewall] Blacklist vuota o non valida.\n" msgstr "[Firewall] Blacklist empty or invalid.\n" #: ../src/privhelper/bastionguard-firewall.cpp:161 msgid "[Firewall] Regole applicate (" msgstr "[Firewall] Rules applied (" #: ../src/privhelper/bastionguard-firewall.cpp:166 msgid "[Firewall] Nessun firewall supportato trovato.\n" msgstr "[Firewall] No supported firewall found.\n" #: ../src/cef/bastionguard_cef.cpp:191 msgid "[cef] CefInitialize failed\n" msgstr "[cef] CefInitialize failed\n" #: ../src/cef/bastionguard_cef.cpp:195 msgid "[cef] initialized (sandbox ON)\n" msgstr "[cef] initialized (sandbox ON)\n" #: ../src/cef/bastionguard_cef.cpp:204 msgid "[cef] signal received, exiting\n" msgstr "[cef] signal received, exiting\n" #: ../src/cef/bastionguard_cef.cpp:211 msgid "[cef] backend proxy listening on " msgstr "[cef] backend proxy listening on " #: ../src/cef/bastionguard_cef.cpp:219 msgid "[cef] proxy fatal: " msgstr "[cef] proxy fatal: " #: ../src/SettingsWindow.cpp:10 msgid "Impostazioni BastionGuard" msgstr "BastionGuard Settings" #: ../src/AurScan.cpp:50 msgid "📦 AurScan inizializzato" msgstr "📦 AurScan initialized" #: ../src/AurScan.cpp:137 msgid "📁 Monitor AUR attivo su: " msgstr "📁 AUR monitor active on: " #: ../src/AurScan.cpp:189 msgid "🆕 Nuova directory AUR trovata: " msgstr "🆕 New AUR directory found: " #: ../src/AurScan.cpp:204 msgid "🌱 Monitor root AUR attivo su: " msgstr "🌱 Root AUR monitor active on: " #: ../src/AurScan.cpp:210 msgid "🐧 Sistema non Arch-based — AUR disattivato" msgstr "🐧 Non Arch-based system — AUR disabled" #: ../src/AurScan.cpp:215 msgid "📡 Avvio monitor AUR…" msgstr "📡 Starting AUR monitor…" #: ../src/AurScan.cpp:235 msgid "✅ AurScan avviato" msgstr "✅ AurScan started" #: ../src/AurScan.cpp:250 msgid "🛑 AurScan disattivato" msgstr "🛑 AurScan disabled" #: ../src/AurScan.cpp:264 msgid "❌ Impossibile leggere PKGBUILD: " msgstr "❌ Unable to read PKGBUILD: " #: ../src/AurScan.cpp:269 msgid "🔎 Analisi sicurezza PKGBUILD: " msgstr "🔎 PKGBUILD security analysis: " #: ../src/AurScan.cpp:287 msgid "Uso di curl come comando" msgstr "Use of curl as command" #: ../src/AurScan.cpp:288 ../src/AurScan.cpp:289 msgid "Curl pipato verso shell — RCE" msgstr "Curl piped to shell — RCE" #: ../src/AurScan.cpp:290 msgid "Uso di wget come comando" msgstr "Use of wget as command" #: ../src/AurScan.cpp:291 ../src/AurScan.cpp:292 msgid "Wget pipato verso shell — RCE" msgstr "Wget piped to shell — RCE" #: ../src/AurScan.cpp:293 msgid "Esecuzione dinamica tramite bash -c" msgstr "Dynamic execution via bash -c" #: ../src/AurScan.cpp:294 msgid "Permessi 777 pericolosi" msgstr "Dangerous 777 permissions" #: ../src/AurScan.cpp:295 msgid "Comando distruttivo rm -rf" msgstr "Destructive rm -rf command" #: ../src/AurScan.cpp:296 msgid "Uso improprio di sudo nel PKGBUILD" msgstr "Improper use of sudo in PKGBUILD" #: ../src/AurScan.cpp:297 msgid "Pipe verso sh — RCE" msgstr "Pipe to sh — RCE" #: ../src/AurScan.cpp:298 msgid "Pipe verso bash — RCE" msgstr "Pipe to bash — RCE" #: ../src/AurScan.cpp:299 msgid "Possibile payload codificato e decodificato" msgstr "Possible encoded and decoded payload" #: ../src/AurScan.cpp:300 msgid "Install con permessi insicuri" msgstr "Install with insecure permissions" #: ../src/AurScan.cpp:301 msgid "Scrittura sospetta in /etc" msgstr "Suspicious write to /etc" #: ../src/AurScan.cpp:302 msgid "Scrittura diretta in /usr/bin" msgstr "Direct write to /usr/bin" #: ../src/AurScan.cpp:303 msgid "Exec dinamico con python" msgstr "Dynamic exec with python" #: ../src/AurScan.cpp:304 msgid "Exec arbitrario" msgstr "Arbitrary execution" #: ../src/AurScan.cpp:328 msgid "🚨 Minacce individuate nel PKGBUILD!" msgstr "🚨 Threats detected in PKGBUILD!" #: ../src/AurScan.cpp:335 msgid "✅ PKGBUILD pulito." msgstr "✅ Clean PKGBUILD." #: ../src/xdg-open.cpp:46 msgid "[BankOpener] ⚠️ URL vuoto.\n" msgstr "[BankOpener] ⚠️ Empty URL.\n" #: ../src/xdg-open.cpp:52 msgid "[BankOpener] ❌ Impossibile estrarre dominio da: " msgstr "[BankOpener] ❌ Unable to extract domain from: " #: ../src/xdg-open.cpp:61 msgid "[BankOpener] 🧩 Dominio sicuro rilevato: " msgstr "[BankOpener] 🧩 Secure domain detected: " #: ../src/xdg-open.cpp:63 msgid "[BankOpener] 🔐 Avvio sandbox CEF (Blink)...\n" msgstr "[BankOpener] 🔐 Starting CEF sandbox (Blink)...\n" #: ../src/xdg-open.cpp:69 msgid "[BankOpener] 🌐 Dominio non in lista sicura: " msgstr "[BankOpener] 🌐 Domain not in safe list: " #: ../src/xdg-open.cpp:70 msgid "[BankOpener] → Apertura nel browser predefinito.\n" msgstr "[BankOpener] → Opening in default browser.\n" #: ../src/xdg-open.cpp:123 ../src/xdg-open.cpp:197 msgid "[BankOpener] ⚠️ Impossibile aprire " msgstr "[BankOpener] ⚠️ Unable to open " #: ../src/xdg-open.cpp:129 ../src/xdg-open.cpp:203 msgid "[BankOpener] ⚠️ Errore parsing JSON in " msgstr "[BankOpener] ⚠️ JSON parsing error in " #: ../src/xdg-open.cpp:162 msgid "[BankOpener] ⚠️ Nessun dominio caricato da liste.\n" msgstr "[BankOpener] ⚠️ No domains loaded from lists.\n" #: ../src/xdg-open.cpp:238 msgid "[BankOpener] ✅ Domini pagamenti caricati: " msgstr "[BankOpener] ✅ Payment domains loaded: " #: ../src/SambaPage.cpp:53 msgid "Abilita scansione Samba" msgstr "Enable Samba scanning" #: ../src/SambaPage.cpp:75 msgid "Percorso" msgstr "Path" #: ../src/SambaPage.cpp:95 msgid "Scansiona ora" msgstr "Scan now" #: ../src/SambaPage.cpp:166 msgid "Configurazione Samba salvata correttamente." msgstr "Samba configuration saved successfully." #: ../src/SambaPage.cpp:172 msgid "Configurazione salvata" msgstr "Configuration saved" #: ../src/SambaPage.cpp:246 msgid "Aggiungi percorso SMB" msgstr "Add SMB path" #: ../src/SambaPage.cpp:257 msgid "Username (opzionale)" msgstr "Username (optional)" #: ../src/SambaPage.cpp:260 msgid "Password (opzionale)" msgstr "Password (optional)" #: ../src/SambaPage.cpp:271 msgid "" "Nota: in caso di rilevamento malware su file remoti,\n" "sarà necessario intervenire manualmente per la rimozione." msgstr "" "Note: in case of malware detection on remote files,\n" "manual intervention will be required for removal." #: ../src/SambaPage.cpp:314 msgid "Percorso SMB non valido:\n" msgstr "Invalid SMB path:\n" #: ../src/SambaPage.cpp:425 msgid "Scansione Samba avviata…" msgstr "Samba scan started…" #: ../src/SambaPage.cpp:430 ../src/SambaPage.cpp:526 msgid "File corrente: --" msgstr "Current file: --" #: ../src/SambaPage.cpp:469 msgid "Interrompi scansione" msgstr "Stop scan" #: ../src/SambaPage.cpp:518 msgid "" "Scansione completata.\n" "File analizzati: %1\n" "File infetti: %2" msgstr "" "Scan completed.\n" "Files analyzed: %1\n" "Infected files: %2" #: ../src/SambaPage.cpp:556 msgid "File corrente: " msgstr "Current file: " #: ../src/Quarantine.cpp:69 msgid "❌ File inesistente: " msgstr "❌ Non-existent file: " #: ../src/Quarantine.cpp:87 msgid "❌ Errore: impossibile creare il file meta in " msgstr "❌ Error: unable to create meta file in " #: ../src/Quarantine.cpp:100 msgid "DEBUG move(): cross-device link, uso copy+remove\n" msgstr "DEBUG move(): cross-device link, using copy+remove\n" #: ../src/Quarantine.cpp:105 msgid "❌ Errore copia in quarantena: " msgstr "❌ Error copying to quarantine: " #: ../src/Quarantine.cpp:114 msgid "⚠ Impossibile rimuovere il file originale: " msgstr "⚠ Unable to remove original file: " #: ../src/Quarantine.cpp:120 ../src/Quarantine.cpp:131 msgid "❌ Errore spostamento quarantena: " msgstr "❌ Quarantine move error: " #: ../src/Quarantine.cpp:127 msgid "✔ File spostato in quarantena: " msgstr "✔ File moved to quarantine: " #: ../src/Quarantine.cpp:143 msgid "❌ Ripristino impossibile: metadata mancante per " msgstr "❌ Restoration impossible: missing metadata for " #: ../src/Quarantine.cpp:155 msgid "❌ Ripristino impossibile: metadata vuoto o corrotto in " msgstr "❌ Restoration impossible: empty or corrupted metadata in " #: ../src/Quarantine.cpp:164 msgid "❌ Ripristino impossibile: file in quarantena mancante " msgstr "❌ Restoration impossible: missing file in quarantine " #: ../src/Quarantine.cpp:189 msgid "DEBUG restore(): cross-device link, uso copy+remove\n" msgstr "DEBUG restore(): cross-device link, using copy+remove\n" #: ../src/Quarantine.cpp:194 msgid "❌ Errore copia durante il ripristino: " msgstr "❌ Error copying during restoration: " #: ../src/Quarantine.cpp:202 msgid "⚠ Impossibile rimuovere il file in quarantena: " msgstr "⚠ Unable to remove file from quarantine: " #: ../src/Quarantine.cpp:207 ../src/Quarantine.cpp:219 msgid "❌ Errore ripristino: " msgstr "❌ Restoration error: " #: ../src/Quarantine.cpp:215 msgid "✔ File ripristinato in: " msgstr "✔ File restored to: " #: ../src/Quarantine.cpp:234 msgid "✔ File eliminato dalla quarantena: " msgstr "✔ File deleted from quarantine: " #: ../src/Quarantine.cpp:237 msgid "❌ Errore eliminazione: " msgstr "❌ Deletion error: " #: ../src/PrivacyPage.cpp:53 msgid "🔒 Privacy Webcam / Microfono" msgstr "🔒 Webcam / Microphone Privacy" #: ../src/PrivacyPage.cpp:76 msgid "[Privacy] Errore lettura auto_refresh" msgstr "[Privacy] Error reading auto_refresh" #: ../src/PrivacyPage.cpp:84 msgid "Abilita/Disabilita Webcam e Microfono" msgstr "Enable/Disable Webcam and Microphone" #: ../src/PrivacyPage.cpp:96 msgid "Aggiornamento automatico ogni 5 minuti" msgstr "Automatic update every 5 minutes" #: ../src/PrivacyPage.cpp:101 msgid "🔓 Sblocca dispositivi" msgstr "🔓 Unlock devices" #: ../src/PrivacyPage.cpp:108 msgid "Richiesto sblocco manuale dei dispositivi" msgstr "Manual device unlocking required" #: ../src/PrivacyPage.cpp:142 msgid "📜 Log giornaliero caricato." msgstr "📜 Daily log loaded." #: ../src/PrivacyPage.cpp:144 ../src/PrivacyPage.cpp:555 msgid "📝 Nessun log disponibile per oggi." msgstr "📝 No log available for today." #: ../src/PrivacyPage.cpp:147 msgid "⚠️ Errore durante il caricamento del log." msgstr "⚠️ Error loading the log." #: ../src/PrivacyPage.cpp:157 msgid "⏳ Inizializzazione del servizio privacy..." msgstr "⏳ Initializing privacy service..." #: ../src/PrivacyPage.cpp:158 msgid "=== Avvio BastionGuard PrivacyPage ===" msgstr "=== Starting BastionGuard PrivacyPage ===" #: ../src/PrivacyPage.cpp:165 ../src/PrivacyPage.cpp:699 msgid "🕵️ Monitoraggio privacy attivo" msgstr "🕵️ Privacy monitoring active" #: ../src/PrivacyPage.cpp:177 msgid "=== Arresto monitoraggio privacy ===" msgstr "=== Stopping privacy monitoring ===" #: ../src/PrivacyPage.cpp:190 msgid "Avvio automatico del servizio BastionGuard-privacyd..." msgstr "Automatic start of BastionGuard-privacyd service..." #: ../src/PrivacyPage.cpp:202 msgid "📷 Webcam/Microfono sbloccati automaticamente" msgstr "📷 Webcam/Microphone automatically unlocked" #: ../src/PrivacyPage.cpp:204 msgid "❌ Errore nello sblocco automatico" msgstr "❌ Error during automatic unlocking" #: ../src/PrivacyPage.cpp:252 msgid "🕵️ Monitoraggio in tempo reale avviato" msgstr "🕵️ Real-time monitoring started" #: ../src/PrivacyPage.cpp:261 msgid "Nuovo accesso rilevato: %1" msgstr "New access detected: %1" #: ../src/PrivacyPage.cpp:321 msgid "⚠️ Accesso dispositivo rilevato" msgstr "⚠️ Device access detected" #: ../src/PrivacyPage.cpp:371 msgid "%1 sta tentando di accedere a webcam o microfono." msgstr "%1 is attempting to access webcam or microphone." #: ../src/PrivacyPage.cpp:382 msgid "🕒 %1 altri processi in attesa..." msgstr "🕒 %1 other processes pending..." #: ../src/PrivacyPage.cpp:393 msgid "✔ Consenti" msgstr "✔ Allow" #: ../src/PrivacyPage.cpp:394 msgid "✖ Nega" msgstr "✖ Deny" #: ../src/PrivacyPage.cpp:407 msgid "Accesso CONSENTITO a %1" msgstr "Access ALLOWED to %1" #: ../src/PrivacyPage.cpp:421 msgid "Accesso NEGATO a %1 — blocco webcam/microfono" msgstr "Access DENIED to %1 — webcam/microphone blocked" #: ../src/PrivacyPage.cpp:439 msgid "❌ ERRORE: impossibile applicare il blocco tramite helper!" msgstr "❌ ERROR: unable to apply block via helper!" #: ../src/PrivacyPage.cpp:440 msgid "❌ Errore: impossibile bloccare webcam/microfono" msgstr "❌ Error: unable to block webcam/microphone" #: ../src/PrivacyPage.cpp:442 msgid "🔒 Webcam/microfono BLOCCATI tramite helper (popup)" msgstr "🔒 Webcam/microphone BLOCKED via helper (popup)" #: ../src/PrivacyPage.cpp:443 msgid "🔒 Webcam e microfono bloccati" msgstr "🔒 Webcam and microphone blocked" #: ../src/PrivacyPage.cpp:465 msgid "🔄 Aggiornamento elenco processi e log..." msgstr "🔄 Updating process list and log..." #: ../src/PrivacyPage.cpp:466 msgid "Aggiornamento manuale avviato" msgstr "Manual update started" #: ../src/PrivacyPage.cpp:492 msgid "Auto aggiornamento attivato (salvato in config)" msgstr "Auto update enabled (saved in config)" #: ../src/PrivacyPage.cpp:493 msgid "Auto aggiornamento disattivato (salvato in config)" msgstr "Auto update disabled (saved in config)" #: ../src/PrivacyPage.cpp:495 msgid "[Privacy] Errore salvataggio auto_refresh: " msgstr "[Privacy] Error saving auto_refresh: " #: ../src/PrivacyPage.cpp:500 msgid "⏳ Auto aggiornamento attivo ogni 5 minuti." msgstr "⏳ Auto update active every 5 minutes." #: ../src/PrivacyPage.cpp:508 msgid "🛑 Auto aggiornamento disattivato." msgstr "🛑 Auto update disabled." #: ../src/PrivacyPage.cpp:525 msgid "Nessun processo sta utilizzando webcam o microfono." msgstr "No process is currently using webcam or microphone." #: ../src/PrivacyPage.cpp:527 msgid "" "📋 Processi attivi:\n" "\n" msgstr "" "📋 Active processes:\n" "\n" #: ../src/PrivacyPage.cpp:535 msgid "" "📜 Log giornaliero:\n" "\n" msgstr "" "📜 Daily log:\n" "\n" #: ../src/PrivacyPage.cpp:552 msgid "⚠️ Impossibile leggere il log giornaliero." msgstr "⚠️ Unable to read daily log." #: ../src/PrivacyPage.cpp:561 msgid "✅ Aggiornamento completato." msgstr "✅ Update completed." #: ../src/PrivacyPage.cpp:565 msgid "Errore update_process_list: " msgstr "Error update_process_list: " #: ../src/PrivacyPage.cpp:620 msgid "[Privacy] Errore scrittura log giornaliero." msgstr "[Privacy] Error writing daily log." #: ../src/PrivacyPage.cpp:640 msgid "Privacy abilitata" msgstr "Privacy enabled" #: ../src/PrivacyPage.cpp:640 msgid "Privacy disabilitata" msgstr "Privacy disabled" #: ../src/PrivacyPage.cpp:642 msgid "[Privacy] Errore salvataggio config: " msgstr "[Privacy] Error saving config: " #: ../src/PrivacyPage.cpp:655 msgid "[Privacy] Errore caricamento config" msgstr "[Privacy] Error loading config" #: ../src/PrivacyPage.cpp:669 msgid "📷 Riattivazione webcam/microfono..." msgstr "📷 Re-enabling webcam/microphone..." #: ../src/PrivacyPage.cpp:670 msgid "🔒 Disattivazione webcam/microfono in corso..." msgstr "🔒 Disabling webcam/microphone..." #: ../src/PrivacyPage.cpp:672 msgid "Toggle privacy: " msgstr "Toggle privacy: " #: ../src/PrivacyPage.cpp:700 msgid "Script OK: UNBLOCK eseguito" msgstr "Script OK: UNBLOCK executed" #: ../src/PrivacyPage.cpp:707 msgid "🔕 Privacy monitor disattivato" msgstr "🔕 Privacy monitor deactivated" #: ../src/PrivacyPage.cpp:708 msgid "Script OK: BLOCK eseguito" msgstr "Script OK: BLOCK executed" #: ../src/PrivacyPage.cpp:716 msgid "ERRORE: esecuzione script privacy fallita" msgstr "ERROR: privacy script execution failed" #: ../src/PrivacyPage.cpp:717 msgid "❌ Errore nell'esecuzione dello script." msgstr "❌ Error executing the script." #: ../src/PrivacyPage.cpp:738 msgid "🔓 Dispositivi sbloccati manualmente" msgstr "🔓 Devices manually unlocked" #: ../src/PrivacyPage.cpp:741 msgid "Webcam e microfono sbloccati" msgstr "Webcam and microphone unlocked" #: ../src/PrivacyPage.cpp:743 msgid "❌ Errore durante sblocco manuale" msgstr "❌ Error during manual unlocking" #: ../src/PrivacyPage.cpp:744 msgid "❌ Impossibile sbloccare i dispositivi." msgstr "❌ Unable to unlock devices." #: ../src/phishing/BastionGuard-daemon.cpp:93 msgid "[BastionGuard-daemon] ✅ Whitelist caricata: " msgstr "[BastionGuard-daemon] ✅ Whitelist loaded: " #: ../src/phishing/BastionGuard-daemon.cpp:116 msgid "[BastionGuard-daemon] 📁 Creata directory log: " msgstr "[BastionGuard-daemon] 📁 Created log directory: " #: ../src/phishing/BastionGuard-daemon.cpp:121 msgid "[BastionGuard-daemon] Log creato automaticamente.\n" msgstr "[BastionGuard-daemon] Log created automatically.\n" #: ../src/phishing/BastionGuard-daemon.cpp:123 msgid "[BastionGuard-daemon] 🧾 Creato file log: " msgstr "[BastionGuard-daemon] 🧾 Created log file: " #: ../src/phishing/BastionGuard-daemon.cpp:141 msgid "[BastionGuard-daemon] 🔐 Proprietario impostato su " msgstr "[BastionGuard-daemon] 🔐 Owner set to " #: ../src/phishing/BastionGuard-daemon.cpp:144 msgid "[BastionGuard-daemon] ⚠️ Impossibile cambiare owner del log (" msgstr "[BastionGuard-daemon] ⚠️ Unable to change log owner (" #: ../src/phishing/BastionGuard-daemon.cpp:148 msgid "[BastionGuard-daemon] ⚠️ Utente '" msgstr "[BastionGuard-daemon] ⚠️ User '" #: ../src/phishing/BastionGuard-daemon.cpp:149 msgid "' non trovato: skip chown\n" msgstr "' not found: skipping chown\n" #: ../src/phishing/BastionGuard-daemon.cpp:153 msgid "[BastionGuard-daemon] ⚠️ Errore gestione log: " msgstr "[BastionGuard-daemon] ⚠️ Log management error: " #: ../src/phishing/BastionGuard-daemon.cpp:175 msgid "[BastionGuard-daemon] 🚀 Avvio del servizio LocalWarningServer..." msgstr "[BastionGuard-daemon] 🚀 Starting LocalWarningServer service..." #: ../src/phishing/BastionGuard-daemon.cpp:191 msgid "" "[BastionGuard-daemon] ⚠️ Permessi insufficienti per aprire porte 81/444.\n" msgstr "" "[BastionGuard-daemon] ⚠️ Insufficient permissions to open ports 81/444.\n" #: ../src/phishing/BastionGuard-daemon.cpp:192 msgid "" " Esegui: sudo setcap 'cap_net_bind_service=+ep' /usr/bin/BastionGuard-" "daemon\n" msgstr "" " Run: sudo setcap 'cap_net_bind_service=+ep' /usr/bin/BastionGuard-" "daemon\n" #: ../src/phishing/BastionGuard-daemon.cpp:209 msgid "[BastionGuard-daemon] ✅ Server attivo su " msgstr "[BastionGuard-daemon] ✅ Server active on " #: ../src/phishing/BastionGuard-daemon.cpp:210 msgid " e " msgstr " and " #: ../src/phishing/BastionGuard-daemon.cpp:219 msgid "[BastionGuard-daemon] 🟢 Trusted domain rilevato: " msgstr "[BastionGuard-daemon] 🟢 Trusted domain detected: " #: ../src/phishing/BastionGuard-daemon.cpp:219 msgid " — bypass redirect.\n" msgstr " — bypassing redirect.\n" #: ../src/phishing/BastionGuard-daemon.cpp:221 msgid "[BastionGuard-daemon] 🔴 Sospetto: " msgstr "[BastionGuard-daemon] 🔴 Suspicious: " #: ../src/phishing/BastionGuard-daemon.cpp:221 msgid " — instradato verso 127.0.0.2.\n" msgstr " — routed to 127.0.0.2.\n" #: ../src/phishing/BastionGuard-daemon.cpp:230 msgid "[BastionGuard-daemon] 🛑 Arresto in corso..." msgstr "[BastionGuard-daemon] 🛑 Stopping..." #: ../src/phishing/BastionGuard-daemon.cpp:232 msgid "[BastionGuard-daemon] ✅ Terminato correttamente." msgstr "[BastionGuard-daemon] ✅ Terminated correctly." #: ../src/phishing/BastionGuard-daemon.cpp:235 msgid "[BastionGuard-daemon] ❌ Errore fatale: " msgstr "[BastionGuard-daemon] ❌ Fatal error: " #: ../src/phishing/BastionGuard-daemon.cpp:239 msgid "[BastionGuard-daemon] ❌ Errore sconosciuto." msgstr "[BastionGuard-daemon] ❌ Unknown error." #: ../src/phishing/local_warning_server.cpp:64 msgid "(Log non disponibile)" msgstr "(Log not available)" #: ../src/phishing/local_warning_server.cpp:68 msgid "(Log vuoto)" msgstr "(Empty log)" #: ../src/phishing/local_warning_server.cpp:86 msgid "(Nessuna attività recente)" msgstr "(No recent activity)" #: ../src/phishing/local_warning_server.cpp:193 msgid "[LocalWarningServer] ✅ Whitelist caricata: " msgstr "[LocalWarningServer] ✅ Whitelist loaded: " #: ../src/phishing/local_warning_server.cpp:194 msgid " domini trusted\n" msgstr " trusted domains\n" #: ../src/phishing/local_warning_server.cpp:232 msgid "[LocalWarningServer] ⚠️ Porta " msgstr "[LocalWarningServer] ⚠️ Port " #: ../src/phishing/local_warning_server.cpp:233 msgid " non disponibile: " msgstr " not available: " #: ../src/phishing/local_warning_server.cpp:269 msgid "[LocalWarningServer] ❌ Errore creazione SoupServer\n" msgstr "[LocalWarningServer] ❌ Error creating SoupServer\n" #: ../src/phishing/local_warning_server.cpp:286 msgid "[LocalWarningServer] TLS error: " msgstr "[LocalWarningServer] TLS error: " #: ../src/phishing/local_warning_server.cpp:300 msgid "[LocalWarningServer] ⚠️ Nessuna porta disponibile su " msgstr "[LocalWarningServer] ⚠️ No available port on " #: ../src/phishing/local_warning_server.cpp:307 msgid "[LocalWarningServer] ✅ Avviato su " msgstr "[LocalWarningServer] ✅ Started on " #: ../src/phishing/local_warning_server.cpp:325 msgid "[LocalWarningServer] 🛑 Arrestato\n" msgstr "[LocalWarningServer] 🛑 Stopped\n" #: ../src/phishing/local_warning_server.cpp:342 #: ../src/phishing/local_warning_server.cpp:351 msgid "dominio-sconosciuto" msgstr "unknown-domain" #: ../src/phishing/local_warning_server.cpp:375 msgid "Accesso bloccato - BastionGuard DNS" msgstr "Access blocked - BastionGuard DNS" #: ../src/phishing/local_warning_server.cpp:413 msgid "Dominio bloccato" msgstr "Domain blocked" #: ../src/phishing/local_warning_server.cpp:415 msgid "L'accesso al dominio" msgstr "Access to the domain" #: ../src/phishing/local_warning_server.cpp:418 msgid "è stato bloccato dal sistema DNS di BastionGuard (dnsmasq)." msgstr "has been blocked by the BastionGuard DNS system (dnsmasq)." #: ../src/phishing/local_warning_server.cpp:420 msgid "Torna al sicuro" msgstr "Return to safety" #: ../src/phishing/local_warning_server.cpp:421 msgid "BastionGuard — protezione DNS attiva" msgstr "BastionGuard — active DNS protection" #: ../src/phishing/google_safe.cpp:33 msgid "" "[GoogleSafe] 🛈 Modulo attivo ma disabilitato in questa build (dnsmasq " "backend)\n" msgstr "" "[GoogleSafe] 🛈 Module active but disabled in this build (dnsmasq backend)\n" #: ../src/phishing/WebProbe.cpp:97 msgid "[WebProbe] ✅ Caricata blocklist da: " msgstr "[WebProbe] ✅ Blocklist loaded from: " #: ../src/phishing/WebProbe.cpp:98 msgid " domini)\n" msgstr " domains)\n" #: ../src/phishing/WebProbe.cpp:102 msgid "[WebProbe] ⚠️ Nessuna blocklist trovata.\n" msgstr "[WebProbe] ⚠️ No blocklist found.\n" #: ../src/phishing/WebProbe.cpp:205 msgid "[WebProbe] ⚠️ DNS ha restituito 127.0.0.2 per " msgstr "[WebProbe] ⚠️ DNS returned 127.0.0.2 for " #: ../src/cloud/MalwareBazaar.cpp:30 msgid "[Cloud] Nessun file " msgstr "[Cloud] No file " #: ../src/cloud/MalwareBazaar.cpp:30 msgid " trovato.\n" msgstr " found.\n" #: ../src/cloud/MalwareBazaar.cpp:41 ../src/cloud/MalwareBazaar.cpp:44 msgid "malware_bazaar_api_key=" msgstr "malware_bazaar_api_key=" #: ../src/cloud/MalwareBazaar.cpp:47 msgid "[Cloud] API key caricata correttamente.\n" msgstr "[Cloud] API key loaded successfully.\n" #: ../src/cloud/MalwareBazaar.cpp:49 msgid "[Cloud] API key vuota.\n" msgstr "[Cloud] Empty API key.\n" #: ../src/cloud/MalwareBazaar.cpp:126 msgid "[Cloud] Nessuna API key impostata.\n" msgstr "[Cloud] No API key set.\n" #: ../src/cloud/MalwareBazaar.cpp:132 msgid "[Cloud] Impossibile inizializzare CURL.\n" msgstr "[Cloud] Unable to initialize CURL.\n" #: ../src/cloud/MalwareBazaar.cpp:158 msgid "[Cloud] Curl errore: " msgstr "[Cloud] Curl error: " #: ../src/cloud/MalwareBazaar.cpp:164 msgid "[Cloud] JSON non valido\n" msgstr "[Cloud] Invalid JSON\n" #: ../src/cloud/MalwareBazaar.cpp:171 msgid "[Cloud] Errore API: " msgstr "[Cloud] API error: " #: ../src/cloud/MalwareBazaar.cpp:177 msgid "[Cloud] Nessun dato per questo hash\n" msgstr "[Cloud] No data for this hash\n" msgid "DB ClamAV" msgstr "ClamAV Database" msgid "Database firme ClamAV" msgstr "ClamAV signature database" msgid "" "Questa sezione mostra le firme presenti nel database ClamAV.\n" "Le firme personalizzate installate in /var/lib/clamav verranno caricate automaticamente da clamd." msgstr "" "This section shows the signatures present in the ClamAV database.\n" "Custom signatures installed in /var/lib/clamav will be automatically loaded by clamd." msgid "Percorso database:" msgstr "Database path:" msgid "Aggiorna" msgstr "Update" msgid "Firme trovate: %1" msgstr "Signatures found: %1" msgid "Nessuna firma trovata in /var/lib/clamav" msgstr "No signatures found in /var/lib/clamav" #: src/DashboardPage.cpp msgid "Verifica aggiornamenti..." msgstr "Checking for updates..." #: src/DashboardPage.cpp msgid "Aggiornato" msgstr "Up to date" #: src/DashboardPage.cpp msgid "Aggiornamento disponibile" msgstr "Update available" #: src/DashboardPage.cpp msgid "Impossibile verificare" msgstr "Unable to check for updates" msgid "Remoto: %1 (%2)" msgstr "Remote: %1 (%2)" msgid "Anti-Phishing avanzate" msgstr "Advanced Anti-Phishing" msgid "Gestione Whitelist / Blacklist Anti-Phishing" msgstr "Anti-Phishing Whitelist / Blacklist Management" msgid "Cerca in whitelist/blacklist..." msgstr "Search in whitelist/blacklist..." msgid "Whitelist (consenti)" msgstr "Whitelist (allow)" msgid "Aggiungi a whitelist (dominio o IPv4)" msgstr "Add to whitelist (domain or IPv4)" msgid "Blacklist custom (blocca via dnsmasq)" msgstr "Custom blacklist (block via dnsmasq)" msgid "Aggiungi a blacklist (dominio o IPv4)" msgstr "Add to blacklist (domain or IPv4)" msgid "Salvataggio completato" msgstr "Save completed" msgid "Whitelist/Blacklist salvate. Config dnsmasq aggiornata (127.0.0.2) e servizio ricaricato." msgstr "Whitelist/Blacklist saved. dnsmasq configuration updated (127.0.0.2) and service reloaded." msgid "Valore non valido" msgstr "Invalid value" msgid "Inserisci un dominio valido o un IPv4 valido." msgstr "Enter a valid domain or a valid IPv4 address." msgid "Già presente" msgstr "Already present" msgid "Questo elemento è già nella whitelist." msgstr "This item is already in the whitelist." msgid "Questo elemento è già nella blacklist." msgstr "This item is already in the blacklist." msgid "Impossibile salvare la blacklist utente." msgstr "Unable to save the user blacklist." msgid "Impossibile creare file temporaneo per dnsmasq." msgstr "Unable to create temporary file for dnsmasq." msgid "DNSMasq" msgstr "DNSMasq" msgid "Configura dnsmasq per BastionGuard.\n\n• Abilita conf-dir=/etc/dnsmasq.d/,*.conf se manca\n• Crea /etc/dnsmasq.d/BastionGuard.conf con listen-address 127.0.0.1,127.0.0.2\n• Riavvia dnsmasq (se presente)" msgstr "Configure dnsmasq for BastionGuard.\n\n• Enable conf-dir=/etc/dnsmasq.d/,*.conf if missing\n• Create /etc/dnsmasq.d/BastionGuard.conf with listen-address 127.0.0.1,127.0.0.2\n• Restart dnsmasq (if present)" msgid "Configura dnsmasq (conf-dir + BastionGuard.conf)" msgstr "Configure dnsmasq (conf-dir + BastionGuard.conf)" msgid "Configurazione dnsmasq (conf-dir + BastionGuard.conf)" msgstr "dnsmasq configuration (conf-dir + BastionGuard.conf)" msgid "Configurazione dnsmasq" msgstr "dnsmasq configuration" msgid "Configuro dnsmasq (conf-dir + BastionGuard.conf)..." msgstr "Configuring dnsmasq (conf-dir + BastionGuard.conf)..." msgid "Configuro dnsmasq..." msgstr "Configuring dnsmasq..." msgid "OK: dnsmasq configurato." msgstr "OK: dnsmasq configured." msgid "ERRORE: dnsmasq non configurato." msgstr "ERROR: dnsmasq not configured." msgid "❌ Errore configurazione dnsmasq, codice: " msgstr "❌ dnsmasq configuration error, code: " msgid "Eccezione configure_dnsmasq(): " msgstr "Exception in configure_dnsmasq(): " msgid "Errore sconosciuto in configure_dnsmasq()." msgstr "Unknown error in configure_dnsmasq()." msgid "== BastionGuard dnsmasq setup ==" msgstr "== BastionGuard dnsmasq setup ==" msgid "" "Benvenuto nel setup iniziale di BastionGuard.\n" "Questo wizard ti guiderà passo passo nella configurazione iniziale.\n" "\n" "Sono previsti 10 passaggi principali:\n" "1) Configurazione del resolver locale (DNS 127.0.0.1)\n" "2) Configurazione di DNSMasq per BastionGuard\n" "3) Apertura delle porte firewall necessarie\n" "4) Configurazione avanzata del firewall (nftables)\n" "5) Generazione e installazione della CA di sistema\n" "6) Configurazione del webserver (porte HTTP/HTTPS)\n" "7) Installazione del Native Messaging Host per browser\n" "8) Abilitazione del servizio User Agent\n" "9) Download della lista delle banche (MISP)\n" "10) Riepilogo ed esecuzione delle azioni selezionate.\n" "\n" "Puoi usare i pulsanti Avanti e Indietro per navigare tra le sezioni." msgstr "" "Welcome to the initial BastionGuard setup.\n" "This wizard will guide you step by step through the initial configuration.\n" "\n" "There are 10 main steps:\n" "1) Configure the local resolver (DNS 127.0.0.1)\n" "2) Configure DNSMasq for BastionGuard\n" "3) Open the required firewall ports\n" "4) Advanced firewall configuration (nftables)\n" "5) Generate and install the system CA\n" "6) Configure the web server (HTTP/HTTPS ports)\n" "7) Install the Native Messaging Host for the browser\n" "8) Enable the User Agent service\n" "9) Download the bank list (MISP)\n" "10) Summary and execution of the selected actions.\n" "\n" "You can use the Next and Back buttons to navigate between sections." msgid "Protezione" msgstr "Protection" msgid "Servizi" msgstr "Services" msgid "Phishing Scanner" msgstr "Phishing Scanner" msgid "Analyze a URL for phishing" msgstr "Analyze a URL for phishing" msgid "Check a domain phishing" msgstr "Check a domain phishing" msgid "When a destination is not present in our blocklists, BastionGuard applies heuristic page analysis to detect phishing patterns, redirect chains, credential-harvesting forms, obfuscated scripts, and brand impersonation signals." msgstr "When a destination is not present in our blocklists, BastionGuard applies heuristic page analysis to detect phishing patterns, redirect chains, credential-harvesting forms, obfuscated scripts, and brand impersonation signals." msgid "Analyze" msgstr "Analyze" msgid "Insert a URL to analyze." msgstr "Insert a URL to analyze." msgid "The URL format is not valid." msgstr "The URL format is not valid." msgid "Analysis started..." msgstr "Analysis started..." msgid "Analyzing URL..." msgstr "Analyzing URL..." msgid "Starting analysis for:" msgstr "Starting analysis for:" msgid "Ready." msgstr "Ready." msgid "Unable to contact BastionGuard Security Intelligence." msgstr "Unable to contact BastionGuard Security Intelligence." msgid "Remote analysis failed." msgstr "Remote analysis failed." msgid "The remote BastionGuard Security Intelligence page did not return valid HTML." msgstr "The remote BastionGuard Security Intelligence page did not return valid HTML." msgid "Unexpected response format from remote analyzer." msgstr "Unexpected response format from remote analyzer." msgid "Parsing failed." msgstr "Parsing failed." msgid "The remote page responded, but no classification block was found." msgstr "The remote page responded, but no classification block was found." msgid "Malicious result detected." msgstr "Malicious result detected." msgid "Suspicious result detected." msgstr "Suspicious result detected." msgid "Analysis complete." msgstr "Analysis complete." msgid "Protezione Email" msgstr "Email Protection" msgid "Abilita protezione email" msgstr "Enable email protection" msgid "Scansiona email in uscita" msgstr "Scan outgoing email" msgid "Inserisci firma automatica" msgstr "Insert automatic signature" msgid "Pubblica STARTTLS" msgstr "Publish STARTTLS" msgid "Abilita listener TLS implicito" msgstr "Enable implicit TLS listener" msgid "Nome visualizzato" msgstr "Display name" msgid "Ruolo" msgstr "Role" msgid "Azienda" msgstr "Company" msgid "Telefono" msgstr "Phone" msgid "Sito web" msgstr "Website" msgid "Logo fisso utilizzato: /usr/share/BastionGuard/data/logo.png" msgstr "Fixed logo used: /usr/share/BastionGuard/data/logo.png" msgid "Installa l'estensione BastionGuard per Thunderbird e il native host.\nSe necessario, inserisci la password amministratore per completare l'installazione." msgstr "Install the BastionGuard extension for Thunderbird and the native host.\nIf required, enter the administrator password to complete the installation." msgid "Password amministratore" msgstr "Administrator password" msgid "Inserisci la password sudo" msgstr "Enter sudo password" msgid "Installa estensione Thunderbird" msgstr "Install Thunderbird extension" msgid "Pulisci log" msgstr "Clean logs" msgid "Script non trovato:\n" msgstr "Script not found:\n" msgid "Impossibile avviare lo script di installazione.\n" msgstr "Unable to start the installation script.\n" msgid "\n✔ Installazione Thunderbird completata.\n" msgstr "\n✔ Thunderbird installation completed.\n" msgid "\n❌ Installazione fallita (exit=%1)\n" msgstr "\n❌ Installation failed (exit=%1)\n" msgid "Seleziona i profili SMTP da importare da Thunderbird.\nLe password non sono esportabili: dovrai inserirle manualmente dopo l'importazione." msgstr "Select the SMTP profiles to import from Thunderbird.\nPasswords cannot be exported: you will need to enter them manually after the import." msgid "Profili trovati in Thunderbird" msgstr "Profiles found in Thunderbird" msgid "Profili attivi (da mail.json)" msgstr "Active profiles (from mail.json)" msgid "Email: " msgstr "Email: " msgid "smtp_host non valido — inserisci il server SMTP reale" msgstr "Invalid smtp_host — enter the real SMTP server" msgid "Server SMTP:" msgstr "SMTP server:" msgid "Porta:" msgstr "Port:" msgid "Password:" msgstr "Password:" msgid "(salvata)" msgstr "(saved)" msgid "Inserisci la password SMTP" msgstr "Enter SMTP password" msgid "🔍 Scansiona Thunderbird" msgstr "🔍 Scan Thunderbird" msgid "❌ Nessun profilo trovato" msgstr "❌ No profiles found" msgid "✔ Trovati %1 profili SMTP da Thunderbird" msgstr "✔ %1 SMTP profiles found in Thunderbird" msgid "⬇ Importa profili selezionati" msgstr "⬇ Import selected profiles" msgid "❌ Nessun profilo da importare. Scansiona prima." msgstr "❌ No profiles to import. Scan first." msgid "✔ %1 profili salvati e proxy riavviato." msgstr "✔ %1 profiles saved and proxy restarted." msgid "✔ Importati %1 profili — salvataggio fallito, usa 'Salva' manualmente." msgstr "✔ %1 profiles imported — saving failed, use 'Save' manually." msgid "Nessun profilo selezionato." msgstr "No profile selected." msgid "Generale" msgstr "General" msgid "Firma" msgstr "Signature" msgid "Profili SMTP" msgstr "SMTP Profiles" msgid "Thunderbird" msgstr "Thunderbird" msgid "Salva configurazione email" msgstr "Save email configuration" msgid "Firma vuota" msgstr "Empty signature" msgid "La firma automatica è abilitata ma tutti i campi firma sono vuoti." msgstr "Automatic signature is enabled but all signature fields are empty." msgid "Profili SMTP non configurati" msgstr "SMTP profiles not configured" msgid "I seguenti profili avevano smtp_host = 127.0.0.1 e non possono essere usati come relay:\n" msgstr "The following profiles had smtp_host = 127.0.0.1 and cannot be used as a relay:\n" msgid "\nSono stati salvati senza server SMTP. Aggiorna i campi 'Server SMTP' nel tab Profili SMTP e reimporta." msgstr "\nThey were saved without an SMTP server. Update the 'SMTP Server' fields in the SMTP Profiles tab and re-import." msgid "❌ Impossibile salvare la configurazione" msgstr "❌ Unable to save configuration" msgid "Errore salvataggio" msgstr "Save error" msgid "Impossibile scrivere ~/.config/BastionGuard/mail.json" msgstr "Unable to write ~/.config/BastionGuard/mail.json" msgid "✔ Configurazione salvata in ~/.config/BastionGuard/mail.json" msgstr "✔ Configuration saved in ~/.config/BastionGuard/mail.json" msgid "✔ %1 profili attivi" msgstr "✔ %1 active profiles" msgid "✔ Configurazione email multi-SMTP salvata" msgstr "✔ Multi-SMTP email configuration saved" msgid "Email" msgstr "Email" msgid "Mail Proxy" msgstr "Mail Proxy" msgid "Proxy SMTP locale per protezione email in uscita" msgstr "Local SMTP proxy for outgoing email protection" msgid "⏳ Troppi controlli cloud in corso, salto temporaneamente." msgstr "⏳ Too many cloud checks in progress, temporarily skipping." msgid "❌ Errore controllo cloud sconosciuto." msgstr "❌ Unknown cloud check error." #: first-run-services-window.cpp msgid "[FirstRun] CA non ancora generata, verrà installata al primo avvio CEF\n" msgstr "[FirstRun] CA not yet generated, will be installed on first CEF launch\n" #: first-run-services-window.cpp msgid "[FirstRun] helper non trovato: " msgstr "[FirstRun] helper not found: " #: first-run-services-window.cpp msgid "[FirstRun] Installazione CA BastionGuard nel trust store...\n" msgstr "[FirstRun] Installing BastionGuard CA into the trust store...\n" #: first-run-services-window.cpp msgid "[FirstRun] ⚠️ pkexec fallito, tentativo sudo...\n" msgstr "[FirstRun] ⚠️ pkexec failed, attempting sudo...\n" #: first-run-services-window.cpp msgid "[FirstRun] ✅ CA installata nel sistema\n" msgstr "[FirstRun] ✅ CA installed in the system\n" #: first-run-services-window.cpp msgid "[FirstRun] ❌ Installazione CA fallita\n" msgstr "[FirstRun] ❌ CA installation failed\n" #: first-run-services-window.cpp msgid "[FirstRun] ✅ NSS: " msgstr "[FirstRun] ✅ NSS: " #: first-run-services-window.cpp msgid "[FirstRun] ✅ NSS profili utente aggiornati\n" msgstr "[FirstRun] ✅ NSS user profiles updated\n" #. bank_filter.hpp #: bank_filter.hpp msgid "[filter] HOME variable not set\n" msgstr "[filter] HOME variable not set\n" #. Translators: %1 = list type (banks/payments), %2 = file path #: bank_filter.hpp #, c-format msgid "[filter] cannot read %s list: %s\n" msgstr "[filter] cannot read %s list: %s\n" #. Translators: %1 = number of bank domains, %2 = number of payment domains #: bank_filter.hpp #, c-format msgid "[filter] loaded %zu bank domains, %zu payment domains\n" msgstr "[filter] loaded %zu bank domains, %zu payment domains\n" #. block_page.hpp #: block_page.hpp msgid "BastionGuard — Protected Session" msgstr "BastionGuard — Protected Session" #: block_page.hpp msgid "Banking institution" msgstr "Banking institution" #: block_page.hpp msgid "Secure payment" msgstr "Secure payment" #: block_page.hpp msgid "Protected session opened" msgstr "Protected session opened" #: block_page.hpp #, c-format msgid "" "BastionGuard has opened %s in an isolated, protected " "window.

This tab has no access to the site. Use the BastionGuard " "window that just opened." msgstr "" "BastionGuard has opened %s in an isolated, protected " "window.

This tab has no access to the site. Use the BastionGuard " "window that just opened." #: block_page.hpp msgid "" "💡 You can safely close this tab. The secure session is already active in " "the sandbox." msgstr "" "💡 You can safely close this tab. The secure session is already active in " "the sandbox." #: block_page.hpp msgid "Shield icon" msgstr "Shield icon" #: block_page.hpp msgid "Verified" msgstr "Verified" #: block_page.hpp msgid "en" msgstr "en" #. ca_installer.hpp #: ca_installer.hpp msgid "[ca-installer] NSS utente aggiornato\n" msgstr "[ca-installer] NSS user updated\n" #: ca_installer.hpp msgid "[ca-installer] ❌ helper non trovato: " msgstr "[ca-installer] ❌ helper not found: " #: ca_installer.hpp msgid "[ca-installer] 🔐 Richiesta autorizzazione installazione CA...\n" msgstr "[ca-installer] 🔐 Requesting authorization to install CA...\n" #: ca_installer.hpp msgid "[ca-installer] ❌ pkexec fallito o rifiutato dall'utente\n" msgstr "[ca-installer] ❌ pkexec failed or was denied by the user\n" #: ca_installer.hpp msgid "[ca-installer] ✅ CA installata nel sistema via pkexec\n" msgstr "[ca-installer] ✅ CA installed in the system via pkexec\n" #: ca_installer.hpp msgid "[ca-installer] ⚠️ Fallback sudo...\n" msgstr "[ca-installer] ⚠️ Falling back to sudo...\n" #: ca_installer.hpp msgid "[ca-installer] ❌ Impossibile installare CA nel sistema\n" msgstr "[ca-installer] ❌ Unable to install CA in the system\n" #: ca_installer.hpp msgid "[ca-installer] ✅ CA già trusted\n" msgstr "[ca-installer] ✅ CA already trusted\n" #: ca_installer.hpp msgid "[ca-installer] ❌ CA source non trovata: " msgstr "[ca-installer] ❌ CA source not found: " #: SettingsPage.cpp msgid "Installazione navigazione sicura" msgstr "Secure browsing installation" #: SettingsPage.cpp msgid "Avvio installazione navigazione sicura...\n" msgstr "Starting secure browsing installation...\n" #: SettingsPage.cpp msgid "Log installazione" msgstr "Installation log" #: SettingsPage.cpp msgid "Chiudi" msgstr "Close" #: SettingsPage.cpp msgid "✔ Navigazione sicura installata" msgstr "✔ Secure browsing installed" #: SettingsPage.cpp msgid "❌ Installazione navigazione sicura fallita" msgstr "❌ Secure browsing installation failed" #: SettingsPage.cpp msgid "Installazione completata" msgstr "Installation completed" #: SettingsPage.cpp msgid "La navigazione sicura è stata installata correttamente.\n\nChiudi il browser e riaprilo." msgstr "Secure browsing was installed successfully.\n\nClose the browser and reopen it." #: SettingsPage.cpp msgid "La navigazione sicura è stata installata, ma il riavvio del servizio BastionGuard-cef non è riuscito.\n\nChiudi il browser e riaprilo." msgstr "Secure browsing was installed, but restarting the BastionGuard-cef service failed.\n\nClose the browser and reopen it." #: SettingsPage.cpp msgid "Errore" msgstr "Error" #: SettingsPage.cpp msgid "Impossibile completare l'installazione della navigazione sicura. Controlla il log nella finestra aperta." msgstr "Unable to complete the secure browsing installation. Check the log in the opened window." #: DashoardPage.cpp msgid "Tema Scuro" msgstr "Dark Theme" #: DashoardPage.cpp msgid "Tema Chiaro" msgstr "Light Theme" #: SettingsWindow.cpp msgid "Domini Pagamenti" msgstr "Payment Domains" #: SettingsWindow.cpp msgid "Bypass Proxy" msgstr "Proxy Bypass" # ── build_secure_payments_tab — pulsante "Installazione navigazione sicura" ─── msgid "Installazione navigazione sicura" msgstr "Secure Browsing Installation" msgid "Avvio installazione navigazione sicura...\n" msgstr "Starting secure browsing installation...\n" msgid "Installazione completata" msgstr "Installation completed" msgid "" "La navigazione sicura è stata installata correttamente.\n" "\n" "Chiudi il browser e riaprilo." msgstr "" "Secure browsing has been installed successfully.\n" "\n" "Close the browser and reopen it." msgid "" "La navigazione sicura è stata installata, ma il riavvio del servizio " "BastionGuard-cef non è riuscito.\n" "\n" "Chiudi il browser e riaprilo." msgstr "" "Secure browsing has been installed, but restarting the " "BastionGuard-cef service failed.\n" "\n" "Close the browser and reopen it." msgid "✔ Navigazione sicura installata" msgstr "✔ Secure browsing installed" msgid "❌ Installazione navigazione sicura fallita" msgstr "❌ Secure browsing installation failed" msgid "" "Impossibile completare l'installazione della navigazione sicura. " "Controlla il log nella finestra aperta." msgstr "" "Unable to complete the secure browsing installation. " "Check the log in the opened window." # ── build_proxy_bypass_tab ──────────────────────────────────────────────────── msgid "🔓 Bypass Proxy" msgstr "🔓 Proxy Bypass" msgid "" "Domini in questa lista bypassano completamente il proxy BastionGuard.\n" "Il traffico viene inoltrato in tunnel TCP puro trasparente: nessuna\n" "intercettazione TLS, nessuna sostituzione certificati.\n" "\n" "Usare per siti che attivano 2FA o CAPTCHA quando rilevano la presenza del proxy." msgstr "" "Domains in this list completely bypass the BastionGuard proxy.\n" "Traffic is forwarded through a pure transparent TCP tunnel: no\n" "TLS interception and no certificate replacement.\n" "\n" "Use this for sites that trigger 2FA or CAPTCHA when a proxy is detected." msgid "" "ℹ️ Anche le banche presenti in banks.json vengono bypassate se inserite qui.\n" "Rimuoverle dal bypass per ripristinare la protezione sandbox." msgstr "" "ℹ️ Banks listed in banks.json will also be bypassed if added here.\n" "Remove them from the bypass list to restore sandbox protection." msgid "Domini in bypass:" msgstr "Bypassed domains:" msgid "Inserisci dominio (es. banca.it oppure checkout.esempio.com)" msgstr "Enter a domain (e.g. banca.it or checkout.example.com)" msgid "Aggiungi" msgstr "Add" msgid "Rimuovi" msgstr "Remove" msgid "Ripristina" msgstr "Restore" msgid "Salva" msgstr "Save" msgid "Valore non valido" msgstr "Invalid value" msgid "Inserisci un dominio valido (es. banca.it)." msgstr "Enter a valid domain (e.g. banca.it)." msgid "➕ Dominio aggiunto — clicca Salva per applicare." msgstr "➕ Domain added — click Save to apply." msgid "🗑 Dominio rimosso — clicca Salva per applicare." msgstr "🗑 Domain removed — click Save to apply." msgid "↩️ Lista ripristinata dal file." msgstr "↩️ List restored from file." msgid "Errore" msgstr "Error" msgid "Impossibile salvare proxy_bypass.json." msgstr "Unable to save proxy_bypass.json." msgid "✔ proxy_bypass.json salvato" msgstr "✔ proxy_bypass.json saved" msgid "Bypass Proxy" msgstr "Proxy Bypass" msgid "" "[filter] HOME variable not set\n" msgstr "" "[filter] HOME variable not set\n" msgid "banks" msgstr "banks" msgid "payments" msgstr "payments" msgid "exclusions" msgstr "exclusions" msgid "user-banks" msgstr "user-banks" msgid "proxy-bypass" msgstr "proxy-bypass" msgid "" "[filter] loaded %zu bank, %zu user-bank, %zu payment, %zu exclusion, %zu proxy-bypass domains\n" msgstr "" "[filter] loaded %zu bank, %zu user-bank, %zu payment, %zu exclusion, %zu proxy-bypass domains\n" msgid "" "[filter] cannot read %s list: %s\n" msgstr "" "[filter] cannot read %s list: %s\n" msgid "" "[bastionguard] session closed for root: %s — browser proxy restored\n" msgstr "" "[bastionguard] session closed for root: %s — browser proxy restored\n" msgid "" "[bastionguard] failed to launch %s for %s\n" msgstr "" "[bastionguard] failed to launch %s for %s\n" msgid "" "[bastionguard] open_notify exception: %s\n" msgstr "" "[bastionguard] open_notify exception: %s\n" msgid "" "[bastionguard] open_notify unknown exception\n" msgstr "" "[bastionguard] open_notify unknown exception\n" msgid "" "[bastionguard] secure domain already active, blocking again: %s (session: %s)\n" msgstr "" "[bastionguard] secure domain already active, blocking again: %s (session: %s)\n" msgid "" "[bastionguard] %s intercepted: %s (root: %s)\n" msgstr "" "[bastionguard] %s intercepted: %s (root: %s)\n" msgid "" "[cef] accept error: %s\n" msgstr "" "[cef] accept error: %s\n" msgid "" "[args] invalid --port value\n" msgstr "" "[args] invalid --port value\n" msgid "" "[cef] CefInitialize failed\n" msgstr "" "[cef] CefInitialize failed\n" msgid "" "[cef] initialized (sandbox ON)\n" msgstr "" "[cef] initialized (sandbox ON)\n" msgid "" "[cef] starting %u I/O threads\n" msgstr "" "[cef] starting %u I/O threads\n" msgid "" "[cef] signal received, exiting\n" msgstr "" "[cef] signal received, exiting\n" msgid "" "[filter] SIGHUP: reloading domain lists\n" msgstr "" "[filter] SIGHUP: reloading domain lists\n" msgid "" "[cef] acceptor error: %s\n" msgstr "" "[cef] acceptor error: %s\n" msgid "" "[cef] backend proxy listening on %s:%d\n" msgstr "" "[cef] backend proxy listening on %s:%d\n" msgid "" "[browser-proxy] Firefox profile configured: %s\n" msgstr "" "[browser-proxy] Firefox profile configured: %s\n" msgid "" "[browser-proxy] Chromium policy written: %s\n" msgstr "" "[browser-proxy] Chromium policy written: %s\n" msgid "" "[ca-install] certutil not found, skipping Firefox CA install\n" msgstr "" "[ca-install] certutil not found, skipping Firefox CA install\n" msgid "" "[ca-install] CA installed in Firefox profile: %s\n" msgstr "" "[ca-install] CA installed in Firefox profile: %s\n" msgid "" "[ca-install] CA installed in ~/.pki/nssdb (Chromium)\n" msgstr "" "[ca-install] CA installed in ~/.pki/nssdb (Chromium)\n" msgid "" "[ca-install] CA installed in snap Chromium nssdb\n" msgstr "" "[ca-install] CA installed in snap Chromium nssdb\n" msgid "" "[ca-install] CA cert not found, skipping\n" msgstr "" "[ca-install] CA cert not found, skipping\n" msgid "" "[ca-install] installing BastionGuard CA in browsers\n" msgstr "" "[ca-install] installing BastionGuard CA in browsers\n" msgid "" "[browser-proxy] configuring browsers\n" msgstr "" "[browser-proxy] configuring browsers\n" msgid "" "[browser-proxy] restoring browser proxy settings\n" msgstr "" "[browser-proxy] restoring browser proxy settings\n" msgid "" "[proxy-config] command failed: %s\n" msgstr "" "[proxy-config] command failed: %s\n" msgid "" "[proxy-config] setting system proxy → %s:%d\n" msgstr "" "[proxy-config] setting system proxy → %s:%d\n" msgid "" "[proxy-config] restoring system proxy\n" msgstr "" "[proxy-config] restoring system proxy\n" msgid "" "[tls-intercept] generazione CA intermedia RSA 4096...\n" msgstr "" "[tls-intercept] generazione CA intermedia RSA 4096...\n" msgid "" "[tls-intercept] ✅ CA intermedia generata\n" msgstr "" "[tls-intercept] ✅ CA intermedia generata\n" msgid "" "[tls-intercept] CA copiata in /etc/BastionGuard/certs/\n" msgstr "" "[tls-intercept] CA copiata in /etc/BastionGuard/certs/\n" msgid "" "[tls-intercept] CA caricata dal disco\n" msgstr "" "[tls-intercept] CA caricata dal disco\n" msgid "" "[tls-intercept] leaf cert pronto per: %s\n" msgstr "" "[tls-intercept] leaf cert pronto per: %s\n" msgid "" "[ca-installer] NSS utente aggiornato\n" msgstr "" "[ca-installer] NSS utente aggiornato\n" msgid "[ca-installer] ❌ helper non trovato: " msgstr "[ca-installer] ❌ helper non trovato: " msgid "" "[ca-installer] 🔐 Richiesta autorizzazione installazione CA...\n" msgstr "" "[ca-installer] 🔐 Richiesta autorizzazione installazione CA...\n" msgid "" "[ca-installer] ❌ pkexec fallito o rifiutato dall'utente\n" msgstr "" "[ca-installer] ❌ pkexec fallito o rifiutato dall'utente\n" msgid "" "[ca-installer] ✅ CA installata nel sistema via pkexec\n" msgstr "" "[ca-installer] ✅ CA installata nel sistema via pkexec\n" msgid "[ca-installer] ❌ CA intercept non trovata: " msgstr "[ca-installer] ❌ CA intercept non trovata: " msgid "" "[ca-installer] ℹ️ Verrà generata al primo avvio del proxy TLS\n" msgstr "" "[ca-installer] ℹ️ Verrà generata al primo avvio del proxy TLS\n" msgid "" "[ca-installer] ✅ CA già trusted (sentinel valido)\n" msgstr "" "[ca-installer] ✅ CA già trusted (sentinel valido)\n" msgid "" "[ca-installer] 🔄 CA nuova o non ancora trusted — installazione...\n" msgstr "" "[ca-installer] 🔄 CA nuova o non ancora trusted — installazione...\n" msgid "" "[ca-installer] ⚠️ Fallback sudo...\n" msgstr "" "[ca-installer] ⚠️ Fallback sudo...\n" msgid "" "[ca-installer] ❌ Impossibile installare CA nel sistema\n" msgstr "" "[ca-installer] ❌ Impossibile installare CA nel sistema\n" msgid "Tema dell'interfaccia" msgstr "Interface theme" msgid "Seleziona tema" msgstr "Select theme" msgid "☀ Chiaro (Light)" msgstr "☀ Light" msgid "🌙 Scuro (Dark)" msgstr "🌙 Dark" msgid "Tema scuro: sfondo #1a1d23, testo chiaro." msgstr "Dark theme: background #1a1d23, light text." msgid "Tema chiaro: sfondo #f8f9fa, testo scuro." msgstr "Light theme: background #f8f9fa, dark text." msgid "Applica tema" msgstr "Apply theme" msgid "" "File CSS non trovato:\n" msgstr "" "CSS file not found:\n" msgid "" "Tema applicato con successo.\n" "Per un'applicazione completa riavvia BastionGuard." msgstr "" "Theme applied successfully.\n" "For full effect, restart BastionGuard." msgid "" "Errore nel caricamento del tema:\n" msgstr "" "Error loading theme:\n" msgid "✅ Lista aggiornata da MISP, whitelist integrata e servizio CEF riavviato." msgstr "✅ List updated from MISP, whitelist integrated and CEF service restarted." msgid "⚠ Lista aggiornata da MISP, ma merge whitelist fallito." msgstr "⚠ List updated from MISP, but whitelist merge failed." msgid "🛡️ Nuovi domini bancari:\n\n" msgstr "🛡️ New banking domains:\n\n" #: PasswordDialogs.cpp:50 msgid "Nome" msgstr "Name" #: PasswordDialogs.cpp:53 msgid "Username / Email" msgstr "Username / Email" #: PasswordDialogs.cpp:56 msgid "URL / dominio" msgstr "URL / domain" #: PasswordDialogs.cpp:59 msgid "tag1, tag2, tag3" msgstr "tag1, tag2, tag3" #: PasswordDialogs.cpp:61 msgid "Password" msgstr "Password" #: PasswordDialogs.cpp:66 PasswordSearchRow.cpp:36 PasswordVaultView.cpp:167 msgid "Mostra password" msgstr "Show password" #: PasswordDialogs.cpp:79 msgid "Note" msgstr "Notes" #: PasswordDialogs.cpp:90 PasswordImportDialog.cpp:153 #: PasswordManagerPage.cpp:270 PasswordManagerPage.cpp:321 #: PasswordManagerPage.cpp:452 PasswordVaultView.cpp:250 msgid "Annulla" msgstr "Cancel" #: PasswordDialogs.cpp:91 PasswordVaultView.cpp:251 msgid "Salva" msgstr "Save" #: PasswordImportDialog.cpp:31 msgid "Seleziona un file CSV esportato da Chrome, Edge, Firefox o Safari." msgstr "Select a CSV file exported from Chrome, Edge, Firefox, or Safari." #: PasswordImportDialog.cpp:32 msgid "📂 Scegli file CSV…" msgstr "📂 Choose CSV file…" #: PasswordImportDialog.cpp:34 msgid "⬆ Importa credenziali" msgstr "⬆ Import credentials" #: PasswordImportDialog.cpp:36 msgid "Importa credenziali da browser" msgstr "Import credentials from browser" #: PasswordImportDialog.cpp:83 msgid "Anteprima (prime 50 righe — tutte verranno importate):" msgstr "Preview (first 50 rows — all will be imported):" #: PasswordImportDialog.cpp:103 PasswordVaultView.cpp:108 #: PasswordVaultView.cpp:227 msgid "Chiudi" msgstr "Close" #: PasswordImportDialog.cpp:138 msgid "Seleziona file CSV" msgstr "Select CSV file" #: PasswordImportDialog.cpp:143 PasswordVaultView.cpp:246 msgid "File CSV (*.csv)" msgstr "CSV files (*.csv)" #: PasswordImportDialog.cpp:149 msgid "Tutti i file" msgstr "All files" #: PasswordImportDialog.cpp:154 msgid "Apri" msgstr "Open" #: PasswordImportDialog.cpp:203 msgid "Browser: " msgstr "Browser: " #: PasswordImportDialog.cpp:205 msgid "Credenziali trovate: " msgstr "Credentials found: " #: PasswordImportDialog.cpp:231 PasswordVaultView.cpp:92 msgid "Nome / Sito" msgstr "Name / Site" #: PasswordImportDialog.cpp:232 PasswordVaultView.cpp:93 msgid "Username" msgstr "Username" #: PasswordImportDialog.cpp:233 PasswordVaultView.cpp:94 msgid "URL" msgstr "URL" #: PasswordImportDialog.cpp:268 msgid " altre (tutte verranno importate)" msgstr " more (all will be imported)" #: PasswordImportDialog.cpp:287 PasswordImportDialog.cpp:317 msgid "Preparazione: " msgstr "Preparing: " #: PasswordImportDialog.cpp:289 msgid " credenziali…" msgstr " credentials…" #: PasswordImportDialog.cpp:326 msgid "Salvataggio nel vault…" msgstr "Saving to vault…" #: PasswordManagerPage.cpp:36 msgid "🔓 Sblocca vault" msgstr "🔓 Unlock vault" #: PasswordManagerPage.cpp:37 msgid "🔒 Blocca" msgstr "🔒 Lock" #: PasswordManagerPage.cpp:40 msgid "+ Nuova" msgstr "+ New" #: PasswordManagerPage.cpp:41 msgid "⬆ Importa" msgstr "⬆ Import" #: PasswordManagerPage.cpp:42 msgid "🗄 Vault" msgstr "🗄 Vault" #: PasswordManagerPage.cpp:43 msgid "↺ Aggiorna" msgstr "↺ Refresh" #: PasswordManagerPage.cpp:44 msgid "🗑 Elimina tutto" msgstr "🗑 Delete all" #: PasswordManagerPage.cpp:123 PasswordManagerPage.cpp:202 msgid "🔒 Vault bloccato" msgstr "🔒 Vault locked" #: PasswordManagerPage.cpp:169 msgid "Cerca credenziali..." msgstr "Search credentials..." #: PasswordManagerPage.cpp:199 msgid "🔓 Vault sbloccato" msgstr "🔓 Vault unlocked" #: PasswordManagerPage.cpp:238 msgid "Impossibile trovare la finestra padre.\n" msgstr "Unable to find the parent window.\n" #: PasswordManagerPage.cpp:241 msgid "Crea master password" msgstr "Create master password" #: PasswordManagerPage.cpp:246 msgid "" "Prima configurazione: scegli una master password.\n" "Minimo 8 caratteri. Non può essere recuperata se dimenticata." msgstr "" "First setup: choose a master password.\n" "Minimum 8 characters. It cannot be recovered if forgotten." #: PasswordManagerPage.cpp:253 msgid "Nuova master password" msgstr "New master password" #: PasswordManagerPage.cpp:258 msgid "Conferma master password" msgstr "Confirm master password" #: PasswordManagerPage.cpp:271 msgid "Crea vault" msgstr "Create vault" #: PasswordManagerPage.cpp:298 msgid "Le password non coincidono.\n" msgstr "Passwords do not match.\n" #: PasswordManagerPage.cpp:300 msgid "La master password deve essere di almeno 8 caratteri.\n" msgstr "The master password must be at least 8 characters long.\n" #: PasswordManagerPage.cpp:302 msgid "🔓 Vault creato e sbloccato" msgstr "🔓 Vault created and unlocked" #: PasswordManagerPage.cpp:303 msgid "Vault creato. Master password impostata.\n" msgstr "Vault created. Master password set.\n" #: PasswordManagerPage.cpp:305 msgid "Errore durante la creazione del vault.\n" msgstr "Error while creating the vault.\n" #: PasswordManagerPage.cpp:313 msgid "Sblocca vault" msgstr "Unlock vault" #: PasswordManagerPage.cpp:315 msgid "Master password" msgstr "Master password" #: PasswordManagerPage.cpp:322 msgid "Sblocca" msgstr "Unlock" #: PasswordManagerPage.cpp:328 msgid "🔓 Vault sbloccato — caricamento cache…" msgstr "🔓 Vault unlocked — loading cache…" #: PasswordManagerPage.cpp:329 msgid "Vault sbloccato. Precaricamento password in background…\n" msgstr "Vault unlocked. Preloading passwords in the background…\n" #: PasswordManagerPage.cpp:335 msgid "Password errata.\n" msgstr "Incorrect password.\n" #: PasswordManagerPage.cpp:348 PasswordManagerPage.cpp:483 #: PasswordManagerPage.cpp:501 PasswordManagerPage.cpp:531 msgid "Vault bloccato.\n" msgstr "Vault locked.\n" #: PasswordManagerPage.cpp:353 PasswordManagerPage.cpp:421 #: PasswordManagerPage.cpp:430 msgid "Sblocca il vault prima.\n" msgstr "Unlock the vault first.\n" #: PasswordManagerPage.cpp:357 msgid "Nuova credenziale" msgstr "New credential" #: PasswordManagerPage.cpp:362 msgid "Nome credenziale obbligatorio.\n" msgstr "Credential name is required.\n" #: PasswordManagerPage.cpp:368 msgid "Credenziale aggiunta: " msgstr "Credential added: " #: PasswordManagerPage.cpp:371 msgid "Errore durante il salvataggio.\n" msgstr "Error while saving.\n" #: PasswordManagerPage.cpp:382 msgid "Sblocca il vault prima di importare.\n" msgstr "Unlock the vault before importing.\n" #: PasswordManagerPage.cpp:408 msgid "Import completato: " msgstr "Import completed: " #: PasswordManagerPage.cpp:409 msgid " importate" msgstr " imported" #: PasswordManagerPage.cpp:410 msgid " fallite" msgstr " failed" #: PasswordManagerPage.cpp:435 msgid "Nessuna credenziale da eliminare.\n" msgstr "No credentials to delete.\n" #: PasswordManagerPage.cpp:438 msgid "Eliminare tutte le credenziali?" msgstr "Delete all credentials?" #: PasswordManagerPage.cpp:441 msgid "Questa operazione eliminerà " msgstr "This operation will delete " #: PasswordManagerPage.cpp:442 msgid " credenziali e non può essere annullata." msgstr " credentials and cannot be undone." #: PasswordManagerPage.cpp:449 msgid "Sei sicuro? L'operazione è irreversibile." msgstr "Are you sure? This action is irreversible." #: PasswordManagerPage.cpp:451 msgid "Il file cifrato verrà eliminato definitivamente." msgstr "The encrypted file will be permanently deleted." #: PasswordManagerPage.cpp:453 msgid "Sì, elimina tutto" msgstr "Yes, delete everything" #: PasswordManagerPage.cpp:460 msgid "Eliminazione in corso…\n" msgstr "Deleting…\n" #: PasswordManagerPage.cpp:462 msgid "✔ Tutte le credenziali eliminate.\n" msgstr "✔ All credentials deleted.\n" #: PasswordManagerPage.cpp:463 PasswordManagerPage.cpp:545 msgid "Errore durante l'eliminazione.\n" msgstr "Error during deletion.\n" #: PasswordManagerPage.cpp:475 msgid "Elenco aggiornato.\n" msgstr "List updated.\n" #: PasswordManagerPage.cpp:491 msgid "Password per: " msgstr "Password for: " #: PasswordManagerPage.cpp:509 msgid "Modifica credenziale" msgstr "Edit credential" #: PasswordManagerPage.cpp:517 msgid "Credenziale aggiornata: " msgstr "Credential updated: " #: PasswordManagerPage.cpp:520 msgid "Errore durante l'aggiornamento.\n" msgstr "Error during update.\n" #: PasswordManagerPage.cpp:536 msgid "Eliminare la credenziale selezionata?" msgstr "Delete the selected credential?" #: PasswordManagerPage.cpp:542 msgid "Credenziale eliminata: " msgstr "Credential deleted: " #: PasswordSearchRow.cpp:32 msgid "Utente: " msgstr "User: " #: PasswordSearchRow.cpp:33 msgid "URL: " msgstr "URL: " #: PasswordSearchRow.cpp:34 msgid "Aggiornato: " msgstr "Updated: " #: PasswordSearchRow.cpp:37 msgid "Modifica" msgstr "Edit" #: PasswordSearchRow.cpp:38 msgid "Elimina" msgstr "Delete" #: PasswordVaultView.cpp:31 PasswordVaultView.cpp:263 msgid "💾 Esporta CSV" msgstr "💾 Export CSV" #: PasswordVaultView.cpp:33 msgid "Vault — credenziali salvate" msgstr "Vault — saved credentials" #: PasswordVaultView.cpp:59 msgid "Filtra per nome, username, URL…" msgstr "Filter by name, username, URL…" #: PasswordVaultView.cpp:95 msgid "Aggiornato" msgstr "Updated" #: PasswordVaultView.cpp:166 msgid "👁" msgstr "👁" #: PasswordVaultView.cpp:181 msgid " credenziali" msgstr " credentials" #: PasswordVaultView.cpp:192 msgid "Dettaglio credenziale" msgstr "Credential details" #: PasswordVaultView.cpp:216 msgid "Nome:" msgstr "Name:" #: PasswordVaultView.cpp:217 msgid "Username:" msgstr "Username:" #: PasswordVaultView.cpp:218 msgid "URL:" msgstr "URL:" #: PasswordVaultView.cpp:219 msgid "Password:" msgstr "Password:" #: PasswordVaultView.cpp:221 msgid "Note:" msgstr "Notes:" #: PasswordVaultView.cpp:222 msgid "Creato:" msgstr "Created:" #: PasswordVaultView.cpp:223 msgid "Modificato:" msgstr "Modified:" #: PasswordVaultView.cpp:240 msgid "Salva CSV" msgstr "Save CSV" #: PasswordVaultView.cpp:259 msgid "⏳ Esportazione…" msgstr "⏳ Exporting…" #: PasswordVaultView.cpp:267 msgid "Errore export" msgstr "Export error" #: PasswordVaultView.cpp:281 msgid "Export completato" msgstr "Export completed" #: PasswordVaultView.cpp:286 msgid " credenziali salvate in:\n" msgstr " credentials saved in:\n" #: SecurityBanner.cpp msgid "" "Protezione avanzata AES-256-GCM — " "Le password sono cifrate con AES-256-GCM e la chiave è derivata dalla master password " "tramite PBKDF2-SHA256 (100.000 iterazioni). Il file cifrato include un tag di " "autenticazione: qualsiasi manipolazione esterna renderà il vault permanentemente illeggibile." msgstr "" "Advanced AES-256-GCM protection — " "Passwords are encrypted using AES-256-GCM and the key is derived from the master password " "using PBKDF2-SHA256 (100,000 iterations). The encrypted file includes an authentication " "tag: any external tampering will render the vault permanently unreadable." #: SecurityBanner.cpp msgid "" "Attenzione: — " "L'esportazione del vault salva il file CSV con password in chiaro. " "Salvare il file in un luogo sicuro e non accessibile." msgstr "" "Warning: — " "Exporting the vault saves a CSV file with passwords in plain text. " "Store the file in a secure location that is not accessible to others." msgid "Protezione" msgstr "Protection" msgid "Sicurezza" msgstr "Security" msgid "💾 Backup" msgstr "💾 Backup" msgid "🛡 Recovery GRUB" msgstr "🛡 GRUB Recovery" msgid "Gestione snapshot BastionGuard\n\nPer creare, eliminare e ripristinare snapshot aprire l'interfaccia grafica dedicata.\n" msgstr "BastionGuard Snapshot Management\n\nTo create, delete, or restore snapshots, open the dedicated graphical interface.\n" msgid "🛡 Apri Gestione Backup" msgstr "🛡 Open Backup Manager" msgid "BastionGuard Recovery Environment\n\nInstalla una voce GRUB per avviare un sistema Linux minimale isolato e ripristinare snapshot in sicurezza.\n\n⚠ Requisiti:\n • Almeno 2 GB di spazio libero sulla partizione /boot\n • Connessione internet per il download dei pacchetti Debian\n • La build può richiedere 10–20 minuti" msgstr "BastionGuard Recovery Environment\n\nInstalls a GRUB entry to boot a minimal isolated Linux system and safely restore snapshots.\n\n⚠ Requirements:\n • At least 2 GB of free space on the /boot partition\n • Internet connection to download Debian packages\n • The build process may take 10–20 minutes" msgid "In attesa..." msgstr "Waiting..." msgid "🔨 Build filesystem squashfs" msgstr "🔨 Build squashfs filesystem" msgid "⬆ Installa voce GRUB" msgstr "⬆ Install GRUB entry" msgid "🗑 Rimuovi voce GRUB" msgstr "🗑 Remove GRUB entry" msgid "Log operazioni" msgstr "Operation log" msgid "Operazione in corso..." msgstr "Operation in progress..." msgid "%1 GB" msgstr "%1 GB" msgid "%1 MB" msgstr "%1 MB" msgid "%1 KB" msgstr "%1 KB" msgid "Avvio gestore backup BastionGuard...\n" msgstr "Starting BastionGuard backup manager...\n" msgid "Errore durante l'avvio del gestore backup BastionGuard.\n" msgstr "Error while starting the BastionGuard backup manager.\n" msgid "Immagine recovery presente\n%1\nfilesystem.squashfs: %2\nVoce GRUB: %3" msgstr "Recovery image present\n%1\nfilesystem.squashfs: %2\nGRUB entry: %3" msgid "✅ installata" msgstr "✅ installed" msgid "⚠ non installata" msgstr "⚠ not installed" msgid "Immagine recovery non trovata\nUsare \"Build filesystem squashfs\" per crearla." msgstr "Recovery image not found\nUse \"Build filesystem squashfs\" to create it." msgid "Spazio libero su %1: %2 %3" msgstr "Free space on %1: %2 %3" msgid "✅ sufficiente" msgstr "✅ sufficient" msgid "❌ insufficiente (minimo 2 GB)" msgstr "❌ insufficient (minimum 2 GB)" msgid "Spazio disponibile: non rilevato" msgstr "Available space: not detected" msgid "==> Avvio build Recovery environment...\n" msgstr "==> Starting Recovery environment build...\n" msgid " (può richiedere 10-20 minuti)\n" msgstr " (may take 10–20 minutes)\n" msgid "==> Installazione voce GRUB...\n" msgstr "==> Installing GRUB entry...\n" msgid "==> Rimozione voce GRUB...\n" msgstr "==> Removing GRUB entry...\n" msgid "⚠ Operazione già in corso.\n" msgstr "⚠ Operation already in progress.\n" msgid "Errore avvio processo: %1\n" msgstr "Error starting process: %1\n" msgid "Errore avvio processo" msgstr "Error starting process" msgid "⚠ %1" msgstr "⚠ %1" msgid "==> Operazione completata con successo.\n" msgstr "==> Operation completed successfully.\n" msgid "Completato — disponibile al prossimo avvio" msgstr "Completed — available at next boot" msgid "==> Operazione terminata con errore (codice: %1)\n" msgstr "==> Operation ended with error (code: %1)\n" msgid "Operazione fallita (codice %1)" msgstr "Operation failed (code %1)" msgid "Aggiornato" msgstr "Up to date" # --- Banner attivazione "bloccato" (src/backup/BackupPage.cpp) --- msgid "" "Available only with the donation bundle. Backup and Recovery Data are " "part of the BastionGuard donation bundle and are not available in the " "Community Edition. Support the project to unlock them." msgstr "" "Available only with the donation bundle. Backup and Recovery Data are " "part of the BastionGuard donation bundle and are not available in the " "Community Edition. Support the project to unlock them." # --- Banner attivazione "bloccato" (src/password_manager/PasswordManagerPage.cpp) --- msgid "" "Available only with the donation bundle. The Password Manager is part " "of the BastionGuard donation bundle and is not available in the Community " "Edition. Support the project to unlock it." msgstr "" "Available only with the donation bundle. The Password Manager is part " "of the BastionGuard donation bundle and is not available in the Community " "Edition. Support the project to unlock it." # --- Messaggio di log condiviso (Backup + Password Manager) --- # (compare in più handler; va tradotto una sola volta) msgid "" "This feature is available only with the BastionGuard donation bundle " "(Community Edition).\n" msgstr "" "This feature is available only with the BastionGuard donation bundle " "(Community Edition).\n" # --- Tab Activation completa del bundle (src/AboutPage.cpp, build con # -DBASTIONGUARD_DONATION_BUNDLE=ON). Sono le stringhe visibili nello # screenshot della tab Activation. --- msgid "BastionGuard Donation Bundle activation" msgstr "BastionGuard Donation Bundle activation" msgid "" "One BGRD3 donation key unlocks BastionGuard Backup, BastionGuard Password " "Manager, and BastionGuard Recovery Data on this computer. Copy the IDs " "below, generate the key from the private portal, then paste the complete " "BEGIN/END activation block here." msgstr "" "One BGRD3 donation key unlocks BastionGuard Backup, BastionGuard Password " "Manager, and BastionGuard Recovery Data on this computer. Copy the IDs " "below, generate the key from the private portal, then paste the complete " "BEGIN/END activation block here." msgid "Copy activation IDs" msgstr "Copy activation IDs" msgid "Refresh IDs with administrator rights" msgstr "Refresh IDs with administrator rights" msgid "Activated" msgstr "Activated" msgid "Save activation key" msgstr "Save activation key" msgid "Change activation key" msgstr "Change activation key" msgid "Activation: active" msgstr "Activation: active" msgid "" "BastionGuard Backup, Password Manager, and Recovery Data are unlocked on " "this computer." msgstr "" "BastionGuard Backup, Password Manager, and Recovery Data are unlocked on " "this computer." msgid "never" msgstr "never" msgid "Activation file: " msgstr "Activation file: " msgid "" "Motherboard serial is not readable without administrator rights. Press " "Refresh IDs with administrator rights and authorize pkexec." msgstr "" "Motherboard serial is not readable without administrator rights. Press " "Refresh IDs with administrator rights and authorize pkexec." msgid "" "Backup and Password Manager remain locked until a valid BGRD3 donation key " "is saved. The same key also unlocks BastionGuard Recovery Data." msgstr "" "Backup and Password Manager remain locked until a valid BGRD3 donation key " "is saved. The same key also unlocks BastionGuard Recovery Data." # --- Messaggi degli handler della tab Activation (Copy IDs / Refresh / # Save / pkexec / clipboard). Usati solo nel build bundle. --- msgid "/etc/machine-id: " msgstr "/etc/machine-id: " msgid "Motherboard serial: " msgstr "Motherboard serial: " msgid "Activation engine: " msgstr "Activation engine: " msgid "Hardware cache: " msgstr "Hardware cache: " msgid "Key format: BGRD3 + KEYID" msgstr "Key format: BGRD3 + KEYID" msgid "Required /etc/machine-id: " msgstr "Required /etc/machine-id: " msgid "Required motherboard serial: " msgstr "Required motherboard serial: " msgid "not readable" msgstr "not readable" msgid "Name: " msgstr "Name: " msgid "Edition: " msgstr "Edition: " msgid "Expires: " msgstr "Expires: " msgid "Donation" msgstr "Donation" msgid "Donation supporter" msgstr "Donation supporter" msgid "Activation: not active" msgstr "Activation: not active" msgid "Activation IDs copied to the clipboard." msgstr "Activation IDs copied to the clipboard." msgid "" "Unable to access the system clipboard. Select and copy the values below " "manually." msgstr "" "Unable to access the system clipboard. Select and copy the values below " "manually." msgid "Hardware IDs refreshed with administrator rights." msgstr "Hardware IDs refreshed with administrator rights." msgid "Unable to refresh hardware IDs with administrator rights." msgstr "Unable to refresh hardware IDs with administrator rights." msgid "" "The application could not refresh the complete hardware IDs through pkexec." msgstr "" "The application could not refresh the complete hardware IDs through pkexec." msgid "Administrator authorization failed or was cancelled." msgstr "Administrator authorization failed or was cancelled." msgid "pkexec authorization was cancelled, unavailable, or denied." msgstr "pkexec authorization was cancelled, unavailable, or denied." msgid "pkexec may have been cancelled, unavailable, or denied." msgstr "pkexec may have been cancelled, unavailable, or denied." msgid "Continuing with currently readable values." msgstr "Continuing with currently readable values." msgid "Activation is currently active." msgstr "Activation is currently active." msgid "" "Paste a replacement BGRD3 activation key below, then press Save activation " "key." msgstr "" "Paste a replacement BGRD3 activation key below, then press Save activation " "key." msgid "" "No activation key was pasted. Paste the full BGRD3 BEGIN/END activation " "block, then press Save activation key." msgstr "" "No activation key was pasted. Paste the full BGRD3 BEGIN/END activation " "block, then press Save activation key." msgid "" "The key must be generated with both values shown above and copied " "completely, including BEGIN and END lines." msgstr "" "The key must be generated with both values shown above and copied " "completely, including BEGIN and END lines." msgid "The activation key was NOT saved." msgstr "The activation key was NOT saved." msgid "Activation failed: " msgstr "Activation failed: " msgid "Donation bundle active. Password Manager is unlocked on this computer." msgstr "Donation bundle active. Password Manager is unlocked on this computer." msgid "Available only with the donation bundle. The Password Manager is part of the BastionGuard donation bundle and is not available in the Community Edition. Support the project to unlock it." msgstr "Available only with the donation bundle. The Password Manager is part of the BastionGuard donation bundle and is not available in the Community Edition. Support the project to unlock it." msgid "Refresh activation" msgstr "Refresh activation" msgid "Donation bundle active. Backup and Recovery GRUB tools are unlocked." msgstr "Donation bundle active. Backup and Recovery GRUB tools are unlocked." msgid "Available only with the donation bundle. Backup and Recovery Data are part of the BastionGuard donation bundle and are not available in the Community Edition. Support the project to unlock them." msgstr "Available only with the donation bundle. Backup and Recovery Data are part of the BastionGuard donation bundle and are not available in the Community Edition. Support the project to unlock them." #: src/vpn/VpnPage.cpp:36 msgid "Pagina VPN inizializzata." msgstr "VPN page initialized." #: src/vpn/VpnPage.cpp:40 msgid "⚠ Strumenti WireGuard mancanti: " msgstr "⚠ Missing WireGuard tools: " #: src/vpn/VpnPage.cpp:41 msgid ". Installa il pacchetto 'wireguard-tools'." msgstr ". Install the 'wireguard-tools' package." #: src/vpn/VpnPage.cpp:82 msgid "VPN WireGuard" msgstr "WireGuard VPN" #: src/vpn/VpnPage.cpp:88 msgid "Connettiti al tuo server WireGuard e maschera il tuo IP pubblico." msgstr "Connect to your WireGuard server and mask your public IP address." #: src/vpn/VpnPage.cpp:103 msgid "Connessione" msgstr "Connection" #: src/vpn/VpnPage.cpp:104 msgid "Configurazione" msgstr "Configuration" #: src/vpn/VpnPage.cpp:105 msgid "Kill-switch" msgstr "Kill switch" #: src/vpn/VpnPage.cpp:123 msgid "Aggiorna attivazione" msgstr "Refresh activation" #: src/vpn/VpnPage.cpp:131 msgid "Log" msgstr "Log" #: src/vpn/VpnPage.cpp:152 msgid "Connetti" msgstr "Connect" #: src/vpn/VpnPage.cpp:154 msgid "Disconnetti" msgstr "Disconnect" #: src/vpn/VpnPage.cpp:162 src/vpn/VpnPage.cpp:353 msgid "Stato: disconnesso" msgstr "Status: disconnected" #: src/vpn/VpnPage.cpp:164 src/vpn/VpnPage.cpp:356 msgid "Endpoint: —" msgstr "Endpoint: —" #: src/vpn/VpnPage.cpp:172 msgid "IP pubblico" msgstr "Public IP" #: src/vpn/VpnPage.cpp:177 msgid "Prima del tunnel: —" msgstr "Before tunnel: —" #: src/vpn/VpnPage.cpp:179 src/vpn/VpnPage.cpp:577 msgid "Con tunnel attivo: —" msgstr "With tunnel active: —" #: src/vpn/VpnPage.cpp:181 msgid "Aggiorna IP" msgstr "Refresh IP" #: src/vpn/VpnPage.cpp:201 msgid "Chiavi del client" msgstr "Client keys" #: src/vpn/VpnPage.cpp:207 msgid "(generata localmente)" msgstr "(generated locally)" #: src/vpn/VpnPage.cpp:210 msgid "(da comunicare al tuo server)" msgstr "(to be provided to your server)" #: src/vpn/VpnPage.cpp:211 msgid "Genera chiavi" msgstr "Generate keys" #: src/vpn/VpnPage.cpp:214 msgid "Chiave privata:" msgstr "Private key:" #: src/vpn/VpnPage.cpp:215 msgid "Chiave pubblica:" msgstr "Public key:" #: src/vpn/VpnPage.cpp:222 msgid "Dati del tuo server" msgstr "Your server details" #: src/vpn/VpnPage.cpp:227 msgid "Chiave pubblica del server" msgstr "Server public key" #: src/vpn/VpnPage.cpp:228 msgid "es. vpn.miosito.it:51820" msgstr "e.g. vpn.mysite.com:51820" #: src/vpn/VpnPage.cpp:229 msgid "es. 10.0.0.2/32" msgstr "e.g. 10.0.0.2/32" #: src/vpn/VpnPage.cpp:230 msgid "es. 10.0.0.1 (opzionale)" msgstr "e.g. 10.0.0.1 (optional)" #: src/vpn/VpnPage.cpp:231 msgid "0.0.0.0/0, ::/0" msgstr "0.0.0.0/0, ::/0" #: src/vpn/VpnPage.cpp:234 msgid "Chiave pubblica server:" msgstr "Server public key:" #: src/vpn/VpnPage.cpp:235 msgid "Endpoint (host:porta):" msgstr "Endpoint (host:port):" #: src/vpn/VpnPage.cpp:236 msgid "Indirizzo client:" msgstr "Client address:" #: src/vpn/VpnPage.cpp:237 msgid "DNS:" msgstr "DNS:" #: src/vpn/VpnPage.cpp:238 msgid "AllowedIPs:" msgstr "AllowedIPs:" #: src/vpn/VpnPage.cpp:240 msgid "Genera e carica" msgstr "Generate and load" #: src/vpn/VpnPage.cpp:250 msgid "In alternativa, importa un file .conf esistente" msgstr "Alternatively, import an existing .conf file" #: src/vpn/VpnPage.cpp:257 msgid "/percorso/al/tuo/wg0.conf" msgstr "/path/to/your/wg0.conf" #: src/vpn/VpnPage.cpp:258 msgid "Sfoglia…" msgstr "Browse…" #: src/vpn/VpnPage.cpp:259 msgid "Importa" msgstr "Import" #: src/vpn/VpnPage.cpp:286 msgid "Blocca tutto il traffico se il tunnel cade" msgstr "Block all traffic if the tunnel drops" #: src/vpn/VpnPage.cpp:295 msgid "" "Quando attivo, il traffico in uscita è consentito solo attraverso il tunnel " "WireGuard. Se la VPN cade, la connessione viene bloccata." msgstr "" "When enabled, outgoing traffic is allowed only through the WireGuard tunnel. " "If the VPN drops, the connection is blocked." #: src/vpn/VpnPage.cpp:341 msgid "Stato: connesso" msgstr "Status: connected" #: src/vpn/VpnPage.cpp:349 msgid "Endpoint: " msgstr "Endpoint: " #: src/vpn/VpnPage.cpp:381 msgid "" "Disponibile solo con il donation bundle. La VPN WireGuard fa parte " "del bundle BastionGuard e non è disponibile nella Community Edition. " "Sostieni il progetto per sbloccarla." msgstr "" "Available only with the donation bundle. WireGuard VPN is part " "of the BastionGuard bundle and is not available in the Community Edition. " "Support the project to unlock it." #: src/vpn/VpnPage.cpp:421 src/vpn/VpnPage.cpp:454 src/vpn/VpnPage.cpp:508 #: src/vpn/VpnPage.cpp:529 src/vpn/VpnPage.cpp:567 src/vpn/VpnPage.cpp:588 #: src/vpn/VpnPage.cpp:634 msgid "" "Questa funzione è disponibile solo con il donation bundle (Community " "Edition)." msgstr "" "This feature is available only with the donation bundle (Community " "Edition)." #: src/vpn/VpnPage.cpp:425 msgid "Generazione coppia di chiavi…" msgstr "Generating key pair…" #: src/vpn/VpnPage.cpp:441 msgid "✗ Generazione chiavi fallita." msgstr "✗ Key generation failed." #: src/vpn/VpnPage.cpp:447 msgid "✔ Chiavi generate. Comunica la chiave pubblica al server." msgstr "✔ Keys generated. Provide the public key to the server." #: src/vpn/VpnPage.cpp:459 msgid "Genera prima le chiavi del client." msgstr "Generate the client keys first." #: src/vpn/VpnPage.cpp:473 msgid "✔ Configurazione caricata. Premi Connetti per attivare il tunnel." msgstr "✔ Configuration loaded. Press Connect to activate the tunnel." #: src/vpn/VpnPage.cpp:475 msgid "✗ Configurazione non valida: " msgstr "✗ Invalid configuration: " #: src/vpn/VpnPage.cpp:482 msgid "Seleziona configurazione WireGuard" msgstr "Select WireGuard configuration" #: src/vpn/VpnPage.cpp:485 msgid "Annulla" msgstr "Cancel" #: src/vpn/VpnPage.cpp:486 msgid "Apri" msgstr "Open" #: src/vpn/VpnPage.cpp:489 msgid "File WireGuard (*.conf)" msgstr "WireGuard files (*.conf)" #: src/vpn/VpnPage.cpp:513 msgid "Nessun file selezionato." msgstr "No file selected." #: src/vpn/VpnPage.cpp:517 msgid "✔ Configurazione importata. Premi Connetti per attivare il tunnel." msgstr "✔ Configuration imported. Press Connect to activate the tunnel." #: src/vpn/VpnPage.cpp:519 msgid "✗ Import fallito: " msgstr "✗ Import failed: " #: src/vpn/VpnPage.cpp:534 msgid "" "Nessuna configurazione caricata. Importa un file .conf dalla scheda " "Configurazione, oppure compila i campi e premi \"Genera e carica\"." msgstr "" "No configuration loaded. Import a .conf file from the Configuration tab, " "or fill in the fields and press \"Generate and load\"." #: src/vpn/VpnPage.cpp:541 msgid "Connessione al server WireGuard…" msgstr "Connecting to WireGuard server…" #: src/vpn/VpnPage.cpp:546 msgid "✔ Tunnel attivo." msgstr "✔ Tunnel active." #: src/vpn/VpnPage.cpp:554 msgid "Verifica IP pubblico con tunnel…" msgstr "Checking public IP with tunnel…" #: src/vpn/VpnPage.cpp:559 msgid "✗ Connessione fallita: " msgstr "✗ Connection failed: " #: src/vpn/VpnPage.cpp:571 msgid "Disconnessione…" msgstr "Disconnecting…" #: src/vpn/VpnPage.cpp:576 msgid "✔ Tunnel chiuso." msgstr "✔ Tunnel closed." #: src/vpn/VpnPage.cpp:579 msgid "✗ Disconnessione fallita: " msgstr "✗ Disconnection failed: " #: src/vpn/VpnPage.cpp:609 msgid "Impossibile determinare l'IP pubblico." msgstr "Unable to determine public IP." #: src/vpn/VpnPage.cpp:613 msgid "Con tunnel attivo: " msgstr "With tunnel active: " #: src/vpn/VpnPage.cpp:616 msgid "✔ IP pubblico mascherato correttamente." msgstr "✔ Public IP successfully masked." #: src/vpn/VpnPage.cpp:618 msgid "" "⚠ L'IP pubblico non è cambiato: verifica AllowedIPs = 0.0.0.0/0, ::/0 e il " "NAT sul server." msgstr "" "⚠ The public IP has not changed: check AllowedIPs = 0.0.0.0/0, ::/0 and " "NAT on the server." #: src/vpn/VpnPage.cpp:623 msgid "Prima del tunnel: " msgstr "Before tunnel: " #: src/vpn/VpnPage.cpp:639 msgid "Attivazione kill-switch…" msgstr "Activating kill switch…" #: src/vpn/VpnPage.cpp:640 msgid "Disattivazione kill-switch…" msgstr "Deactivating kill switch…" #: src/vpn/VpnPage.cpp:648 msgid "✔ Kill-switch attivo." msgstr "✔ Kill switch active." #: src/vpn/VpnPage.cpp:649 msgid "✔ Kill-switch disattivato." msgstr "✔ Kill switch deactivated." #: src/vpn/VpnPage.cpp:651 msgid "✗ Operazione kill-switch fallita: " msgstr "✗ Kill switch operation failed: " msgid "Installazione della CA di sistema e del daemon CEF disabilitata su Fedora, RHEL, AlmaLinux, Rocky Linux, Ubuntu, Linux Mint, Mageia, OpenMandriva e openSUSE. Secure Browser e Bank GUI restano disponibili." msgstr "Installation of the system CA and CEF daemon is disabled on Fedora, RHEL, AlmaLinux, Rocky Linux, Ubuntu, Linux Mint, Mageia, OpenMandriva, and openSUSE. Secure Browser and Bank GUI remain available." msgid "Installazione CA di sistema e daemon CEF disabilitati su questa distribuzione; Secure Browser e Bank GUI restano disponibili" msgstr "Installation of the system CA and CEF daemon is disabled on this distribution; Secure Browser and Bank GUI remain available." #: src/rootguard/RootGuardPage.cpp:46 msgid "exact path from protected baseline" msgstr "exact path from protected baseline" #: src/rootguard/RootGuardPage.cpp:48 msgid "exact path resolved from the process file descriptor" msgstr "exact path resolved from the process file descriptor" #: src/rootguard/RootGuardPage.cpp:50 msgid "exact path resolved from the process working directory" msgstr "exact path resolved from the process working directory" #: src/rootguard/RootGuardPage.cpp:52 msgid "exact path supplied by the kernel event" msgstr "exact path supplied by the kernel event" #: src/rootguard/RootGuardPage.cpp:54 msgid "exact path captured by the LSM before the metadata operation" msgstr "exact path captured by the LSM before the metadata operation" #: src/rootguard/RootGuardPage.cpp:55 msgid "basename only; the exact path was unavailable in this event" msgstr "basename only; the exact path was unavailable in this event" #: src/rootguard/RootGuardPage.cpp:65 msgid "System service stopped and runtime-blocked" msgstr "System service stopped and runtime-blocked" #: src/rootguard/RootGuardPage.cpp:66 msgid "System service blocking failed" msgstr "System service blocking failed" #: src/rootguard/RootGuardPage.cpp:68 msgid "Protected file integrity changed" msgstr "Protected file integrity changed" #: src/rootguard/RootGuardPage.cpp:70 msgid "Permission change blocked" msgstr "Permission change blocked" #: src/rootguard/RootGuardPage.cpp:71 msgid "Permission change observed" msgstr "Permission change observed" #: src/rootguard/RootGuardPage.cpp:72 msgid "Permission change detected" msgstr "Permission change detected" #: src/rootguard/RootGuardPage.cpp:74 msgid "Ownership change blocked" msgstr "Ownership change blocked" #: src/rootguard/RootGuardPage.cpp:75 msgid "Ownership change observed" msgstr "Ownership change observed" #: src/rootguard/RootGuardPage.cpp:76 msgid "Ownership change detected" msgstr "Ownership change detected" #: src/rootguard/RootGuardPage.cpp:78 msgid "Protected file removal blocked" msgstr "Protected file removal blocked" #: src/rootguard/RootGuardPage.cpp:79 msgid "Protected file removal observed" msgstr "Protected file removal observed" #: src/rootguard/RootGuardPage.cpp:80 msgid "Protected file removal detected" msgstr "Protected file removal detected" #: src/rootguard/RootGuardPage.cpp:82 msgid "Protected file rename blocked" msgstr "Protected file rename blocked" #: src/rootguard/RootGuardPage.cpp:83 msgid "Protected file rename observed" msgstr "Protected file rename observed" #: src/rootguard/RootGuardPage.cpp:84 msgid "Protected file rename detected" msgstr "Protected file rename detected" #: src/rootguard/RootGuardPage.cpp:86 msgid "Protected hard-link creation blocked" msgstr "Protected hard-link creation blocked" #: src/rootguard/RootGuardPage.cpp:87 msgid "Protected hard-link creation observed" msgstr "Protected hard-link creation observed" #: src/rootguard/RootGuardPage.cpp:88 msgid "Protected hard-link creation detected" msgstr "Protected hard-link creation detected" #: src/rootguard/RootGuardPage.cpp:90 msgid "Extended-attribute change blocked" msgstr "Extended-attribute change blocked" #: src/rootguard/RootGuardPage.cpp:91 msgid "Extended-attribute change observed" msgstr "Extended-attribute change observed" #: src/rootguard/RootGuardPage.cpp:92 msgid "Extended-attribute change detected" msgstr "Extended-attribute change detected" #: src/rootguard/RootGuardPage.cpp:94 msgid "ACL change blocked" msgstr "ACL change blocked" #: src/rootguard/RootGuardPage.cpp:95 msgid "ACL change observed" msgstr "ACL change observed" #: src/rootguard/RootGuardPage.cpp:96 msgid "ACL change detected" msgstr "ACL change detected" #: src/rootguard/RootGuardPage.cpp:97 msgid "Protected metadata change blocked" msgstr "Protected metadata change blocked" #: src/rootguard/RootGuardPage.cpp:98 msgid "Protected metadata change observed" msgstr "Protected metadata change observed" #: src/rootguard/RootGuardPage.cpp:99 msgid "Protected metadata change detected" msgstr "Protected metadata change detected" #: src/rootguard/RootGuardPage.cpp:198 msgid "This event belongs to global filesystem surveillance. No protected baseline is attached, so Restore and Quarantine are unavailable." msgstr "This event belongs to global filesystem surveillance. No protected baseline is attached, so Restore and Quarantine are unavailable." #: src/rootguard/RootGuardPage.cpp:200 msgid "RootGuard has the filesystem identity but not an exact path. Destructive actions are disabled to avoid acting on the wrong object." msgstr "RootGuard has the filesystem identity but not an exact path. Destructive actions are disabled to avoid acting on the wrong object." #: src/rootguard/RootGuardPage.cpp:203 msgid "The removal was denied; the file is still present and no restore is required." msgstr "The removal was denied; the file is still present and no restore is required." #: src/rootguard/RootGuardPage.cpp:204 msgid "The file was removed in audit mode. Automatic restore is impossible without a trusted backup or package copy." msgstr "The file was removed in audit mode. Automatic restore is impossible without a trusted backup or package copy." #: src/rootguard/RootGuardPage.cpp:206 msgid "Automatic recovery is unavailable for rename events. Restore the file from a trusted package or backup." msgstr "Automatic recovery is unavailable for rename events. Restore the file from a trusted package or backup." #: src/rootguard/RootGuardPage.cpp:208 msgid "No automatic action is offered for hard-link events. Review the source and destination manually." msgstr "No automatic action is offered for hard-link events. Review the source and destination manually." #: src/rootguard/RootGuardPage.cpp:281 msgid "🛡️ RootGuard — Permission and Privilege Protection" msgstr "🛡️ RootGuard — Permission and Privilege Protection" #: src/rootguard/RootGuardPage.cpp:291 msgid "Service" msgstr "Service" #: src/rootguard/RootGuardPage.cpp:292 msgid "Mode" msgstr "Mode" #: src/rootguard/RootGuardPage.cpp:293 msgid "Init system" msgstr "Init system" #: src/rootguard/RootGuardPage.cpp:294 msgid "PID" msgstr "PID" #: src/rootguard/RootGuardPage.cpp:316 msgid "Immediate permission blocking" msgstr "Immediate permission blocking" #: src/rootguard/RootGuardPage.cpp:318 msgid "Blocks protected system metadata changes before they are committed." msgstr "Blocks protected system metadata changes before they are committed." #: src/rootguard/RootGuardPage.cpp:324 msgid "Show protection scope" msgstr "Show protection scope" #: src/rootguard/RootGuardPage.cpp:326 msgid "Immediate blocking applies to protected system paths and service definitions. User home directories remain audit-only because BastionGuard Anti-Ransomware is responsible for enforcement on user data. Routine desktop and browser metadata activity can be classified under Application rules without granting privilege-transition trust." msgstr "Immediate blocking applies to protected system paths and service definitions. User home directories remain audit-only because BastionGuard Anti-Ransomware is responsible for enforcement on user data. Routine desktop and browser metadata activity can be classified under Application rules without granting privilege-transition trust." #: src/rootguard/RootGuardPage.cpp:345 msgid "Protected system paths" msgstr "Protected system paths" #: src/rootguard/RootGuardPage.cpp:346 msgid "User home" msgstr "User home" #: src/rootguard/RootGuardPage.cpp:350 msgid "RootGuard records global metadata activity. Trusted application events remain available in the Events tab but are hidden by default and never generate popups." msgstr "RootGuard records global metadata activity. Trusted application events remain available in the Events tab but are hidden by default and never generate popups." #: src/rootguard/RootGuardPage.cpp:360 msgid "▶ Start" msgstr "▶ Start" #: src/rootguard/RootGuardPage.cpp:361 msgid "■ Stop" msgstr "■ Stop" #: src/rootguard/RootGuardPage.cpp:362 msgid "↻ Reload policy" msgstr "↻ Reload policy" #: src/rootguard/RootGuardPage.cpp:363 msgid "⟳ Restart" msgstr "⟳ Restart" #: src/rootguard/RootGuardPage.cpp:364 msgid "Refresh" msgstr "Refresh" #: src/rootguard/RootGuardPage.cpp:379 msgid "Overview" msgstr "Overview" #: src/rootguard/RootGuardPage.cpp:387 msgid "Security observations and active incidents" msgstr "Security observations and active incidents" #: src/rootguard/RootGuardPage.cpp:401 msgid "Incidents" msgstr "Incidents" #: src/rootguard/RootGuardPage.cpp:410 msgid "Recent RootGuard events" msgstr "Recent RootGuard events" #: src/rootguard/RootGuardPage.cpp:414 msgid "Show trusted events" msgstr "Show trusted events" #: src/rootguard/RootGuardPage.cpp:417 msgid "Trusted application activity is shown by default for maximum transparency. Disable this option only to focus on audit and blocked events." msgstr "Trusted application activity is shown by default for maximum transparency. Disable this option only to focus on audit and blocked events." #: src/rootguard/RootGuardPage.cpp:440 msgid "Events" msgstr "Events" #: src/rootguard/RootGuardPage.cpp:449 msgid "Manage executable identities used by RootGuard. Saving validates the policy, requests administrator authentication, and restarts RootGuard so the new inode identities take effect immediately." msgstr "Manage executable identities used by RootGuard. Saving validates the policy, requests administrator authentication, and restarts RootGuard so the new inode identities take effect immediately." #: src/rootguard/RootGuardPage.cpp:459 msgid "Add installed desktop/browser defaults" msgstr "Add installed desktop/browser defaults" #: src/rootguard/RootGuardPage.cpp:461 msgid "Adds only known executables that exist on this computer. Review the list before saving." msgstr "Adds only known executables that exist on this computer. Review the list before saving." #: src/rootguard/RootGuardPage.cpp:475 msgid "Trusted applications" msgstr "Trusted applications" #: src/rootguard/RootGuardPage.cpp:476 msgid "Routine desktop, file-manager and browser metadata activity. Matching global events become trusted, produce no popup and remain visible only when “Show trusted events” is enabled. This list never grants privilege trust." msgstr "Routine desktop, file-manager and browser metadata activity. Matching global events become trusted, produce no popup and remain visible only when “Show trusted events” is enabled. This list never grants privilege trust." #: src/rootguard/RootGuardPage.cpp:480 msgid "Trusted apps" msgstr "Trusted apps" #: src/rootguard/RootGuardPage.cpp:484 msgid "Privilege-trusted executables" msgstr "Privilege-trusted executables" #: src/rootguard/RootGuardPage.cpp:485 msgid "Executables allowed as legitimate actors in RootGuard privilege-transition checks. Existing files are still subject to ownership and identity validation." msgstr "Executables allowed as legitimate actors in RootGuard privilege-transition checks. Existing files are still subject to ownership and identity validation." #: src/rootguard/RootGuardPage.cpp:488 msgid "Privilege trusted" msgstr "Privilege trusted" #: src/rootguard/RootGuardPage.cpp:492 msgid "Blocked executables" msgstr "Blocked executables" #: src/rootguard/RootGuardPage.cpp:493 msgid "Executables blocked during RootGuard privilege-transition checks. This is not a general application-launch blacklist." msgstr "Executables blocked during RootGuard privilege-transition checks. This is not a general application-launch blacklist." #: src/rootguard/RootGuardPage.cpp:496 msgid "Blocked" msgstr "Blocked" #: src/rootguard/RootGuardPage.cpp:504 msgid "Save rules and restart RootGuard" msgstr "Save rules and restart RootGuard" #: src/rootguard/RootGuardPage.cpp:514 msgid "Unsaved changes are never applied silently. RootGuard restarts only after a successful policy save." msgstr "Unsaved changes are never applied silently. RootGuard restarts only after a successful policy save." #: src/rootguard/RootGuardPage.cpp:516 msgid "Application rules" msgstr "Application rules" #: src/rootguard/RootGuardPage.cpp:529 msgid "Requesting service start…" msgstr "Requesting service start…" #: src/rootguard/RootGuardPage.cpp:531 msgid "Requesting service stop…" msgstr "Requesting service stop…" #: src/rootguard/RootGuardPage.cpp:533 msgid "Reloading RootGuard policy…" msgstr "Reloading RootGuard policy…" #: src/rootguard/RootGuardPage.cpp:535 msgid "Restarting RootGuard…" msgstr "Restarting RootGuard…" #: src/rootguard/RootGuardPage.cpp:537 msgid "Refreshing RootGuard status…" msgstr "Refreshing RootGuard status…" #: src/rootguard/RootGuardPage.cpp:558 src/rootguard/RootGuardPage.cpp:562 msgid "Checking…" msgstr "Checking…" #: src/rootguard/RootGuardPage.cpp:563 src/rootguard/RootGuardPage.cpp:849 msgid "Audit-only" msgstr "Audit-only" #: src/rootguard/RootGuardPage.cpp:564 msgid "Loading RootGuard status and recent security events…" msgstr "Loading RootGuard status and recent security events…" #: src/rootguard/RootGuardPage.cpp:616 msgid "Absolute executable path, for example /usr/bin/firefox" msgstr "Absolute executable path, for example /usr/bin/firefox" #: src/rootguard/RootGuardPage.cpp:617 msgid "Add" msgstr "Add" #: src/rootguard/RootGuardPage.cpp:618 msgid "Remove selected" msgstr "Remove selected" #: src/rootguard/RootGuardPage.cpp:642 msgid "Enter an absolute executable path first." msgstr "Enter an absolute executable path first." #: src/rootguard/RootGuardPage.cpp:648 msgid "Application rules require an absolute path beginning with /." msgstr "Application rules require an absolute path beginning with /." #: src/rootguard/RootGuardPage.cpp:656 msgid "That executable path is already present in this list." msgstr "That executable path is already present in this list." #: src/rootguard/RootGuardPage.cpp:719 msgid "No new installed desktop or browser defaults were found." msgstr "No new installed desktop or browser defaults were found." #. TRANSLATORS: Preserve placeholders such as %1. #: src/rootguard/RootGuardPage.cpp:724 msgid "Added %1 installed desktop/browser executable(s). Review and save to restart RootGuard." msgstr "Added %1 installed desktop/browser executable(s). Review and save to restart RootGuard." #: src/rootguard/RootGuardPage.cpp:732 msgid "Select a rule to remove." msgstr "Select a rule to remove." #: src/rootguard/RootGuardPage.cpp:743 msgid "Rules have unsaved changes. Saving will validate the policy and restart RootGuard." msgstr "Rules have unsaved changes. Saving will validate the policy and restart RootGuard." #: src/rootguard/RootGuardPage.cpp:802 msgid "The same executable cannot be both trusted and blocked." msgstr "The same executable cannot be both trusted and blocked." #: src/rootguard/RootGuardPage.cpp:810 msgid "Saving application rules and restarting RootGuard… Administrator authentication may be requested." msgstr "Saving application rules and restarting RootGuard… Administrator authentication may be requested." #: src/rootguard/RootGuardPage.cpp:811 msgid "Saving RootGuard application rules…" msgstr "Saving RootGuard application rules…" #: src/rootguard/RootGuardPage.cpp:828 msgid "Enabling immediate blocking for protected system paths; user home remains audit-only…" msgstr "Enabling immediate blocking for protected system paths; user home remains audit-only…" #: src/rootguard/RootGuardPage.cpp:829 msgid "Switching RootGuard system-path protection to audit mode…" msgstr "Switching RootGuard system-path protection to audit mode…" #: src/rootguard/RootGuardPage.cpp:839 msgid "Active" msgstr "Active" #: src/rootguard/RootGuardPage.cpp:839 msgid "Inactive" msgstr "Inactive" #: src/rootguard/RootGuardPage.cpp:841 msgid "Immediate block" msgstr "Immediate block" #: src/rootguard/RootGuardPage.cpp:849 msgid "Immediate blocking" msgstr "Immediate blocking" #: src/rootguard/RootGuardPage.cpp:851 msgid "Blocking enabled by manual policy" msgstr "Blocking enabled by manual policy" #: src/rootguard/RootGuardPage.cpp:852 msgid "Audit-only · Anti-Ransomware enforcement" msgstr "Audit-only · Anti-Ransomware enforcement" #: src/rootguard/RootGuardPage.cpp:870 msgid "Application rules saved and RootGuard restarted successfully." msgstr "Application rules saved and RootGuard restarted successfully." #. TRANSLATORS: Preserve placeholders such as %1. #: src/rootguard/RootGuardPage.cpp:873 msgid "Application rules were not applied: %1" msgstr "Application rules were not applied: %1" #. TRANSLATORS: Preserve placeholders such as %1. #: src/rootguard/RootGuardPage.cpp:882 msgid "✅ %1" msgstr "✅ %1" #. TRANSLATORS: Preserve placeholders such as %1. #: src/rootguard/RootGuardPage.cpp:883 msgid "❌ %1" msgstr "❌ %1" #: src/rootguard/RootGuardPage.cpp:886 msgid "RootGuard blocks protected system changes and contains affected services. User home remains audit-only under Anti-Ransomware protection." msgstr "RootGuard blocks protected system changes and contains affected services. User home remains audit-only under Anti-Ransomware protection." #: src/rootguard/RootGuardPage.cpp:887 msgid "RootGuard blocks protected system metadata changes. User home remains audit-only under Anti-Ransomware protection." msgstr "RootGuard blocks protected system metadata changes. User home remains audit-only under Anti-Ransomware protection." #: src/rootguard/RootGuardPage.cpp:890 msgid "RootGuard is monitoring filesystem metadata in audit mode. Trusted application events are logged without popups." msgstr "RootGuard is monitoring filesystem metadata in audit mode. Trusted application events are logged without popups." #: src/rootguard/RootGuardPage.cpp:892 msgid "RootGuard is not running." msgstr "RootGuard is not running." #: src/rootguard/RootGuardPage.cpp:929 msgid "No unresolved observations or blocked changes." msgstr "No unresolved observations or blocked changes." #: src/rootguard/RootGuardPage.cpp:960 msgid "Audit observation: RootGuard did not block or alter the operation." msgstr "Audit observation: RootGuard did not block or alter the operation." #: src/rootguard/RootGuardPage.cpp:975 src/rootguard/RootGuardPage.cpp:1191 msgid "Restore" msgstr "Restore" #: src/rootguard/RootGuardPage.cpp:981 src/rootguard/RootGuardPage.cpp:1200 msgid "Quarantine" msgstr "Quarantine" #: src/rootguard/RootGuardPage.cpp:987 msgid "Dismiss" msgstr "Dismiss" #: src/rootguard/RootGuardPage.cpp:1008 msgid "No RootGuard events are available yet." msgstr "No RootGuard events are available yet." #: src/rootguard/RootGuardPage.cpp:1010 msgid "Only trusted events are available. Enable “Show trusted events” to display them." msgstr "Only trusted events are available. Enable “Show trusted events” to display them." #: src/rootguard/RootGuardPage.cpp:1091 msgid "🛑 System service blocked" msgstr "🛑 System service blocked" #: src/rootguard/RootGuardPage.cpp:1092 msgid "⚠️ System service block failed" msgstr "⚠️ System service block failed" #: src/rootguard/RootGuardPage.cpp:1094 msgid "⚠️ Filesystem metadata change observed" msgstr "⚠️ Filesystem metadata change observed" #: src/rootguard/RootGuardPage.cpp:1096 msgid "🛑 Protected change blocked" msgstr "🛑 Protected change blocked" #: src/rootguard/RootGuardPage.cpp:1098 msgid "⚠️ Protected change observed" msgstr "⚠️ Protected change observed" #: src/rootguard/RootGuardPage.cpp:1099 msgid "⚠️ Protected change detected" msgstr "⚠️ Protected change detected" #. TRANSLATORS: Preserve the Pango markup and placeholders such as %1. #: src/rootguard/RootGuardPage.cpp:1110 msgid "RootGuard observed a filesystem metadata change to:\n%1" msgstr "RootGuard observed a filesystem metadata change to:\n%1" #. TRANSLATORS: Preserve the Pango markup and placeholders such as %1. #: src/rootguard/RootGuardPage.cpp:1112 msgid "RootGuard blocked a change to:\n%1" msgstr "RootGuard blocked a change to:\n%1" #. TRANSLATORS: Preserve the Pango markup and placeholders such as %1. #: src/rootguard/RootGuardPage.cpp:1114 msgid "RootGuard observed a change to:\n%1" msgstr "RootGuard observed a change to:\n%1" #. TRANSLATORS: Preserve the Pango markup and placeholders such as %1. #: src/rootguard/RootGuardPage.cpp:1115 msgid "RootGuard detected a change to:\n%1" msgstr "RootGuard detected a change to:\n%1" #: src/rootguard/RootGuardPage.cpp:1144 msgid "Transparency notice: the kernel event contained only a basename. RootGuard shows the filesystem identity and disables path-based actions rather than guessing an unsafe path." msgstr "Transparency notice: the kernel event contained only a basename. RootGuard shows the filesystem identity and disables path-based actions rather than guessing an unsafe path." #: src/rootguard/RootGuardPage.cpp:1157 msgid "The affected system service has been stopped immediately. On systemd it is also runtime-masked." msgstr "The affected system service has been stopped immediately. On systemd it is also runtime-masked." #: src/rootguard/RootGuardPage.cpp:1158 msgid "RootGuard could not stop the affected service. Review the init-system logs immediately." msgstr "RootGuard could not stop the affected service. Review the init-system logs immediately." #: src/rootguard/RootGuardPage.cpp:1160 msgid "RootGuard requested immediate service containment. A follow-up event will confirm the init-system action." msgstr "RootGuard requested immediate service containment. A follow-up event will confirm the init-system action." #: src/rootguard/RootGuardPage.cpp:1161 msgid "Audit mode never stops or masks services. This event is informational only." msgstr "Audit mode never stops or masks services. This event is informational only." #: src/rootguard/RootGuardPage.cpp:1173 msgid "Audit mode recorded this event without blocking or altering the operation. This notification is acknowledgement-only." msgstr "Audit mode recorded this event without blocking or altering the operation. This notification is acknowledgement-only." #: src/rootguard/RootGuardPage.cpp:1187 msgid "Keep blocked" msgstr "Keep blocked" #: src/rootguard/RootGuardPage.cpp:1187 msgid "Acknowledge" msgstr "Acknowledge" #: src/rootguard/RootGuardPage.cpp:1252 msgid "Restoring protected metadata and unblocking the service…" msgstr "Restoring protected metadata and unblocking the service…" #: src/rootguard/RootGuardPage.cpp:1259 msgid "Moving the protected file from its original path into quarantine…" msgstr "Moving the protected file from its original path into quarantine…"