Version Description
- Added support for MySQL/MariaDB database connection over SSL.
- NinjaFirewall will permanently monitor its scheduled tasks (cron) to make sure they are working. If they stopped, it would restart them and write the incident to its error log (which can be viewed from the "NinjaFirewall > Dashboard" page).
- Uninstalled plugins and themes will be removed from the cache used for security updates notifications.
- Error messages were rewritten for better understanding.
- The "Block attempts to publish, edit or delete a published post by users who do not have the right capabilities" policy will only apply if the content or the title of the post has been changed, so that plugins that are used to modify metadata such as the date and time will not be blocked.
- Users who do not have access to a WordPress installation any longer but keep receiving the firewall's email notifications, can remove their email address by clicking on the corresponding link found in every notification sent by NinjaFirewall.
- WP+ Edition (Premium): Updated GeoIP databases.
- Many additional small fixes and adjustments.
Download this release
Release Info
Developer | nintechnet |
Plugin | NinjaFirewall (WP Edition) |
Version | 4.4.1 |
Comparing to | |
See all releases |
Code changes from version 4.4 to 4.4.1
- languages/ninjafirewall-fr_FR.mo +0 -0
- languages/ninjafirewall-fr_FR.po +663 -430
- languages/ninjafirewall.pot +576 -424
- lib/dashboard.php +18 -18
- lib/dashboard_statistics.php +1 -1
- lib/email_sodium.php +209 -0
- lib/event_notifications.php +9 -24
- lib/event_updates.php +6 -10
- lib/events.php +1 -7
- lib/firewall.php +26 -2
- lib/firewall_options.php +14 -98
- lib/firewall_policies.php +6 -6
- lib/help.php +10 -10
- lib/i18n-extra.php +0 -3
- lib/install_default.php +2 -18
- lib/logs.php +1 -0
- lib/monitoring.php +1 -0
- lib/monitoring_file_check.php +5 -23
- lib/scheduled_tasks.php +176 -0
- lib/security_rules_update.php +5 -18
- lib/utils.php +93 -94
- lib/wpplus.php +1 -1
- ninjafirewall.php +75 -77
- readme.txt +12 -1
- static/jquery.tipTip.js +21 -0
- static/ninjafirewall.css +115 -0
- static/ninjafirewall.js +12 -0
- uninstall.php +5 -13
languages/ninjafirewall-fr_FR.mo
CHANGED
Binary file
|
languages/ninjafirewall-fr_FR.po
CHANGED
@@ -4,8 +4,8 @@ msgid ""
|
|
4 |
msgstr ""
|
5 |
"Project-Id-Version: Stable (latest release)\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/ninjafirewall\n"
|
7 |
-
"POT-Creation-Date: 2021-
|
8 |
-
"PO-Revision-Date: 2021-
|
9 |
"Last-Translator: NinTechNet <contact@nintechnet.com>\n"
|
10 |
"Language-Team: NinTechNet <nintechnet.com>\n"
|
11 |
"Language: fr_FR\n"
|
@@ -16,7 +16,7 @@ msgstr ""
|
|
16 |
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
18 |
|
19 |
-
#: lib/anti_malware.php:24 ninjafirewall.php:
|
20 |
msgid "Anti-Malware"
|
21 |
msgstr "Anti-Malware"
|
22 |
|
@@ -113,7 +113,7 @@ msgstr "NinjaFirewall (WP Edition)"
|
|
113 |
msgid "Your changes have been saved."
|
114 |
msgstr "Les modifications ont été enregistrées."
|
115 |
|
116 |
-
#: lib/dashboard.php:132 ninjafirewall.php:
|
117 |
msgid "Dashboard"
|
118 |
msgstr "Tableau de Bord"
|
119 |
|
@@ -347,7 +347,7 @@ msgstr ""
|
|
347 |
msgid "Centralized Logging"
|
348 |
msgstr "Centralisation des Logs"
|
349 |
|
350 |
-
#: lib/dashboard.php:331 lib/security_rules_update.php:
|
351 |
#, php-format
|
352 |
msgid "Error: %s"
|
353 |
msgstr "Erreur : %s"
|
@@ -356,6 +356,18 @@ msgstr "Erreur : %s"
|
|
356 |
msgid "Source IP"
|
357 |
msgstr "IP source"
|
358 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
359 |
#: lib/dashboard.php:347
|
360 |
#, php-format
|
361 |
msgid "You have a private IP : %s"
|
@@ -451,6 +463,12 @@ msgstr ""
|
|
451 |
msgid "Help & configuration"
|
452 |
msgstr "Aide & configuration"
|
453 |
|
|
|
|
|
|
|
|
|
|
|
|
|
454 |
#: lib/dashboard_about.php:29
|
455 |
msgid "Our blog:"
|
456 |
msgstr "Notre blog :"
|
@@ -500,6 +518,16 @@ msgstr "Niveau des menaces"
|
|
500 |
msgid "Benchmarks"
|
501 |
msgstr "Performances"
|
502 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
503 |
#: lib/dashboard_statistics.php:110
|
504 |
msgid "Average time per request"
|
505 |
msgstr "Durée moyenne par requête"
|
@@ -517,15 +545,15 @@ msgstr "Requête la plus rapide"
|
|
517 |
msgid "Slowest request"
|
518 |
msgstr "Requête la plus lente"
|
519 |
|
520 |
-
#: lib/dashboard_statistics.php:130
|
521 |
msgid "Critical"
|
522 |
msgstr "Critique"
|
523 |
|
524 |
-
#: lib/dashboard_statistics.php:131
|
525 |
msgid "High"
|
526 |
msgstr "Élevé"
|
527 |
|
528 |
-
#: lib/dashboard_statistics.php:132
|
529 |
msgid "Medium"
|
530 |
msgstr "Moyen"
|
531 |
|
@@ -533,7 +561,79 @@ msgstr "Moyen"
|
|
533 |
msgid "Select monthly stats to view..."
|
534 |
msgstr "Sélectionnez les statistiques à afficher..."
|
535 |
|
536 |
-
#: lib/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
537 |
msgid "Event Notifications"
|
538 |
msgstr "Notifications d'Événement"
|
539 |
|
@@ -655,22 +755,6 @@ msgstr "Rapport quotidien"
|
|
655 |
msgid "Send me a daily activity report"
|
656 |
msgstr "Envoyer un rapport d'activité quotidien"
|
657 |
|
658 |
-
#: lib/event_notifications.php:154 lib/event_notifications.php:166
|
659 |
-
#: lib/firewall_options.php:78 lib/firewall_options.php:113
|
660 |
-
#: lib/firewall_policies.php:25 lib/login_protection.php:309
|
661 |
-
#: lib/login_protection.php:324 lib/login_protection.php:345
|
662 |
-
#: lib/login_protection.php:352 lib/network.php:70
|
663 |
-
msgid "Yes"
|
664 |
-
msgstr "Oui"
|
665 |
-
|
666 |
-
#: lib/event_notifications.php:154 lib/event_notifications.php:166
|
667 |
-
#: lib/firewall_options.php:78 lib/firewall_options.php:113
|
668 |
-
#: lib/firewall_policies.php:26 lib/login_protection.php:309
|
669 |
-
#: lib/login_protection.php:324 lib/login_protection.php:345
|
670 |
-
#: lib/login_protection.php:352 lib/network.php:70
|
671 |
-
msgid "No"
|
672 |
-
msgstr "Non"
|
673 |
-
|
674 |
#: lib/event_notifications.php:161
|
675 |
msgid "Log"
|
676 |
msgstr "Journal"
|
@@ -741,40 +825,40 @@ msgstr "Autre(s) :"
|
|
741 |
msgid "Save Event Notifications"
|
742 |
msgstr "Sauvegarder les options"
|
743 |
|
744 |
-
#: lib/event_notifications.php:
|
745 |
msgid "[NinjaFirewall] Daily Activity Report"
|
746 |
msgstr "[NinjaFirewall] Rapport d'activité quotidien"
|
747 |
|
748 |
-
#: lib/event_notifications.php:
|
749 |
#, php-format
|
750 |
msgid "Daily activity report for: %s"
|
751 |
msgstr "Rapport d'activité quotidien pour : %s"
|
752 |
|
753 |
-
#: lib/event_notifications.php:
|
754 |
msgid "Date Range Processed: Yesterday"
|
755 |
msgstr "Plage de date traitée : Hier"
|
756 |
|
757 |
-
#: lib/event_notifications.php:
|
758 |
msgid "Blocked threats:"
|
759 |
msgstr "Menaces bloquées :"
|
760 |
|
761 |
-
#: lib/event_notifications.php:
|
762 |
msgid "critical:"
|
763 |
msgstr "Critique :"
|
764 |
|
765 |
-
#: lib/event_notifications.php:
|
766 |
msgid "high:"
|
767 |
msgstr "Élevé :"
|
768 |
|
769 |
-
#: lib/event_notifications.php:
|
770 |
msgid "medium:"
|
771 |
msgstr "Moyen :"
|
772 |
|
773 |
-
#: lib/event_notifications.php:
|
774 |
msgid "Blocked brute-force attacks:"
|
775 |
msgstr "Attaques par force brute bloquées :"
|
776 |
|
777 |
-
#: lib/event_notifications.php:
|
778 |
msgid ""
|
779 |
"This notification can be turned off from NinjaFirewall \"Event Notifications"
|
780 |
"\" page."
|
@@ -782,11 +866,15 @@ msgstr ""
|
|
782 |
"Cette notification peut être désactivée depuis la page \"Notifications "
|
783 |
"d’Événement\" de NinjaFirewall."
|
784 |
|
785 |
-
#: lib/event_updates.php:
|
|
|
|
|
|
|
|
|
786 |
msgid "[NinjaFirewall] Warning: Security update available"
|
787 |
msgstr "[NinjaFirewall] Mise à jour de sécurité en attente"
|
788 |
|
789 |
-
#: lib/event_updates.php:
|
790 |
msgid ""
|
791 |
"NinjaFirewall has detected that there are security updates available for "
|
792 |
"your website:"
|
@@ -794,59 +882,64 @@ msgstr ""
|
|
794 |
"NinjaFirewall a détecté que des mises à jour de sécurité sont disponibles "
|
795 |
"pour votre site Web :"
|
796 |
|
797 |
-
#: lib/event_updates.php:
|
798 |
-
#: lib/utils.php:440 lib/utils.php:1101 lib/utils.php:1290 lib/utils.php:1562
|
799 |
-
msgid "Date:"
|
800 |
-
msgstr "Date :"
|
801 |
-
|
802 |
-
#: lib/event_updates.php:166 lib/event_updates.php:168
|
803 |
#, php-format
|
804 |
msgid "Blog: %s"
|
805 |
msgstr "Blog : %s"
|
806 |
|
807 |
-
#: lib/event_updates.php:
|
808 |
-
#: lib/event_updates.php:
|
809 |
#, php-format
|
810 |
msgid "Your version: %s"
|
811 |
msgstr "Votre version : %s"
|
812 |
|
813 |
-
#: lib/event_updates.php:
|
814 |
-
#: lib/event_updates.php:
|
815 |
#, php-format
|
816 |
msgid "New version: %s"
|
817 |
msgstr "Nouvelle version : %s"
|
818 |
|
819 |
-
#: lib/event_updates.php:
|
820 |
-
#: lib/event_updates.php:
|
821 |
msgid "Severity: This is an important security update"
|
822 |
msgstr "Sévérité : Ceci est une mise à jour de sécurité importante"
|
823 |
|
824 |
-
#: lib/event_updates.php:
|
825 |
-
#: lib/event_updates.php:
|
826 |
msgid "Severity: **This is a critical security update**"
|
827 |
msgstr "Sévérité : **Ceci est une mise à jour de sécurité critique**"
|
828 |
|
829 |
-
#: lib/event_updates.php:
|
830 |
-
#: lib/event_updates.php:
|
831 |
msgid "Type: Security fix"
|
832 |
msgstr "Type : Correctif de sécurité"
|
833 |
|
834 |
-
#: lib/event_updates.php:
|
835 |
#, php-format
|
836 |
msgid "Plugin: %s"
|
837 |
msgstr "Extension : %s"
|
838 |
|
839 |
-
#: lib/event_updates.php:
|
840 |
#, php-format
|
841 |
msgid "Theme: %s"
|
842 |
msgstr "Theme : %s"
|
843 |
|
844 |
-
#: lib/event_updates.php:
|
845 |
msgid "Don't leave your blog at risk, make sure to update as soon as possible."
|
846 |
msgstr ""
|
847 |
"Ne laissez pas votre blog en danger, lancez cette mise à jour dès que "
|
848 |
"possible."
|
849 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
850 |
#: lib/events.php:27
|
851 |
msgid "Name:"
|
852 |
msgstr "Nom :"
|
@@ -888,32 +981,32 @@ msgstr "installé(e)"
|
|
888 |
msgid "uploaded"
|
889 |
msgstr "téléchargé(e)"
|
890 |
|
891 |
-
#: lib/events.php:
|
892 |
#, php-format
|
893 |
msgid "[NinjaFirewall] Alert: %s"
|
894 |
msgstr "[NinjaFirewall] Alerte : %s"
|
895 |
|
896 |
-
#: lib/events.php:
|
897 |
msgid "-Blog:"
|
898 |
msgstr "- Blog :"
|
899 |
|
900 |
-
#: lib/events.php:
|
901 |
msgid "NinjaFirewall has detected the following activity on your account:"
|
902 |
msgstr "NinjaFirewall a détecté l'activité suivante sur votre compte :"
|
903 |
|
904 |
-
#: lib/events.php:
|
905 |
msgid "-User:"
|
906 |
msgstr "- Nom :"
|
907 |
|
908 |
-
#: lib/events.php:
|
909 |
msgid "-IP:"
|
910 |
msgstr "- IP :"
|
911 |
|
912 |
-
#: lib/events.php:
|
913 |
msgid "-Date:"
|
914 |
msgstr "-Date :"
|
915 |
|
916 |
-
#: lib/firewall_options.php:29 ninjafirewall.php:
|
917 |
msgid "Firewall Options"
|
918 |
msgstr "Options du Pare-feu"
|
919 |
|
@@ -1062,33 +1155,33 @@ msgstr ""
|
|
1062 |
msgid "There are no backup available yet, check back later."
|
1063 |
msgstr "Il n'y a pas encore de sauvegarde disponible, revenez plus tard."
|
1064 |
|
1065 |
-
#: lib/firewall_options.php:
|
1066 |
#, php-format
|
1067 |
msgid "Uploaded file is either corrupted or its format is not supported (#%s)"
|
1068 |
msgstr ""
|
1069 |
"Le fichier importé est illisible ou son format n'est pas supporté (#%s)"
|
1070 |
|
1071 |
-
#: lib/firewall_options.php:
|
1072 |
msgid "The imported file is not compatible with that version of NinjaFirewall"
|
1073 |
msgstr ""
|
1074 |
"Le fichier importé n'est pas compatible avec cette version de NinjaFirewall"
|
1075 |
|
1076 |
-
#: lib/firewall_options.php:
|
1077 |
msgid "[NinjaFirewall] Alert: Firewall is disabled"
|
1078 |
msgstr "[NinjaFirewall] Alerte : Le pare-feu a été désactivé"
|
1079 |
|
1080 |
-
#: lib/firewall_options.php:
|
1081 |
-
#: ninjafirewall.php:
|
1082 |
msgid "-Blog :"
|
1083 |
msgstr "- Blog :"
|
1084 |
|
1085 |
-
#: lib/firewall_options.php:
|
1086 |
msgid "Someone disabled NinjaFirewall from your WordPress admin dashboard:"
|
1087 |
msgstr ""
|
1088 |
"Quelqu'un a désactivé NinjaFirewall depuis votre Tableau de bord de "
|
1089 |
"WordPress :"
|
1090 |
|
1091 |
-
#: lib/firewall_options.php:
|
1092 |
msgid ""
|
1093 |
"NinjaFirewall is disabled because someone enabled debugging mode from your "
|
1094 |
"WordPress admin dashboard:"
|
@@ -1096,26 +1189,26 @@ msgstr ""
|
|
1096 |
"NinjaFirewall est désactivé car quelqu'un activé son \"Mode débogage\" "
|
1097 |
"depuis votre tableau de bord de WordPress :"
|
1098 |
|
1099 |
-
#: lib/firewall_options.php:
|
1100 |
msgid "[NinjaFirewall] Alert: Firewall override settings"
|
1101 |
msgstr "[NinjaFirewall] Alerte : Modification des paramètres du pare-feu"
|
1102 |
|
1103 |
-
#: lib/firewall_options.php:
|
1104 |
msgid ""
|
1105 |
"Someone imported a new configuration which overrode the firewall settings:"
|
1106 |
msgstr ""
|
1107 |
"Quelqu'un a importé une nouvelle configuration qui a modifié tous les "
|
1108 |
"paramètres du pare-feu :"
|
1109 |
|
1110 |
-
#: lib/firewall_options.php:
|
1111 |
msgid "-User :"
|
1112 |
msgstr "- Nom :"
|
1113 |
|
1114 |
-
#: lib/firewall_options.php:
|
1115 |
msgid "-IP :"
|
1116 |
msgstr "- IP :"
|
1117 |
|
1118 |
-
#: lib/firewall_options.php:
|
1119 |
msgid "-Date :"
|
1120 |
msgstr "- Date :"
|
1121 |
|
@@ -1128,7 +1221,7 @@ msgstr ""
|
|
1128 |
"Pour utiliser cette option, allez dans le <a href=\"%s\">Tableau de Bord</a> "
|
1129 |
"et activez le mode Full WAF de NinjaFirewall."
|
1130 |
|
1131 |
-
#: lib/firewall_policies.php:62 ninjafirewall.php:
|
1132 |
msgid "Firewall Policies"
|
1133 |
msgstr "Politiques du Pare-feu"
|
1134 |
|
@@ -1176,6 +1269,25 @@ msgstr "Téléchargements"
|
|
1176 |
msgid "File Uploads"
|
1177 |
msgstr "Autoriser les téléchargements (uploads)"
|
1178 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1179 |
#: lib/firewall_policies.php:147
|
1180 |
msgid "Allow uploads"
|
1181 |
msgstr "Autoriser"
|
@@ -1378,6 +1490,15 @@ msgstr "Désactiver le gestionnaire d'erreurs fatales"
|
|
1378 |
msgid "Users Whitelist"
|
1379 |
msgstr "Liste Blanche"
|
1380 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1381 |
#: lib/firewall_policies.php:518
|
1382 |
msgid "Add the Administrator to the whitelist (default)."
|
1383 |
msgstr "Ajouter l'Administrateur à la liste blanche (défaut)."
|
@@ -1473,6 +1594,14 @@ msgstr "Nettoyer <code>HTTP_USER_AGENT</code>"
|
|
1473 |
msgid "Block suspicious bots/scanners"
|
1474 |
msgstr "Bloquer les requêtes provenant de bots/scanners malveillants"
|
1475 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1476 |
#: lib/firewall_policies.php:713 lib/help.php:240
|
1477 |
msgid "HTTP_REFERER server variable"
|
1478 |
msgstr "Variable HTTP_REFERER"
|
@@ -2856,7 +2985,7 @@ msgstr ""
|
|
2856 |
"intercepter les requêtes HTTP envoyées à tout script PHP, même si ce dernier "
|
2857 |
"ne fait pas partie de WordPress (logiciel tiers, backdoor, etc)."
|
2858 |
|
2859 |
-
#: lib/help.php:360 lib/network.php:32 ninjafirewall.php:
|
2860 |
msgid "Network"
|
2861 |
msgstr "Réseau"
|
2862 |
|
@@ -2909,7 +3038,7 @@ msgstr ""
|
|
2909 |
"après avoir pénétré dans votre Tableau de bord de WordPress, d'y installer "
|
2910 |
"une porte dérobée (backdoor) afin de prendre le contrôle de votre blog."
|
2911 |
|
2912 |
-
#: lib/help.php:389 lib/login_protection.php:21 ninjafirewall.php:
|
2913 |
msgid "Login Protection"
|
2914 |
msgstr "Page de Connexion"
|
2915 |
|
@@ -4052,7 +4181,7 @@ msgstr "Niveau de protection"
|
|
4052 |
msgid "Low (default)"
|
4053 |
msgstr "Bas (défaut)"
|
4054 |
|
4055 |
-
#: lib/i18n-extra.php:
|
4056 |
msgid ""
|
4057 |
"If you are using a caching plugin, consult the contextual help before "
|
4058 |
"enabling the antispam."
|
@@ -4060,31 +4189,31 @@ msgstr ""
|
|
4060 |
"Si vous utilisez une extension de mise en cache, veuillez consulter l'aide "
|
4061 |
"contextuelle avant d'activer l'anti-spam."
|
4062 |
|
4063 |
-
#: lib/i18n-extra.php:
|
4064 |
msgid "Apply protection to"
|
4065 |
msgstr "Appliquer la protection au"
|
4066 |
|
4067 |
-
#: lib/i18n-extra.php:
|
4068 |
msgid "Comment forms (defaut)"
|
4069 |
msgstr "Formulaire de commentaire (défaut)"
|
4070 |
|
4071 |
-
#: lib/i18n-extra.php:
|
4072 |
msgid "User Registration form"
|
4073 |
msgstr "Formulaire d'inscription"
|
4074 |
|
4075 |
-
#: lib/i18n-extra.php:
|
4076 |
msgid "Save Antispam options"
|
4077 |
msgstr "Sauvegarder les options"
|
4078 |
|
4079 |
-
#: lib/i18n-extra.php:
|
4080 |
msgid "Please enable JavaScript"
|
4081 |
msgstr "Veuillez activer JavaScript"
|
4082 |
|
4083 |
-
#: lib/i18n-extra.php:
|
4084 |
msgid "Sorry, this looks like spam to me."
|
4085 |
msgstr "Désolé, mais cela ressemble à du spam."
|
4086 |
|
4087 |
-
#: lib/i18n-extra.php:
|
4088 |
msgid ""
|
4089 |
"Error: You must be whitelisted in order to use that feature: click on the <a "
|
4090 |
"href=\"?page=nfsubaccess\">Access Control</a> menu and ensure that the \"Do "
|
@@ -4095,7 +4224,7 @@ msgstr ""
|
|
4095 |
"et assurez vous que l'option \"Ne pas bloquer les utilisateurs suivants\" "
|
4096 |
"est activée pour l'Administrateur/Super Admin."
|
4097 |
|
4098 |
-
#: lib/i18n-extra.php:
|
4099 |
msgid ""
|
4100 |
"Your license is valid until the indicated expiration date. If you don't "
|
4101 |
"renew it after this date, NinjaFirewall will keep working and protecting "
|
@@ -4106,7 +4235,7 @@ msgstr ""
|
|
4106 |
"et à protéger votre site comme d'habitude, mais les mises à jour / mises à "
|
4107 |
"niveau ne pourront plus être effectuées."
|
4108 |
|
4109 |
-
#: lib/i18n-extra.php:
|
4110 |
#, php-format
|
4111 |
msgid ""
|
4112 |
"You can renew your license from <a href=\"%s\">NinTechNet.com</a> website."
|
@@ -4114,11 +4243,11 @@ msgstr ""
|
|
4114 |
"Vous pouvez renouveler votre licence depuis le site <a href=\"%s"
|
4115 |
"\">NinTechNet.com</a>."
|
4116 |
|
4117 |
-
#: lib/i18n-extra.php:
|
4118 |
msgid "Use shared memory"
|
4119 |
msgstr "Utiliser la mémoire partagée"
|
4120 |
|
4121 |
-
#: lib/i18n-extra.php:
|
4122 |
msgid ""
|
4123 |
"This feature allows NinjaFirewall to use Unix shared memory segments in "
|
4124 |
"order to speed up all operations. The firewall will no longer need to "
|
@@ -4137,7 +4266,7 @@ msgstr ""
|
|
4137 |
"réseau multi-site, la vitesse de traitement de pare-feu va augmenter de 25% "
|
4138 |
"à 30%."
|
4139 |
|
4140 |
-
#: lib/i18n-extra.php:
|
4141 |
msgid ""
|
4142 |
"This option requires that your PHP version was compiled with the <code>--"
|
4143 |
"enable-shmop</code> parameter, otherwise, if it is not compatible with your "
|
@@ -4146,7 +4275,7 @@ msgstr ""
|
|
4146 |
"Cette fonction nécessite que PHP soit compilé avec le paramètre <code>--"
|
4147 |
"enable-shmop</code>."
|
4148 |
|
4149 |
-
#: lib/i18n-extra.php:
|
4150 |
#, php-format
|
4151 |
msgid ""
|
4152 |
"If you are using <a href=\"%s\">GB2312</a> character set (A.K.A <code>GBK</"
|
@@ -4161,11 +4290,11 @@ msgstr ""
|
|
4161 |
"être en mesure de nettoyer correctement les caractères multi-octets, car il "
|
4162 |
"n'aura pas accès à la base de données."
|
4163 |
|
4164 |
-
#: lib/i18n-extra.php:
|
4165 |
msgid "Language"
|
4166 |
msgstr "Langue"
|
4167 |
|
4168 |
-
#: lib/i18n-extra.php:
|
4169 |
msgid ""
|
4170 |
"When this option is enabled, NinjaFirewall will download, if available, the "
|
4171 |
"corresponding language files from the WordPress repo. Then, every hour, it "
|
@@ -4176,7 +4305,7 @@ msgstr ""
|
|
4176 |
"les heures, il vérifiera s'il existe une nouvelle version et la téléchargera "
|
4177 |
"le cas échéant."
|
4178 |
|
4179 |
-
#: lib/i18n-extra.php:
|
4180 |
msgid ""
|
4181 |
"Note that this does not apply to <code>en_US</code> and <code>fr_FR</code> "
|
4182 |
"locales because they are already included with NinjaFirewall."
|
@@ -4184,7 +4313,7 @@ msgstr ""
|
|
4184 |
"Notez que cela ne s'applique pas aux locales <code>en_US</code> et "
|
4185 |
"<code>fr_FR</code> car elles sont déjà incluses avec NinjaFirewall."
|
4186 |
|
4187 |
-
#: lib/i18n-extra.php:
|
4188 |
#, php-format
|
4189 |
msgid ""
|
4190 |
"This options lets you export you current configuration or import it from "
|
@@ -4198,7 +4327,7 @@ msgstr ""
|
|
4198 |
"(%s), sinon il sera rejeté. Notez que l'importation effacera toute votre "
|
4199 |
"configuration (options et règles du pare-feu), sauf votre licence WP+."
|
4200 |
|
4201 |
-
#: lib/i18n-extra.php:
|
4202 |
msgid ""
|
4203 |
"You can allow/disallow uploads, or allow uploads but block scripts (PHP, "
|
4204 |
"CGI, Ruby, Python, bash/shell, JavaScript), C/C++ source code, binaries (MZ/"
|
@@ -4212,11 +4341,11 @@ msgstr ""
|
|
4212 |
"systèmes (.htaccess, .htpasswd et PHP INI) et les fichiers SVG contenant du "
|
4213 |
"Javascript ou des Événements XML."
|
4214 |
|
4215 |
-
#: lib/i18n-extra.php:
|
4216 |
msgid "Maximum allowed file size"
|
4217 |
msgstr "Taille maximale autorisée"
|
4218 |
|
4219 |
-
#: lib/i18n-extra.php:
|
4220 |
msgid ""
|
4221 |
"If you allow uploads, you can select the maximum size of an uploaded file. "
|
4222 |
"Any file bigger than this value will be rejected. Note that if your PHP "
|
@@ -4228,13 +4357,13 @@ msgstr ""
|
|
4228 |
"configuration de PHP utilise la directive<code>upload_max_filesize</code>, "
|
4229 |
"celle-ci sera prioritaire."
|
4230 |
|
4231 |
-
#: lib/i18n-extra.php:
|
4232 |
msgid "Decode Base64-encoded <code>POST</code> variable:"
|
4233 |
msgstr ""
|
4234 |
"Décoder les chaîne encodées en Base64 dans la variable <code>POST</"
|
4235 |
"code> :"
|
4236 |
|
4237 |
-
#: lib/i18n-extra.php:
|
4238 |
#, php-format
|
4239 |
msgid ""
|
4240 |
"Object Serialization is a PHP feature used by many applications to generate "
|
@@ -4253,7 +4382,7 @@ msgstr ""
|
|
4253 |
"<code>POST</code>, les cookies, ou dans les variables <code>HTTP_REFERER</"
|
4254 |
"code> et <code>HTTP_USER_AGENT</code>."
|
4255 |
|
4256 |
-
#: lib/i18n-extra.php:
|
4257 |
msgid ""
|
4258 |
"This option will reject any <code>GET</code> or <code>POST</code> request, "
|
4259 |
"<code>COOKIE</code>, <code>HTTP_USER_AGENT</code>, <code>REQUEST_URI</code>, "
|
@@ -4267,7 +4396,7 @@ msgstr ""
|
|
4267 |
"contenant le caractère ASCI 0x00 (NULL byte) sera bloquée immédiatement. Ce "
|
4268 |
"caractère est dangereux et devrait toujours être rejeté."
|
4269 |
|
4270 |
-
#: lib/i18n-extra.php:
|
4271 |
msgid ""
|
4272 |
"This option will block any <code>GET</code> or <code>POST</code> request "
|
4273 |
"containing the localhost IP (127.0.0.1). It can be useful to block SQL "
|
@@ -4278,7 +4407,7 @@ msgstr ""
|
|
4278 |
"les programmes malveillants. Attention toutefois à ne pas bloquer certains "
|
4279 |
"scripts d'installation ou de configuration si vous l'activez."
|
4280 |
|
4281 |
-
#: lib/i18n-extra.php:
|
4282 |
msgid ""
|
4283 |
"Access Control is a powerful set of directives that can be used to allow or "
|
4284 |
"restrict access to your website based on many criteria."
|
@@ -4287,7 +4416,7 @@ msgstr ""
|
|
4287 |
"utilisé pour autoriser ou restreindre l'accès à votre site selon de nombreux "
|
4288 |
"critères."
|
4289 |
|
4290 |
-
#: lib/i18n-extra.php:
|
4291 |
msgid ""
|
4292 |
"To make better use of them, it is important to understand NinjaFirewall's "
|
4293 |
"directives processing order."
|
@@ -4295,7 +4424,7 @@ msgstr ""
|
|
4295 |
"Afin de pouvoir optimiser son utilisation, il est important de bien "
|
4296 |
"comprendre l'ordre dans lequel NinjaFirewall traite ces directives."
|
4297 |
|
4298 |
-
#: lib/i18n-extra.php:
|
4299 |
msgid ""
|
4300 |
"Because NinjaFirewall is a PHP firewall, its Access Control options apply to "
|
4301 |
"PHP scripts, not to static elements (e.g., images, JS, CSS etc). Depending "
|
@@ -4306,81 +4435,81 @@ msgstr ""
|
|
4306 |
"(images, JS, CSS, etc). Selon votre configuration, elle peuvent également "
|
4307 |
"s'appliquer aux pages HTML."
|
4308 |
|
4309 |
-
#: lib/i18n-extra.php:
|
4310 |
msgid "Processing order:"
|
4311 |
msgstr "Ordre de traitement des directives :"
|
4312 |
|
4313 |
-
#: lib/i18n-extra.php:
|
4314 |
msgid "Incoming HTTP request"
|
4315 |
msgstr "Requête HTTP entrante"
|
4316 |
|
4317 |
-
#: lib/i18n-extra.php:
|
4318 |
#, php-format
|
4319 |
msgid "%s file"
|
4320 |
msgstr "Fichier %s"
|
4321 |
|
4322 |
-
#: lib/i18n-extra.php:
|
4323 |
msgid "Login Protection."
|
4324 |
msgstr "Page de Connexion."
|
4325 |
|
4326 |
-
#: lib/i18n-extra.php:
|
4327 |
msgid "Access Control (except User Input Access Control):"
|
4328 |
msgstr "Contrôle d'Accès (sauf Contrôle d'accès d'entrée utilisateur) :"
|
4329 |
|
4330 |
-
#: lib/i18n-extra.php:
|
4331 |
msgid "Role-based Access Control."
|
4332 |
msgstr "Contrôle d'Accès par Rôle."
|
4333 |
|
4334 |
-
#: lib/i18n-extra.php:
|
4335 |
msgid "Allowed IPs."
|
4336 |
msgstr "Adresses IP autorisées."
|
4337 |
|
4338 |
-
#: lib/i18n-extra.php:
|
4339 |
msgid "Blocked IPs."
|
4340 |
msgstr "Adresses IP bloquées."
|
4341 |
|
4342 |
-
#: lib/i18n-extra.php:
|
4343 |
msgid "Allowed URLs."
|
4344 |
msgstr "URL autorisées."
|
4345 |
|
4346 |
-
#: lib/i18n-extra.php:
|
4347 |
msgid "Blocked URLs."
|
4348 |
msgstr "URL bloquées."
|
4349 |
|
4350 |
-
#: lib/i18n-extra.php:
|
4351 |
msgid "Bot Access Control."
|
4352 |
msgstr "Contrôle d'accès par Bot."
|
4353 |
|
4354 |
-
#: lib/i18n-extra.php:
|
4355 |
msgid "Geolocation."
|
4356 |
msgstr "Géolocalisation."
|
4357 |
|
4358 |
-
#: lib/i18n-extra.php:
|
4359 |
msgid "Rate Limiting."
|
4360 |
msgstr "Limitation du trafic."
|
4361 |
|
4362 |
-
#: lib/i18n-extra.php:
|
4363 |
msgid "File Guard."
|
4364 |
msgstr "File Guard."
|
4365 |
|
4366 |
-
#: lib/i18n-extra.php:
|
4367 |
msgid "NinjaFirewall built-in rules and policies + User Input Access Control."
|
4368 |
msgstr ""
|
4369 |
"Règles et politiques du pare-feu + Contrôle d'accès d'entrée utilisateur."
|
4370 |
|
4371 |
-
#: lib/i18n-extra.php:
|
4372 |
msgid "Response body"
|
4373 |
msgstr "Requête HTTP sortante"
|
4374 |
|
4375 |
-
#: lib/i18n-extra.php:
|
4376 |
msgid "HTTP response headers (Firewall Policies)."
|
4377 |
msgstr "En-têtes de réponse HTTP (Politiques du Pare-feu)."
|
4378 |
|
4379 |
-
#: lib/i18n-extra.php:
|
4380 |
msgid "Web Filter."
|
4381 |
msgstr "Web Filter."
|
4382 |
|
4383 |
-
#: lib/i18n-extra.php:
|
4384 |
#, php-format
|
4385 |
msgid ""
|
4386 |
"By default, any logged in WordPress administrator will not be blocked by "
|
@@ -4399,13 +4528,13 @@ msgstr ""
|
|
4399 |
"options de la <a href=\"%s\">Page de Connexion</a> qui, si elle sont "
|
4400 |
"activées, seront toujours appliquées."
|
4401 |
|
4402 |
-
#: lib/i18n-extra.php:
|
4403 |
msgid "You can also add other users to the whitelist, depending on their role."
|
4404 |
msgstr ""
|
4405 |
"Vous pouvez ajouter d'autres utilisateurs à votre liste blanche en se basant "
|
4406 |
"sur leur Rôle."
|
4407 |
|
4408 |
-
#: lib/i18n-extra.php:
|
4409 |
#, php-format
|
4410 |
msgid ""
|
4411 |
"this option should be used if you are behind a reverse proxy, a load "
|
@@ -4429,7 +4558,7 @@ msgstr ""
|
|
4429 |
"sera vérifiée. Si elle ne comprend aucune IP utilisable, NinjaFirewall "
|
4430 |
"utilisera <code>REMOTE_ADDR</code>."
|
4431 |
|
4432 |
-
#: lib/i18n-extra.php:
|
4433 |
msgid ""
|
4434 |
"This option lets you select the HTTP method(s). All Access Control "
|
4435 |
"directives (Geolocation, IPs, bots and URLs) will only apply to the selected "
|
@@ -4439,20 +4568,20 @@ msgstr ""
|
|
4439 |
"Contrôle d'Accès (Geolocalisation, IP, bots et URL) ne s'appliqueront qu'aux "
|
4440 |
"méthodes sélectionnées."
|
4441 |
|
4442 |
-
#: lib/i18n-extra.php:
|
4443 |
msgid ""
|
4444 |
"It does not apply to the \"Firewall Policies\" options, which use their own "
|
4445 |
"ones."
|
4446 |
msgstr "Cette option ne concerne pas les \"Politiques du Pare-feu\"."
|
4447 |
|
4448 |
-
#: lib/i18n-extra.php:
|
4449 |
msgid ""
|
4450 |
"You can filter and block traffic coming from specific countries/territories."
|
4451 |
msgstr ""
|
4452 |
"Vous pouvez filtrer et bloquer le trafic en provenance de pays ou "
|
4453 |
"territoires spécifiques."
|
4454 |
|
4455 |
-
#: lib/i18n-extra.php:
|
4456 |
msgid ""
|
4457 |
"This is the two-letter code that is used to define a country/territory (e."
|
4458 |
"g., US, UK, FR, DE etc), based on the visitors IP. NinjaFirewall can either "
|
@@ -4465,7 +4594,7 @@ msgstr ""
|
|
4465 |
"données, ou à partir d'une variable PHP prédéfinie ajoutée par votre serveur "
|
4466 |
"HTTP (par exemple, <code>GEOIP_COUNTRY_CODE</code>)."
|
4467 |
|
4468 |
-
#: lib/i18n-extra.php:
|
4469 |
#, php-format
|
4470 |
msgid ""
|
4471 |
"You can add/remove any country/territory from the two listboxes. For more "
|
@@ -4477,7 +4606,7 @@ msgstr ""
|
|
4477 |
"spécifiques (A1, A2, AP, EU etc),vous pouvez consulter l'aide en ligne de <a "
|
4478 |
"href=\"%s\">MaxMind GeoIP</a>."
|
4479 |
|
4480 |
-
#: lib/i18n-extra.php:
|
4481 |
msgid ""
|
4482 |
"Whether geolocation should apply to the whole site or to specific URLs only "
|
4483 |
"(e.g., /wp-login.php, /xmlrpc.php etc). Leave all fields empty if you want "
|
@@ -4487,11 +4616,11 @@ msgstr ""
|
|
4487 |
"uniquement (ex: /wp-login.php, /xmlrpc.php etc). Laissez ce champ vide pour "
|
4488 |
"l'appliquer à tout le site."
|
4489 |
|
4490 |
-
#: lib/i18n-extra.php:
|
4491 |
msgid "Add <code>NINJA_COUNTRY_CODE</code> to PHP headers?"
|
4492 |
msgstr "Ajouter <code>NINJA_COUNTRY_CODE</code> aux en-têtes PHP?"
|
4493 |
|
4494 |
-
#: lib/i18n-extra.php:
|
4495 |
msgid ""
|
4496 |
"After retrieving the two-letter country/territory code, NinjaFirewall can "
|
4497 |
"add it to the PHP headers in the <code>$_SERVER[\"NINJA_COUNTRY_CODE\"]</"
|
@@ -4503,7 +4632,7 @@ msgstr ""
|
|
4503 |
"code>. Si vous avez une application PHP qui nécessite de géolocaliser vos "
|
4504 |
"visiteurs, activez cette option."
|
4505 |
|
4506 |
-
#: lib/i18n-extra.php:
|
4507 |
msgid ""
|
4508 |
"If NinjaFirewall cannot find the two-letter ISO 3166 code, it will replace "
|
4509 |
"it with 2 hyphens (<code>--</code>)."
|
@@ -4511,13 +4640,13 @@ msgstr ""
|
|
4511 |
"Si NinjaFirewall ne peut pas identifier le code à deux lettres ISO 3166, il "
|
4512 |
"le remplacera par deux traits d'union (<code>--</code>)."
|
4513 |
|
4514 |
-
#: lib/i18n-extra.php:
|
4515 |
msgid ""
|
4516 |
"PHP code example to use in your theme or plugin to geolocate your visitors:"
|
4517 |
msgstr ""
|
4518 |
"Exemple de code PHP à ajouter à vos scripts pour géolocaliser vos visiteurs :"
|
4519 |
|
4520 |
-
#: lib/i18n-extra.php:
|
4521 |
msgid ""
|
4522 |
"NinjaFirewall includes GeoLite data created by MaxMind, available from "
|
4523 |
"http://www.maxmind.com"
|
@@ -4525,11 +4654,11 @@ msgstr ""
|
|
4525 |
"NinjaFirewall includes GeoLite data created by MaxMind, available from "
|
4526 |
"http://www.maxmind.com"
|
4527 |
|
4528 |
-
#: lib/i18n-extra.php:
|
4529 |
msgid "IP / URL / Bot Access Control"
|
4530 |
msgstr "Contrôle d'Accès par IP / URL / Bots"
|
4531 |
|
4532 |
-
#: lib/i18n-extra.php:
|
4533 |
msgid ""
|
4534 |
"You can permanently allow/block an IP, a whole range of IP addresses or AS "
|
4535 |
"numbers (Autonomous System number). IPv4 and IPv6 are fully supported by "
|
@@ -4539,20 +4668,20 @@ msgstr ""
|
|
4539 |
"numéro AS (Autonomous System). NinjaFirewall est compatible avec l'IPv4 et "
|
4540 |
"l'IPv6."
|
4541 |
|
4542 |
-
#: lib/i18n-extra.php:
|
4543 |
msgid "Full IP:"
|
4544 |
msgstr "IP complète :"
|
4545 |
|
4546 |
-
#: lib/i18n-extra.php:
|
4547 |
#, php-format
|
4548 |
msgid "IP ranges using CIDR notation: %s or %s."
|
4549 |
msgstr "Plages IP utilisant la notation CIDR : %s ou %s."
|
4550 |
|
4551 |
-
#: lib/i18n-extra.php:
|
4552 |
msgid "Autonomous System number:"
|
4553 |
msgstr "Numéro AS (Autonomous System) :"
|
4554 |
|
4555 |
-
#: lib/i18n-extra.php:
|
4556 |
msgid ""
|
4557 |
"This option allows you to slow down aggressive bots, crawlers, web scrapers "
|
4558 |
"or even small HTTP attacks. Any IP reaching the defined threshold will be "
|
@@ -4571,7 +4700,7 @@ msgstr ""
|
|
4571 |
"adresse IP, utilisez l'option \"Contrôle d'accès par IP\". Par défaut, la "
|
4572 |
"limitation du trafic n'est pas activée."
|
4573 |
|
4574 |
-
#: lib/i18n-extra.php:
|
4575 |
msgid ""
|
4576 |
"IPs temporarily banned by the Rate Limiting option can be unblocked "
|
4577 |
"immediately by clicking either the \"Save Access Control Directives\" or "
|
@@ -4581,7 +4710,7 @@ msgstr ""
|
|
4581 |
"débloquées simplement en cliquant sur les boutons \"Sauvegarder les options"
|
4582 |
"\" ou \"Rétablir les valeurs par défaut\" situés en bas de la page."
|
4583 |
|
4584 |
-
#: lib/i18n-extra.php:
|
4585 |
msgid ""
|
4586 |
"Because NinjaFirewall can handle a lot of HTTP requests per second and block "
|
4587 |
"IPs even before your blog is loaded, we strongly recommend that you disable "
|
@@ -4595,7 +4724,7 @@ msgstr ""
|
|
4595 |
"seconde, NinjaFirewall vous fera économiser de la bande passante et "
|
4596 |
"permettra de réduire la charge du serveur."
|
4597 |
|
4598 |
-
#: lib/i18n-extra.php:
|
4599 |
msgid ""
|
4600 |
"You can permanently allow/block any access to one or more PHP scripts based "
|
4601 |
"on their path, relative to the web root (<code>SCRIPT_NAME</code>). You can "
|
@@ -4606,7 +4735,7 @@ msgstr ""
|
|
4606 |
"(<code>SCRIPT_NAME</code>). Vous pouvez entrer l'URL complète ou partielle, "
|
4607 |
"sensible à la casse."
|
4608 |
|
4609 |
-
#: lib/i18n-extra.php:
|
4610 |
msgid ""
|
4611 |
"<code>/foo/bar.php</code> will block any access to the <code>bar.php</code> "
|
4612 |
"script located inside a <code>/foo/</code> directory"
|
@@ -4614,11 +4743,11 @@ msgstr ""
|
|
4614 |
"<code>/foo/bar.php</code> autorisera/bloquera tout accès au script PHP "
|
4615 |
"<code>bar.php</code> situé dans un répertoire <code>/foo/</code>"
|
4616 |
|
4617 |
-
#: lib/i18n-extra.php:
|
4618 |
msgid "etc"
|
4619 |
msgstr "etc"
|
4620 |
|
4621 |
-
#: lib/i18n-extra.php:
|
4622 |
msgid ""
|
4623 |
"<code>/foo/</code> will block access to all PHP scripts located inside a "
|
4624 |
"<code>/foo/</code> directory and its sub-directories."
|
@@ -4626,7 +4755,7 @@ msgstr ""
|
|
4626 |
"<code>/foo/</code> autorisera/bloquera l'accès à tous les scripts PHP situés "
|
4627 |
"dans un répertoire <code>/foo/</code> et ses sous-répertoires."
|
4628 |
|
4629 |
-
#: lib/i18n-extra.php:
|
4630 |
msgid ""
|
4631 |
"Note that the \"Firewall Policies\" page already includes restrictions to "
|
4632 |
"some WordPress directories."
|
@@ -4634,7 +4763,7 @@ msgstr ""
|
|
4634 |
"Notez que le menu des \"Politiques du pare-feu\" comporte déjà des "
|
4635 |
"restrictions à certains répertoires de WordPress."
|
4636 |
|
4637 |
-
#: lib/i18n-extra.php:
|
4638 |
msgid ""
|
4639 |
"You can block bots, scanners and various crawlers based on the "
|
4640 |
"<code>HTTP_USER_AGENT</code> variable. You can enter either a full or "
|
@@ -4644,7 +4773,7 @@ msgstr ""
|
|
4644 |
"nom (<code>HTTP_USER_AGENT</code>) ou partie de celui-ci. La chaîne de "
|
4645 |
"caractères est insensible à la casse."
|
4646 |
|
4647 |
-
#: lib/i18n-extra.php:
|
4648 |
msgid ""
|
4649 |
"You can select to ignore or block some specific user input. It applies to "
|
4650 |
"the <code>GET</code>, <code>POST</code> and <code>COOKIE</code> global "
|
@@ -4656,7 +4785,7 @@ msgstr ""
|
|
4656 |
"<code>COOKIE</code>, par exemple <code>$_GET[\"foo\"]</code> ou <code>"
|
4657 |
"$_POST[\"bar\"]</code> :"
|
4658 |
|
4659 |
-
#: lib/i18n-extra.php:
|
4660 |
msgid ""
|
4661 |
"When an input is added to the \"Unfiltered input\" list, it will not be "
|
4662 |
"filtered or sanitised. All other input present in the request will be "
|
@@ -4666,7 +4795,7 @@ msgstr ""
|
|
4666 |
"sera ni filtrée ni nettoyée. Toutes les autres entrées présentes dans la "
|
4667 |
"demande seront filtrées."
|
4668 |
|
4669 |
-
#: lib/i18n-extra.php:
|
4670 |
msgid ""
|
4671 |
"When an input is added to the \"Blocked input\", NinjaFirewall will block "
|
4672 |
"the request and close the connection if that input is found in the request."
|
@@ -4675,11 +4804,11 @@ msgstr ""
|
|
4675 |
"bloquera la requête et fermera la connexion si cette entrée est présente "
|
4676 |
"dans la requête."
|
4677 |
|
4678 |
-
#: lib/i18n-extra.php:
|
4679 |
msgid "Log Event"
|
4680 |
msgstr "Journaliser"
|
4681 |
|
4682 |
-
#: lib/i18n-extra.php:
|
4683 |
msgid ""
|
4684 |
"You can enable/disable firewall logging for each access control directive "
|
4685 |
"separately."
|
@@ -4687,11 +4816,11 @@ msgstr ""
|
|
4687 |
"Vous pouvez activer/désactiver la journalisation des directives "
|
4688 |
"indépendamment les unes des autres."
|
4689 |
|
4690 |
-
#: lib/i18n-extra.php:
|
4691 |
msgid "Web Filter"
|
4692 |
msgstr "Web Filter"
|
4693 |
|
4694 |
-
#: lib/i18n-extra.php:
|
4695 |
msgid ""
|
4696 |
"If NinjaFirewall can hook and scan incoming requests, it can also hook the "
|
4697 |
"response body (i.e., the output of the HTML page right before it is sent to "
|
@@ -4708,7 +4837,7 @@ msgstr ""
|
|
4708 |
"etc), des scripts utilisés par les hackers (shell, backdoor) et même des "
|
4709 |
"erreurs (PHP, MySQL)."
|
4710 |
|
4711 |
-
#: lib/i18n-extra.php:
|
4712 |
msgid ""
|
4713 |
"In the case of a positive detection, NinjaFirewall will not block the "
|
4714 |
"response body but will send you an alert by email."
|
@@ -4716,11 +4845,11 @@ msgstr ""
|
|
4716 |
"En cas de détection positive, NinjaFirewall ne bloquera pas la requête mais "
|
4717 |
"vous enverra immédiatement une alerte par e-mail."
|
4718 |
|
4719 |
-
#: lib/i18n-extra.php:
|
4720 |
msgid "Search HTML page for the following keywords"
|
4721 |
msgstr "Rechercher les mots suivants dans la page HTML"
|
4722 |
|
4723 |
-
#: lib/i18n-extra.php:
|
4724 |
msgid ""
|
4725 |
"You can enter any keyword from 4 to 150 characters and select whether the "
|
4726 |
"search will be case sensitive or not."
|
@@ -4728,11 +4857,11 @@ msgstr ""
|
|
4728 |
"Vous pouvez entrer de 4 à 150 caractères et sélectionner si la recherche est "
|
4729 |
"sensible à la casse."
|
4730 |
|
4731 |
-
#: lib/i18n-extra.php:
|
4732 |
msgid "Email Alerts"
|
4733 |
msgstr "Alertes E-mail"
|
4734 |
|
4735 |
-
#: lib/i18n-extra.php:
|
4736 |
msgid ""
|
4737 |
"You can use the notification throttling option to limit the frequency of "
|
4738 |
"alerts sent to you (and written to the firewall log) and select whether you "
|
@@ -4744,7 +4873,7 @@ msgstr ""
|
|
4744 |
"d'Événement \". La page HTML ayant déclenché cette alerte peut être jointe à "
|
4745 |
"l'e-mail."
|
4746 |
|
4747 |
-
#: lib/i18n-extra.php:
|
4748 |
msgid ""
|
4749 |
"Response body filtering can be resource-intensive. Try to limit the number "
|
4750 |
"of keywords to what you really need (less than 10) and, if possible, prefer "
|
@@ -4754,7 +4883,7 @@ msgstr ""
|
|
4754 |
"limiter le nombre de mots-clés (moins de 10) et, si possible, préférez la "
|
4755 |
"recherche sensible à la casse."
|
4756 |
|
4757 |
-
#: lib/i18n-extra.php:
|
4758 |
msgid ""
|
4759 |
"NinjaFirewall can protect your blog against spam without user interaction (e."
|
4760 |
"g., CAPTCHA, math puzzles etc). The protection is totally transparent to "
|
@@ -4769,11 +4898,11 @@ msgstr ""
|
|
4769 |
"vous utilisez une extension tierce pour créer vos formulaires, ils ne seront "
|
4770 |
"pas protégés contre le spam."
|
4771 |
|
4772 |
-
#: lib/i18n-extra.php:
|
4773 |
msgid "Protection level:"
|
4774 |
msgstr "Niveau de protection :"
|
4775 |
|
4776 |
-
#: lib/i18n-extra.php:
|
4777 |
msgid ""
|
4778 |
"Select the level of protection. In most cases, <strong>Low</strong> should "
|
4779 |
"be enough."
|
@@ -4781,21 +4910,21 @@ msgstr ""
|
|
4781 |
"Sélectionnez le niveau de protection. Dans la plupart des cas \"Bas\" est "
|
4782 |
"suffisant."
|
4783 |
|
4784 |
-
#: lib/i18n-extra.php:
|
4785 |
msgid "Apply protection to:"
|
4786 |
msgstr "Appliquer la protection à :"
|
4787 |
|
4788 |
-
#: lib/i18n-extra.php:
|
4789 |
msgid "Whether to protect comment and/or registration forms."
|
4790 |
msgstr "S'il faut protéger les formulaires de commentaire et d'inscription."
|
4791 |
|
4792 |
-
#: lib/i18n-extra.php:
|
4793 |
msgid "If you are using a caching plugin, ensure you follow these steps:"
|
4794 |
msgstr ""
|
4795 |
"Si vous utilisez une extension de mise en cache, veuillez procéder de la "
|
4796 |
"sorte :"
|
4797 |
|
4798 |
-
#: lib/i18n-extra.php:
|
4799 |
msgid ""
|
4800 |
"Set the Protection Level to \"Low\" only. Do not use another value, "
|
4801 |
"otherwise the antispam could behave erratically after a while."
|
@@ -4803,14 +4932,14 @@ msgstr ""
|
|
4803 |
"Réglez le niveau de protection sur \"Bas\" uniquement. N'utilisez pas "
|
4804 |
"d'autre niveau, sinon l'anti-spam pourrait se comporter de façon erratique."
|
4805 |
|
4806 |
-
#: lib/i18n-extra.php:
|
4807 |
msgid ""
|
4808 |
"Flush/clear your cache immediately after enabling or disabling the antispam."
|
4809 |
msgstr ""
|
4810 |
"Videz / effacez votre cache immédiatement après l'activation ou la "
|
4811 |
"désactivation de l'anti-spam."
|
4812 |
|
4813 |
-
#: lib/i18n-extra.php:
|
4814 |
msgid ""
|
4815 |
"The firewall log displays blocked and sanitised requests as well as some "
|
4816 |
"useful information. It has 6 columns:"
|
@@ -4818,7 +4947,7 @@ msgstr ""
|
|
4818 |
"Le journal du pare-feu affiche les requêtes HTTP qui ont été bloquées ou "
|
4819 |
"nettoyées ainsi que d'autres informations utiles. Il a six colonnes :"
|
4820 |
|
4821 |
-
#: lib/i18n-extra.php:
|
4822 |
msgid ""
|
4823 |
"RULE : reference of the NinjaFirewall built-in security rule that triggered "
|
4824 |
"the action. A hyphen (<code>-</code>) instead of a number means it was a "
|
@@ -4829,23 +4958,23 @@ msgstr ""
|
|
4829 |
"d'un numéro signifie que la règle provient de votre configuration "
|
4830 |
"personnelle de la page \"Politiques du Pare-feu\" ou \"Contrôle d'Accès\"."
|
4831 |
|
4832 |
-
#: lib/i18n-extra.php:
|
4833 |
msgid "The log can also be exported as a TSV (tab-separated values) text file."
|
4834 |
msgstr ""
|
4835 |
"Le journal peut aussi être exporté au format TSV (valeurs séparées par des "
|
4836 |
"tabulations)."
|
4837 |
|
4838 |
-
#: lib/i18n-extra.php:
|
4839 |
msgid "Enable firewall log"
|
4840 |
msgstr "Activer le journal du pare-feu"
|
4841 |
|
4842 |
-
#: lib/i18n-extra.php:
|
4843 |
msgid "You can disable/enable the firewall log from this page."
|
4844 |
msgstr ""
|
4845 |
"Vous pouvez activer / désactiver le journal du pare-feu à partir de cette "
|
4846 |
"page."
|
4847 |
|
4848 |
-
#: lib/i18n-extra.php:
|
4849 |
msgid ""
|
4850 |
"Brute-force attacks will still be written to the firewall log, even if you "
|
4851 |
"disable it."
|
@@ -4853,11 +4982,11 @@ msgstr ""
|
|
4853 |
"Les attaques par force brute seront toujours enregistrées dans le journal du "
|
4854 |
"pare-feu, même si vous désactivez celui-ci."
|
4855 |
|
4856 |
-
#: lib/i18n-extra.php:
|
4857 |
msgid "Auto-rotate log"
|
4858 |
msgstr "Rotation automatique du journal"
|
4859 |
|
4860 |
-
#: lib/i18n-extra.php:
|
4861 |
msgid ""
|
4862 |
"NinjaFirewall will rotate its log automatically on the very first day of "
|
4863 |
"each month. If your site is very busy, you may want to allow it to rotate "
|
@@ -4868,24 +4997,24 @@ msgstr ""
|
|
4868 |
"effectuée plus tôt, dans le cas où le journal aurait atteint une certaine "
|
4869 |
"taille (Mo)."
|
4870 |
|
4871 |
-
#: lib/i18n-extra.php:
|
4872 |
msgid ""
|
4873 |
"By default, if will rotate the log each month or earlier, if it reaches 2 "
|
4874 |
"megabytes."
|
4875 |
msgstr "Par défaut, cette taille est fixée à 2 Mo."
|
4876 |
|
4877 |
-
#: lib/i18n-extra.php:
|
4878 |
msgid ""
|
4879 |
"Rotated logs, if any, can be selected and viewed from the dropdown menu."
|
4880 |
msgstr ""
|
4881 |
"Les journaux des mois précédents sont accessibles depuis le menu déroulant "
|
4882 |
"situé au dessus de la fenêtre."
|
4883 |
|
4884 |
-
#: lib/i18n-extra.php:
|
4885 |
msgid "Syslog"
|
4886 |
msgstr "Syslog"
|
4887 |
|
4888 |
-
#: lib/i18n-extra.php:
|
4889 |
msgid ""
|
4890 |
"In addition to the firewall log, events can also be redirected to the syslog "
|
4891 |
"server (<code>LOG_USER</code> facility)."
|
@@ -4893,7 +5022,7 @@ msgstr ""
|
|
4893 |
"En plus d'écrire dans son journal, le pare-feu peut aussi utiliser le "
|
4894 |
"serveur Syslog (catégorie <code>LOG_USER</code>)."
|
4895 |
|
4896 |
-
#: lib/i18n-extra.php:
|
4897 |
msgid ""
|
4898 |
"If you have a shared hosting account, keep this option disabled as you do "
|
4899 |
"not have any access to the server logs."
|
@@ -4901,11 +5030,11 @@ msgstr ""
|
|
4901 |
"Si vous avez un hébergement mutualisé, laissez cette option désactivée car "
|
4902 |
"vous n'avez pas accès aux journaux du serveur."
|
4903 |
|
4904 |
-
#: lib/i18n-extra.php:
|
4905 |
msgid "The logline uses the following format:"
|
4906 |
msgstr "Le format utilisé est le suivant :"
|
4907 |
|
4908 |
-
#: lib/i18n-extra.php:
|
4909 |
msgid ""
|
4910 |
"BB: the level of severity as it appears in the firewall log. It can be "
|
4911 |
"<code>CRITICAL</CODE>, <CODE>HIGH</CODE>, <CODE>MEDIUM</CODE>, <CODE>INFO</"
|
@@ -4916,19 +5045,19 @@ msgstr ""
|
|
4916 |
"<CODE>MEDIUM</CODE>, <CODE>INFO</CODE>, <CODE>UPLOAD</CODE> ou "
|
4917 |
"<CODE>DEBUG_ON</CODE>."
|
4918 |
|
4919 |
-
#: lib/i18n-extra.php:
|
4920 |
msgid "CCCCCC: the 7-digit incident ID."
|
4921 |
msgstr "CCCCCC : le numéro d'incident à sept chiffres."
|
4922 |
|
4923 |
-
#: lib/i18n-extra.php:
|
4924 |
msgid "DD: the user IPv4 or IPv6 address."
|
4925 |
msgstr "DD : L'adresse IPv4 ou IPv6 de l'utilisateur."
|
4926 |
|
4927 |
-
#: lib/i18n-extra.php:
|
4928 |
msgid "EE: the blog (sub-)domain name."
|
4929 |
msgstr "EE : le nom de (sous-)domaine du blog."
|
4930 |
|
4931 |
-
#: lib/i18n-extra.php:
|
4932 |
#, php-format
|
4933 |
msgid ""
|
4934 |
"This logging option does not apply to the brute-force protection which can "
|
@@ -4940,7 +5069,7 @@ msgstr ""
|
|
4940 |
"d'authentification du serveur. Voir le menu de la <a href=\"%s\">Page de "
|
4941 |
"Connexion</a>."
|
4942 |
|
4943 |
-
#: lib/i18n-extra.php:
|
4944 |
msgid ""
|
4945 |
"Secret key: The secret key will be used to generate your public key. Enter "
|
4946 |
"at least 30 ASCII characters, or use the one randomly created by "
|
@@ -4950,7 +5079,7 @@ msgstr ""
|
|
4950 |
"de 30 à 100 caractères ASCII, ou bien utilisez la clé générée aléatoirement "
|
4951 |
"par NinjaFirewall."
|
4952 |
|
4953 |
-
#: lib/i18n-extra.php:
|
4954 |
msgid ""
|
4955 |
"This server IP address: As an additional protection layer, you can restrict "
|
4956 |
"access to the remote website(s) to the main server IP only. You can use IPv4 "
|
@@ -4961,7 +5090,7 @@ msgstr ""
|
|
4961 |
"à se connecter aux sites distants. Si vous ne souhaitez pas de restriction "
|
4962 |
"d’accès par IP, veuillez entrer le caractère <code>*</code>."
|
4963 |
|
4964 |
-
#: lib/i18n-extra.php:
|
4965 |
#, php-format
|
4966 |
msgid ""
|
4967 |
"Public key: This is the public key that you will need to upload to each "
|
@@ -4970,7 +5099,7 @@ msgstr ""
|
|
4970 |
"Clé publique : Vous devez configurer vos sites distants avec cette clé. <a "
|
4971 |
"href=\"%s\">Consultez notre blog</a> pour plus d'info."
|
4972 |
|
4973 |
-
#: lib/i18n-extra.php:
|
4974 |
msgid ""
|
4975 |
"Remote websites URL: Enter the full URL of your NinjaFirewall protected "
|
4976 |
"website(s) that you want to remotely access from the main server."
|
@@ -4979,7 +5108,7 @@ msgstr ""
|
|
4979 |
"NinjaFirewall auxquels vous souhaitez accéder à distance à partir du serveur "
|
4980 |
"principal."
|
4981 |
|
4982 |
-
#: lib/i18n-extra.php:
|
4983 |
msgid ""
|
4984 |
"Centralized Logging will keep working even if NinjaFirewall is disabled. Use "
|
4985 |
"the menu below if you want to disable it."
|
@@ -4988,172 +5117,172 @@ msgstr ""
|
|
4988 |
"NinjaFirewall. Si vous souhaitez complètement désactiver cette option, "
|
4989 |
"faites-le ci-dessous."
|
4990 |
|
4991 |
-
#: lib/i18n-extra.php:
|
4992 |
msgid "Enable Web Filter"
|
4993 |
msgstr "Activer Web Filter"
|
4994 |
|
4995 |
-
#: lib/i18n-extra.php:
|
4996 |
msgid "A full or partial string."
|
4997 |
msgstr "Chaîne de caractère complète ou partielle."
|
4998 |
|
4999 |
-
#: lib/i18n-extra.php:
|
5000 |
msgid "From 4 to maximum 150 characters."
|
5001 |
msgstr "De 4 à 150 caractères."
|
5002 |
|
5003 |
-
#: lib/i18n-extra.php:
|
5004 |
msgid "Any character, except the vertical bar <code>|</code>"
|
5005 |
msgstr "Tout caractère, sauf la barre verticale <code>|</code>"
|
5006 |
|
5007 |
-
#: lib/i18n-extra.php:
|
5008 |
msgid "Keywords to search:"
|
5009 |
msgstr "Mots-clés recherchés :"
|
5010 |
|
5011 |
-
#: lib/i18n-extra.php:
|
5012 |
msgid "Case-sensitive search"
|
5013 |
msgstr "Recherche sensible à la casse"
|
5014 |
|
5015 |
-
#: lib/i18n-extra.php:
|
5016 |
#, php-format
|
5017 |
msgid "Do not send me more than one email alert in a %s interval"
|
5018 |
msgstr "Ne pas envoyer plus d'un e-mail par tranche de %s"
|
5019 |
|
5020 |
-
#: lib/i18n-extra.php:
|
5021 |
msgid "5-minute"
|
5022 |
msgstr "5 minutes"
|
5023 |
|
5024 |
-
#: lib/i18n-extra.php:
|
5025 |
msgid "15-minute"
|
5026 |
msgstr "15 minutes"
|
5027 |
|
5028 |
-
#: lib/i18n-extra.php:
|
5029 |
msgid "30-minute"
|
5030 |
msgstr "30 minutes"
|
5031 |
|
5032 |
-
#: lib/i18n-extra.php:
|
5033 |
msgid "1-hour"
|
5034 |
msgstr "1 heure"
|
5035 |
|
5036 |
-
#: lib/i18n-extra.php:
|
5037 |
msgid "3-hour"
|
5038 |
msgstr "3 heures"
|
5039 |
|
5040 |
-
#: lib/i18n-extra.php:
|
5041 |
msgid "6-hour"
|
5042 |
msgstr "6 heures"
|
5043 |
|
5044 |
-
#: lib/i18n-extra.php:
|
5045 |
msgid "12-hour"
|
5046 |
msgstr "12 heures"
|
5047 |
|
5048 |
-
#: lib/i18n-extra.php:
|
5049 |
msgid "24-hour"
|
5050 |
msgstr "24 heures"
|
5051 |
|
5052 |
-
#: lib/i18n-extra.php:
|
5053 |
msgid ""
|
5054 |
"Clicking the \"Save Web Filter options\" button below will reset the current "
|
5055 |
"timer."
|
5056 |
msgstr "Cliquer sur \"Sauvegarder les options\" réinitialisera le compteur."
|
5057 |
|
5058 |
-
#: lib/i18n-extra.php:
|
5059 |
msgid "Attach the HTML page output to email alerts"
|
5060 |
msgstr "Joindre la page HTML à l'e-mail"
|
5061 |
|
5062 |
-
#: lib/i18n-extra.php:
|
5063 |
msgid "Save Web Filter options"
|
5064 |
msgstr "Sauvegarder les options"
|
5065 |
|
5066 |
-
#: lib/i18n-extra.php:
|
5067 |
msgid "Help Desk:"
|
5068 |
msgstr "Help Desk :"
|
5069 |
|
5070 |
-
#: lib/i18n-extra.php:
|
5071 |
msgid "The selected log was deleted"
|
5072 |
msgstr "Le journal sélectionné a été supprimé"
|
5073 |
|
5074 |
-
#: lib/i18n-extra.php:
|
5075 |
msgid "Export"
|
5076 |
msgstr "Exporter"
|
5077 |
|
5078 |
-
#: lib/i18n-extra.php:
|
5079 |
msgid "Delete"
|
5080 |
msgstr "Supprimer"
|
5081 |
|
5082 |
-
#: lib/i18n-extra.php:
|
5083 |
msgid "Delete log?"
|
5084 |
msgstr "Supprimer le journal ?"
|
5085 |
|
5086 |
-
#: lib/i18n-extra.php:
|
5087 |
msgid "Today"
|
5088 |
msgstr "Aujourd'hui"
|
5089 |
|
5090 |
-
#: lib/i18n-extra.php:
|
5091 |
msgid "Upload"
|
5092 |
msgstr "Téléchargement"
|
5093 |
|
5094 |
-
#: lib/i18n-extra.php:
|
5095 |
msgid "Info"
|
5096 |
msgstr "Info"
|
5097 |
|
5098 |
-
#: lib/i18n-extra.php:
|
5099 |
msgid "Debug"
|
5100 |
msgstr "Débogage"
|
5101 |
|
5102 |
-
#: lib/i18n-extra.php:
|
5103 |
msgid "IP address:"
|
5104 |
msgstr "Adresse IP :"
|
5105 |
|
5106 |
-
#: lib/i18n-extra.php:
|
5107 |
msgid "e.g., 1.2.3.4"
|
5108 |
msgstr "ex : 1.2.3.4"
|
5109 |
|
5110 |
-
#: lib/i18n-extra.php:
|
5111 |
msgid "Add IP to blacklist"
|
5112 |
msgstr "Ajouter à la liste noire"
|
5113 |
|
5114 |
-
#: lib/i18n-extra.php:
|
5115 |
msgid "Add IP to whitelist"
|
5116 |
msgstr "Ajouter à la liste blanche"
|
5117 |
|
5118 |
-
#: lib/i18n-extra.php:
|
5119 |
msgid "Add"
|
5120 |
msgstr "Ajouter"
|
5121 |
|
5122 |
-
#: lib/i18n-extra.php:
|
5123 |
msgid "The address wad added to your IP Access Control list."
|
5124 |
msgstr "L'adresse a été ajoutée à votre liste du Contrôle d'accès par IP."
|
5125 |
|
5126 |
-
#: lib/i18n-extra.php:
|
5127 |
#, php-format
|
5128 |
msgid "1st day of the month, or if bigger than %s MB"
|
5129 |
msgstr "Le 1er de chaque mois, ou si sa taille dépasse %s Mo"
|
5130 |
|
5131 |
-
#: lib/i18n-extra.php:
|
5132 |
msgid "1st day of the month, regardless of its size"
|
5133 |
msgstr "Le 1er de chaque mois, quelle que soit sa taille"
|
5134 |
|
5135 |
-
#: lib/i18n-extra.php:
|
5136 |
msgid "Show the most recent"
|
5137 |
msgstr "Afficher les dernières"
|
5138 |
|
5139 |
-
#: lib/i18n-extra.php:
|
5140 |
msgid "lines"
|
5141 |
msgstr "lignes"
|
5142 |
|
5143 |
-
#: lib/i18n-extra.php:
|
5144 |
msgid "Write events to the Syslog server too"
|
5145 |
msgstr "Enregistrer aussi les événements dans le journal syslog"
|
5146 |
|
5147 |
-
#: lib/i18n-extra.php:
|
5148 |
msgid "Your server configuration is not compatible with this option."
|
5149 |
msgstr ""
|
5150 |
"La configuration de votre serveur n'est pas compatible avec cette option."
|
5151 |
|
5152 |
-
#: lib/i18n-extra.php:
|
5153 |
msgid "See contextual help before enabling this option."
|
5154 |
msgstr "Consultez l'aide contextuelle avant d'activer cette option."
|
5155 |
|
5156 |
-
#: lib/i18n-extra.php:
|
5157 |
msgid ""
|
5158 |
"The remote server rejected your request. Make sure that you uploaded the "
|
5159 |
"correct public key."
|
@@ -5161,29 +5290,29 @@ msgstr ""
|
|
5161 |
"Le serveur distant a rejeté votre requête. Veuillez vous assurer que la clé "
|
5162 |
"publique est correcte."
|
5163 |
|
5164 |
-
#: lib/i18n-extra.php:
|
5165 |
#, php-format
|
5166 |
msgid "The remote server returned the following HTTP error: %s"
|
5167 |
msgstr "Le serveur HTTP a retourné le code d'erreur suivant : %s"
|
5168 |
|
5169 |
-
#: lib/i18n-extra.php:
|
5170 |
msgid "The requested log does not exist on the remote website."
|
5171 |
msgstr "Le journal demandé n'existe pas sur le site distant."
|
5172 |
|
5173 |
-
#: lib/i18n-extra.php:
|
5174 |
msgid "The remote website did not return the expected response."
|
5175 |
msgstr "Le site distant n'a pas retourné la réponse attendue."
|
5176 |
|
5177 |
-
#: lib/i18n-extra.php:
|
5178 |
msgid "Your server does not seem to be compatible with this option."
|
5179 |
msgstr ""
|
5180 |
"La configuration de votre serveur n'est pas compatible avec cette option."
|
5181 |
|
5182 |
-
#: lib/i18n-extra.php:
|
5183 |
msgid "Load language files from the WordPress repo"
|
5184 |
msgstr "Charger les fichiers de langue depuis le WordPress.org"
|
5185 |
|
5186 |
-
#: lib/i18n-extra.php:
|
5187 |
#, php-format
|
5188 |
msgid ""
|
5189 |
"If available, NinjaFirewall will download the language files from <a "
|
@@ -5192,15 +5321,15 @@ msgstr ""
|
|
5192 |
"Si disponible, NinjaFirewall téléchargera le fichier de langue à partir de "
|
5193 |
"<a %s>translate.wordpress.org</a>."
|
5194 |
|
5195 |
-
#: lib/i18n-extra.php:
|
5196 |
msgid "Error: you do not have any license."
|
5197 |
msgstr "Erreur : vous n'avez pas de licence."
|
5198 |
|
5199 |
-
#: lib/i18n-extra.php:
|
5200 |
msgid "You have a valid license."
|
5201 |
msgstr "Votre licence est valide."
|
5202 |
|
5203 |
-
#: lib/i18n-extra.php:
|
5204 |
msgid ""
|
5205 |
"An unknown error occured while connecting to NinjaFirewall servers. Please "
|
5206 |
"try again in a few minutes"
|
@@ -5208,7 +5337,7 @@ msgstr ""
|
|
5208 |
"Une erreur inattendue s'est produite lors de la connexion au serveur de "
|
5209 |
"NinjaFirewall. Merci d'essayer à nouveau dans quelques minutes"
|
5210 |
|
5211 |
-
#: lib/i18n-extra.php:
|
5212 |
msgid ""
|
5213 |
"An error occured while connecting to NinjaFirewall servers. Please try again "
|
5214 |
"in a few minutes"
|
@@ -5216,90 +5345,90 @@ msgstr ""
|
|
5216 |
"Une erreur inattendue s'est produite lors de la connexion au serveur de "
|
5217 |
"NinjaFirewall. Merci d'essayer à nouveau dans quelques minutes"
|
5218 |
|
5219 |
-
#: lib/i18n-extra.php:
|
5220 |
msgid "Enter a valid license to save!"
|
5221 |
msgstr "Veuillez entrer un numéro de licence valide !"
|
5222 |
|
5223 |
-
#: lib/i18n-extra.php:
|
5224 |
msgid "This is already your current license!"
|
5225 |
msgstr "Cette licence est la même que l'actuelle !"
|
5226 |
|
5227 |
-
#: lib/i18n-extra.php:
|
5228 |
msgid "Your new license has been accepted and saved."
|
5229 |
msgstr "Votre nouvelle licence a été acceptée et sauvegardée."
|
5230 |
|
5231 |
-
#: lib/i18n-extra.php:
|
5232 |
msgid "This license is not valid"
|
5233 |
msgstr "Cette licence n'est pas valide"
|
5234 |
|
5235 |
-
#: lib/i18n-extra.php:
|
5236 |
msgid "WP+ Edition License"
|
5237 |
msgstr "Licence WP+ Edition"
|
5238 |
|
5239 |
-
#: lib/i18n-extra.php:
|
5240 |
msgid "License Number"
|
5241 |
msgstr "Numéro de Licence"
|
5242 |
|
5243 |
-
#: lib/i18n-extra.php:
|
5244 |
msgid "No license found"
|
5245 |
msgstr "Aucune licence trouvée"
|
5246 |
|
5247 |
-
#: lib/i18n-extra.php:
|
5248 |
msgid "Click to check your license validity"
|
5249 |
msgstr "Cliquez pour tester la validité de votre licence"
|
5250 |
|
5251 |
-
#: lib/i18n-extra.php:
|
5252 |
msgid "Expiration date"
|
5253 |
msgstr "Date d'expiration"
|
5254 |
|
5255 |
-
#: lib/i18n-extra.php:
|
5256 |
msgid "Unknown expiration date"
|
5257 |
msgstr "Date d'expiration inconnue"
|
5258 |
|
5259 |
-
#: lib/i18n-extra.php:
|
5260 |
msgid "Use the \"Check License Validity\" button to attempt to fix this error."
|
5261 |
msgstr ""
|
5262 |
"Selectionnez \"Cliquez pour tester la validité de votre licence\" pour "
|
5263 |
"tenter de réparer cette erreur."
|
5264 |
|
5265 |
-
#: lib/i18n-extra.php:
|
5266 |
msgid "Your license will expire soon!"
|
5267 |
msgstr "Votre licence va bientôt expirer !"
|
5268 |
|
5269 |
-
#: lib/i18n-extra.php:
|
5270 |
msgid "Your license has expired."
|
5271 |
msgstr "Votre licence a expiré."
|
5272 |
|
5273 |
-
#: lib/i18n-extra.php:
|
5274 |
msgid "License renewal"
|
5275 |
msgstr "Renouvellement de licence"
|
5276 |
|
5277 |
-
#: lib/i18n-extra.php:
|
5278 |
msgid "Click here to get a license!"
|
5279 |
msgstr "Cliquez ici pour obtenir une licence !"
|
5280 |
|
5281 |
-
#: lib/i18n-extra.php:
|
5282 |
msgid "Enter your new license and click on the save button"
|
5283 |
msgstr "Entrez votre licence et cliquez sur le bouton pour l'enregistrer"
|
5284 |
|
5285 |
-
#: lib/i18n-extra.php:
|
5286 |
msgid "Save New License"
|
5287 |
msgstr "Sauvegarder la Licence"
|
5288 |
|
5289 |
-
#: lib/i18n-extra.php:
|
5290 |
msgid "Allow, but block dangerous files"
|
5291 |
msgstr "Autoriser, mais bloquer les fichiers dangereux"
|
5292 |
|
5293 |
-
#: lib/i18n-extra.php:
|
5294 |
msgid "See contextual help for the list of files."
|
5295 |
msgstr ""
|
5296 |
"Consultez l'aide contextuelle pour voir la liste des fichiers concernés."
|
5297 |
|
5298 |
-
#: lib/i18n-extra.php:
|
5299 |
msgid "Apply to ZIP archives file contents"
|
5300 |
msgstr "Appliquer au contenu des fichiers ZIP"
|
5301 |
|
5302 |
-
#: lib/i18n-extra.php:
|
5303 |
msgid ""
|
5304 |
"Keep this option disabled if you are using scripts such as Paypal IPN or "
|
5305 |
"WordPress WP-Cron, unless you added their IP address or URL to your Access "
|
@@ -5309,7 +5438,7 @@ msgstr ""
|
|
5309 |
"WordPress WP-Cron, sauf si vous avez ajouté leur adresse IP ou URL dans la "
|
5310 |
"section \"Contrôle d'Accès\"."
|
5311 |
|
5312 |
-
#: lib/i18n-extra.php:
|
5313 |
#, php-format
|
5314 |
msgid ""
|
5315 |
"Do not send a notification if the user is in the <a href=\"%s\">IP Access "
|
@@ -5326,7 +5455,7 @@ msgstr ""
|
|
5326 |
"Erreur : Votre fichier .htaccess n'est pas accessible en écriture. Veuillez "
|
5327 |
"modifier ses autorisations : %s"
|
5328 |
|
5329 |
-
#: lib/install.php:110 ninjafirewall.php:
|
5330 |
#, php-format
|
5331 |
msgid "Error: wrong parameter value (%s)."
|
5332 |
msgstr "Erreur : Mauvais paramètre (%s)."
|
@@ -5375,7 +5504,7 @@ msgstr "La page d'accueil du site a retourné une erreur fatale : %s."
|
|
5375 |
msgid "File is not writable"
|
5376 |
msgstr "Le fichier n'est pas accessible en écriture"
|
5377 |
|
5378 |
-
#: lib/install_default.php:
|
5379 |
msgid ""
|
5380 |
"Error: The installer cannot download the security rules from wordpress.org "
|
5381 |
"website."
|
@@ -5383,7 +5512,7 @@ msgstr ""
|
|
5383 |
"Erreur : Impossible de télécharger les règles de sécurité depuis le site de "
|
5384 |
"wordpress.org."
|
5385 |
|
5386 |
-
#: lib/install_default.php:
|
5387 |
msgid ""
|
5388 |
"The server may be temporarily down or you may have network connectivity "
|
5389 |
"problems? Please try again in a few minutes."
|
@@ -5392,7 +5521,7 @@ msgstr ""
|
|
5392 |
"problèmes de connectivité réseau ? Veuillez ré-essayer d'ici quelques "
|
5393 |
"minutes."
|
5394 |
|
5395 |
-
#: lib/install_default.php:
|
5396 |
msgid ""
|
5397 |
"NinjaFirewall downloads its rules over an HTTPS secure connection. Maybe "
|
5398 |
"your server does not support SSL? You can force NinjaFirewall to use a non-"
|
@@ -5405,7 +5534,7 @@ msgstr ""
|
|
5405 |
"connexion non-sécurisée (HTTP) en ajoutant la ligne suivante dans votre "
|
5406 |
"fichier <strong>wp-config.php</strong> :"
|
5407 |
|
5408 |
-
#: lib/install_default.php:
|
5409 |
#, php-format
|
5410 |
msgid ""
|
5411 |
"NinjaFirewall cannot create its <code>nfwlog/</code>log and cache folder; "
|
@@ -5604,10 +5733,37 @@ msgstr "Erreur : le mot de passe doit comporter de 6 à 255 caractères."
|
|
5604 |
msgid "Error: unable to write to the %s configuration file"
|
5605 |
msgstr "Erreur : impossible d’écrire dans le fichier de configuration %s"
|
5606 |
|
5607 |
-
#: lib/logs.php:36 ninjafirewall.php:
|
5608 |
msgid "Logs"
|
5609 |
msgstr "Journaux"
|
5610 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5611 |
#: lib/logs_firewall_log.php:35
|
5612 |
#, php-format
|
5613 |
msgid ""
|
@@ -5632,10 +5788,6 @@ msgstr "Votre clé publique a été supprimée"
|
|
5632 |
msgid "Your public key has been saved"
|
5633 |
msgstr "Votre clé publique a été sauvegardée"
|
5634 |
|
5635 |
-
#: lib/logs_firewall_log.php:85
|
5636 |
-
msgid "Error"
|
5637 |
-
msgstr "Erreur"
|
5638 |
-
|
5639 |
#: lib/logs_firewall_log.php:92
|
5640 |
msgid "Note"
|
5641 |
msgstr "Notice"
|
@@ -5728,7 +5880,7 @@ msgstr ""
|
|
5728 |
"et assurez vous que l'option \"Ajouter l'Administrateur à la liste blanche\" "
|
5729 |
"est activée."
|
5730 |
|
5731 |
-
#: lib/logs_live_log.php:96 ninjafirewall.php:
|
5732 |
msgid ""
|
5733 |
"Live Log lets you watch your blog traffic in real time. To enable it, click "
|
5734 |
"on the button below."
|
@@ -5837,10 +5989,23 @@ msgstr "Sauvegarder les options"
|
|
5837 |
msgid "Error: please enter the custom log format."
|
5838 |
msgstr "Erreur : veuillez entrer le format d'affichage."
|
5839 |
|
5840 |
-
#: lib/monitoring.php:43 ninjafirewall.php:
|
5841 |
msgid "Monitoring"
|
5842 |
msgstr "Monitoring"
|
5843 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5844 |
#: lib/monitoring_file_check.php:62
|
5845 |
msgid "Snapshot successfully created."
|
5846 |
msgstr "L'instantané a bien été créé."
|
@@ -5853,7 +6018,7 @@ msgstr "L'instantané a bien été supprimé."
|
|
5853 |
msgid "You must create a snapshot first."
|
5854 |
msgstr "Vous devez d'abord créer un instantané."
|
5855 |
|
5856 |
-
#: lib/monitoring_file_check.php:102 lib/monitoring_file_check.php:
|
5857 |
msgid "NinjaFirewall detected that changes were made to your files."
|
5858 |
msgstr "NinjaFirewall a détecté des changements dans vos fichiers."
|
5859 |
|
@@ -5951,17 +6116,17 @@ msgstr "Supprimer l'instantané"
|
|
5951 |
msgid "Last changes"
|
5952 |
msgstr "Dernières modifications"
|
5953 |
|
5954 |
-
#: lib/monitoring_file_check.php:281 lib/monitoring_file_check.php:
|
5955 |
#, php-format
|
5956 |
msgid "New files: %s"
|
5957 |
msgstr "Nouveaux fichiers : %s"
|
5958 |
|
5959 |
-
#: lib/monitoring_file_check.php:282 lib/monitoring_file_check.php:
|
5960 |
#, php-format
|
5961 |
msgid "Deleted files: %s"
|
5962 |
msgstr "Fichiers supprimés : %s"
|
5963 |
|
5964 |
-
#: lib/monitoring_file_check.php:283 lib/monitoring_file_check.php:
|
5965 |
#, php-format
|
5966 |
msgid "Modified files: %s"
|
5967 |
msgstr "Fichiers modifiés : %s"
|
@@ -6142,45 +6307,37 @@ msgstr "Erreur lors de la lecture du fichier de l'ancien instantané."
|
|
6142 |
msgid "Error reading new snapshot file."
|
6143 |
msgstr "Erreur lors de la lecture du fichier du nouvel instantané."
|
6144 |
|
6145 |
-
#: lib/monitoring_file_check.php:
|
6146 |
msgid "New file"
|
6147 |
msgstr "Nouveau fichier"
|
6148 |
|
6149 |
-
#: lib/monitoring_file_check.php:
|
6150 |
msgid "Modified file"
|
6151 |
msgstr "Fichier modifié"
|
6152 |
|
6153 |
-
#: lib/monitoring_file_check.php:
|
6154 |
msgid "Deleted file"
|
6155 |
msgstr "Fichier supprimé"
|
6156 |
|
6157 |
-
#: lib/monitoring_file_check.php:
|
6158 |
msgid "[NinjaFirewall] Alert: File Check detection"
|
6159 |
msgstr "[NinjaFirewall] Alerte: Détection File Check"
|
6160 |
|
6161 |
-
#: lib/monitoring_file_check.php:
|
6162 |
-
#: lib/
|
6163 |
-
#: lib/security_rules_update.php:572 lib/security_rules_update.php:574
|
6164 |
-
#: lib/utils.php:225 lib/utils.php:311 lib/utils.php:435 lib/utils.php:1100
|
6165 |
-
#: lib/utils.php:1279 lib/utils.php:1558
|
6166 |
-
msgid "Blog:"
|
6167 |
-
msgstr "Blog :"
|
6168 |
-
|
6169 |
-
#: lib/monitoring_file_check.php:781 lib/monitoring_file_check.php:803
|
6170 |
-
#: lib/security_rules_update.php:577
|
6171 |
#, php-format
|
6172 |
msgid "Date: %s"
|
6173 |
msgstr "Date : %s"
|
6174 |
|
6175 |
-
#: lib/monitoring_file_check.php:
|
6176 |
msgid "See attached file for details."
|
6177 |
msgstr "Voir le fichier joint pour plus de détails."
|
6178 |
|
6179 |
-
#: lib/monitoring_file_check.php:
|
6180 |
msgid "[NinjaFirewall] File Check report"
|
6181 |
msgstr "[NinjaFirewall] Rapport de File Check"
|
6182 |
|
6183 |
-
#: lib/monitoring_file_check.php:
|
6184 |
msgid "NinjaFirewall did not detect changes in your files."
|
6185 |
msgstr "NinjaFirewall n'a pas détecté de changements dans vos fichiers."
|
6186 |
|
@@ -6237,7 +6394,7 @@ msgstr ""
|
|
6237 |
msgid "Save File Guard options"
|
6238 |
msgstr "Sauvegarder les options"
|
6239 |
|
6240 |
-
#: lib/network.php:24 ninjafirewall.php:
|
6241 |
#, php-format
|
6242 |
msgid "You are not allowed to perform this task (%s)."
|
6243 |
msgstr "Vous n'êtes pas autorisé à effectuer cette tâche (%s)."
|
@@ -6262,8 +6419,14 @@ msgstr ""
|
|
6262 |
msgid "Save Network options"
|
6263 |
msgstr "Sauvegarder les options"
|
6264 |
|
6265 |
-
#: lib/
|
6266 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
6267 |
msgid "Security Rules"
|
6268 |
msgstr "Règles de Sécurité"
|
6269 |
|
@@ -6374,7 +6537,7 @@ msgstr ""
|
|
6374 |
msgid "Security rules have been updated."
|
6375 |
msgstr "Les règles de sécurité ont été mises à jour."
|
6376 |
|
6377 |
-
#: lib/security_rules_update.php:91 lib/security_rules_update.php:
|
6378 |
msgid "No security rules update available."
|
6379 |
msgstr "Aucune mise à jour des règles de sécurité disponible."
|
6380 |
|
@@ -6395,6 +6558,16 @@ msgstr "Activer la mise à jour automatique des règles de sécurité"
|
|
6395 |
msgid "Check for updates"
|
6396 |
msgstr "Vérifier les mises à jour"
|
6397 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6398 |
#: lib/security_rules_update.php:151
|
6399 |
msgid "Every 15 minutes"
|
6400 |
msgstr "Toutes les 15 minutes"
|
@@ -6464,47 +6637,47 @@ msgstr "Vérifier les mises à jour maintenant !"
|
|
6464 |
msgid "Delete Log"
|
6465 |
msgstr "Supprimer le journal"
|
6466 |
|
6467 |
-
#: lib/security_rules_update.php:
|
6468 |
msgid "Error: Wrong rules format."
|
6469 |
msgstr "Erreur : Le format des règles téléchargées ne correspond pas."
|
6470 |
|
6471 |
-
#: lib/security_rules_update.php:
|
6472 |
msgid "Error: Unable to unserialize the new rules."
|
6473 |
msgstr ""
|
6474 |
"Erreur : Impossible d'extraire les règles du fichier téléchargé (unable to "
|
6475 |
"unserialize the new rules)."
|
6476 |
|
6477 |
-
#: lib/security_rules_update.php:
|
6478 |
msgid "Error: Unserialized rules seem corrupted."
|
6479 |
msgstr ""
|
6480 |
"Erreur : Le fichier des règles téléchargé semblent corrompu (unserialized "
|
6481 |
"rules seem corrupted)."
|
6482 |
|
6483 |
-
#: lib/security_rules_update.php:
|
6484 |
#, php-format
|
6485 |
msgid "Security rules updated to version %s."
|
6486 |
msgstr "Les règles de sécurité ont été mises à jour vers la version %s."
|
6487 |
|
6488 |
-
#: lib/security_rules_update.php:
|
6489 |
msgid "Error: Unable to retrieve the new rules version."
|
6490 |
msgstr "Erreur : Impossible de récupérer la nouvelle version des règles."
|
6491 |
|
6492 |
-
#: lib/security_rules_update.php:
|
6493 |
#, php-format
|
6494 |
msgid "Error: Server returned a %s HTTP error code (#1)."
|
6495 |
msgstr "Erreur : Le serveur a retourné un code d'erreur HTTP %s (#1)."
|
6496 |
|
6497 |
-
#: lib/security_rules_update.php:
|
6498 |
msgid "Error: Unable to connect to the remote server"
|
6499 |
msgstr "Erreur : Impossible de se connecter au serveur distant"
|
6500 |
|
6501 |
-
#: lib/security_rules_update.php:
|
6502 |
#, php-format
|
6503 |
msgid "Error: The new rules versions do not match (%s != %s)."
|
6504 |
msgstr ""
|
6505 |
"Erreur : La versions des nouvelles règles ne correspond pas (%s != %s)."
|
6506 |
|
6507 |
-
#: lib/security_rules_update.php:
|
6508 |
#, php-format
|
6509 |
msgid ""
|
6510 |
"Error: The new rules %s digital signature is not correct. Aborting update, "
|
@@ -6513,24 +6686,24 @@ msgstr ""
|
|
6513 |
"Erreur : La signature numérique des nouvelles règles %s n'est pas correcte. "
|
6514 |
"Annulation de la mise à jour, les règles ont peut-être été altérées."
|
6515 |
|
6516 |
-
#: lib/security_rules_update.php:
|
6517 |
#, php-format
|
6518 |
msgid "Error: Server returned a %s HTTP error code (#2)."
|
6519 |
msgstr "Erreur : Le serveur a retourné un code d'erreur HTTP %s (#2)."
|
6520 |
|
6521 |
-
#: lib/security_rules_update.php:
|
6522 |
msgid "[NinjaFirewall] Security rules update"
|
6523 |
msgstr "[NinjaFirewall] Mise à jour des règles de sécurité"
|
6524 |
|
6525 |
-
#: lib/security_rules_update.php:
|
6526 |
msgid "NinjaFirewall security rules have been updated:"
|
6527 |
msgstr "Les règles de sécurité de NinjaFirewall ont été mises à jour :"
|
6528 |
|
6529 |
-
#: lib/security_rules_update.php:
|
6530 |
msgid "Rules version:"
|
6531 |
msgstr "Version des règles :"
|
6532 |
|
6533 |
-
#: lib/security_rules_update.php:
|
6534 |
#, php-format
|
6535 |
msgid "This notification can be turned off from NinjaFirewall \"%s\" page."
|
6536 |
msgstr ""
|
@@ -6737,25 +6910,25 @@ msgstr ""
|
|
6737 |
msgid "Cancel and Close"
|
6738 |
msgstr "Annuler et Fermer"
|
6739 |
|
6740 |
-
#: lib/utils.php:
|
6741 |
msgid "N/A"
|
6742 |
msgstr "N/A"
|
6743 |
|
6744 |
-
#: lib/utils.php:
|
6745 |
#, php-format
|
6746 |
msgid "Attempt to create a new %s"
|
6747 |
msgstr "Tentative de création de %s"
|
6748 |
|
6749 |
-
#: lib/utils.php:
|
6750 |
#, php-format
|
6751 |
msgid "Attempt to edit a published %s (ID: %s)"
|
6752 |
msgstr "Tentative de modification de %s (ID: %s)"
|
6753 |
|
6754 |
-
#: lib/utils.php:
|
6755 |
msgid "Unauthenticated user"
|
6756 |
msgstr "Utilisateur non authentifié"
|
6757 |
|
6758 |
-
#: lib/utils.php:
|
6759 |
msgid "Blocked post/page edition attempt"
|
6760 |
msgstr "Tentative d'édition de page/article bloquée"
|
6761 |
|
@@ -6767,7 +6940,7 @@ msgstr ""
|
|
6767 |
"NinjaFirewall a bloqué une tentative de modification/création d'une page ou "
|
6768 |
"d'un article par un utilisateur qui n'avait pas les capacités nécessaires :"
|
6769 |
|
6770 |
-
#: lib/utils.php:226 lib/utils.php:
|
6771 |
msgid "Username:"
|
6772 |
msgstr "Utilisateur :"
|
6773 |
|
@@ -6775,18 +6948,13 @@ msgstr "Utilisateur :"
|
|
6775 |
msgid "Action:"
|
6776 |
msgstr "Action :"
|
6777 |
|
6778 |
-
#: lib/utils.php:
|
6779 |
-
#: lib/utils.php:
|
6780 |
-
msgid "User IP:"
|
6781 |
-
msgstr "IP utilisateur :"
|
6782 |
-
|
6783 |
-
#: lib/utils.php:242 lib/utils.php:327 lib/utils.php:449 lib/utils.php:1299
|
6784 |
-
#: lib/utils.php:1554
|
6785 |
msgid "A PHP backtrace has been attached to this message for your convenience."
|
6786 |
msgstr ""
|
6787 |
"La pile d'exécution de PHP est jointe à ce message pour votre commodité."
|
6788 |
|
6789 |
-
#: lib/utils.php:244 lib/utils.php:
|
6790 |
msgid ""
|
6791 |
"This protection (and notification) can be turned off from NinjaFirewall "
|
6792 |
"\"Firewall Policies\" page."
|
@@ -6794,8 +6962,8 @@ msgstr ""
|
|
6794 |
"Cette protection (et notification) peut être désactivée à partir de la page "
|
6795 |
"\"Politiques du Pare-feu\" de NinjaFirewall."
|
6796 |
|
6797 |
-
#: lib/utils.php:259 lib/utils.php:260 lib/utils.php:
|
6798 |
-
#: lib/utils.php:
|
6799 |
msgid "You are not allowed to perform this task."
|
6800 |
msgstr "Vous n'êtes pas autorisé à effectuer cette tâche."
|
6801 |
|
@@ -6803,7 +6971,7 @@ msgstr "Vous n'êtes pas autorisé à effectuer cette tâche."
|
|
6803 |
msgid "Blocked post/page deletion attempt"
|
6804 |
msgstr "Tentative de suppression de page/article bloquée"
|
6805 |
|
6806 |
-
#: lib/utils.php:
|
6807 |
msgid ""
|
6808 |
"NinjaFirewall has blocked an attempt to delete a post by a user who doesn't "
|
6809 |
"have the right capabilities:"
|
@@ -6811,16 +6979,38 @@ msgstr ""
|
|
6811 |
"NinjaFirewall a bloqué une tentative de suppression d'une page ou d'un "
|
6812 |
"article par un utilisateur qui n'avait pas les capacités nécessaires :"
|
6813 |
|
6814 |
-
#: lib/utils.php:
|
6815 |
msgid "Blocked user account creation"
|
6816 |
msgstr "Création de compte d'utilisateur bloquée"
|
6817 |
|
6818 |
-
#: lib/utils.php:
|
6819 |
msgid "NinjaFirewall has blocked an attempt to create a user account:"
|
6820 |
msgstr ""
|
6821 |
"NinjaFirewall a bloqué une tentative de création d'un compte d'utilisateur :"
|
6822 |
|
6823 |
-
#: lib/utils.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6824 |
msgid ""
|
6825 |
"Warning: Because NinjaFirewall's Login Protection is enabled, Site Health "
|
6826 |
"may return an error message regarding the loopback test (e.g., 404 or 401 "
|
@@ -6831,11 +7021,11 @@ msgstr ""
|
|
6831 |
"concernant le test de la requête de bouclage (ex.: code d’état HTTP 404 ou "
|
6832 |
"401). Vous pouvez l'ignorer en toute sécurité."
|
6833 |
|
6834 |
-
#: lib/utils.php:
|
6835 |
msgid "NinjaFirewall error"
|
6836 |
msgstr "NinjaFirewall Erreur"
|
6837 |
|
6838 |
-
#: lib/utils.php:
|
6839 |
#, php-format
|
6840 |
msgid ""
|
6841 |
"%s directory cannot be created. Please review your installation and ensure "
|
@@ -6844,7 +7034,7 @@ msgstr ""
|
|
6844 |
"Le répertoire %s ne peut pas être créé. Vérifiez votre installation et "
|
6845 |
"assurez vous que %s n'est pas en lecture seule."
|
6846 |
|
6847 |
-
#: lib/utils.php:
|
6848 |
#, php-format
|
6849 |
msgid ""
|
6850 |
"%s directory is read-only. Please review your installation and ensure that "
|
@@ -6853,31 +7043,31 @@ msgstr ""
|
|
6853 |
"Le répertoire %s est en lecture seule. Vérifiez votre installation et les "
|
6854 |
"permissions de %s."
|
6855 |
|
6856 |
-
#: lib/utils.php:
|
6857 |
msgid "unknown error"
|
6858 |
msgstr "erreur inconnue"
|
6859 |
|
6860 |
-
#: lib/utils.php:
|
6861 |
msgid "NinjaFirewall fatal error:"
|
6862 |
msgstr "NinjaFirewall erreur fatale :"
|
6863 |
|
6864 |
-
#: lib/utils.php:
|
6865 |
msgid "Review your installation, your site is not protected."
|
6866 |
msgstr "Vérifiez votre installation, votre site n'est pas protégé."
|
6867 |
|
6868 |
-
#: lib/utils.php:
|
6869 |
msgid "Alert: WordPress console login"
|
6870 |
msgstr "Alerte : Connexion à WordPress"
|
6871 |
|
6872 |
-
#: lib/utils.php:
|
6873 |
msgid "Someone just logged in to your WordPress admin console:"
|
6874 |
msgstr "Quelqu'un vient de se connecter à votre Tableau de bord de WordPress:"
|
6875 |
|
6876 |
-
#: lib/utils.php:
|
6877 |
msgid "Forbidden access"
|
6878 |
msgstr "Accès interdit"
|
6879 |
|
6880 |
-
#: lib/utils.php:
|
6881 |
#, php-format
|
6882 |
msgid ""
|
6883 |
"<strong>ERROR</strong>: Invalid username, email address or password.<br /><a "
|
@@ -6886,11 +7076,11 @@ msgstr ""
|
|
6886 |
"<strong>ERREUR</strong>: Identifiant, email ou mot de passe invalide.<br /"
|
6887 |
"><a href=\"%s\">Mot de passe perdu</a> ?"
|
6888 |
|
6889 |
-
#: lib/utils.php:
|
6890 |
msgid "[NinjaFirewall] Alert: Database changes detected"
|
6891 |
msgstr "[NinjaFirewall] Alerte: Modification dans la base de données"
|
6892 |
|
6893 |
-
#: lib/utils.php:
|
6894 |
msgid ""
|
6895 |
"NinjaFirewall has detected that one or more administrator accounts were "
|
6896 |
"modified in the database:"
|
@@ -6898,12 +7088,12 @@ msgstr ""
|
|
6898 |
"NinjaFirewall a détecté que un ou plusieurs comptes d'administrateur ont été "
|
6899 |
"modifiés dans la base de données:"
|
6900 |
|
6901 |
-
#: lib/utils.php:
|
6902 |
#, php-format
|
6903 |
msgid "Total administrators : %s"
|
6904 |
msgstr "Nombre d'administrateurs : %s"
|
6905 |
|
6906 |
-
#: lib/utils.php:
|
6907 |
msgid ""
|
6908 |
"If you cannot see any modifications in the above fields, it is possible that "
|
6909 |
"the administrator password was changed."
|
@@ -6911,11 +7101,11 @@ msgstr ""
|
|
6911 |
"Si vous ne voyez pas de modifications dans les données ci-dessus, il est "
|
6912 |
"possible que le mot de passe administrateur ait été changé."
|
6913 |
|
6914 |
-
#: lib/utils.php:
|
6915 |
msgid "Blocked privilege escalation attempt"
|
6916 |
msgstr "Tentatives d'élévation des privilèges"
|
6917 |
|
6918 |
-
#: lib/utils.php:
|
6919 |
msgid ""
|
6920 |
"NinjaFirewall has blocked an attempt to modify a user capability by someone "
|
6921 |
"who does not have administrative privileges:"
|
@@ -6923,7 +7113,7 @@ msgstr ""
|
|
6923 |
"NinjaFirewall a bloqué une tentative de modification de certaines Capacités "
|
6924 |
"par un utilisateur ne disposant pas de privilèges administratifs :"
|
6925 |
|
6926 |
-
#: lib/utils.php:
|
6927 |
msgid ""
|
6928 |
"NinjaFirewall brute-force protection is enabled and you are temporarily "
|
6929 |
"whitelisted."
|
@@ -6931,7 +7121,7 @@ msgstr ""
|
|
6931 |
"La protection de NinjaFirewall contre les attaques par force brute est "
|
6932 |
"activée. Vous êtes temporairement dans la liste blanche."
|
6933 |
|
6934 |
-
#: lib/utils.php:
|
6935 |
#, php-format
|
6936 |
msgid ""
|
6937 |
"Hey, it seems that you've been using NinjaFirewall for some time. If you "
|
@@ -6944,17 +7134,17 @@ msgstr ""
|
|
6944 |
"a>. Il a fallu des milliers d'heures pour le développer, mais il suffit "
|
6945 |
"seulement de quelques minutes pour le noter. Merci !"
|
6946 |
|
6947 |
-
#: lib/utils.php:
|
6948 |
msgid ""
|
6949 |
"The attempt was blocked and the option was reversed to its original value."
|
6950 |
msgstr ""
|
6951 |
"La tentative a été bloquée et l'option a été remise à sa valeur d'origine."
|
6952 |
|
6953 |
-
#: lib/utils.php:
|
6954 |
msgid "Attempt to modify WordPress settings"
|
6955 |
msgstr "Tentative de modification des paramètres de WordPress"
|
6956 |
|
6957 |
-
#: lib/utils.php:
|
6958 |
msgid ""
|
6959 |
"NinjaFirewall has blocked an attempt to modify some important WordPress "
|
6960 |
"settings by a user that does not have administrative privileges:"
|
@@ -6963,31 +7153,31 @@ msgstr ""
|
|
6963 |
"importants de WordPress par un utilisateur ne disposant pas de privilèges "
|
6964 |
"administratifs :"
|
6965 |
|
6966 |
-
#: lib/utils.php:
|
6967 |
#, php-format
|
6968 |
msgid "Option: %s"
|
6969 |
msgstr "Option: %s"
|
6970 |
|
6971 |
-
#: lib/utils.php:
|
6972 |
#, php-format
|
6973 |
msgid "Original value: %s"
|
6974 |
msgstr "Valeur originale : %s"
|
6975 |
|
6976 |
-
#: lib/utils.php:
|
6977 |
#, php-format
|
6978 |
msgid "Modified value: %s"
|
6979 |
msgstr "Valeur modifiée : %s"
|
6980 |
|
6981 |
-
#: lib/utils.php:
|
6982 |
#, php-format
|
6983 |
msgid "Action taken: %s"
|
6984 |
msgstr "Action prise : %s"
|
6985 |
|
6986 |
-
#: lib/utils.php:
|
6987 |
msgid "Code injection attempt in WordPress options table"
|
6988 |
msgstr "Tentative d'injection de code dans la table des options de WordPress"
|
6989 |
|
6990 |
-
#: lib/utils.php:
|
6991 |
msgid ""
|
6992 |
"NinjaFirewall has blocked an attempt to inject code in the WordPress options "
|
6993 |
"table by a user that does not have administrative privileges:"
|
@@ -6996,35 +7186,51 @@ msgstr ""
|
|
6996 |
"options de WordPress par un utilisateur ne disposant pas de privilèges "
|
6997 |
"administratifs :"
|
6998 |
|
6999 |
-
#: lib/utils.php:
|
7000 |
#, php-format
|
7001 |
msgid "Code: %s"
|
7002 |
msgstr "Code : %s"
|
7003 |
|
7004 |
-
#: lib/utils.php:
|
7005 |
msgid "Important: NinjaFirewall has detected that this is a security update."
|
7006 |
msgstr ""
|
7007 |
"Important : NinjaFirewall a détecté que ceci est un mise à jour de sécurité."
|
7008 |
|
7009 |
-
#: lib/utils.php:
|
7010 |
msgid "More info about this warning."
|
7011 |
msgstr "En savoir plus."
|
7012 |
|
7013 |
-
#: lib/utils.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7014 |
#, php-format
|
7015 |
msgid "Error, cannot create the %s folder."
|
7016 |
msgstr "Erreur, impossible de créer le répertoire %s."
|
7017 |
|
7018 |
-
#: lib/utils.php:
|
7019 |
msgid "Check your server permissions and try again."
|
7020 |
msgstr "Vérifiez les autorisations de votre serveur et réessayez."
|
7021 |
|
7022 |
-
#: lib/utils.php:
|
7023 |
#, php-format
|
7024 |
msgid "Error, the %s folder is not writable."
|
7025 |
msgstr "Erreur, le répertoire %s est en lecture seule."
|
7026 |
|
7027 |
-
#: lib/utils.php:
|
7028 |
#, php-format
|
7029 |
msgid "Error, cannot write %s."
|
7030 |
msgstr "Erreur, impossible d'écrire dans %s."
|
@@ -7232,16 +7438,15 @@ msgstr ""
|
|
7232 |
|
7233 |
#: lib/wpplus.php:143
|
7234 |
msgid ""
|
7235 |
-
"The Web Filter can
|
7236 |
-
"page, and search it for some specific keywords
|
7237 |
"identify errors, hacked content and data leakage issues in the response body "
|
7238 |
"sent to your visitors."
|
7239 |
msgstr ""
|
7240 |
-
"Le Web Filter peut
|
7241 |
-
"
|
7242 |
-
"
|
7243 |
-
"
|
7244 |
-
"visiteurs."
|
7245 |
|
7246 |
#: lib/wpplus.php:144
|
7247 |
msgid ""
|
@@ -7545,7 +7750,7 @@ msgstr ""
|
|
7545 |
"Impossible de récupérer les règles de l'utilisateur dans la base de données "
|
7546 |
"(#4)"
|
7547 |
|
7548 |
-
#: ninjafirewall.php:
|
7549 |
msgid ""
|
7550 |
"You do not have \"unfiltered_html\" capability. Please enable it in order to "
|
7551 |
"run NinjaFirewall (or make sure you do not have \"DISALLOW_UNFILTERED_HTML\" "
|
@@ -7556,7 +7761,7 @@ msgstr ""
|
|
7556 |
"la directive \"DISALLOW_UNFILTERED_HTML\" activée dans votre fichier wp-"
|
7557 |
"config.php)."
|
7558 |
|
7559 |
-
#: ninjafirewall.php:
|
7560 |
#, php-format
|
7561 |
msgid ""
|
7562 |
"NinjaFirewall requires WordPress %s or greater but your current version is "
|
@@ -7564,19 +7769,19 @@ msgid ""
|
|
7564 |
msgstr ""
|
7565 |
"NinjaFirewall nécessite au moins WordPress %s mais votre version est %s."
|
7566 |
|
7567 |
-
#: ninjafirewall.php:
|
7568 |
#, php-format
|
7569 |
msgid ""
|
7570 |
"NinjaFirewall requires PHP 5.3 or greater but your current version is %s."
|
7571 |
msgstr ""
|
7572 |
"NinjaFirewall nécessite au moins PHP 5.3 mais votre version de PHP est %s."
|
7573 |
|
7574 |
-
#: ninjafirewall.php:
|
7575 |
#, php-format
|
7576 |
msgid "NinjaFirewall requires the PHP %s extension."
|
7577 |
msgstr "NinjaFirewall nécessite l'extension PHP %s."
|
7578 |
|
7579 |
-
#: ninjafirewall.php:
|
7580 |
msgid ""
|
7581 |
"You have SAFE_MODE enabled. Please disable it, it is deprecated as of PHP "
|
7582 |
"5.3.0 (see http://php.net/safe-mode)."
|
@@ -7585,15 +7790,15 @@ msgstr ""
|
|
7585 |
"devenue obsolète depuis PHP 5.3 et a été supprimée depuis PHP 5.4 (cf. "
|
7586 |
"http://php.net/safe-mode)."
|
7587 |
|
7588 |
-
#: ninjafirewall.php:
|
7589 |
msgid "You are not allowed to activate NinjaFirewall."
|
7590 |
msgstr "Vous n’êtes pas autorisé à activer NinjaFirewall."
|
7591 |
|
7592 |
-
#: ninjafirewall.php:
|
7593 |
msgid "NinjaFirewall is not compatible with Microsoft Windows."
|
7594 |
msgstr "NinjaFirewall n'est pas compatible avec Microsoft Windows."
|
7595 |
|
7596 |
-
#: ninjafirewall.php:
|
7597 |
msgid ""
|
7598 |
"All fields will be restored to their default values and any changes you made "
|
7599 |
"will be lost. Continue?"
|
@@ -7601,19 +7806,19 @@ msgstr ""
|
|
7601 |
"Tous les champs vont être re-initialisés et vos changements seront perdus. "
|
7602 |
"Continuer ?"
|
7603 |
|
7604 |
-
#: ninjafirewall.php:
|
7605 |
msgid "Missing security nonce, try to reload the page."
|
7606 |
msgstr "La nonce de sécurité est manquante, essayer de recharger cette page."
|
7607 |
|
7608 |
-
#: ninjafirewall.php:
|
7609 |
msgid "Please select the HTTP server in the list."
|
7610 |
msgstr "Sélectionnez votre serveur HTTP dans la list."
|
7611 |
|
7612 |
-
#: ninjafirewall.php:
|
7613 |
msgid "Delete the firewall's error log ?"
|
7614 |
msgstr "Supprimer le journal des erreurs ?"
|
7615 |
|
7616 |
-
#: ninjafirewall.php:
|
7617 |
msgid ""
|
7618 |
"This action will restore the selected configuration file and will override "
|
7619 |
"all your current firewall options, policies and rules. Continue?"
|
@@ -7622,7 +7827,7 @@ msgstr ""
|
|
7622 |
"remplacera toutes les options, politiques et règles de pare-feu actuelles. "
|
7623 |
"Continuer ?"
|
7624 |
|
7625 |
-
#: ninjafirewall.php:
|
7626 |
msgid ""
|
7627 |
"Any character that is not a letter [a-zA-Z], a digit [0-9], a dot [.], a "
|
7628 |
"hyphen [-] or an underscore [_] will be removed from the filename and "
|
@@ -7632,7 +7837,7 @@ msgstr ""
|
|
7632 |
"[.], un trait d'union[-] ou un caractère de soulignement[_], sera supprimé "
|
7633 |
"du nom du fichier et remplacé par le caractère de substitution. Continuer ?"
|
7634 |
|
7635 |
-
#: ninjafirewall.php:
|
7636 |
msgid ""
|
7637 |
"Ensure that you can access your admin console over HTTPS before enabling "
|
7638 |
"this option, otherwise you will lock yourself out of your site. Continue?"
|
@@ -7641,7 +7846,7 @@ msgstr ""
|
|
7641 |
"option, sinon vous risqueriez de ne plus pouvoir accéder à l'interface "
|
7642 |
"d'administration. Continuer ?"
|
7643 |
|
7644 |
-
#: ninjafirewall.php:
|
7645 |
msgid ""
|
7646 |
"WooCommerce is running: if you block accounts creation, your customers won't "
|
7647 |
"be able to sign up. Continue?"
|
@@ -7649,7 +7854,7 @@ msgstr ""
|
|
7649 |
"WooCommerce est activé : si vous bloquez la création de comptes, vos clients "
|
7650 |
"ne pourront pas s'enregistrer. Continuer ?"
|
7651 |
|
7652 |
-
#: ninjafirewall.php:
|
7653 |
msgid ""
|
7654 |
"Your blog has user registration enabled: if you block accounts creation, "
|
7655 |
"your customers won't be able to sign up. Continue?"
|
@@ -7657,7 +7862,7 @@ msgstr ""
|
|
7657 |
"Votre blog accepte les inscriptions : si vous bloquez la création de "
|
7658 |
"comptes, vos clients ne pourront plus s'inscrire. Continuer ?"
|
7659 |
|
7660 |
-
#: ninjafirewall.php:
|
7661 |
msgid ""
|
7662 |
"Your multisite installation allows users to register new sites: if you "
|
7663 |
"enable this option, they will likely get blocked when creating their blog. "
|
@@ -7666,143 +7871,171 @@ msgstr ""
|
|
7666 |
"Les utilisateurs sont autorisés a créer des nouveaux sites : si vous activez "
|
7667 |
"cette option, ils ne pourront plus le faire. Continuer ?"
|
7668 |
|
7669 |
-
#: ninjafirewall.php:
|
7670 |
msgid "Delete the current snapshot ?"
|
7671 |
msgstr "Supprimer l'instantané actuel ?"
|
7672 |
|
7673 |
-
#: ninjafirewall.php:
|
7674 |
msgid "Invalid character."
|
7675 |
msgstr "Caractère invalide."
|
7676 |
|
7677 |
-
#: ninjafirewall.php:
|
7678 |
msgid "\"admin\" is not acceptable, please choose another user name."
|
7679 |
msgstr ""
|
7680 |
"\"admin\" n\\'est pas acceptable, merci de bien vouloir choisir un autre "
|
7681 |
"identifiant."
|
7682 |
|
7683 |
-
#: ninjafirewall.php:
|
7684 |
msgid "Please enter max 1024 character only."
|
7685 |
msgstr "Veuillez ne pas entrer plus de 1 024 caractères."
|
7686 |
|
7687 |
-
#: ninjafirewall.php:
|
7688 |
msgid "Select when to enable the login protection."
|
7689 |
msgstr "Veuillez sélectionner quand activer la protection."
|
7690 |
|
7691 |
-
#: ninjafirewall.php:
|
7692 |
msgid "Enter a name and a password for the HTTP authentication."
|
7693 |
msgstr ""
|
7694 |
"Veuillez entrer un nom d'utilisateur et mot de passe pour l'authentification "
|
7695 |
"HTTP."
|
7696 |
|
7697 |
-
#: ninjafirewall.php:
|
7698 |
msgid "Your public key is not valid."
|
7699 |
msgstr "Votre clé publique n\\'est pas valide."
|
7700 |
|
7701 |
-
#: ninjafirewall.php:
|
7702 |
msgid "No traffic yet, please wait"
|
7703 |
msgstr "Aucun visiteur actuellement, veuillez patienter"
|
7704 |
|
7705 |
-
#: ninjafirewall.php:
|
7706 |
msgid "seconds..."
|
7707 |
msgstr "secondes..."
|
7708 |
|
7709 |
-
#: ninjafirewall.php:
|
7710 |
msgid "Error: Live Log did not receive the expected response from your server:"
|
7711 |
msgstr "Erreur : le serveur distant n\\'a pas retourné la réponse attendue :"
|
7712 |
|
7713 |
-
#: ninjafirewall.php:
|
7714 |
msgid "Error: URL does not seem to exist (404 Not Found):"
|
7715 |
msgstr "Erreur : l'URL ne semble pas exister (404 Not Found) :"
|
7716 |
|
7717 |
-
#: ninjafirewall.php:
|
7718 |
msgid "Error: Cannot find your log file. Try to reload this page."
|
7719 |
msgstr ""
|
7720 |
"Erreur : Impossible de trouver le fichier log. Essayez de recharger cette "
|
7721 |
"page."
|
7722 |
|
7723 |
-
#: ninjafirewall.php:
|
7724 |
msgid "Error: The HTTP server returned the following error code:"
|
7725 |
msgstr "Erreur : Le serveur HTTP a retourné le code d'erreur suivant :"
|
7726 |
|
7727 |
-
#: ninjafirewall.php:
|
7728 |
msgid "Error: Security nonces do not match. Reload the page and try again."
|
7729 |
msgstr ""
|
7730 |
"Erreur : Les nonces de sécurité ne correspondent pas. Veuillez recharger "
|
7731 |
"cette page."
|
7732 |
|
7733 |
-
#: ninjafirewall.php:
|
7734 |
msgid "Error: NinjaFirewall is disabled"
|
7735 |
msgstr "Erreur : NinjaFirewall est désactivé"
|
7736 |
|
7737 |
-
#: ninjafirewall.php:
|
7738 |
#, php-format
|
7739 |
msgid "Error: missing parameter (%s)."
|
7740 |
msgstr "Erreur : Paramètre manquant (%s)."
|
7741 |
|
7742 |
-
#: ninjafirewall.php:
|
7743 |
msgid "NinjaFirewall: Dashboard"
|
7744 |
msgstr "NinjaFirewall : Tableau de Bord"
|
7745 |
|
7746 |
-
#: ninjafirewall.php:
|
7747 |
msgid "NinjaFirewall: Firewall Options"
|
7748 |
msgstr "NinjaFirewall : Options du Pare-feu"
|
7749 |
|
7750 |
-
#: ninjafirewall.php:
|
7751 |
msgid "NinjaFirewall: Firewall Policies"
|
7752 |
msgstr "NinjaFirewall : Politiques du Pare-feu"
|
7753 |
|
7754 |
-
#: ninjafirewall.php:
|
7755 |
msgid "NinjaFirewall: Monitoring"
|
7756 |
msgstr "NinjaFirewall : Monitoring"
|
7757 |
|
7758 |
-
#: ninjafirewall.php:
|
7759 |
msgid "NinjaFirewall: Anti-Malware"
|
7760 |
msgstr "NinjaFirewall : Anti-Malware"
|
7761 |
|
7762 |
-
#: ninjafirewall.php:
|
7763 |
msgid "NinjaFirewall: Network"
|
7764 |
msgstr "NinjaFirewall : Réseau"
|
7765 |
|
7766 |
-
#: ninjafirewall.php:
|
7767 |
msgid "NinjaFirewall: Event Notifications"
|
7768 |
msgstr "NinjaFirewall : Notifications d’Événement"
|
7769 |
|
7770 |
-
#: ninjafirewall.php:
|
7771 |
msgid "NinjaFirewall: Log-in Protection"
|
7772 |
msgstr "NinjaFirewall : Page de Connexion"
|
7773 |
|
7774 |
-
#: ninjafirewall.php:
|
7775 |
msgid "NinjaFirewall: Logs"
|
7776 |
msgstr "NinjaFirewall : Journaux"
|
7777 |
|
7778 |
-
#: ninjafirewall.php:
|
7779 |
msgid "NinjaFirewall: Security Rules"
|
7780 |
msgstr "NinjaFirewall : Règles de Sécurité"
|
7781 |
|
7782 |
-
#: ninjafirewall.php:
|
7783 |
msgid "NinjaFirewall Settings"
|
7784 |
msgstr "Réglages de NinjaFirewall"
|
7785 |
|
7786 |
-
#: ninjafirewall.php:
|
7787 |
msgid "NinjaFirewall is enabled"
|
7788 |
msgstr "NinjaFirewall est activé"
|
7789 |
|
7790 |
-
#: ninjafirewall.php:
|
7791 |
msgid "Access Restricted"
|
7792 |
msgstr "Accès limité"
|
7793 |
|
7794 |
-
#: ninjafirewall.php:
|
7795 |
msgid "Settings"
|
7796 |
msgstr "Réglages"
|
7797 |
|
7798 |
-
#: ninjafirewall.php:
|
7799 |
msgid "Upgrade to Premium"
|
7800 |
msgstr "Passez Premium !"
|
7801 |
|
7802 |
-
#: ninjafirewall.php:
|
7803 |
msgid "Rate it!"
|
7804 |
msgstr "Notez-le !"
|
7805 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7806 |
#, php-format
|
7807 |
#~ msgid ""
|
7808 |
#~ "Log in to your Openlitespeed admin dashboard, click on \"Virtual Host\", "
|
4 |
msgstr ""
|
5 |
"Project-Id-Version: Stable (latest release)\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/ninjafirewall\n"
|
7 |
+
"POT-Creation-Date: 2021-09-17 15:59+0700\n"
|
8 |
+
"PO-Revision-Date: 2021-09-17 15:59+0700\n"
|
9 |
"Last-Translator: NinTechNet <contact@nintechnet.com>\n"
|
10 |
"Language-Team: NinTechNet <nintechnet.com>\n"
|
11 |
"Language: fr_FR\n"
|
16 |
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
18 |
|
19 |
+
#: lib/anti_malware.php:24 ninjafirewall.php:914
|
20 |
msgid "Anti-Malware"
|
21 |
msgstr "Anti-Malware"
|
22 |
|
113 |
msgid "Your changes have been saved."
|
114 |
msgstr "Les modifications ont été enregistrées."
|
115 |
|
116 |
+
#: lib/dashboard.php:132 ninjafirewall.php:892
|
117 |
msgid "Dashboard"
|
118 |
msgstr "Tableau de Bord"
|
119 |
|
347 |
msgid "Centralized Logging"
|
348 |
msgstr "Centralisation des Logs"
|
349 |
|
350 |
+
#: lib/dashboard.php:331 lib/security_rules_update.php:427
|
351 |
#, php-format
|
352 |
msgid "Error: %s"
|
353 |
msgstr "Erreur : %s"
|
356 |
msgid "Source IP"
|
357 |
msgstr "IP source"
|
358 |
|
359 |
+
#: lib/dashboard.php:346 lib/dashboard.php:355 lib/dashboard.php:365
|
360 |
+
#: lib/firewall_policies.php:755
|
361 |
+
msgid ""
|
362 |
+
"In the Premium version of NinjaFirewall, you can use the IP Access Control "
|
363 |
+
"section to easily configure all IP address related options (source, "
|
364 |
+
"whitelist, blacklist, rate limiting etc)."
|
365 |
+
msgstr ""
|
366 |
+
"Dans la version Premium de NinjaFirewall, vous pouvez utiliser la section "
|
367 |
+
"Contrôle d'accès par IP pour configurer facilement toutes les options liées "
|
368 |
+
"à l'adresse IP (source, liste blanche, liste noire, limitation de débit, "
|
369 |
+
"etc.)."
|
370 |
+
|
371 |
#: lib/dashboard.php:347
|
372 |
#, php-format
|
373 |
msgid "You have a private IP : %s"
|
463 |
msgid "Help & configuration"
|
464 |
msgstr "Aide & configuration"
|
465 |
|
466 |
+
#: lib/dashboard.php:515
|
467 |
+
msgid "Cannot check if the PHP INI file is readable: connection error"
|
468 |
+
msgstr ""
|
469 |
+
"Impossible de vérifier si le fichier PHP INI est protégé : erreur de "
|
470 |
+
"connexion"
|
471 |
+
|
472 |
#: lib/dashboard_about.php:29
|
473 |
msgid "Our blog:"
|
474 |
msgstr "Notre blog :"
|
518 |
msgid "Benchmarks"
|
519 |
msgstr "Performances"
|
520 |
|
521 |
+
#: lib/dashboard_statistics.php:106
|
522 |
+
msgid ""
|
523 |
+
"In the Premium version of NinjaFirewall and on compatible servers, you can "
|
524 |
+
"use Unix shared memory to speed up the processing of each HTTP request by "
|
525 |
+
"the firewall."
|
526 |
+
msgstr ""
|
527 |
+
"Dans la version Premium de NinjaFirewall et sur les serveurs compatibles, "
|
528 |
+
"vous pouvez utiliser la mémoire partagée Unix pour accélérer le traitement "
|
529 |
+
"de chaque requête HTTP par le pare-feu."
|
530 |
+
|
531 |
#: lib/dashboard_statistics.php:110
|
532 |
msgid "Average time per request"
|
533 |
msgstr "Durée moyenne par requête"
|
545 |
msgid "Slowest request"
|
546 |
msgstr "Requête la plus lente"
|
547 |
|
548 |
+
#: lib/dashboard_statistics.php:130
|
549 |
msgid "Critical"
|
550 |
msgstr "Critique"
|
551 |
|
552 |
+
#: lib/dashboard_statistics.php:131
|
553 |
msgid "High"
|
554 |
msgstr "Élevé"
|
555 |
|
556 |
+
#: lib/dashboard_statistics.php:132
|
557 |
msgid "Medium"
|
558 |
msgstr "Moyen"
|
559 |
|
561 |
msgid "Select monthly stats to view..."
|
562 |
msgstr "Sélectionnez les statistiques à afficher..."
|
563 |
|
564 |
+
#: lib/email_sodium.php:130
|
565 |
+
msgid "The link you followed has expired."
|
566 |
+
msgstr "Le lien que vous avez suivi a expiré."
|
567 |
+
|
568 |
+
#: lib/email_sodium.php:131 lib/email_sodium.php:184
|
569 |
+
#: lib/logs_firewall_log.php:85
|
570 |
+
msgid "Error"
|
571 |
+
msgstr "Erreur"
|
572 |
+
|
573 |
+
#: lib/email_sodium.php:165 lib/email_sodium.php:203
|
574 |
+
msgid "Email removal confirmation"
|
575 |
+
msgstr "Confirmation de la suppression de l'e-mail"
|
576 |
+
|
577 |
+
#: lib/email_sodium.php:168
|
578 |
+
msgid "Your email address was removed from the \"Event Notifications\" option."
|
579 |
+
msgstr ""
|
580 |
+
"Votre adresse e-mail a été supprimée de l'option \"Notifications d'Événement"
|
581 |
+
"\"."
|
582 |
+
|
583 |
+
#: lib/email_sodium.php:169 lib/monitoring_file_check.php:759
|
584 |
+
#: lib/monitoring_file_check.php:761 lib/monitoring_file_check.php:781
|
585 |
+
#: lib/monitoring_file_check.php:783 lib/security_rules_update.php:559
|
586 |
+
#: lib/security_rules_update.php:561 lib/utils.php:225 lib/utils.php:306
|
587 |
+
#: lib/utils.php:425 lib/utils.php:1038 lib/utils.php:1212 lib/utils.php:1484
|
588 |
+
msgid "Blog:"
|
589 |
+
msgstr "Blog :"
|
590 |
+
|
591 |
+
#: lib/email_sodium.php:170
|
592 |
+
msgid "Email address:"
|
593 |
+
msgstr "Adresse e-mail :"
|
594 |
+
|
595 |
+
#: lib/email_sodium.php:171 lib/utils.php:230 lib/utils.php:310
|
596 |
+
#: lib/utils.php:427 lib/utils.php:1220 lib/utils.php:1485
|
597 |
+
msgid "User IP:"
|
598 |
+
msgstr "IP utilisateur :"
|
599 |
+
|
600 |
+
#: lib/email_sodium.php:172 lib/event_updates.php:157 lib/utils.php:233
|
601 |
+
#: lib/utils.php:313 lib/utils.php:430 lib/utils.php:1039 lib/utils.php:1223
|
602 |
+
#: lib/utils.php:1488
|
603 |
+
msgid "Date:"
|
604 |
+
msgstr "Date :"
|
605 |
+
|
606 |
+
#: lib/email_sodium.php:183
|
607 |
+
msgid "Error, your resquest cannot be processed."
|
608 |
+
msgstr "Désolé, votre requête ne peut pas aboutir."
|
609 |
+
|
610 |
+
#: lib/email_sodium.php:197
|
611 |
+
msgid ""
|
612 |
+
"If you want to remove your email address from the Event Notifications "
|
613 |
+
"option, click the button below. If the operation is successful, a "
|
614 |
+
"confirmation email will be sent to you."
|
615 |
+
msgstr ""
|
616 |
+
"Si vous souhaitez supprimer votre adresse e-mail de l'option Notifications "
|
617 |
+
"d'Événement, cliquez sur le bouton ci-dessous. Si l'opération réussi, un e-"
|
618 |
+
"mail de confirmation vous sera envoyé."
|
619 |
+
|
620 |
+
#: lib/email_sodium.php:199 lib/event_notifications.php:154
|
621 |
+
#: lib/event_notifications.php:166 lib/firewall_options.php:78
|
622 |
+
#: lib/firewall_options.php:113 lib/firewall_policies.php:25
|
623 |
+
#: lib/login_protection.php:309 lib/login_protection.php:324
|
624 |
+
#: lib/login_protection.php:345 lib/login_protection.php:352 lib/network.php:70
|
625 |
+
msgid "Yes"
|
626 |
+
msgstr "Oui"
|
627 |
+
|
628 |
+
#: lib/email_sodium.php:201 lib/event_notifications.php:154
|
629 |
+
#: lib/event_notifications.php:166 lib/firewall_options.php:78
|
630 |
+
#: lib/firewall_options.php:113 lib/firewall_policies.php:26
|
631 |
+
#: lib/login_protection.php:309 lib/login_protection.php:324
|
632 |
+
#: lib/login_protection.php:345 lib/login_protection.php:352 lib/network.php:70
|
633 |
+
msgid "No"
|
634 |
+
msgstr "Non"
|
635 |
+
|
636 |
+
#: lib/event_notifications.php:34 lib/help.php:377 ninjafirewall.php:922
|
637 |
msgid "Event Notifications"
|
638 |
msgstr "Notifications d'Événement"
|
639 |
|
755 |
msgid "Send me a daily activity report"
|
756 |
msgstr "Envoyer un rapport d'activité quotidien"
|
757 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
758 |
#: lib/event_notifications.php:161
|
759 |
msgid "Log"
|
760 |
msgstr "Journal"
|
825 |
msgid "Save Event Notifications"
|
826 |
msgstr "Sauvegarder les options"
|
827 |
|
828 |
+
#: lib/event_notifications.php:476
|
829 |
msgid "[NinjaFirewall] Daily Activity Report"
|
830 |
msgstr "[NinjaFirewall] Rapport d'activité quotidien"
|
831 |
|
832 |
+
#: lib/event_notifications.php:486
|
833 |
#, php-format
|
834 |
msgid "Daily activity report for: %s"
|
835 |
msgstr "Rapport d'activité quotidien pour : %s"
|
836 |
|
837 |
+
#: lib/event_notifications.php:487
|
838 |
msgid "Date Range Processed: Yesterday"
|
839 |
msgstr "Plage de date traitée : Hier"
|
840 |
|
841 |
+
#: lib/event_notifications.php:489
|
842 |
msgid "Blocked threats:"
|
843 |
msgstr "Menaces bloquées :"
|
844 |
|
845 |
+
#: lib/event_notifications.php:491
|
846 |
msgid "critical:"
|
847 |
msgstr "Critique :"
|
848 |
|
849 |
+
#: lib/event_notifications.php:492
|
850 |
msgid "high:"
|
851 |
msgstr "Élevé :"
|
852 |
|
853 |
+
#: lib/event_notifications.php:493
|
854 |
msgid "medium:"
|
855 |
msgstr "Moyen :"
|
856 |
|
857 |
+
#: lib/event_notifications.php:495
|
858 |
msgid "Blocked brute-force attacks:"
|
859 |
msgstr "Attaques par force brute bloquées :"
|
860 |
|
861 |
+
#: lib/event_notifications.php:496 lib/event_updates.php:219 lib/utils.php:1050
|
862 |
msgid ""
|
863 |
"This notification can be turned off from NinjaFirewall \"Event Notifications"
|
864 |
"\" page."
|
866 |
"Cette notification peut être désactivée depuis la page \"Notifications "
|
867 |
"d’Événement\" de NinjaFirewall."
|
868 |
|
869 |
+
#: lib/event_updates.php:53
|
870 |
+
msgid "Downloaded security rules are corrupted"
|
871 |
+
msgstr "Le fichier des règles du pare-feu téléchargé est corrompu"
|
872 |
+
|
873 |
+
#: lib/event_updates.php:154
|
874 |
msgid "[NinjaFirewall] Warning: Security update available"
|
875 |
msgstr "[NinjaFirewall] Mise à jour de sécurité en attente"
|
876 |
|
877 |
+
#: lib/event_updates.php:156
|
878 |
msgid ""
|
879 |
"NinjaFirewall has detected that there are security updates available for "
|
880 |
"your website:"
|
882 |
"NinjaFirewall a détecté que des mises à jour de sécurité sont disponibles "
|
883 |
"pour votre site Web :"
|
884 |
|
885 |
+
#: lib/event_updates.php:160 lib/event_updates.php:162
|
|
|
|
|
|
|
|
|
|
|
886 |
#, php-format
|
887 |
msgid "Blog: %s"
|
888 |
msgstr "Blog : %s"
|
889 |
|
890 |
+
#: lib/event_updates.php:168 lib/event_updates.php:184
|
891 |
+
#: lib/event_updates.php:203
|
892 |
#, php-format
|
893 |
msgid "Your version: %s"
|
894 |
msgstr "Votre version : %s"
|
895 |
|
896 |
+
#: lib/event_updates.php:169 lib/event_updates.php:185
|
897 |
+
#: lib/event_updates.php:204
|
898 |
#, php-format
|
899 |
msgid "New version: %s"
|
900 |
msgstr "Nouvelle version : %s"
|
901 |
|
902 |
+
#: lib/event_updates.php:171 lib/event_updates.php:188
|
903 |
+
#: lib/event_updates.php:207
|
904 |
msgid "Severity: This is an important security update"
|
905 |
msgstr "Sévérité : Ceci est une mise à jour de sécurité importante"
|
906 |
|
907 |
+
#: lib/event_updates.php:173 lib/event_updates.php:190
|
908 |
+
#: lib/event_updates.php:209
|
909 |
msgid "Severity: **This is a critical security update**"
|
910 |
msgstr "Sévérité : **Ceci est une mise à jour de sécurité critique**"
|
911 |
|
912 |
+
#: lib/event_updates.php:175 lib/event_updates.php:192
|
913 |
+
#: lib/event_updates.php:211
|
914 |
msgid "Type: Security fix"
|
915 |
msgstr "Type : Correctif de sécurité"
|
916 |
|
917 |
+
#: lib/event_updates.php:183
|
918 |
#, php-format
|
919 |
msgid "Plugin: %s"
|
920 |
msgstr "Extension : %s"
|
921 |
|
922 |
+
#: lib/event_updates.php:202
|
923 |
#, php-format
|
924 |
msgid "Theme: %s"
|
925 |
msgstr "Theme : %s"
|
926 |
|
927 |
+
#: lib/event_updates.php:217 lib/utils.php:1566
|
928 |
msgid "Don't leave your blog at risk, make sure to update as soon as possible."
|
929 |
msgstr ""
|
930 |
"Ne laissez pas votre blog en danger, lancez cette mise à jour dès que "
|
931 |
"possible."
|
932 |
|
933 |
+
#: lib/event_updates.php:243
|
934 |
+
msgid "Cannot download security rules: connection error"
|
935 |
+
msgstr "Impossible de télécharger les règles du pare-feu : erreur de connexion"
|
936 |
+
|
937 |
+
#: lib/event_updates.php:249
|
938 |
+
#, php-format
|
939 |
+
msgid "Cannot download security rules: HTTP response error %s"
|
940 |
+
msgstr ""
|
941 |
+
"Impossible de télécharger les règles du pare-feu : code d'erreur HTTP %s"
|
942 |
+
|
943 |
#: lib/events.php:27
|
944 |
msgid "Name:"
|
945 |
msgstr "Nom :"
|
981 |
msgid "uploaded"
|
982 |
msgstr "téléchargé(e)"
|
983 |
|
984 |
+
#: lib/events.php:195
|
985 |
#, php-format
|
986 |
msgid "[NinjaFirewall] Alert: %s"
|
987 |
msgstr "[NinjaFirewall] Alerte : %s"
|
988 |
|
989 |
+
#: lib/events.php:197 lib/events.php:199 lib/utils.php:787
|
990 |
msgid "-Blog:"
|
991 |
msgstr "- Blog :"
|
992 |
|
993 |
+
#: lib/events.php:202
|
994 |
msgid "NinjaFirewall has detected the following activity on your account:"
|
995 |
msgstr "NinjaFirewall a détecté l'activité suivante sur votre compte :"
|
996 |
|
997 |
+
#: lib/events.php:204 lib/utils.php:792
|
998 |
msgid "-User:"
|
999 |
msgstr "- Nom :"
|
1000 |
|
1001 |
+
#: lib/events.php:205 lib/utils.php:793
|
1002 |
msgid "-IP:"
|
1003 |
msgstr "- IP :"
|
1004 |
|
1005 |
+
#: lib/events.php:206 lib/utils.php:794
|
1006 |
msgid "-Date:"
|
1007 |
msgstr "-Date :"
|
1008 |
|
1009 |
+
#: lib/firewall_options.php:29 ninjafirewall.php:896
|
1010 |
msgid "Firewall Options"
|
1011 |
msgstr "Options du Pare-feu"
|
1012 |
|
1155 |
msgid "There are no backup available yet, check back later."
|
1156 |
msgstr "Il n'y a pas encore de sauvegarde disponible, revenez plus tard."
|
1157 |
|
1158 |
+
#: lib/firewall_options.php:330
|
1159 |
#, php-format
|
1160 |
msgid "Uploaded file is either corrupted or its format is not supported (#%s)"
|
1161 |
msgstr ""
|
1162 |
"Le fichier importé est illisible ou son format n'est pas supporté (#%s)"
|
1163 |
|
1164 |
+
#: lib/firewall_options.php:366
|
1165 |
msgid "The imported file is not compatible with that version of NinjaFirewall"
|
1166 |
msgstr ""
|
1167 |
"Le fichier importé n'est pas compatible avec cette version de NinjaFirewall"
|
1168 |
|
1169 |
+
#: lib/firewall_options.php:473 ninjafirewall.php:213
|
1170 |
msgid "[NinjaFirewall] Alert: Firewall is disabled"
|
1171 |
msgstr "[NinjaFirewall] Alerte : Le pare-feu a été désactivé"
|
1172 |
|
1173 |
+
#: lib/firewall_options.php:475 lib/firewall_options.php:477
|
1174 |
+
#: ninjafirewall.php:215 ninjafirewall.php:217
|
1175 |
msgid "-Blog :"
|
1176 |
msgstr "- Blog :"
|
1177 |
|
1178 |
+
#: lib/firewall_options.php:481 ninjafirewall.php:219
|
1179 |
msgid "Someone disabled NinjaFirewall from your WordPress admin dashboard:"
|
1180 |
msgstr ""
|
1181 |
"Quelqu'un a désactivé NinjaFirewall depuis votre Tableau de bord de "
|
1182 |
"WordPress :"
|
1183 |
|
1184 |
+
#: lib/firewall_options.php:484
|
1185 |
msgid ""
|
1186 |
"NinjaFirewall is disabled because someone enabled debugging mode from your "
|
1187 |
"WordPress admin dashboard:"
|
1189 |
"NinjaFirewall est désactivé car quelqu'un activé son \"Mode débogage\" "
|
1190 |
"depuis votre tableau de bord de WordPress :"
|
1191 |
|
1192 |
+
#: lib/firewall_options.php:487
|
1193 |
msgid "[NinjaFirewall] Alert: Firewall override settings"
|
1194 |
msgstr "[NinjaFirewall] Alerte : Modification des paramètres du pare-feu"
|
1195 |
|
1196 |
+
#: lib/firewall_options.php:488
|
1197 |
msgid ""
|
1198 |
"Someone imported a new configuration which overrode the firewall settings:"
|
1199 |
msgstr ""
|
1200 |
"Quelqu'un a importé une nouvelle configuration qui a modifié tous les "
|
1201 |
"paramètres du pare-feu :"
|
1202 |
|
1203 |
+
#: lib/firewall_options.php:494 ninjafirewall.php:220
|
1204 |
msgid "-User :"
|
1205 |
msgstr "- Nom :"
|
1206 |
|
1207 |
+
#: lib/firewall_options.php:495 ninjafirewall.php:221
|
1208 |
msgid "-IP :"
|
1209 |
msgstr "- IP :"
|
1210 |
|
1211 |
+
#: lib/firewall_options.php:496 ninjafirewall.php:222
|
1212 |
msgid "-Date :"
|
1213 |
msgstr "- Date :"
|
1214 |
|
1221 |
"Pour utiliser cette option, allez dans le <a href=\"%s\">Tableau de Bord</a> "
|
1222 |
"et activez le mode Full WAF de NinjaFirewall."
|
1223 |
|
1224 |
+
#: lib/firewall_policies.php:62 ninjafirewall.php:900
|
1225 |
msgid "Firewall Policies"
|
1226 |
msgstr "Politiques du Pare-feu"
|
1227 |
|
1269 |
msgid "File Uploads"
|
1270 |
msgstr "Autoriser les téléchargements (uploads)"
|
1271 |
|
1272 |
+
#: lib/firewall_policies.php:144
|
1273 |
+
msgid ""
|
1274 |
+
"In the Premium version of NinjaFirewall, you can allow uploads while "
|
1275 |
+
"rejecting potentially dangerous files, even if they are compressed inside a "
|
1276 |
+
"ZIP archive: scripts (PHP, CGI, Ruby, Python, bash/shell), C/C++ source "
|
1277 |
+
"code, binaries (MZ/PE/NE and ELF formats), system files (.htaccess, ."
|
1278 |
+
"htpasswd and PHP INI) and SVG files containing Javascript/XML events. You "
|
1279 |
+
"can easily limit the size of each uploaded file too, without having to "
|
1280 |
+
"modify your PHP configuration."
|
1281 |
+
msgstr ""
|
1282 |
+
"Dans la version Premium de NinjaFirewall, vous pouvez autoriser ou interdire "
|
1283 |
+
"tout téléchargement de fichier vers votre site, ou bien bloquer uniquement "
|
1284 |
+
"les fichiers potentiellement dangereux, même s'ils sont compresses dans un "
|
1285 |
+
"fichier ZIP : scripts (PHP, CGI, Ruby, Python, bash/shell), code source C/C+"
|
1286 |
+
"+, fichiers exécutables (MZ/PE/NE et ELF), certains fichiers systèmes (."
|
1287 |
+
"htaccess, .htpasswd et PHP INI) et les fichiers SVG contenant du JavaScript "
|
1288 |
+
"ou des Événements XML. Vous pouvez aussi sélectionner la taille maximale "
|
1289 |
+
"d'un fichier téléchargé, sans avoir à modifier la configuration de PHP."
|
1290 |
+
|
1291 |
#: lib/firewall_policies.php:147
|
1292 |
msgid "Allow uploads"
|
1293 |
msgstr "Autoriser"
|
1490 |
msgid "Users Whitelist"
|
1491 |
msgstr "Liste Blanche"
|
1492 |
|
1493 |
+
#: lib/firewall_policies.php:516
|
1494 |
+
msgid ""
|
1495 |
+
"In the Premium version of NinjaFirewall, the Access Control section allows "
|
1496 |
+
"you to whitelist WordPress users depending on their role."
|
1497 |
+
msgstr ""
|
1498 |
+
"Dans la version Premium de NinjaFirewall, la section Contrôle d'Accès vous "
|
1499 |
+
"permet de mettre en liste blanche les utilisateurs de WordPress en fonction "
|
1500 |
+
"de leurs rôle."
|
1501 |
+
|
1502 |
#: lib/firewall_policies.php:518
|
1503 |
msgid "Add the Administrator to the whitelist (default)."
|
1504 |
msgstr "Ajouter l'Administrateur à la liste blanche (défaut)."
|
1594 |
msgid "Block suspicious bots/scanners"
|
1595 |
msgstr "Bloquer les requêtes provenant de bots/scanners malveillants"
|
1596 |
|
1597 |
+
#: lib/firewall_policies.php:687
|
1598 |
+
msgid ""
|
1599 |
+
"In the Premium version of NinjaFirewall, the Bot Access Control section "
|
1600 |
+
"allows you to select, edit, add and remove bots."
|
1601 |
+
msgstr ""
|
1602 |
+
"Dans la version Premium de NinjaFirewall, la section Bot Access Control vous "
|
1603 |
+
"permet de sélectionner, modifier, ajouter et supprimer les bots."
|
1604 |
+
|
1605 |
#: lib/firewall_policies.php:713 lib/help.php:240
|
1606 |
msgid "HTTP_REFERER server variable"
|
1607 |
msgstr "Variable HTTP_REFERER"
|
2985 |
"intercepter les requêtes HTTP envoyées à tout script PHP, même si ce dernier "
|
2986 |
"ne fait pas partie de WordPress (logiciel tiers, backdoor, etc)."
|
2987 |
|
2988 |
+
#: lib/help.php:360 lib/network.php:32 ninjafirewall.php:918
|
2989 |
msgid "Network"
|
2990 |
msgstr "Réseau"
|
2991 |
|
3038 |
"après avoir pénétré dans votre Tableau de bord de WordPress, d'y installer "
|
3039 |
"une porte dérobée (backdoor) afin de prendre le contrôle de votre blog."
|
3040 |
|
3041 |
+
#: lib/help.php:389 lib/login_protection.php:21 ninjafirewall.php:926
|
3042 |
msgid "Login Protection"
|
3043 |
msgstr "Page de Connexion"
|
3044 |
|
4181 |
msgid "Low (default)"
|
4182 |
msgstr "Bas (défaut)"
|
4183 |
|
4184 |
+
#: lib/i18n-extra.php:126
|
4185 |
msgid ""
|
4186 |
"If you are using a caching plugin, consult the contextual help before "
|
4187 |
"enabling the antispam."
|
4189 |
"Si vous utilisez une extension de mise en cache, veuillez consulter l'aide "
|
4190 |
"contextuelle avant d'activer l'anti-spam."
|
4191 |
|
4192 |
+
#: lib/i18n-extra.php:127
|
4193 |
msgid "Apply protection to"
|
4194 |
msgstr "Appliquer la protection au"
|
4195 |
|
4196 |
+
#: lib/i18n-extra.php:128
|
4197 |
msgid "Comment forms (defaut)"
|
4198 |
msgstr "Formulaire de commentaire (défaut)"
|
4199 |
|
4200 |
+
#: lib/i18n-extra.php:129
|
4201 |
msgid "User Registration form"
|
4202 |
msgstr "Formulaire d'inscription"
|
4203 |
|
4204 |
+
#: lib/i18n-extra.php:130
|
4205 |
msgid "Save Antispam options"
|
4206 |
msgstr "Sauvegarder les options"
|
4207 |
|
4208 |
+
#: lib/i18n-extra.php:131
|
4209 |
msgid "Please enable JavaScript"
|
4210 |
msgstr "Veuillez activer JavaScript"
|
4211 |
|
4212 |
+
#: lib/i18n-extra.php:132
|
4213 |
msgid "Sorry, this looks like spam to me."
|
4214 |
msgstr "Désolé, mais cela ressemble à du spam."
|
4215 |
|
4216 |
+
#: lib/i18n-extra.php:133
|
4217 |
msgid ""
|
4218 |
"Error: You must be whitelisted in order to use that feature: click on the <a "
|
4219 |
"href=\"?page=nfsubaccess\">Access Control</a> menu and ensure that the \"Do "
|
4224 |
"et assurez vous que l'option \"Ne pas bloquer les utilisateurs suivants\" "
|
4225 |
"est activée pour l'Administrateur/Super Admin."
|
4226 |
|
4227 |
+
#: lib/i18n-extra.php:134
|
4228 |
msgid ""
|
4229 |
"Your license is valid until the indicated expiration date. If you don't "
|
4230 |
"renew it after this date, NinjaFirewall will keep working and protecting "
|
4235 |
"et à protéger votre site comme d'habitude, mais les mises à jour / mises à "
|
4236 |
"niveau ne pourront plus être effectuées."
|
4237 |
|
4238 |
+
#: lib/i18n-extra.php:135
|
4239 |
#, php-format
|
4240 |
msgid ""
|
4241 |
"You can renew your license from <a href=\"%s\">NinTechNet.com</a> website."
|
4243 |
"Vous pouvez renouveler votre licence depuis le site <a href=\"%s"
|
4244 |
"\">NinTechNet.com</a>."
|
4245 |
|
4246 |
+
#: lib/i18n-extra.php:136
|
4247 |
msgid "Use shared memory"
|
4248 |
msgstr "Utiliser la mémoire partagée"
|
4249 |
|
4250 |
+
#: lib/i18n-extra.php:137
|
4251 |
msgid ""
|
4252 |
"This feature allows NinjaFirewall to use Unix shared memory segments in "
|
4253 |
"order to speed up all operations. The firewall will no longer need to "
|
4266 |
"réseau multi-site, la vitesse de traitement de pare-feu va augmenter de 25% "
|
4267 |
"à 30%."
|
4268 |
|
4269 |
+
#: lib/i18n-extra.php:138
|
4270 |
msgid ""
|
4271 |
"This option requires that your PHP version was compiled with the <code>--"
|
4272 |
"enable-shmop</code> parameter, otherwise, if it is not compatible with your "
|
4275 |
"Cette fonction nécessite que PHP soit compilé avec le paramètre <code>--"
|
4276 |
"enable-shmop</code>."
|
4277 |
|
4278 |
+
#: lib/i18n-extra.php:139
|
4279 |
#, php-format
|
4280 |
msgid ""
|
4281 |
"If you are using <a href=\"%s\">GB2312</a> character set (A.K.A <code>GBK</"
|
4290 |
"être en mesure de nettoyer correctement les caractères multi-octets, car il "
|
4291 |
"n'aura pas accès à la base de données."
|
4292 |
|
4293 |
+
#: lib/i18n-extra.php:140
|
4294 |
msgid "Language"
|
4295 |
msgstr "Langue"
|
4296 |
|
4297 |
+
#: lib/i18n-extra.php:141
|
4298 |
msgid ""
|
4299 |
"When this option is enabled, NinjaFirewall will download, if available, the "
|
4300 |
"corresponding language files from the WordPress repo. Then, every hour, it "
|
4305 |
"les heures, il vérifiera s'il existe une nouvelle version et la téléchargera "
|
4306 |
"le cas échéant."
|
4307 |
|
4308 |
+
#: lib/i18n-extra.php:142
|
4309 |
msgid ""
|
4310 |
"Note that this does not apply to <code>en_US</code> and <code>fr_FR</code> "
|
4311 |
"locales because they are already included with NinjaFirewall."
|
4313 |
"Notez que cela ne s'applique pas aux locales <code>en_US</code> et "
|
4314 |
"<code>fr_FR</code> car elles sont déjà incluses avec NinjaFirewall."
|
4315 |
|
4316 |
+
#: lib/i18n-extra.php:143
|
4317 |
#, php-format
|
4318 |
msgid ""
|
4319 |
"This options lets you export you current configuration or import it from "
|
4327 |
"(%s), sinon il sera rejeté. Notez que l'importation effacera toute votre "
|
4328 |
"configuration (options et règles du pare-feu), sauf votre licence WP+."
|
4329 |
|
4330 |
+
#: lib/i18n-extra.php:144
|
4331 |
msgid ""
|
4332 |
"You can allow/disallow uploads, or allow uploads but block scripts (PHP, "
|
4333 |
"CGI, Ruby, Python, bash/shell, JavaScript), C/C++ source code, binaries (MZ/"
|
4341 |
"systèmes (.htaccess, .htpasswd et PHP INI) et les fichiers SVG contenant du "
|
4342 |
"Javascript ou des Événements XML."
|
4343 |
|
4344 |
+
#: lib/i18n-extra.php:145
|
4345 |
msgid "Maximum allowed file size"
|
4346 |
msgstr "Taille maximale autorisée"
|
4347 |
|
4348 |
+
#: lib/i18n-extra.php:146
|
4349 |
msgid ""
|
4350 |
"If you allow uploads, you can select the maximum size of an uploaded file. "
|
4351 |
"Any file bigger than this value will be rejected. Note that if your PHP "
|
4357 |
"configuration de PHP utilise la directive<code>upload_max_filesize</code>, "
|
4358 |
"celle-ci sera prioritaire."
|
4359 |
|
4360 |
+
#: lib/i18n-extra.php:147
|
4361 |
msgid "Decode Base64-encoded <code>POST</code> variable:"
|
4362 |
msgstr ""
|
4363 |
"Décoder les chaîne encodées en Base64 dans la variable <code>POST</"
|
4364 |
"code> :"
|
4365 |
|
4366 |
+
#: lib/i18n-extra.php:148
|
4367 |
#, php-format
|
4368 |
msgid ""
|
4369 |
"Object Serialization is a PHP feature used by many applications to generate "
|
4382 |
"<code>POST</code>, les cookies, ou dans les variables <code>HTTP_REFERER</"
|
4383 |
"code> et <code>HTTP_USER_AGENT</code>."
|
4384 |
|
4385 |
+
#: lib/i18n-extra.php:149
|
4386 |
msgid ""
|
4387 |
"This option will reject any <code>GET</code> or <code>POST</code> request, "
|
4388 |
"<code>COOKIE</code>, <code>HTTP_USER_AGENT</code>, <code>REQUEST_URI</code>, "
|
4396 |
"contenant le caractère ASCI 0x00 (NULL byte) sera bloquée immédiatement. Ce "
|
4397 |
"caractère est dangereux et devrait toujours être rejeté."
|
4398 |
|
4399 |
+
#: lib/i18n-extra.php:150
|
4400 |
msgid ""
|
4401 |
"This option will block any <code>GET</code> or <code>POST</code> request "
|
4402 |
"containing the localhost IP (127.0.0.1). It can be useful to block SQL "
|
4407 |
"les programmes malveillants. Attention toutefois à ne pas bloquer certains "
|
4408 |
"scripts d'installation ou de configuration si vous l'activez."
|
4409 |
|
4410 |
+
#: lib/i18n-extra.php:151
|
4411 |
msgid ""
|
4412 |
"Access Control is a powerful set of directives that can be used to allow or "
|
4413 |
"restrict access to your website based on many criteria."
|
4416 |
"utilisé pour autoriser ou restreindre l'accès à votre site selon de nombreux "
|
4417 |
"critères."
|
4418 |
|
4419 |
+
#: lib/i18n-extra.php:152
|
4420 |
msgid ""
|
4421 |
"To make better use of them, it is important to understand NinjaFirewall's "
|
4422 |
"directives processing order."
|
4424 |
"Afin de pouvoir optimiser son utilisation, il est important de bien "
|
4425 |
"comprendre l'ordre dans lequel NinjaFirewall traite ces directives."
|
4426 |
|
4427 |
+
#: lib/i18n-extra.php:153
|
4428 |
msgid ""
|
4429 |
"Because NinjaFirewall is a PHP firewall, its Access Control options apply to "
|
4430 |
"PHP scripts, not to static elements (e.g., images, JS, CSS etc). Depending "
|
4435 |
"(images, JS, CSS, etc). Selon votre configuration, elle peuvent également "
|
4436 |
"s'appliquer aux pages HTML."
|
4437 |
|
4438 |
+
#: lib/i18n-extra.php:154
|
4439 |
msgid "Processing order:"
|
4440 |
msgstr "Ordre de traitement des directives :"
|
4441 |
|
4442 |
+
#: lib/i18n-extra.php:155
|
4443 |
msgid "Incoming HTTP request"
|
4444 |
msgstr "Requête HTTP entrante"
|
4445 |
|
4446 |
+
#: lib/i18n-extra.php:156
|
4447 |
#, php-format
|
4448 |
msgid "%s file"
|
4449 |
msgstr "Fichier %s"
|
4450 |
|
4451 |
+
#: lib/i18n-extra.php:157
|
4452 |
msgid "Login Protection."
|
4453 |
msgstr "Page de Connexion."
|
4454 |
|
4455 |
+
#: lib/i18n-extra.php:158
|
4456 |
msgid "Access Control (except User Input Access Control):"
|
4457 |
msgstr "Contrôle d'Accès (sauf Contrôle d'accès d'entrée utilisateur) :"
|
4458 |
|
4459 |
+
#: lib/i18n-extra.php:159
|
4460 |
msgid "Role-based Access Control."
|
4461 |
msgstr "Contrôle d'Accès par Rôle."
|
4462 |
|
4463 |
+
#: lib/i18n-extra.php:160
|
4464 |
msgid "Allowed IPs."
|
4465 |
msgstr "Adresses IP autorisées."
|
4466 |
|
4467 |
+
#: lib/i18n-extra.php:161
|
4468 |
msgid "Blocked IPs."
|
4469 |
msgstr "Adresses IP bloquées."
|
4470 |
|
4471 |
+
#: lib/i18n-extra.php:162
|
4472 |
msgid "Allowed URLs."
|
4473 |
msgstr "URL autorisées."
|
4474 |
|
4475 |
+
#: lib/i18n-extra.php:163
|
4476 |
msgid "Blocked URLs."
|
4477 |
msgstr "URL bloquées."
|
4478 |
|
4479 |
+
#: lib/i18n-extra.php:164
|
4480 |
msgid "Bot Access Control."
|
4481 |
msgstr "Contrôle d'accès par Bot."
|
4482 |
|
4483 |
+
#: lib/i18n-extra.php:165
|
4484 |
msgid "Geolocation."
|
4485 |
msgstr "Géolocalisation."
|
4486 |
|
4487 |
+
#: lib/i18n-extra.php:166
|
4488 |
msgid "Rate Limiting."
|
4489 |
msgstr "Limitation du trafic."
|
4490 |
|
4491 |
+
#: lib/i18n-extra.php:167
|
4492 |
msgid "File Guard."
|
4493 |
msgstr "File Guard."
|
4494 |
|
4495 |
+
#: lib/i18n-extra.php:168
|
4496 |
msgid "NinjaFirewall built-in rules and policies + User Input Access Control."
|
4497 |
msgstr ""
|
4498 |
"Règles et politiques du pare-feu + Contrôle d'accès d'entrée utilisateur."
|
4499 |
|
4500 |
+
#: lib/i18n-extra.php:169
|
4501 |
msgid "Response body"
|
4502 |
msgstr "Requête HTTP sortante"
|
4503 |
|
4504 |
+
#: lib/i18n-extra.php:170
|
4505 |
msgid "HTTP response headers (Firewall Policies)."
|
4506 |
msgstr "En-têtes de réponse HTTP (Politiques du Pare-feu)."
|
4507 |
|
4508 |
+
#: lib/i18n-extra.php:171
|
4509 |
msgid "Web Filter."
|
4510 |
msgstr "Web Filter."
|
4511 |
|
4512 |
+
#: lib/i18n-extra.php:172
|
4513 |
#, php-format
|
4514 |
msgid ""
|
4515 |
"By default, any logged in WordPress administrator will not be blocked by "
|
4528 |
"options de la <a href=\"%s\">Page de Connexion</a> qui, si elle sont "
|
4529 |
"activées, seront toujours appliquées."
|
4530 |
|
4531 |
+
#: lib/i18n-extra.php:173
|
4532 |
msgid "You can also add other users to the whitelist, depending on their role."
|
4533 |
msgstr ""
|
4534 |
"Vous pouvez ajouter d'autres utilisateurs à votre liste blanche en se basant "
|
4535 |
"sur leur Rôle."
|
4536 |
|
4537 |
+
#: lib/i18n-extra.php:174
|
4538 |
#, php-format
|
4539 |
msgid ""
|
4540 |
"this option should be used if you are behind a reverse proxy, a load "
|
4558 |
"sera vérifiée. Si elle ne comprend aucune IP utilisable, NinjaFirewall "
|
4559 |
"utilisera <code>REMOTE_ADDR</code>."
|
4560 |
|
4561 |
+
#: lib/i18n-extra.php:175
|
4562 |
msgid ""
|
4563 |
"This option lets you select the HTTP method(s). All Access Control "
|
4564 |
"directives (Geolocation, IPs, bots and URLs) will only apply to the selected "
|
4568 |
"Contrôle d'Accès (Geolocalisation, IP, bots et URL) ne s'appliqueront qu'aux "
|
4569 |
"méthodes sélectionnées."
|
4570 |
|
4571 |
+
#: lib/i18n-extra.php:176
|
4572 |
msgid ""
|
4573 |
"It does not apply to the \"Firewall Policies\" options, which use their own "
|
4574 |
"ones."
|
4575 |
msgstr "Cette option ne concerne pas les \"Politiques du Pare-feu\"."
|
4576 |
|
4577 |
+
#: lib/i18n-extra.php:177
|
4578 |
msgid ""
|
4579 |
"You can filter and block traffic coming from specific countries/territories."
|
4580 |
msgstr ""
|
4581 |
"Vous pouvez filtrer et bloquer le trafic en provenance de pays ou "
|
4582 |
"territoires spécifiques."
|
4583 |
|
4584 |
+
#: lib/i18n-extra.php:178
|
4585 |
msgid ""
|
4586 |
"This is the two-letter code that is used to define a country/territory (e."
|
4587 |
"g., US, UK, FR, DE etc), based on the visitors IP. NinjaFirewall can either "
|
4594 |
"données, ou à partir d'une variable PHP prédéfinie ajoutée par votre serveur "
|
4595 |
"HTTP (par exemple, <code>GEOIP_COUNTRY_CODE</code>)."
|
4596 |
|
4597 |
+
#: lib/i18n-extra.php:179
|
4598 |
#, php-format
|
4599 |
msgid ""
|
4600 |
"You can add/remove any country/territory from the two listboxes. For more "
|
4606 |
"spécifiques (A1, A2, AP, EU etc),vous pouvez consulter l'aide en ligne de <a "
|
4607 |
"href=\"%s\">MaxMind GeoIP</a>."
|
4608 |
|
4609 |
+
#: lib/i18n-extra.php:180
|
4610 |
msgid ""
|
4611 |
"Whether geolocation should apply to the whole site or to specific URLs only "
|
4612 |
"(e.g., /wp-login.php, /xmlrpc.php etc). Leave all fields empty if you want "
|
4616 |
"uniquement (ex: /wp-login.php, /xmlrpc.php etc). Laissez ce champ vide pour "
|
4617 |
"l'appliquer à tout le site."
|
4618 |
|
4619 |
+
#: lib/i18n-extra.php:181
|
4620 |
msgid "Add <code>NINJA_COUNTRY_CODE</code> to PHP headers?"
|
4621 |
msgstr "Ajouter <code>NINJA_COUNTRY_CODE</code> aux en-têtes PHP?"
|
4622 |
|
4623 |
+
#: lib/i18n-extra.php:182
|
4624 |
msgid ""
|
4625 |
"After retrieving the two-letter country/territory code, NinjaFirewall can "
|
4626 |
"add it to the PHP headers in the <code>$_SERVER[\"NINJA_COUNTRY_CODE\"]</"
|
4632 |
"code>. Si vous avez une application PHP qui nécessite de géolocaliser vos "
|
4633 |
"visiteurs, activez cette option."
|
4634 |
|
4635 |
+
#: lib/i18n-extra.php:183
|
4636 |
msgid ""
|
4637 |
"If NinjaFirewall cannot find the two-letter ISO 3166 code, it will replace "
|
4638 |
"it with 2 hyphens (<code>--</code>)."
|
4640 |
"Si NinjaFirewall ne peut pas identifier le code à deux lettres ISO 3166, il "
|
4641 |
"le remplacera par deux traits d'union (<code>--</code>)."
|
4642 |
|
4643 |
+
#: lib/i18n-extra.php:184
|
4644 |
msgid ""
|
4645 |
"PHP code example to use in your theme or plugin to geolocate your visitors:"
|
4646 |
msgstr ""
|
4647 |
"Exemple de code PHP à ajouter à vos scripts pour géolocaliser vos visiteurs :"
|
4648 |
|
4649 |
+
#: lib/i18n-extra.php:185
|
4650 |
msgid ""
|
4651 |
"NinjaFirewall includes GeoLite data created by MaxMind, available from "
|
4652 |
"http://www.maxmind.com"
|
4654 |
"NinjaFirewall includes GeoLite data created by MaxMind, available from "
|
4655 |
"http://www.maxmind.com"
|
4656 |
|
4657 |
+
#: lib/i18n-extra.php:186
|
4658 |
msgid "IP / URL / Bot Access Control"
|
4659 |
msgstr "Contrôle d'Accès par IP / URL / Bots"
|
4660 |
|
4661 |
+
#: lib/i18n-extra.php:187
|
4662 |
msgid ""
|
4663 |
"You can permanently allow/block an IP, a whole range of IP addresses or AS "
|
4664 |
"numbers (Autonomous System number). IPv4 and IPv6 are fully supported by "
|
4668 |
"numéro AS (Autonomous System). NinjaFirewall est compatible avec l'IPv4 et "
|
4669 |
"l'IPv6."
|
4670 |
|
4671 |
+
#: lib/i18n-extra.php:188
|
4672 |
msgid "Full IP:"
|
4673 |
msgstr "IP complète :"
|
4674 |
|
4675 |
+
#: lib/i18n-extra.php:189
|
4676 |
#, php-format
|
4677 |
msgid "IP ranges using CIDR notation: %s or %s."
|
4678 |
msgstr "Plages IP utilisant la notation CIDR : %s ou %s."
|
4679 |
|
4680 |
+
#: lib/i18n-extra.php:190
|
4681 |
msgid "Autonomous System number:"
|
4682 |
msgstr "Numéro AS (Autonomous System) :"
|
4683 |
|
4684 |
+
#: lib/i18n-extra.php:191
|
4685 |
msgid ""
|
4686 |
"This option allows you to slow down aggressive bots, crawlers, web scrapers "
|
4687 |
"or even small HTTP attacks. Any IP reaching the defined threshold will be "
|
4700 |
"adresse IP, utilisez l'option \"Contrôle d'accès par IP\". Par défaut, la "
|
4701 |
"limitation du trafic n'est pas activée."
|
4702 |
|
4703 |
+
#: lib/i18n-extra.php:192
|
4704 |
msgid ""
|
4705 |
"IPs temporarily banned by the Rate Limiting option can be unblocked "
|
4706 |
"immediately by clicking either the \"Save Access Control Directives\" or "
|
4710 |
"débloquées simplement en cliquant sur les boutons \"Sauvegarder les options"
|
4711 |
"\" ou \"Rétablir les valeurs par défaut\" situés en bas de la page."
|
4712 |
|
4713 |
+
#: lib/i18n-extra.php:193
|
4714 |
msgid ""
|
4715 |
"Because NinjaFirewall can handle a lot of HTTP requests per second and block "
|
4716 |
"IPs even before your blog is loaded, we strongly recommend that you disable "
|
4724 |
"seconde, NinjaFirewall vous fera économiser de la bande passante et "
|
4725 |
"permettra de réduire la charge du serveur."
|
4726 |
|
4727 |
+
#: lib/i18n-extra.php:194
|
4728 |
msgid ""
|
4729 |
"You can permanently allow/block any access to one or more PHP scripts based "
|
4730 |
"on their path, relative to the web root (<code>SCRIPT_NAME</code>). You can "
|
4735 |
"(<code>SCRIPT_NAME</code>). Vous pouvez entrer l'URL complète ou partielle, "
|
4736 |
"sensible à la casse."
|
4737 |
|
4738 |
+
#: lib/i18n-extra.php:195
|
4739 |
msgid ""
|
4740 |
"<code>/foo/bar.php</code> will block any access to the <code>bar.php</code> "
|
4741 |
"script located inside a <code>/foo/</code> directory"
|
4743 |
"<code>/foo/bar.php</code> autorisera/bloquera tout accès au script PHP "
|
4744 |
"<code>bar.php</code> situé dans un répertoire <code>/foo/</code>"
|
4745 |
|
4746 |
+
#: lib/i18n-extra.php:196
|
4747 |
msgid "etc"
|
4748 |
msgstr "etc"
|
4749 |
|
4750 |
+
#: lib/i18n-extra.php:197
|
4751 |
msgid ""
|
4752 |
"<code>/foo/</code> will block access to all PHP scripts located inside a "
|
4753 |
"<code>/foo/</code> directory and its sub-directories."
|
4755 |
"<code>/foo/</code> autorisera/bloquera l'accès à tous les scripts PHP situés "
|
4756 |
"dans un répertoire <code>/foo/</code> et ses sous-répertoires."
|
4757 |
|
4758 |
+
#: lib/i18n-extra.php:198
|
4759 |
msgid ""
|
4760 |
"Note that the \"Firewall Policies\" page already includes restrictions to "
|
4761 |
"some WordPress directories."
|
4763 |
"Notez que le menu des \"Politiques du pare-feu\" comporte déjà des "
|
4764 |
"restrictions à certains répertoires de WordPress."
|
4765 |
|
4766 |
+
#: lib/i18n-extra.php:199
|
4767 |
msgid ""
|
4768 |
"You can block bots, scanners and various crawlers based on the "
|
4769 |
"<code>HTTP_USER_AGENT</code> variable. You can enter either a full or "
|
4773 |
"nom (<code>HTTP_USER_AGENT</code>) ou partie de celui-ci. La chaîne de "
|
4774 |
"caractères est insensible à la casse."
|
4775 |
|
4776 |
+
#: lib/i18n-extra.php:200
|
4777 |
msgid ""
|
4778 |
"You can select to ignore or block some specific user input. It applies to "
|
4779 |
"the <code>GET</code>, <code>POST</code> and <code>COOKIE</code> global "
|
4785 |
"<code>COOKIE</code>, par exemple <code>$_GET[\"foo\"]</code> ou <code>"
|
4786 |
"$_POST[\"bar\"]</code> :"
|
4787 |
|
4788 |
+
#: lib/i18n-extra.php:201
|
4789 |
msgid ""
|
4790 |
"When an input is added to the \"Unfiltered input\" list, it will not be "
|
4791 |
"filtered or sanitised. All other input present in the request will be "
|
4795 |
"sera ni filtrée ni nettoyée. Toutes les autres entrées présentes dans la "
|
4796 |
"demande seront filtrées."
|
4797 |
|
4798 |
+
#: lib/i18n-extra.php:202
|
4799 |
msgid ""
|
4800 |
"When an input is added to the \"Blocked input\", NinjaFirewall will block "
|
4801 |
"the request and close the connection if that input is found in the request."
|
4804 |
"bloquera la requête et fermera la connexion si cette entrée est présente "
|
4805 |
"dans la requête."
|
4806 |
|
4807 |
+
#: lib/i18n-extra.php:203
|
4808 |
msgid "Log Event"
|
4809 |
msgstr "Journaliser"
|
4810 |
|
4811 |
+
#: lib/i18n-extra.php:204
|
4812 |
msgid ""
|
4813 |
"You can enable/disable firewall logging for each access control directive "
|
4814 |
"separately."
|
4816 |
"Vous pouvez activer/désactiver la journalisation des directives "
|
4817 |
"indépendamment les unes des autres."
|
4818 |
|
4819 |
+
#: lib/i18n-extra.php:205
|
4820 |
msgid "Web Filter"
|
4821 |
msgstr "Web Filter"
|
4822 |
|
4823 |
+
#: lib/i18n-extra.php:206
|
4824 |
msgid ""
|
4825 |
"If NinjaFirewall can hook and scan incoming requests, it can also hook the "
|
4826 |
"response body (i.e., the output of the HTML page right before it is sent to "
|
4837 |
"etc), des scripts utilisés par les hackers (shell, backdoor) et même des "
|
4838 |
"erreurs (PHP, MySQL)."
|
4839 |
|
4840 |
+
#: lib/i18n-extra.php:207
|
4841 |
msgid ""
|
4842 |
"In the case of a positive detection, NinjaFirewall will not block the "
|
4843 |
"response body but will send you an alert by email."
|
4845 |
"En cas de détection positive, NinjaFirewall ne bloquera pas la requête mais "
|
4846 |
"vous enverra immédiatement une alerte par e-mail."
|
4847 |
|
4848 |
+
#: lib/i18n-extra.php:208
|
4849 |
msgid "Search HTML page for the following keywords"
|
4850 |
msgstr "Rechercher les mots suivants dans la page HTML"
|
4851 |
|
4852 |
+
#: lib/i18n-extra.php:209
|
4853 |
msgid ""
|
4854 |
"You can enter any keyword from 4 to 150 characters and select whether the "
|
4855 |
"search will be case sensitive or not."
|
4857 |
"Vous pouvez entrer de 4 à 150 caractères et sélectionner si la recherche est "
|
4858 |
"sensible à la casse."
|
4859 |
|
4860 |
+
#: lib/i18n-extra.php:210
|
4861 |
msgid "Email Alerts"
|
4862 |
msgstr "Alertes E-mail"
|
4863 |
|
4864 |
+
#: lib/i18n-extra.php:211
|
4865 |
msgid ""
|
4866 |
"You can use the notification throttling option to limit the frequency of "
|
4867 |
"alerts sent to you (and written to the firewall log) and select whether you "
|
4873 |
"d'Événement \". La page HTML ayant déclenché cette alerte peut être jointe à "
|
4874 |
"l'e-mail."
|
4875 |
|
4876 |
+
#: lib/i18n-extra.php:212
|
4877 |
msgid ""
|
4878 |
"Response body filtering can be resource-intensive. Try to limit the number "
|
4879 |
"of keywords to what you really need (less than 10) and, if possible, prefer "
|
4883 |
"limiter le nombre de mots-clés (moins de 10) et, si possible, préférez la "
|
4884 |
"recherche sensible à la casse."
|
4885 |
|
4886 |
+
#: lib/i18n-extra.php:213
|
4887 |
msgid ""
|
4888 |
"NinjaFirewall can protect your blog against spam without user interaction (e."
|
4889 |
"g., CAPTCHA, math puzzles etc). The protection is totally transparent to "
|
4898 |
"vous utilisez une extension tierce pour créer vos formulaires, ils ne seront "
|
4899 |
"pas protégés contre le spam."
|
4900 |
|
4901 |
+
#: lib/i18n-extra.php:214
|
4902 |
msgid "Protection level:"
|
4903 |
msgstr "Niveau de protection :"
|
4904 |
|
4905 |
+
#: lib/i18n-extra.php:215
|
4906 |
msgid ""
|
4907 |
"Select the level of protection. In most cases, <strong>Low</strong> should "
|
4908 |
"be enough."
|
4910 |
"Sélectionnez le niveau de protection. Dans la plupart des cas \"Bas\" est "
|
4911 |
"suffisant."
|
4912 |
|
4913 |
+
#: lib/i18n-extra.php:216
|
4914 |
msgid "Apply protection to:"
|
4915 |
msgstr "Appliquer la protection à :"
|
4916 |
|
4917 |
+
#: lib/i18n-extra.php:217
|
4918 |
msgid "Whether to protect comment and/or registration forms."
|
4919 |
msgstr "S'il faut protéger les formulaires de commentaire et d'inscription."
|
4920 |
|
4921 |
+
#: lib/i18n-extra.php:218
|
4922 |
msgid "If you are using a caching plugin, ensure you follow these steps:"
|
4923 |
msgstr ""
|
4924 |
"Si vous utilisez une extension de mise en cache, veuillez procéder de la "
|
4925 |
"sorte :"
|
4926 |
|
4927 |
+
#: lib/i18n-extra.php:219
|
4928 |
msgid ""
|
4929 |
"Set the Protection Level to \"Low\" only. Do not use another value, "
|
4930 |
"otherwise the antispam could behave erratically after a while."
|
4932 |
"Réglez le niveau de protection sur \"Bas\" uniquement. N'utilisez pas "
|
4933 |
"d'autre niveau, sinon l'anti-spam pourrait se comporter de façon erratique."
|
4934 |
|
4935 |
+
#: lib/i18n-extra.php:220
|
4936 |
msgid ""
|
4937 |
"Flush/clear your cache immediately after enabling or disabling the antispam."
|
4938 |
msgstr ""
|
4939 |
"Videz / effacez votre cache immédiatement après l'activation ou la "
|
4940 |
"désactivation de l'anti-spam."
|
4941 |
|
4942 |
+
#: lib/i18n-extra.php:221
|
4943 |
msgid ""
|
4944 |
"The firewall log displays blocked and sanitised requests as well as some "
|
4945 |
"useful information. It has 6 columns:"
|
4947 |
"Le journal du pare-feu affiche les requêtes HTTP qui ont été bloquées ou "
|
4948 |
"nettoyées ainsi que d'autres informations utiles. Il a six colonnes :"
|
4949 |
|
4950 |
+
#: lib/i18n-extra.php:222
|
4951 |
msgid ""
|
4952 |
"RULE : reference of the NinjaFirewall built-in security rule that triggered "
|
4953 |
"the action. A hyphen (<code>-</code>) instead of a number means it was a "
|
4958 |
"d'un numéro signifie que la règle provient de votre configuration "
|
4959 |
"personnelle de la page \"Politiques du Pare-feu\" ou \"Contrôle d'Accès\"."
|
4960 |
|
4961 |
+
#: lib/i18n-extra.php:223
|
4962 |
msgid "The log can also be exported as a TSV (tab-separated values) text file."
|
4963 |
msgstr ""
|
4964 |
"Le journal peut aussi être exporté au format TSV (valeurs séparées par des "
|
4965 |
"tabulations)."
|
4966 |
|
4967 |
+
#: lib/i18n-extra.php:224
|
4968 |
msgid "Enable firewall log"
|
4969 |
msgstr "Activer le journal du pare-feu"
|
4970 |
|
4971 |
+
#: lib/i18n-extra.php:225
|
4972 |
msgid "You can disable/enable the firewall log from this page."
|
4973 |
msgstr ""
|
4974 |
"Vous pouvez activer / désactiver le journal du pare-feu à partir de cette "
|
4975 |
"page."
|
4976 |
|
4977 |
+
#: lib/i18n-extra.php:226
|
4978 |
msgid ""
|
4979 |
"Brute-force attacks will still be written to the firewall log, even if you "
|
4980 |
"disable it."
|
4982 |
"Les attaques par force brute seront toujours enregistrées dans le journal du "
|
4983 |
"pare-feu, même si vous désactivez celui-ci."
|
4984 |
|
4985 |
+
#: lib/i18n-extra.php:227
|
4986 |
msgid "Auto-rotate log"
|
4987 |
msgstr "Rotation automatique du journal"
|
4988 |
|
4989 |
+
#: lib/i18n-extra.php:228
|
4990 |
msgid ""
|
4991 |
"NinjaFirewall will rotate its log automatically on the very first day of "
|
4992 |
"each month. If your site is very busy, you may want to allow it to rotate "
|
4997 |
"effectuée plus tôt, dans le cas où le journal aurait atteint une certaine "
|
4998 |
"taille (Mo)."
|
4999 |
|
5000 |
+
#: lib/i18n-extra.php:229
|
5001 |
msgid ""
|
5002 |
"By default, if will rotate the log each month or earlier, if it reaches 2 "
|
5003 |
"megabytes."
|
5004 |
msgstr "Par défaut, cette taille est fixée à 2 Mo."
|
5005 |
|
5006 |
+
#: lib/i18n-extra.php:230
|
5007 |
msgid ""
|
5008 |
"Rotated logs, if any, can be selected and viewed from the dropdown menu."
|
5009 |
msgstr ""
|
5010 |
"Les journaux des mois précédents sont accessibles depuis le menu déroulant "
|
5011 |
"situé au dessus de la fenêtre."
|
5012 |
|
5013 |
+
#: lib/i18n-extra.php:231
|
5014 |
msgid "Syslog"
|
5015 |
msgstr "Syslog"
|
5016 |
|
5017 |
+
#: lib/i18n-extra.php:232
|
5018 |
msgid ""
|
5019 |
"In addition to the firewall log, events can also be redirected to the syslog "
|
5020 |
"server (<code>LOG_USER</code> facility)."
|
5022 |
"En plus d'écrire dans son journal, le pare-feu peut aussi utiliser le "
|
5023 |
"serveur Syslog (catégorie <code>LOG_USER</code>)."
|
5024 |
|
5025 |
+
#: lib/i18n-extra.php:233
|
5026 |
msgid ""
|
5027 |
"If you have a shared hosting account, keep this option disabled as you do "
|
5028 |
"not have any access to the server logs."
|
5030 |
"Si vous avez un hébergement mutualisé, laissez cette option désactivée car "
|
5031 |
"vous n'avez pas accès aux journaux du serveur."
|
5032 |
|
5033 |
+
#: lib/i18n-extra.php:234
|
5034 |
msgid "The logline uses the following format:"
|
5035 |
msgstr "Le format utilisé est le suivant :"
|
5036 |
|
5037 |
+
#: lib/i18n-extra.php:235
|
5038 |
msgid ""
|
5039 |
"BB: the level of severity as it appears in the firewall log. It can be "
|
5040 |
"<code>CRITICAL</CODE>, <CODE>HIGH</CODE>, <CODE>MEDIUM</CODE>, <CODE>INFO</"
|
5045 |
"<CODE>MEDIUM</CODE>, <CODE>INFO</CODE>, <CODE>UPLOAD</CODE> ou "
|
5046 |
"<CODE>DEBUG_ON</CODE>."
|
5047 |
|
5048 |
+
#: lib/i18n-extra.php:236
|
5049 |
msgid "CCCCCC: the 7-digit incident ID."
|
5050 |
msgstr "CCCCCC : le numéro d'incident à sept chiffres."
|
5051 |
|
5052 |
+
#: lib/i18n-extra.php:237
|
5053 |
msgid "DD: the user IPv4 or IPv6 address."
|
5054 |
msgstr "DD : L'adresse IPv4 ou IPv6 de l'utilisateur."
|
5055 |
|
5056 |
+
#: lib/i18n-extra.php:238
|
5057 |
msgid "EE: the blog (sub-)domain name."
|
5058 |
msgstr "EE : le nom de (sous-)domaine du blog."
|
5059 |
|
5060 |
+
#: lib/i18n-extra.php:239
|
5061 |
#, php-format
|
5062 |
msgid ""
|
5063 |
"This logging option does not apply to the brute-force protection which can "
|
5069 |
"d'authentification du serveur. Voir le menu de la <a href=\"%s\">Page de "
|
5070 |
"Connexion</a>."
|
5071 |
|
5072 |
+
#: lib/i18n-extra.php:240
|
5073 |
msgid ""
|
5074 |
"Secret key: The secret key will be used to generate your public key. Enter "
|
5075 |
"at least 30 ASCII characters, or use the one randomly created by "
|
5079 |
"de 30 à 100 caractères ASCII, ou bien utilisez la clé générée aléatoirement "
|
5080 |
"par NinjaFirewall."
|
5081 |
|
5082 |
+
#: lib/i18n-extra.php:241
|
5083 |
msgid ""
|
5084 |
"This server IP address: As an additional protection layer, you can restrict "
|
5085 |
"access to the remote website(s) to the main server IP only. You can use IPv4 "
|
5090 |
"à se connecter aux sites distants. Si vous ne souhaitez pas de restriction "
|
5091 |
"d’accès par IP, veuillez entrer le caractère <code>*</code>."
|
5092 |
|
5093 |
+
#: lib/i18n-extra.php:242
|
5094 |
#, php-format
|
5095 |
msgid ""
|
5096 |
"Public key: This is the public key that you will need to upload to each "
|
5099 |
"Clé publique : Vous devez configurer vos sites distants avec cette clé. <a "
|
5100 |
"href=\"%s\">Consultez notre blog</a> pour plus d'info."
|
5101 |
|
5102 |
+
#: lib/i18n-extra.php:243
|
5103 |
msgid ""
|
5104 |
"Remote websites URL: Enter the full URL of your NinjaFirewall protected "
|
5105 |
"website(s) that you want to remotely access from the main server."
|
5108 |
"NinjaFirewall auxquels vous souhaitez accéder à distance à partir du serveur "
|
5109 |
"principal."
|
5110 |
|
5111 |
+
#: lib/i18n-extra.php:244
|
5112 |
msgid ""
|
5113 |
"Centralized Logging will keep working even if NinjaFirewall is disabled. Use "
|
5114 |
"the menu below if you want to disable it."
|
5117 |
"NinjaFirewall. Si vous souhaitez complètement désactiver cette option, "
|
5118 |
"faites-le ci-dessous."
|
5119 |
|
5120 |
+
#: lib/i18n-extra.php:245
|
5121 |
msgid "Enable Web Filter"
|
5122 |
msgstr "Activer Web Filter"
|
5123 |
|
5124 |
+
#: lib/i18n-extra.php:246
|
5125 |
msgid "A full or partial string."
|
5126 |
msgstr "Chaîne de caractère complète ou partielle."
|
5127 |
|
5128 |
+
#: lib/i18n-extra.php:247
|
5129 |
msgid "From 4 to maximum 150 characters."
|
5130 |
msgstr "De 4 à 150 caractères."
|
5131 |
|
5132 |
+
#: lib/i18n-extra.php:248
|
5133 |
msgid "Any character, except the vertical bar <code>|</code>"
|
5134 |
msgstr "Tout caractère, sauf la barre verticale <code>|</code>"
|
5135 |
|
5136 |
+
#: lib/i18n-extra.php:249
|
5137 |
msgid "Keywords to search:"
|
5138 |
msgstr "Mots-clés recherchés :"
|
5139 |
|
5140 |
+
#: lib/i18n-extra.php:250
|
5141 |
msgid "Case-sensitive search"
|
5142 |
msgstr "Recherche sensible à la casse"
|
5143 |
|
5144 |
+
#: lib/i18n-extra.php:251
|
5145 |
#, php-format
|
5146 |
msgid "Do not send me more than one email alert in a %s interval"
|
5147 |
msgstr "Ne pas envoyer plus d'un e-mail par tranche de %s"
|
5148 |
|
5149 |
+
#: lib/i18n-extra.php:252
|
5150 |
msgid "5-minute"
|
5151 |
msgstr "5 minutes"
|
5152 |
|
5153 |
+
#: lib/i18n-extra.php:253
|
5154 |
msgid "15-minute"
|
5155 |
msgstr "15 minutes"
|
5156 |
|
5157 |
+
#: lib/i18n-extra.php:254
|
5158 |
msgid "30-minute"
|
5159 |
msgstr "30 minutes"
|
5160 |
|
5161 |
+
#: lib/i18n-extra.php:255
|
5162 |
msgid "1-hour"
|
5163 |
msgstr "1 heure"
|
5164 |
|
5165 |
+
#: lib/i18n-extra.php:256
|
5166 |
msgid "3-hour"
|
5167 |
msgstr "3 heures"
|
5168 |
|
5169 |
+
#: lib/i18n-extra.php:257
|
5170 |
msgid "6-hour"
|
5171 |
msgstr "6 heures"
|
5172 |
|
5173 |
+
#: lib/i18n-extra.php:258
|
5174 |
msgid "12-hour"
|
5175 |
msgstr "12 heures"
|
5176 |
|
5177 |
+
#: lib/i18n-extra.php:259
|
5178 |
msgid "24-hour"
|
5179 |
msgstr "24 heures"
|
5180 |
|
5181 |
+
#: lib/i18n-extra.php:260
|
5182 |
msgid ""
|
5183 |
"Clicking the \"Save Web Filter options\" button below will reset the current "
|
5184 |
"timer."
|
5185 |
msgstr "Cliquer sur \"Sauvegarder les options\" réinitialisera le compteur."
|
5186 |
|
5187 |
+
#: lib/i18n-extra.php:261
|
5188 |
msgid "Attach the HTML page output to email alerts"
|
5189 |
msgstr "Joindre la page HTML à l'e-mail"
|
5190 |
|
5191 |
+
#: lib/i18n-extra.php:262
|
5192 |
msgid "Save Web Filter options"
|
5193 |
msgstr "Sauvegarder les options"
|
5194 |
|
5195 |
+
#: lib/i18n-extra.php:263
|
5196 |
msgid "Help Desk:"
|
5197 |
msgstr "Help Desk :"
|
5198 |
|
5199 |
+
#: lib/i18n-extra.php:264
|
5200 |
msgid "The selected log was deleted"
|
5201 |
msgstr "Le journal sélectionné a été supprimé"
|
5202 |
|
5203 |
+
#: lib/i18n-extra.php:265
|
5204 |
msgid "Export"
|
5205 |
msgstr "Exporter"
|
5206 |
|
5207 |
+
#: lib/i18n-extra.php:266
|
5208 |
msgid "Delete"
|
5209 |
msgstr "Supprimer"
|
5210 |
|
5211 |
+
#: lib/i18n-extra.php:267
|
5212 |
msgid "Delete log?"
|
5213 |
msgstr "Supprimer le journal ?"
|
5214 |
|
5215 |
+
#: lib/i18n-extra.php:268
|
5216 |
msgid "Today"
|
5217 |
msgstr "Aujourd'hui"
|
5218 |
|
5219 |
+
#: lib/i18n-extra.php:269
|
5220 |
msgid "Upload"
|
5221 |
msgstr "Téléchargement"
|
5222 |
|
5223 |
+
#: lib/i18n-extra.php:270
|
5224 |
msgid "Info"
|
5225 |
msgstr "Info"
|
5226 |
|
5227 |
+
#: lib/i18n-extra.php:271
|
5228 |
msgid "Debug"
|
5229 |
msgstr "Débogage"
|
5230 |
|
5231 |
+
#: lib/i18n-extra.php:272
|
5232 |
msgid "IP address:"
|
5233 |
msgstr "Adresse IP :"
|
5234 |
|
5235 |
+
#: lib/i18n-extra.php:273
|
5236 |
msgid "e.g., 1.2.3.4"
|
5237 |
msgstr "ex : 1.2.3.4"
|
5238 |
|
5239 |
+
#: lib/i18n-extra.php:274
|
5240 |
msgid "Add IP to blacklist"
|
5241 |
msgstr "Ajouter à la liste noire"
|
5242 |
|
5243 |
+
#: lib/i18n-extra.php:275
|
5244 |
msgid "Add IP to whitelist"
|
5245 |
msgstr "Ajouter à la liste blanche"
|
5246 |
|
5247 |
+
#: lib/i18n-extra.php:276
|
5248 |
msgid "Add"
|
5249 |
msgstr "Ajouter"
|
5250 |
|
5251 |
+
#: lib/i18n-extra.php:277
|
5252 |
msgid "The address wad added to your IP Access Control list."
|
5253 |
msgstr "L'adresse a été ajoutée à votre liste du Contrôle d'accès par IP."
|
5254 |
|
5255 |
+
#: lib/i18n-extra.php:278
|
5256 |
#, php-format
|
5257 |
msgid "1st day of the month, or if bigger than %s MB"
|
5258 |
msgstr "Le 1er de chaque mois, ou si sa taille dépasse %s Mo"
|
5259 |
|
5260 |
+
#: lib/i18n-extra.php:279
|
5261 |
msgid "1st day of the month, regardless of its size"
|
5262 |
msgstr "Le 1er de chaque mois, quelle que soit sa taille"
|
5263 |
|
5264 |
+
#: lib/i18n-extra.php:280
|
5265 |
msgid "Show the most recent"
|
5266 |
msgstr "Afficher les dernières"
|
5267 |
|
5268 |
+
#: lib/i18n-extra.php:281
|
5269 |
msgid "lines"
|
5270 |
msgstr "lignes"
|
5271 |
|
5272 |
+
#: lib/i18n-extra.php:282
|
5273 |
msgid "Write events to the Syslog server too"
|
5274 |
msgstr "Enregistrer aussi les événements dans le journal syslog"
|
5275 |
|
5276 |
+
#: lib/i18n-extra.php:283
|
5277 |
msgid "Your server configuration is not compatible with this option."
|
5278 |
msgstr ""
|
5279 |
"La configuration de votre serveur n'est pas compatible avec cette option."
|
5280 |
|
5281 |
+
#: lib/i18n-extra.php:284
|
5282 |
msgid "See contextual help before enabling this option."
|
5283 |
msgstr "Consultez l'aide contextuelle avant d'activer cette option."
|
5284 |
|
5285 |
+
#: lib/i18n-extra.php:285
|
5286 |
msgid ""
|
5287 |
"The remote server rejected your request. Make sure that you uploaded the "
|
5288 |
"correct public key."
|
5290 |
"Le serveur distant a rejeté votre requête. Veuillez vous assurer que la clé "
|
5291 |
"publique est correcte."
|
5292 |
|
5293 |
+
#: lib/i18n-extra.php:286
|
5294 |
#, php-format
|
5295 |
msgid "The remote server returned the following HTTP error: %s"
|
5296 |
msgstr "Le serveur HTTP a retourné le code d'erreur suivant : %s"
|
5297 |
|
5298 |
+
#: lib/i18n-extra.php:287
|
5299 |
msgid "The requested log does not exist on the remote website."
|
5300 |
msgstr "Le journal demandé n'existe pas sur le site distant."
|
5301 |
|
5302 |
+
#: lib/i18n-extra.php:288
|
5303 |
msgid "The remote website did not return the expected response."
|
5304 |
msgstr "Le site distant n'a pas retourné la réponse attendue."
|
5305 |
|
5306 |
+
#: lib/i18n-extra.php:289
|
5307 |
msgid "Your server does not seem to be compatible with this option."
|
5308 |
msgstr ""
|
5309 |
"La configuration de votre serveur n'est pas compatible avec cette option."
|
5310 |
|
5311 |
+
#: lib/i18n-extra.php:290
|
5312 |
msgid "Load language files from the WordPress repo"
|
5313 |
msgstr "Charger les fichiers de langue depuis le WordPress.org"
|
5314 |
|
5315 |
+
#: lib/i18n-extra.php:291
|
5316 |
#, php-format
|
5317 |
msgid ""
|
5318 |
"If available, NinjaFirewall will download the language files from <a "
|
5321 |
"Si disponible, NinjaFirewall téléchargera le fichier de langue à partir de "
|
5322 |
"<a %s>translate.wordpress.org</a>."
|
5323 |
|
5324 |
+
#: lib/i18n-extra.php:292
|
5325 |
msgid "Error: you do not have any license."
|
5326 |
msgstr "Erreur : vous n'avez pas de licence."
|
5327 |
|
5328 |
+
#: lib/i18n-extra.php:293
|
5329 |
msgid "You have a valid license."
|
5330 |
msgstr "Votre licence est valide."
|
5331 |
|
5332 |
+
#: lib/i18n-extra.php:294
|
5333 |
msgid ""
|
5334 |
"An unknown error occured while connecting to NinjaFirewall servers. Please "
|
5335 |
"try again in a few minutes"
|
5337 |
"Une erreur inattendue s'est produite lors de la connexion au serveur de "
|
5338 |
"NinjaFirewall. Merci d'essayer à nouveau dans quelques minutes"
|
5339 |
|
5340 |
+
#: lib/i18n-extra.php:295
|
5341 |
msgid ""
|
5342 |
"An error occured while connecting to NinjaFirewall servers. Please try again "
|
5343 |
"in a few minutes"
|
5345 |
"Une erreur inattendue s'est produite lors de la connexion au serveur de "
|
5346 |
"NinjaFirewall. Merci d'essayer à nouveau dans quelques minutes"
|
5347 |
|
5348 |
+
#: lib/i18n-extra.php:296
|
5349 |
msgid "Enter a valid license to save!"
|
5350 |
msgstr "Veuillez entrer un numéro de licence valide !"
|
5351 |
|
5352 |
+
#: lib/i18n-extra.php:297
|
5353 |
msgid "This is already your current license!"
|
5354 |
msgstr "Cette licence est la même que l'actuelle !"
|
5355 |
|
5356 |
+
#: lib/i18n-extra.php:298
|
5357 |
msgid "Your new license has been accepted and saved."
|
5358 |
msgstr "Votre nouvelle licence a été acceptée et sauvegardée."
|
5359 |
|
5360 |
+
#: lib/i18n-extra.php:299
|
5361 |
msgid "This license is not valid"
|
5362 |
msgstr "Cette licence n'est pas valide"
|
5363 |
|
5364 |
+
#: lib/i18n-extra.php:300
|
5365 |
msgid "WP+ Edition License"
|
5366 |
msgstr "Licence WP+ Edition"
|
5367 |
|
5368 |
+
#: lib/i18n-extra.php:301
|
5369 |
msgid "License Number"
|
5370 |
msgstr "Numéro de Licence"
|
5371 |
|
5372 |
+
#: lib/i18n-extra.php:302
|
5373 |
msgid "No license found"
|
5374 |
msgstr "Aucune licence trouvée"
|
5375 |
|
5376 |
+
#: lib/i18n-extra.php:303
|
5377 |
msgid "Click to check your license validity"
|
5378 |
msgstr "Cliquez pour tester la validité de votre licence"
|
5379 |
|
5380 |
+
#: lib/i18n-extra.php:304
|
5381 |
msgid "Expiration date"
|
5382 |
msgstr "Date d'expiration"
|
5383 |
|
5384 |
+
#: lib/i18n-extra.php:305
|
5385 |
msgid "Unknown expiration date"
|
5386 |
msgstr "Date d'expiration inconnue"
|
5387 |
|
5388 |
+
#: lib/i18n-extra.php:306
|
5389 |
msgid "Use the \"Check License Validity\" button to attempt to fix this error."
|
5390 |
msgstr ""
|
5391 |
"Selectionnez \"Cliquez pour tester la validité de votre licence\" pour "
|
5392 |
"tenter de réparer cette erreur."
|
5393 |
|
5394 |
+
#: lib/i18n-extra.php:307
|
5395 |
msgid "Your license will expire soon!"
|
5396 |
msgstr "Votre licence va bientôt expirer !"
|
5397 |
|
5398 |
+
#: lib/i18n-extra.php:308
|
5399 |
msgid "Your license has expired."
|
5400 |
msgstr "Votre licence a expiré."
|
5401 |
|
5402 |
+
#: lib/i18n-extra.php:309
|
5403 |
msgid "License renewal"
|
5404 |
msgstr "Renouvellement de licence"
|
5405 |
|
5406 |
+
#: lib/i18n-extra.php:310
|
5407 |
msgid "Click here to get a license!"
|
5408 |
msgstr "Cliquez ici pour obtenir une licence !"
|
5409 |
|
5410 |
+
#: lib/i18n-extra.php:311
|
5411 |
msgid "Enter your new license and click on the save button"
|
5412 |
msgstr "Entrez votre licence et cliquez sur le bouton pour l'enregistrer"
|
5413 |
|
5414 |
+
#: lib/i18n-extra.php:312
|
5415 |
msgid "Save New License"
|
5416 |
msgstr "Sauvegarder la Licence"
|
5417 |
|
5418 |
+
#: lib/i18n-extra.php:313
|
5419 |
msgid "Allow, but block dangerous files"
|
5420 |
msgstr "Autoriser, mais bloquer les fichiers dangereux"
|
5421 |
|
5422 |
+
#: lib/i18n-extra.php:314
|
5423 |
msgid "See contextual help for the list of files."
|
5424 |
msgstr ""
|
5425 |
"Consultez l'aide contextuelle pour voir la liste des fichiers concernés."
|
5426 |
|
5427 |
+
#: lib/i18n-extra.php:315
|
5428 |
msgid "Apply to ZIP archives file contents"
|
5429 |
msgstr "Appliquer au contenu des fichiers ZIP"
|
5430 |
|
5431 |
+
#: lib/i18n-extra.php:316
|
5432 |
msgid ""
|
5433 |
"Keep this option disabled if you are using scripts such as Paypal IPN or "
|
5434 |
"WordPress WP-Cron, unless you added their IP address or URL to your Access "
|
5438 |
"WordPress WP-Cron, sauf si vous avez ajouté leur adresse IP ou URL dans la "
|
5439 |
"section \"Contrôle d'Accès\"."
|
5440 |
|
5441 |
+
#: lib/i18n-extra.php:317
|
5442 |
#, php-format
|
5443 |
msgid ""
|
5444 |
"Do not send a notification if the user is in the <a href=\"%s\">IP Access "
|
5455 |
"Erreur : Votre fichier .htaccess n'est pas accessible en écriture. Veuillez "
|
5456 |
"modifier ses autorisations : %s"
|
5457 |
|
5458 |
+
#: lib/install.php:110 ninjafirewall.php:656 ninjafirewall.php:660
|
5459 |
#, php-format
|
5460 |
msgid "Error: wrong parameter value (%s)."
|
5461 |
msgstr "Erreur : Mauvais paramètre (%s)."
|
5504 |
msgid "File is not writable"
|
5505 |
msgstr "Le fichier n'est pas accessible en écriture"
|
5506 |
|
5507 |
+
#: lib/install_default.php:168
|
5508 |
msgid ""
|
5509 |
"Error: The installer cannot download the security rules from wordpress.org "
|
5510 |
"website."
|
5512 |
"Erreur : Impossible de télécharger les règles de sécurité depuis le site de "
|
5513 |
"wordpress.org."
|
5514 |
|
5515 |
+
#: lib/install_default.php:169
|
5516 |
msgid ""
|
5517 |
"The server may be temporarily down or you may have network connectivity "
|
5518 |
"problems? Please try again in a few minutes."
|
5521 |
"problèmes de connectivité réseau ? Veuillez ré-essayer d'ici quelques "
|
5522 |
"minutes."
|
5523 |
|
5524 |
+
#: lib/install_default.php:170
|
5525 |
msgid ""
|
5526 |
"NinjaFirewall downloads its rules over an HTTPS secure connection. Maybe "
|
5527 |
"your server does not support SSL? You can force NinjaFirewall to use a non-"
|
5534 |
"connexion non-sécurisée (HTTP) en ajoutant la ligne suivante dans votre "
|
5535 |
"fichier <strong>wp-config.php</strong> :"
|
5536 |
|
5537 |
+
#: lib/install_default.php:243
|
5538 |
#, php-format
|
5539 |
msgid ""
|
5540 |
"NinjaFirewall cannot create its <code>nfwlog/</code>log and cache folder; "
|
5733 |
msgid "Error: unable to write to the %s configuration file"
|
5734 |
msgstr "Erreur : impossible d’écrire dans le fichier de configuration %s"
|
5735 |
|
5736 |
+
#: lib/logs.php:36 ninjafirewall.php:930
|
5737 |
msgid "Logs"
|
5738 |
msgstr "Journaux"
|
5739 |
|
5740 |
+
#: lib/logs.php:41
|
5741 |
+
msgid ""
|
5742 |
+
"In the Premium version of NinjaFirewall, you can filter the log by threat "
|
5743 |
+
"severity, type and date. You can delete it, enable its rotation based on the "
|
5744 |
+
"size of the file. It can be exported as a TSV (tab-separated values) text "
|
5745 |
+
"file. You can easily add any IP address to your Access Control whitelist or "
|
5746 |
+
"blacklist and it is possible to redirect all incidents and events to the "
|
5747 |
+
"Syslog server."
|
5748 |
+
msgstr ""
|
5749 |
+
"Dans la version Premium de NinjaFirewall, vous pouvez filtrer le journal par "
|
5750 |
+
"sévérité, type et date de menace. Vous pouvez le supprimer, activer sa "
|
5751 |
+
"rotation en fonction de la taille du fichier. Il peut être exporté sous "
|
5752 |
+
"forme de fichier texte TSV (valeurs séparées par des tabulations). Vous "
|
5753 |
+
"pouvez facilement ajouter n'importe quelle adresse IP à votre liste blanche "
|
5754 |
+
"ou liste noire de contrôle d'accès et il est aussi possible de rediriger "
|
5755 |
+
"tous les incidents et événements vers le serveur Syslog."
|
5756 |
+
|
5757 |
+
#: lib/logs.php:41
|
5758 |
+
msgid ""
|
5759 |
+
"Also, the Centralized Logging feature lets you remotely access the firewall "
|
5760 |
+
"log of all your NinjaFirewall protected websites from one single "
|
5761 |
+
"installation."
|
5762 |
+
msgstr ""
|
5763 |
+
"De plus, la fonction de Centralisation des Logs vous permet d'accéder à "
|
5764 |
+
"distance au journal du pare-feu de tous vos sites Web protégés par "
|
5765 |
+
"NinjaFirewall, et ce à partir d'une seule installation."
|
5766 |
+
|
5767 |
#: lib/logs_firewall_log.php:35
|
5768 |
#, php-format
|
5769 |
msgid ""
|
5788 |
msgid "Your public key has been saved"
|
5789 |
msgstr "Votre clé publique a été sauvegardée"
|
5790 |
|
|
|
|
|
|
|
|
|
5791 |
#: lib/logs_firewall_log.php:92
|
5792 |
msgid "Note"
|
5793 |
msgstr "Notice"
|
5880 |
"et assurez vous que l'option \"Ajouter l'Administrateur à la liste blanche\" "
|
5881 |
"est activée."
|
5882 |
|
5883 |
+
#: lib/logs_live_log.php:96 ninjafirewall.php:353
|
5884 |
msgid ""
|
5885 |
"Live Log lets you watch your blog traffic in real time. To enable it, click "
|
5886 |
"on the button below."
|
5989 |
msgid "Error: please enter the custom log format."
|
5990 |
msgstr "Erreur : veuillez entrer le format d'affichage."
|
5991 |
|
5992 |
+
#: lib/monitoring.php:43 ninjafirewall.php:904
|
5993 |
msgid "Monitoring"
|
5994 |
msgstr "Monitoring"
|
5995 |
|
5996 |
+
#: lib/monitoring.php:48
|
5997 |
+
msgid ""
|
5998 |
+
"In the Premium version of NinjaFirewall, you can also monitor the response "
|
5999 |
+
"body, i.e., the output of the HTML page, and search it for some specific "
|
6000 |
+
"keywords, which can be useful to identify errors, hacked content and data "
|
6001 |
+
"leakage issues on your website."
|
6002 |
+
msgstr ""
|
6003 |
+
"Dans la version Premium de NinjaFirewall, vous pouvez également filtrer les "
|
6004 |
+
"requêtes sortantes, c'est à dire le contenu de la page HTML, et rechercher "
|
6005 |
+
"des mots clés spécifiques, ce qui peut être utile pour identifier les "
|
6006 |
+
"erreurs, les contenus piratés et les problèmes de fuite de données provenant "
|
6007 |
+
"de votre blog."
|
6008 |
+
|
6009 |
#: lib/monitoring_file_check.php:62
|
6010 |
msgid "Snapshot successfully created."
|
6011 |
msgstr "L'instantané a bien été créé."
|
6018 |
msgid "You must create a snapshot first."
|
6019 |
msgstr "Vous devez d'abord créer un instantané."
|
6020 |
|
6021 |
+
#: lib/monitoring_file_check.php:102 lib/monitoring_file_check.php:757
|
6022 |
msgid "NinjaFirewall detected that changes were made to your files."
|
6023 |
msgstr "NinjaFirewall a détecté des changements dans vos fichiers."
|
6024 |
|
6116 |
msgid "Last changes"
|
6117 |
msgstr "Dernières modifications"
|
6118 |
|
6119 |
+
#: lib/monitoring_file_check.php:281 lib/monitoring_file_check.php:765
|
6120 |
#, php-format
|
6121 |
msgid "New files: %s"
|
6122 |
msgstr "Nouveaux fichiers : %s"
|
6123 |
|
6124 |
+
#: lib/monitoring_file_check.php:282 lib/monitoring_file_check.php:767
|
6125 |
#, php-format
|
6126 |
msgid "Deleted files: %s"
|
6127 |
msgstr "Fichiers supprimés : %s"
|
6128 |
|
6129 |
+
#: lib/monitoring_file_check.php:283 lib/monitoring_file_check.php:766
|
6130 |
#, php-format
|
6131 |
msgid "Modified files: %s"
|
6132 |
msgstr "Fichiers modifiés : %s"
|
6307 |
msgid "Error reading new snapshot file."
|
6308 |
msgstr "Erreur lors de la lecture du fichier du nouvel instantané."
|
6309 |
|
6310 |
+
#: lib/monitoring_file_check.php:730 ninjafirewall.php:460
|
6311 |
msgid "New file"
|
6312 |
msgstr "Nouveau fichier"
|
6313 |
|
6314 |
+
#: lib/monitoring_file_check.php:731 ninjafirewall.php:461
|
6315 |
msgid "Modified file"
|
6316 |
msgstr "Fichier modifié"
|
6317 |
|
6318 |
+
#: lib/monitoring_file_check.php:732 ninjafirewall.php:462
|
6319 |
msgid "Deleted file"
|
6320 |
msgstr "Fichier supprimé"
|
6321 |
|
6322 |
+
#: lib/monitoring_file_check.php:756
|
6323 |
msgid "[NinjaFirewall] Alert: File Check detection"
|
6324 |
msgstr "[NinjaFirewall] Alerte: Détection File Check"
|
6325 |
|
6326 |
+
#: lib/monitoring_file_check.php:763 lib/monitoring_file_check.php:785
|
6327 |
+
#: lib/security_rules_update.php:564
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6328 |
#, php-format
|
6329 |
msgid "Date: %s"
|
6330 |
msgstr "Date : %s"
|
6331 |
|
6332 |
+
#: lib/monitoring_file_check.php:769
|
6333 |
msgid "See attached file for details."
|
6334 |
msgstr "Voir le fichier joint pour plus de détails."
|
6335 |
|
6336 |
+
#: lib/monitoring_file_check.php:778
|
6337 |
msgid "[NinjaFirewall] File Check report"
|
6338 |
msgstr "[NinjaFirewall] Rapport de File Check"
|
6339 |
|
6340 |
+
#: lib/monitoring_file_check.php:779
|
6341 |
msgid "NinjaFirewall did not detect changes in your files."
|
6342 |
msgstr "NinjaFirewall n'a pas détecté de changements dans vos fichiers."
|
6343 |
|
6394 |
msgid "Save File Guard options"
|
6395 |
msgstr "Sauvegarder les options"
|
6396 |
|
6397 |
+
#: lib/network.php:24 ninjafirewall.php:1191 ninjafirewall.php:1195
|
6398 |
#, php-format
|
6399 |
msgid "You are not allowed to perform this task (%s)."
|
6400 |
msgstr "Vous n'êtes pas autorisé à effectuer cette tâche (%s)."
|
6419 |
msgid "Save Network options"
|
6420 |
msgstr "Sauvegarder les options"
|
6421 |
|
6422 |
+
#: lib/scheduled_tasks.php:120 lib/scheduled_tasks.php:128
|
6423 |
+
#: lib/scheduled_tasks.php:143 lib/scheduled_tasks.php:152
|
6424 |
+
#, php-format
|
6425 |
+
msgid "Scheduled task has stopped, restarting it (%s)"
|
6426 |
+
msgstr "La tâche planifiée s'est arrêtée, redémarrage en cours (%s)"
|
6427 |
+
|
6428 |
+
#: lib/security_rules.php:44 lib/security_rules_update.php:565
|
6429 |
+
#: ninjafirewall.php:934
|
6430 |
msgid "Security Rules"
|
6431 |
msgstr "Règles de Sécurité"
|
6432 |
|
6537 |
msgid "Security rules have been updated."
|
6538 |
msgstr "Les règles de sécurité ont été mises à jour."
|
6539 |
|
6540 |
+
#: lib/security_rules_update.php:91 lib/security_rules_update.php:447
|
6541 |
msgid "No security rules update available."
|
6542 |
msgstr "Aucune mise à jour des règles de sécurité disponible."
|
6543 |
|
6558 |
msgid "Check for updates"
|
6559 |
msgstr "Vérifier les mises à jour"
|
6560 |
|
6561 |
+
#: lib/security_rules_update.php:148
|
6562 |
+
msgid ""
|
6563 |
+
"In the Premium version of NinjaFirewall, you can check for security rules "
|
6564 |
+
"updates as often as every 15 minutes, versus one hour for the free WP "
|
6565 |
+
"Edition."
|
6566 |
+
msgstr ""
|
6567 |
+
"Dans la version Premium de NinjaFirewall, vous pouvez vérifier les mises à "
|
6568 |
+
"jour des règles de sécurité toutes les 15 minutes, contre une heure pour la "
|
6569 |
+
"version gratuite WP Edition."
|
6570 |
+
|
6571 |
#: lib/security_rules_update.php:151
|
6572 |
msgid "Every 15 minutes"
|
6573 |
msgstr "Toutes les 15 minutes"
|
6637 |
msgid "Delete Log"
|
6638 |
msgstr "Supprimer le journal"
|
6639 |
|
6640 |
+
#: lib/security_rules_update.php:314
|
6641 |
msgid "Error: Wrong rules format."
|
6642 |
msgstr "Erreur : Le format des règles téléchargées ne correspond pas."
|
6643 |
|
6644 |
+
#: lib/security_rules_update.php:323
|
6645 |
msgid "Error: Unable to unserialize the new rules."
|
6646 |
msgstr ""
|
6647 |
"Erreur : Impossible d'extraire les règles du fichier téléchargé (unable to "
|
6648 |
"unserialize the new rules)."
|
6649 |
|
6650 |
+
#: lib/security_rules_update.php:331
|
6651 |
msgid "Error: Unserialized rules seem corrupted."
|
6652 |
msgstr ""
|
6653 |
"Erreur : Le fichier des règles téléchargé semblent corrompu (unserialized "
|
6654 |
"rules seem corrupted)."
|
6655 |
|
6656 |
+
#: lib/security_rules_update.php:390
|
6657 |
#, php-format
|
6658 |
msgid "Security rules updated to version %s."
|
6659 |
msgstr "Les règles de sécurité ont été mises à jour vers la version %s."
|
6660 |
|
6661 |
+
#: lib/security_rules_update.php:436
|
6662 |
msgid "Error: Unable to retrieve the new rules version."
|
6663 |
msgstr "Erreur : Impossible de récupérer la nouvelle version des règles."
|
6664 |
|
6665 |
+
#: lib/security_rules_update.php:454
|
6666 |
#, php-format
|
6667 |
msgid "Error: Server returned a %s HTTP error code (#1)."
|
6668 |
msgstr "Erreur : Le serveur a retourné un code d'erreur HTTP %s (#1)."
|
6669 |
|
6670 |
+
#: lib/security_rules_update.php:461 lib/security_rules_update.php:527
|
6671 |
msgid "Error: Unable to connect to the remote server"
|
6672 |
msgstr "Erreur : Impossible de se connecter au serveur distant"
|
6673 |
|
6674 |
+
#: lib/security_rules_update.php:491
|
6675 |
#, php-format
|
6676 |
msgid "Error: The new rules versions do not match (%s != %s)."
|
6677 |
msgstr ""
|
6678 |
"Erreur : La versions des nouvelles règles ne correspond pas (%s != %s)."
|
6679 |
|
6680 |
+
#: lib/security_rules_update.php:505
|
6681 |
#, php-format
|
6682 |
msgid ""
|
6683 |
"Error: The new rules %s digital signature is not correct. Aborting update, "
|
6686 |
"Erreur : La signature numérique des nouvelles règles %s n'est pas correcte. "
|
6687 |
"Annulation de la mise à jour, les règles ont peut-être été altérées."
|
6688 |
|
6689 |
+
#: lib/security_rules_update.php:520
|
6690 |
#, php-format
|
6691 |
msgid "Error: Server returned a %s HTTP error code (#2)."
|
6692 |
msgstr "Erreur : Le serveur a retourné un code d'erreur HTTP %s (#2)."
|
6693 |
|
6694 |
+
#: lib/security_rules_update.php:556
|
6695 |
msgid "[NinjaFirewall] Security rules update"
|
6696 |
msgstr "[NinjaFirewall] Mise à jour des règles de sécurité"
|
6697 |
|
6698 |
+
#: lib/security_rules_update.php:557
|
6699 |
msgid "NinjaFirewall security rules have been updated:"
|
6700 |
msgstr "Les règles de sécurité de NinjaFirewall ont été mises à jour :"
|
6701 |
|
6702 |
+
#: lib/security_rules_update.php:563
|
6703 |
msgid "Rules version:"
|
6704 |
msgstr "Version des règles :"
|
6705 |
|
6706 |
+
#: lib/security_rules_update.php:565
|
6707 |
#, php-format
|
6708 |
msgid "This notification can be turned off from NinjaFirewall \"%s\" page."
|
6709 |
msgstr ""
|
6910 |
msgid "Cancel and Close"
|
6911 |
msgstr "Annuler et Fermer"
|
6912 |
|
6913 |
+
#: lib/utils.php:188 lib/utils.php:196 lib/utils.php:295
|
6914 |
msgid "N/A"
|
6915 |
msgstr "N/A"
|
6916 |
|
6917 |
+
#: lib/utils.php:202
|
6918 |
#, php-format
|
6919 |
msgid "Attempt to create a new %s"
|
6920 |
msgstr "Tentative de création de %s"
|
6921 |
|
6922 |
+
#: lib/utils.php:206
|
6923 |
#, php-format
|
6924 |
msgid "Attempt to edit a published %s (ID: %s)"
|
6925 |
msgstr "Tentative de modification de %s (ID: %s)"
|
6926 |
|
6927 |
+
#: lib/utils.php:212 lib/utils.php:287
|
6928 |
msgid "Unauthenticated user"
|
6929 |
msgstr "Utilisateur non authentifié"
|
6930 |
|
6931 |
+
#: lib/utils.php:217
|
6932 |
msgid "Blocked post/page edition attempt"
|
6933 |
msgstr "Tentative d'édition de page/article bloquée"
|
6934 |
|
6940 |
"NinjaFirewall a bloqué une tentative de modification/création d'une page ou "
|
6941 |
"d'un article par un utilisateur qui n'avait pas les capacités nécessaires :"
|
6942 |
|
6943 |
+
#: lib/utils.php:226 lib/utils.php:307 lib/utils.php:426 lib/utils.php:1216
|
6944 |
msgid "Username:"
|
6945 |
msgstr "Utilisateur :"
|
6946 |
|
6948 |
msgid "Action:"
|
6949 |
msgstr "Action :"
|
6950 |
|
6951 |
+
#: lib/utils.php:242 lib/utils.php:322 lib/utils.php:439 lib/utils.php:1232
|
6952 |
+
#: lib/utils.php:1480
|
|
|
|
|
|
|
|
|
|
|
6953 |
msgid "A PHP backtrace has been attached to this message for your convenience."
|
6954 |
msgstr ""
|
6955 |
"La pile d'exécution de PHP est jointe à ce message pour votre commodité."
|
6956 |
|
6957 |
+
#: lib/utils.php:244 lib/utils.php:324 lib/utils.php:1234 lib/utils.php:1490
|
6958 |
msgid ""
|
6959 |
"This protection (and notification) can be turned off from NinjaFirewall "
|
6960 |
"\"Firewall Policies\" page."
|
6962 |
"Cette protection (et notification) peut être désactivée à partir de la page "
|
6963 |
"\"Politiques du Pare-feu\" de NinjaFirewall."
|
6964 |
|
6965 |
+
#: lib/utils.php:259 lib/utils.php:260 lib/utils.php:339 lib/utils.php:340
|
6966 |
+
#: lib/utils.php:456 lib/utils.php:457 lib/utils.php:1250 lib/utils.php:1251
|
6967 |
msgid "You are not allowed to perform this task."
|
6968 |
msgstr "Vous n'êtes pas autorisé à effectuer cette tâche."
|
6969 |
|
6971 |
msgid "Blocked post/page deletion attempt"
|
6972 |
msgstr "Tentative de suppression de page/article bloquée"
|
6973 |
|
6974 |
+
#: lib/utils.php:305
|
6975 |
msgid ""
|
6976 |
"NinjaFirewall has blocked an attempt to delete a post by a user who doesn't "
|
6977 |
"have the right capabilities:"
|
6979 |
"NinjaFirewall a bloqué une tentative de suppression d'une page ou d'un "
|
6980 |
"article par un utilisateur qui n'avait pas les capacités nécessaires :"
|
6981 |
|
6982 |
+
#: lib/utils.php:416
|
6983 |
msgid "Blocked user account creation"
|
6984 |
msgstr "Création de compte d'utilisateur bloquée"
|
6985 |
|
6986 |
+
#: lib/utils.php:423
|
6987 |
msgid "NinjaFirewall has blocked an attempt to create a user account:"
|
6988 |
msgstr ""
|
6989 |
"NinjaFirewall a bloqué une tentative de création d'un compte d'utilisateur :"
|
6990 |
|
6991 |
+
#: lib/utils.php:521
|
6992 |
+
#, php-format
|
6993 |
+
msgid "Backup file is corrupted, deleting it (%s)"
|
6994 |
+
msgstr "Le fichier de sauvegarde est corrompu, suppression en cours (%s)"
|
6995 |
+
|
6996 |
+
#: lib/utils.php:529
|
6997 |
+
#, php-format
|
6998 |
+
msgid ""
|
6999 |
+
"NinjaFirewall's options are corrupted, restoring them from last known good "
|
7000 |
+
"backup file (%s)"
|
7001 |
+
msgstr ""
|
7002 |
+
"Les options de NinjaFirewall sont corrompues, tentative de restauration à "
|
7003 |
+
"partir du dernier fichier de sauvegarde connu (%s)"
|
7004 |
+
|
7005 |
+
#: lib/utils.php:535
|
7006 |
+
msgid ""
|
7007 |
+
"NinjaFirewall's options are corrupted, restoring their default values (no "
|
7008 |
+
"valid backup found)"
|
7009 |
+
msgstr ""
|
7010 |
+
"Les options de NinjaFirewall sont corrompues, restauration des valeurs par "
|
7011 |
+
"défaut (il n'existe pas de fichier de sauvegarde)"
|
7012 |
+
|
7013 |
+
#: lib/utils.php:718
|
7014 |
msgid ""
|
7015 |
"Warning: Because NinjaFirewall's Login Protection is enabled, Site Health "
|
7016 |
"may return an error message regarding the loopback test (e.g., 404 or 401 "
|
7021 |
"concernant le test de la requête de bouclage (ex.: code d’état HTTP 404 ou "
|
7022 |
"401). Vous pouvez l'ignorer en toute sécurité."
|
7023 |
|
7024 |
+
#: lib/utils.php:741 lib/utils.php:745
|
7025 |
msgid "NinjaFirewall error"
|
7026 |
msgstr "NinjaFirewall Erreur"
|
7027 |
|
7028 |
+
#: lib/utils.php:742
|
7029 |
#, php-format
|
7030 |
msgid ""
|
7031 |
"%s directory cannot be created. Please review your installation and ensure "
|
7034 |
"Le répertoire %s ne peut pas être créé. Vérifiez votre installation et "
|
7035 |
"assurez vous que %s n'est pas en lecture seule."
|
7036 |
|
7037 |
+
#: lib/utils.php:746
|
7038 |
#, php-format
|
7039 |
msgid ""
|
7040 |
"%s directory is read-only. Please review your installation and ensure that "
|
7043 |
"Le répertoire %s est en lecture seule. Vérifiez votre installation et les "
|
7044 |
"permissions de %s."
|
7045 |
|
7046 |
+
#: lib/utils.php:761
|
7047 |
msgid "unknown error"
|
7048 |
msgstr "erreur inconnue"
|
7049 |
|
7050 |
+
#: lib/utils.php:763
|
7051 |
msgid "NinjaFirewall fatal error:"
|
7052 |
msgstr "NinjaFirewall erreur fatale :"
|
7053 |
|
7054 |
+
#: lib/utils.php:764
|
7055 |
msgid "Review your installation, your site is not protected."
|
7056 |
msgstr "Vérifiez votre installation, votre site n'est pas protégé."
|
7057 |
|
7058 |
+
#: lib/utils.php:785
|
7059 |
msgid "Alert: WordPress console login"
|
7060 |
msgstr "Alerte : Connexion à WordPress"
|
7061 |
|
7062 |
+
#: lib/utils.php:791
|
7063 |
msgid "Someone just logged in to your WordPress admin console:"
|
7064 |
msgstr "Quelqu'un vient de se connecter à votre Tableau de bord de WordPress:"
|
7065 |
|
7066 |
+
#: lib/utils.php:910 lib/utils.php:937
|
7067 |
msgid "Forbidden access"
|
7068 |
msgstr "Accès interdit"
|
7069 |
|
7070 |
+
#: lib/utils.php:956
|
7071 |
#, php-format
|
7072 |
msgid ""
|
7073 |
"<strong>ERROR</strong>: Invalid username, email address or password.<br /><a "
|
7076 |
"<strong>ERREUR</strong>: Identifiant, email ou mot de passe invalide.<br /"
|
7077 |
"><a href=\"%s\">Mot de passe perdu</a> ?"
|
7078 |
|
7079 |
+
#: lib/utils.php:1034
|
7080 |
msgid "[NinjaFirewall] Alert: Database changes detected"
|
7081 |
msgstr "[NinjaFirewall] Alerte: Modification dans la base de données"
|
7082 |
|
7083 |
+
#: lib/utils.php:1035
|
7084 |
msgid ""
|
7085 |
"NinjaFirewall has detected that one or more administrator accounts were "
|
7086 |
"modified in the database:"
|
7088 |
"NinjaFirewall a détecté que un ou plusieurs comptes d'administrateur ont été "
|
7089 |
"modifiés dans la base de données:"
|
7090 |
|
7091 |
+
#: lib/utils.php:1040
|
7092 |
#, php-format
|
7093 |
msgid "Total administrators : %s"
|
7094 |
msgstr "Nombre d'administrateurs : %s"
|
7095 |
|
7096 |
+
#: lib/utils.php:1049
|
7097 |
msgid ""
|
7098 |
"If you cannot see any modifications in the above fields, it is possible that "
|
7099 |
"the administrator password was changed."
|
7101 |
"Si vous ne voyez pas de modifications dans les données ci-dessus, il est "
|
7102 |
"possible que le mot de passe administrateur ait été changé."
|
7103 |
|
7104 |
+
#: lib/utils.php:1202
|
7105 |
msgid "Blocked privilege escalation attempt"
|
7106 |
msgstr "Tentatives d'élévation des privilèges"
|
7107 |
|
7108 |
+
#: lib/utils.php:1210
|
7109 |
msgid ""
|
7110 |
"NinjaFirewall has blocked an attempt to modify a user capability by someone "
|
7111 |
"who does not have administrative privileges:"
|
7113 |
"NinjaFirewall a bloqué une tentative de modification de certaines Capacités "
|
7114 |
"par un utilisateur ne disposant pas de privilèges administratifs :"
|
7115 |
|
7116 |
+
#: lib/utils.php:1262
|
7117 |
msgid ""
|
7118 |
"NinjaFirewall brute-force protection is enabled and you are temporarily "
|
7119 |
"whitelisted."
|
7121 |
"La protection de NinjaFirewall contre les attaques par force brute est "
|
7122 |
"activée. Vous êtes temporairement dans la liste blanche."
|
7123 |
|
7124 |
+
#: lib/utils.php:1277
|
7125 |
#, php-format
|
7126 |
msgid ""
|
7127 |
"Hey, it seems that you've been using NinjaFirewall for some time. If you "
|
7134 |
"a>. Il a fallu des milliers d'heures pour le développer, mais il suffit "
|
7135 |
"seulement de quelques minutes pour le noter. Merci !"
|
7136 |
|
7137 |
+
#: lib/utils.php:1452
|
7138 |
msgid ""
|
7139 |
"The attempt was blocked and the option was reversed to its original value."
|
7140 |
msgstr ""
|
7141 |
"La tentative a été bloquée et l'option a été remise à sa valeur d'origine."
|
7142 |
|
7143 |
+
#: lib/utils.php:1457
|
7144 |
msgid "Attempt to modify WordPress settings"
|
7145 |
msgstr "Tentative de modification des paramètres de WordPress"
|
7146 |
|
7147 |
+
#: lib/utils.php:1458
|
7148 |
msgid ""
|
7149 |
"NinjaFirewall has blocked an attempt to modify some important WordPress "
|
7150 |
"settings by a user that does not have administrative privileges:"
|
7153 |
"importants de WordPress par un utilisateur ne disposant pas de privilèges "
|
7154 |
"administratifs :"
|
7155 |
|
7156 |
+
#: lib/utils.php:1459 lib/utils.php:1468
|
7157 |
#, php-format
|
7158 |
msgid "Option: %s"
|
7159 |
msgstr "Option: %s"
|
7160 |
|
7161 |
+
#: lib/utils.php:1460
|
7162 |
#, php-format
|
7163 |
msgid "Original value: %s"
|
7164 |
msgstr "Valeur originale : %s"
|
7165 |
|
7166 |
+
#: lib/utils.php:1461
|
7167 |
#, php-format
|
7168 |
msgid "Modified value: %s"
|
7169 |
msgstr "Valeur modifiée : %s"
|
7170 |
|
7171 |
+
#: lib/utils.php:1462 lib/utils.php:1470
|
7172 |
#, php-format
|
7173 |
msgid "Action taken: %s"
|
7174 |
msgstr "Action prise : %s"
|
7175 |
|
7176 |
+
#: lib/utils.php:1466
|
7177 |
msgid "Code injection attempt in WordPress options table"
|
7178 |
msgstr "Tentative d'injection de code dans la table des options de WordPress"
|
7179 |
|
7180 |
+
#: lib/utils.php:1467
|
7181 |
msgid ""
|
7182 |
"NinjaFirewall has blocked an attempt to inject code in the WordPress options "
|
7183 |
"table by a user that does not have administrative privileges:"
|
7186 |
"options de WordPress par un utilisateur ne disposant pas de privilèges "
|
7187 |
"administratifs :"
|
7188 |
|
7189 |
+
#: lib/utils.php:1469
|
7190 |
#, php-format
|
7191 |
msgid "Code: %s"
|
7192 |
msgstr "Code : %s"
|
7193 |
|
7194 |
+
#: lib/utils.php:1565
|
7195 |
msgid "Important: NinjaFirewall has detected that this is a security update."
|
7196 |
msgstr ""
|
7197 |
"Important : NinjaFirewall a détecté que ceci est un mise à jour de sécurité."
|
7198 |
|
7199 |
+
#: lib/utils.php:1568
|
7200 |
msgid "More info about this warning."
|
7201 |
msgstr "En savoir plus."
|
7202 |
|
7203 |
+
#: lib/utils.php:1591
|
7204 |
+
#, php-format
|
7205 |
+
msgid "Cannot send notification, no valid email found (%s)"
|
7206 |
+
msgstr ""
|
7207 |
+
"Impossible d'envoyer la notification, aucune adresse e-mail valide n'a été "
|
7208 |
+
"trouvée (%s)"
|
7209 |
+
|
7210 |
+
#: lib/utils.php:1616
|
7211 |
+
#, php-format
|
7212 |
+
msgid ""
|
7213 |
+
"If you don't have access to that site any longer, you can remove your email "
|
7214 |
+
"by clicking the following link (valid for 12 hours): %s"
|
7215 |
+
msgstr ""
|
7216 |
+
"Si vous n'avez plus accès à ce site, vous pouvez supprimer votre e-mail en "
|
7217 |
+
"cliquant sur le lien suivant (valide pendant 12 heures) : %s"
|
7218 |
+
|
7219 |
+
#: lib/utils.php:1642
|
7220 |
#, php-format
|
7221 |
msgid "Error, cannot create the %s folder."
|
7222 |
msgstr "Erreur, impossible de créer le répertoire %s."
|
7223 |
|
7224 |
+
#: lib/utils.php:1643 lib/utils.php:1652 lib/utils.php:1661
|
7225 |
msgid "Check your server permissions and try again."
|
7226 |
msgstr "Vérifiez les autorisations de votre serveur et réessayez."
|
7227 |
|
7228 |
+
#: lib/utils.php:1651
|
7229 |
#, php-format
|
7230 |
msgid "Error, the %s folder is not writable."
|
7231 |
msgstr "Erreur, le répertoire %s est en lecture seule."
|
7232 |
|
7233 |
+
#: lib/utils.php:1660
|
7234 |
#, php-format
|
7235 |
msgid "Error, cannot write %s."
|
7236 |
msgstr "Erreur, impossible d'écrire dans %s."
|
7438 |
|
7439 |
#: lib/wpplus.php:143
|
7440 |
msgid ""
|
7441 |
+
"The Web Filter can monitor the response body, i.e., the output of the HTML "
|
7442 |
+
"page, and search it for some specific keywords, which can be useful to "
|
7443 |
"identify errors, hacked content and data leakage issues in the response body "
|
7444 |
"sent to your visitors."
|
7445 |
msgstr ""
|
7446 |
+
"Le Web Filter peut filtrer les requêtes sortantes, c'est à dire le contenu "
|
7447 |
+
"de la page HTML, et rechercher des mots clés spécifiques. Un tel filtre peut "
|
7448 |
+
"être utile pour identifier les erreurs, les contenus piratés et les "
|
7449 |
+
"problèmes de fuite de données proven"
|
|
|
7450 |
|
7451 |
#: lib/wpplus.php:144
|
7452 |
msgid ""
|
7750 |
"Impossible de récupérer les règles de l'utilisateur dans la base de données "
|
7751 |
"(#4)"
|
7752 |
|
7753 |
+
#: ninjafirewall.php:139
|
7754 |
msgid ""
|
7755 |
"You do not have \"unfiltered_html\" capability. Please enable it in order to "
|
7756 |
"run NinjaFirewall (or make sure you do not have \"DISALLOW_UNFILTERED_HTML\" "
|
7761 |
"la directive \"DISALLOW_UNFILTERED_HTML\" activée dans votre fichier wp-"
|
7762 |
"config.php)."
|
7763 |
|
7764 |
+
#: ninjafirewall.php:146
|
7765 |
#, php-format
|
7766 |
msgid ""
|
7767 |
"NinjaFirewall requires WordPress %s or greater but your current version is "
|
7769 |
msgstr ""
|
7770 |
"NinjaFirewall nécessite au moins WordPress %s mais votre version est %s."
|
7771 |
|
7772 |
+
#: ninjafirewall.php:150
|
7773 |
#, php-format
|
7774 |
msgid ""
|
7775 |
"NinjaFirewall requires PHP 5.3 or greater but your current version is %s."
|
7776 |
msgstr ""
|
7777 |
"NinjaFirewall nécessite au moins PHP 5.3 mais votre version de PHP est %s."
|
7778 |
|
7779 |
+
#: ninjafirewall.php:154
|
7780 |
#, php-format
|
7781 |
msgid "NinjaFirewall requires the PHP %s extension."
|
7782 |
msgstr "NinjaFirewall nécessite l'extension PHP %s."
|
7783 |
|
7784 |
+
#: ninjafirewall.php:158
|
7785 |
msgid ""
|
7786 |
"You have SAFE_MODE enabled. Please disable it, it is deprecated as of PHP "
|
7787 |
"5.3.0 (see http://php.net/safe-mode)."
|
7790 |
"devenue obsolète depuis PHP 5.3 et a été supprimée depuis PHP 5.4 (cf. "
|
7791 |
"http://php.net/safe-mode)."
|
7792 |
|
7793 |
+
#: ninjafirewall.php:162
|
7794 |
msgid "You are not allowed to activate NinjaFirewall."
|
7795 |
msgstr "Vous n’êtes pas autorisé à activer NinjaFirewall."
|
7796 |
|
7797 |
+
#: ninjafirewall.php:166
|
7798 |
msgid "NinjaFirewall is not compatible with Microsoft Windows."
|
7799 |
msgstr "NinjaFirewall n'est pas compatible avec Microsoft Windows."
|
7800 |
|
7801 |
+
#: ninjafirewall.php:304
|
7802 |
msgid ""
|
7803 |
"All fields will be restored to their default values and any changes you made "
|
7804 |
"will be lost. Continue?"
|
7806 |
"Tous les champs vont être re-initialisés et vos changements seront perdus. "
|
7807 |
"Continuer ?"
|
7808 |
|
7809 |
+
#: ninjafirewall.php:308
|
7810 |
msgid "Missing security nonce, try to reload the page."
|
7811 |
msgstr "La nonce de sécurité est manquante, essayer de recharger cette page."
|
7812 |
|
7813 |
+
#: ninjafirewall.php:310
|
7814 |
msgid "Please select the HTTP server in the list."
|
7815 |
msgstr "Sélectionnez votre serveur HTTP dans la list."
|
7816 |
|
7817 |
+
#: ninjafirewall.php:313
|
7818 |
msgid "Delete the firewall's error log ?"
|
7819 |
msgstr "Supprimer le journal des erreurs ?"
|
7820 |
|
7821 |
+
#: ninjafirewall.php:317
|
7822 |
msgid ""
|
7823 |
"This action will restore the selected configuration file and will override "
|
7824 |
"all your current firewall options, policies and rules. Continue?"
|
7827 |
"remplacera toutes les options, politiques et règles de pare-feu actuelles. "
|
7828 |
"Continuer ?"
|
7829 |
|
7830 |
+
#: ninjafirewall.php:321
|
7831 |
msgid ""
|
7832 |
"Any character that is not a letter [a-zA-Z], a digit [0-9], a dot [.], a "
|
7833 |
"hyphen [-] or an underscore [_] will be removed from the filename and "
|
7837 |
"[.], un trait d'union[-] ou un caractère de soulignement[_], sera supprimé "
|
7838 |
"du nom du fichier et remplacé par le caractère de substitution. Continuer ?"
|
7839 |
|
7840 |
+
#: ninjafirewall.php:323
|
7841 |
msgid ""
|
7842 |
"Ensure that you can access your admin console over HTTPS before enabling "
|
7843 |
"this option, otherwise you will lock yourself out of your site. Continue?"
|
7846 |
"option, sinon vous risqueriez de ne plus pouvoir accéder à l'interface "
|
7847 |
"d'administration. Continuer ?"
|
7848 |
|
7849 |
+
#: ninjafirewall.php:325
|
7850 |
msgid ""
|
7851 |
"WooCommerce is running: if you block accounts creation, your customers won't "
|
7852 |
"be able to sign up. Continue?"
|
7854 |
"WooCommerce est activé : si vous bloquez la création de comptes, vos clients "
|
7855 |
"ne pourront pas s'enregistrer. Continuer ?"
|
7856 |
|
7857 |
+
#: ninjafirewall.php:327
|
7858 |
msgid ""
|
7859 |
"Your blog has user registration enabled: if you block accounts creation, "
|
7860 |
"your customers won't be able to sign up. Continue?"
|
7862 |
"Votre blog accepte les inscriptions : si vous bloquez la création de "
|
7863 |
"comptes, vos clients ne pourront plus s'inscrire. Continuer ?"
|
7864 |
|
7865 |
+
#: ninjafirewall.php:329
|
7866 |
msgid ""
|
7867 |
"Your multisite installation allows users to register new sites: if you "
|
7868 |
"enable this option, they will likely get blocked when creating their blog. "
|
7871 |
"Les utilisateurs sont autorisés a créer des nouveaux sites : si vous activez "
|
7872 |
"cette option, ils ne pourront plus le faire. Continuer ?"
|
7873 |
|
7874 |
+
#: ninjafirewall.php:333
|
7875 |
msgid "Delete the current snapshot ?"
|
7876 |
msgstr "Supprimer l'instantané actuel ?"
|
7877 |
|
7878 |
+
#: ninjafirewall.php:337
|
7879 |
msgid "Invalid character."
|
7880 |
msgstr "Caractère invalide."
|
7881 |
|
7882 |
+
#: ninjafirewall.php:339
|
7883 |
msgid "\"admin\" is not acceptable, please choose another user name."
|
7884 |
msgstr ""
|
7885 |
"\"admin\" n\\'est pas acceptable, merci de bien vouloir choisir un autre "
|
7886 |
"identifiant."
|
7887 |
|
7888 |
+
#: ninjafirewall.php:341
|
7889 |
msgid "Please enter max 1024 character only."
|
7890 |
msgstr "Veuillez ne pas entrer plus de 1 024 caractères."
|
7891 |
|
7892 |
+
#: ninjafirewall.php:343
|
7893 |
msgid "Select when to enable the login protection."
|
7894 |
msgstr "Veuillez sélectionner quand activer la protection."
|
7895 |
|
7896 |
+
#: ninjafirewall.php:345
|
7897 |
msgid "Enter a name and a password for the HTTP authentication."
|
7898 |
msgstr ""
|
7899 |
"Veuillez entrer un nom d'utilisateur et mot de passe pour l'authentification "
|
7900 |
"HTTP."
|
7901 |
|
7902 |
+
#: ninjafirewall.php:349
|
7903 |
msgid "Your public key is not valid."
|
7904 |
msgstr "Votre clé publique n\\'est pas valide."
|
7905 |
|
7906 |
+
#: ninjafirewall.php:355
|
7907 |
msgid "No traffic yet, please wait"
|
7908 |
msgstr "Aucun visiteur actuellement, veuillez patienter"
|
7909 |
|
7910 |
+
#: ninjafirewall.php:357
|
7911 |
msgid "seconds..."
|
7912 |
msgstr "secondes..."
|
7913 |
|
7914 |
+
#: ninjafirewall.php:359
|
7915 |
msgid "Error: Live Log did not receive the expected response from your server:"
|
7916 |
msgstr "Erreur : le serveur distant n\\'a pas retourné la réponse attendue :"
|
7917 |
|
7918 |
+
#: ninjafirewall.php:361
|
7919 |
msgid "Error: URL does not seem to exist (404 Not Found):"
|
7920 |
msgstr "Erreur : l'URL ne semble pas exister (404 Not Found) :"
|
7921 |
|
7922 |
+
#: ninjafirewall.php:363
|
7923 |
msgid "Error: Cannot find your log file. Try to reload this page."
|
7924 |
msgstr ""
|
7925 |
"Erreur : Impossible de trouver le fichier log. Essayez de recharger cette "
|
7926 |
"page."
|
7927 |
|
7928 |
+
#: ninjafirewall.php:365
|
7929 |
msgid "Error: The HTTP server returned the following error code:"
|
7930 |
msgstr "Erreur : Le serveur HTTP a retourné le code d'erreur suivant :"
|
7931 |
|
7932 |
+
#: ninjafirewall.php:641 ninjafirewall.php:761 ninjafirewall.php:830
|
7933 |
msgid "Error: Security nonces do not match. Reload the page and try again."
|
7934 |
msgstr ""
|
7935 |
"Erreur : Les nonces de sécurité ne correspondent pas. Veuillez recharger "
|
7936 |
"cette page."
|
7937 |
|
7938 |
+
#: ninjafirewall.php:647
|
7939 |
msgid "Error: NinjaFirewall is disabled"
|
7940 |
msgstr "Erreur : NinjaFirewall est désactivé"
|
7941 |
|
7942 |
+
#: ninjafirewall.php:652 ninjafirewall.php:766 ninjafirewall.php:796
|
7943 |
#, php-format
|
7944 |
msgid "Error: missing parameter (%s)."
|
7945 |
msgstr "Erreur : Paramètre manquant (%s)."
|
7946 |
|
7947 |
+
#: ninjafirewall.php:892
|
7948 |
msgid "NinjaFirewall: Dashboard"
|
7949 |
msgstr "NinjaFirewall : Tableau de Bord"
|
7950 |
|
7951 |
+
#: ninjafirewall.php:896
|
7952 |
msgid "NinjaFirewall: Firewall Options"
|
7953 |
msgstr "NinjaFirewall : Options du Pare-feu"
|
7954 |
|
7955 |
+
#: ninjafirewall.php:900
|
7956 |
msgid "NinjaFirewall: Firewall Policies"
|
7957 |
msgstr "NinjaFirewall : Politiques du Pare-feu"
|
7958 |
|
7959 |
+
#: ninjafirewall.php:904
|
7960 |
msgid "NinjaFirewall: Monitoring"
|
7961 |
msgstr "NinjaFirewall : Monitoring"
|
7962 |
|
7963 |
+
#: ninjafirewall.php:914
|
7964 |
msgid "NinjaFirewall: Anti-Malware"
|
7965 |
msgstr "NinjaFirewall : Anti-Malware"
|
7966 |
|
7967 |
+
#: ninjafirewall.php:918
|
7968 |
msgid "NinjaFirewall: Network"
|
7969 |
msgstr "NinjaFirewall : Réseau"
|
7970 |
|
7971 |
+
#: ninjafirewall.php:922
|
7972 |
msgid "NinjaFirewall: Event Notifications"
|
7973 |
msgstr "NinjaFirewall : Notifications d’Événement"
|
7974 |
|
7975 |
+
#: ninjafirewall.php:926
|
7976 |
msgid "NinjaFirewall: Log-in Protection"
|
7977 |
msgstr "NinjaFirewall : Page de Connexion"
|
7978 |
|
7979 |
+
#: ninjafirewall.php:930
|
7980 |
msgid "NinjaFirewall: Logs"
|
7981 |
msgstr "NinjaFirewall : Journaux"
|
7982 |
|
7983 |
+
#: ninjafirewall.php:934
|
7984 |
msgid "NinjaFirewall: Security Rules"
|
7985 |
msgstr "NinjaFirewall : Règles de Sécurité"
|
7986 |
|
7987 |
+
#: ninjafirewall.php:978
|
7988 |
msgid "NinjaFirewall Settings"
|
7989 |
msgstr "Réglages de NinjaFirewall"
|
7990 |
|
7991 |
+
#: ninjafirewall.php:986
|
7992 |
msgid "NinjaFirewall is enabled"
|
7993 |
msgstr "NinjaFirewall est activé"
|
7994 |
|
7995 |
+
#: ninjafirewall.php:1126
|
7996 |
msgid "Access Restricted"
|
7997 |
msgstr "Accès limité"
|
7998 |
|
7999 |
+
#: ninjafirewall.php:1132
|
8000 |
msgid "Settings"
|
8001 |
msgstr "Réglages"
|
8002 |
|
8003 |
+
#: ninjafirewall.php:1133
|
8004 |
msgid "Upgrade to Premium"
|
8005 |
msgstr "Passez Premium !"
|
8006 |
|
8007 |
+
#: ninjafirewall.php:1134
|
8008 |
msgid "Rate it!"
|
8009 |
msgstr "Notez-le !"
|
8010 |
|
8011 |
+
#~ msgid ""
|
8012 |
+
#~ "In the Premium version of NinjaFirewall, the Access Control section "
|
8013 |
+
#~ "allows you to whitelist WordPress users depending on their roles."
|
8014 |
+
#~ msgstr ""
|
8015 |
+
#~ "Dans la version Premium de NinjaFirewall, la section Contrôle d'Accès "
|
8016 |
+
#~ "vous permet de mettre en liste blanche les utilisateurs de WordPress en "
|
8017 |
+
#~ "fonction de leurs rôles."
|
8018 |
+
|
8019 |
+
#~ msgid ""
|
8020 |
+
#~ "In the Premium version of NinjaFirewall, the IP Access Control section "
|
8021 |
+
#~ "allows you to whitelist WordPress users depending on their roles."
|
8022 |
+
#~ msgstr ""
|
8023 |
+
#~ "Dans la version Premium de NinjaFirewall, la section Contrôle d'accès par "
|
8024 |
+
#~ "IP vous permet de mettre en liste blanche les utilisateurs de WordPress "
|
8025 |
+
#~ "en fonction de leurs rôles."
|
8026 |
+
|
8027 |
+
#~ msgid ""
|
8028 |
+
#~ "The Web Filter can hook the response body, i.e., the output of the HTML "
|
8029 |
+
#~ "page, and search it for some specific keywords. Such filter can be useful "
|
8030 |
+
#~ "to identify errors, hacked content and data leakage issues in the "
|
8031 |
+
#~ "response body sent to your visitors."
|
8032 |
+
#~ msgstr ""
|
8033 |
+
#~ "Le Web Filter peut intercepter les requêtes sortantes, c'est à dire le "
|
8034 |
+
#~ "contenu de la page HTML, et rechercher des mots clés spécifiques. Un tel "
|
8035 |
+
#~ "filtre peut être utile pour identifier les erreurs, les contenus piratés "
|
8036 |
+
#~ "et les problèmes de fuite de données dans le corps de la réponse envoyée "
|
8037 |
+
#~ "à vos visiteurs."
|
8038 |
+
|
8039 |
#, php-format
|
8040 |
#~ msgid ""
|
8041 |
#~ "Log in to your Openlitespeed admin dashboard, click on \"Virtual Host\", "
|
languages/ninjafirewall.pot
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
msgid ""
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: Stable (latest release)\n"
|
5 |
-
"POT-Creation-Date: 2021-
|
6 |
"PO-Revision-Date: 2018-04-05 22:52+0700\n"
|
7 |
"Last-Translator: NinTechNet <contact@nintechnet.com>\n"
|
8 |
"Language-Team: \n"
|
@@ -19,7 +19,7 @@ msgstr ""
|
|
19 |
"X-Poedit-SearchPath-0: .\n"
|
20 |
"X-Poedit-SearchPathExcluded-0: /languages\n"
|
21 |
|
22 |
-
#: lib/anti_malware.php:24 ninjafirewall.php:
|
23 |
msgid "Anti-Malware"
|
24 |
msgstr ""
|
25 |
|
@@ -98,7 +98,7 @@ msgstr ""
|
|
98 |
msgid "Your changes have been saved."
|
99 |
msgstr ""
|
100 |
|
101 |
-
#: lib/dashboard.php:132 ninjafirewall.php:
|
102 |
msgid "Dashboard"
|
103 |
msgstr ""
|
104 |
|
@@ -305,7 +305,7 @@ msgstr ""
|
|
305 |
msgid "Centralized Logging"
|
306 |
msgstr ""
|
307 |
|
308 |
-
#: lib/dashboard.php:331 lib/security_rules_update.php:
|
309 |
#, php-format
|
310 |
msgid "Error: %s"
|
311 |
msgstr ""
|
@@ -314,6 +314,14 @@ msgstr ""
|
|
314 |
msgid "Source IP"
|
315 |
msgstr ""
|
316 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
317 |
#: lib/dashboard.php:347
|
318 |
#, php-format
|
319 |
msgid "You have a private IP : %s"
|
@@ -395,6 +403,10 @@ msgstr ""
|
|
395 |
msgid "Help & configuration"
|
396 |
msgstr ""
|
397 |
|
|
|
|
|
|
|
|
|
398 |
#: lib/dashboard_about.php:29
|
399 |
msgid "Our blog:"
|
400 |
msgstr ""
|
@@ -442,6 +454,13 @@ msgstr ""
|
|
442 |
msgid "Benchmarks"
|
443 |
msgstr ""
|
444 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
445 |
#: lib/dashboard_statistics.php:110
|
446 |
msgid "Average time per request"
|
447 |
msgstr ""
|
@@ -459,15 +478,15 @@ msgstr ""
|
|
459 |
msgid "Slowest request"
|
460 |
msgstr ""
|
461 |
|
462 |
-
#: lib/dashboard_statistics.php:130
|
463 |
msgid "Critical"
|
464 |
msgstr ""
|
465 |
|
466 |
-
#: lib/dashboard_statistics.php:131
|
467 |
msgid "High"
|
468 |
msgstr ""
|
469 |
|
470 |
-
#: lib/dashboard_statistics.php:132
|
471 |
msgid "Medium"
|
472 |
msgstr ""
|
473 |
|
@@ -475,7 +494,74 @@ msgstr ""
|
|
475 |
msgid "Select monthly stats to view..."
|
476 |
msgstr ""
|
477 |
|
478 |
-
#: lib/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
479 |
msgid "Event Notifications"
|
480 |
msgstr ""
|
481 |
|
@@ -593,22 +679,6 @@ msgstr ""
|
|
593 |
msgid "Send me a daily activity report"
|
594 |
msgstr ""
|
595 |
|
596 |
-
#: lib/event_notifications.php:154 lib/event_notifications.php:166
|
597 |
-
#: lib/firewall_options.php:78 lib/firewall_options.php:113
|
598 |
-
#: lib/firewall_policies.php:25 lib/login_protection.php:309
|
599 |
-
#: lib/login_protection.php:324 lib/login_protection.php:345
|
600 |
-
#: lib/login_protection.php:352 lib/network.php:70
|
601 |
-
msgid "Yes"
|
602 |
-
msgstr ""
|
603 |
-
|
604 |
-
#: lib/event_notifications.php:154 lib/event_notifications.php:166
|
605 |
-
#: lib/firewall_options.php:78 lib/firewall_options.php:113
|
606 |
-
#: lib/firewall_policies.php:26 lib/login_protection.php:309
|
607 |
-
#: lib/login_protection.php:324 lib/login_protection.php:345
|
608 |
-
#: lib/login_protection.php:352 lib/network.php:70
|
609 |
-
msgid "No"
|
610 |
-
msgstr ""
|
611 |
-
|
612 |
#: lib/event_notifications.php:161
|
613 |
msgid "Log"
|
614 |
msgstr ""
|
@@ -675,106 +745,114 @@ msgstr ""
|
|
675 |
msgid "Save Event Notifications"
|
676 |
msgstr ""
|
677 |
|
678 |
-
#: lib/event_notifications.php:
|
679 |
msgid "[NinjaFirewall] Daily Activity Report"
|
680 |
msgstr ""
|
681 |
|
682 |
-
#: lib/event_notifications.php:
|
683 |
#, php-format
|
684 |
msgid "Daily activity report for: %s"
|
685 |
msgstr ""
|
686 |
|
687 |
-
#: lib/event_notifications.php:
|
688 |
msgid "Date Range Processed: Yesterday"
|
689 |
msgstr ""
|
690 |
|
691 |
-
#: lib/event_notifications.php:
|
692 |
msgid "Blocked threats:"
|
693 |
msgstr ""
|
694 |
|
695 |
-
#: lib/event_notifications.php:
|
696 |
msgid "critical:"
|
697 |
msgstr ""
|
698 |
|
699 |
-
#: lib/event_notifications.php:
|
700 |
msgid "high:"
|
701 |
msgstr ""
|
702 |
|
703 |
-
#: lib/event_notifications.php:
|
704 |
msgid "medium:"
|
705 |
msgstr ""
|
706 |
|
707 |
-
#: lib/event_notifications.php:
|
708 |
msgid "Blocked brute-force attacks:"
|
709 |
msgstr ""
|
710 |
|
711 |
-
#: lib/event_notifications.php:
|
712 |
msgid ""
|
713 |
"This notification can be turned off from NinjaFirewall \"Event Notifications"
|
714 |
"\" page."
|
715 |
msgstr ""
|
716 |
|
717 |
-
#: lib/event_updates.php:
|
|
|
|
|
|
|
|
|
718 |
msgid "[NinjaFirewall] Warning: Security update available"
|
719 |
msgstr ""
|
720 |
|
721 |
-
#: lib/event_updates.php:
|
722 |
msgid ""
|
723 |
"NinjaFirewall has detected that there are security updates available for "
|
724 |
"your website:"
|
725 |
msgstr ""
|
726 |
|
727 |
-
#: lib/event_updates.php:
|
728 |
-
#: lib/utils.php:440 lib/utils.php:1101 lib/utils.php:1290 lib/utils.php:1562
|
729 |
-
msgid "Date:"
|
730 |
-
msgstr ""
|
731 |
-
|
732 |
-
#: lib/event_updates.php:166 lib/event_updates.php:168
|
733 |
#, php-format
|
734 |
msgid "Blog: %s"
|
735 |
msgstr ""
|
736 |
|
737 |
-
#: lib/event_updates.php:
|
738 |
-
#: lib/event_updates.php:
|
739 |
#, php-format
|
740 |
msgid "Your version: %s"
|
741 |
msgstr ""
|
742 |
|
743 |
-
#: lib/event_updates.php:
|
744 |
-
#: lib/event_updates.php:
|
745 |
#, php-format
|
746 |
msgid "New version: %s"
|
747 |
msgstr ""
|
748 |
|
749 |
-
#: lib/event_updates.php:
|
750 |
-
#: lib/event_updates.php:
|
751 |
msgid "Severity: This is an important security update"
|
752 |
msgstr ""
|
753 |
|
754 |
-
#: lib/event_updates.php:
|
755 |
-
#: lib/event_updates.php:
|
756 |
msgid "Severity: **This is a critical security update**"
|
757 |
msgstr ""
|
758 |
|
759 |
-
#: lib/event_updates.php:
|
760 |
-
#: lib/event_updates.php:
|
761 |
msgid "Type: Security fix"
|
762 |
msgstr ""
|
763 |
|
764 |
-
#: lib/event_updates.php:
|
765 |
#, php-format
|
766 |
msgid "Plugin: %s"
|
767 |
msgstr ""
|
768 |
|
769 |
-
#: lib/event_updates.php:
|
770 |
#, php-format
|
771 |
msgid "Theme: %s"
|
772 |
msgstr ""
|
773 |
|
774 |
-
#: lib/event_updates.php:
|
775 |
msgid "Don't leave your blog at risk, make sure to update as soon as possible."
|
776 |
msgstr ""
|
777 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
778 |
#: lib/events.php:27
|
779 |
msgid "Name:"
|
780 |
msgstr ""
|
@@ -816,32 +894,32 @@ msgstr ""
|
|
816 |
msgid "uploaded"
|
817 |
msgstr ""
|
818 |
|
819 |
-
#: lib/events.php:
|
820 |
#, php-format
|
821 |
msgid "[NinjaFirewall] Alert: %s"
|
822 |
msgstr ""
|
823 |
|
824 |
-
#: lib/events.php:
|
825 |
msgid "-Blog:"
|
826 |
msgstr ""
|
827 |
|
828 |
-
#: lib/events.php:
|
829 |
msgid "NinjaFirewall has detected the following activity on your account:"
|
830 |
msgstr ""
|
831 |
|
832 |
-
#: lib/events.php:
|
833 |
msgid "-User:"
|
834 |
msgstr ""
|
835 |
|
836 |
-
#: lib/events.php:
|
837 |
msgid "-IP:"
|
838 |
msgstr ""
|
839 |
|
840 |
-
#: lib/events.php:
|
841 |
msgid "-Date:"
|
842 |
msgstr ""
|
843 |
|
844 |
-
#: lib/firewall_options.php:29 ninjafirewall.php:
|
845 |
msgid "Firewall Options"
|
846 |
msgstr ""
|
847 |
|
@@ -983,52 +1061,52 @@ msgstr ""
|
|
983 |
msgid "There are no backup available yet, check back later."
|
984 |
msgstr ""
|
985 |
|
986 |
-
#: lib/firewall_options.php:
|
987 |
#, php-format
|
988 |
msgid "Uploaded file is either corrupted or its format is not supported (#%s)"
|
989 |
msgstr ""
|
990 |
|
991 |
-
#: lib/firewall_options.php:
|
992 |
msgid "The imported file is not compatible with that version of NinjaFirewall"
|
993 |
msgstr ""
|
994 |
|
995 |
-
#: lib/firewall_options.php:
|
996 |
msgid "[NinjaFirewall] Alert: Firewall is disabled"
|
997 |
msgstr ""
|
998 |
|
999 |
-
#: lib/firewall_options.php:
|
1000 |
-
#: ninjafirewall.php:
|
1001 |
msgid "-Blog :"
|
1002 |
msgstr ""
|
1003 |
|
1004 |
-
#: lib/firewall_options.php:
|
1005 |
msgid "Someone disabled NinjaFirewall from your WordPress admin dashboard:"
|
1006 |
msgstr ""
|
1007 |
|
1008 |
-
#: lib/firewall_options.php:
|
1009 |
msgid ""
|
1010 |
"NinjaFirewall is disabled because someone enabled debugging mode from your "
|
1011 |
"WordPress admin dashboard:"
|
1012 |
msgstr ""
|
1013 |
|
1014 |
-
#: lib/firewall_options.php:
|
1015 |
msgid "[NinjaFirewall] Alert: Firewall override settings"
|
1016 |
msgstr ""
|
1017 |
|
1018 |
-
#: lib/firewall_options.php:
|
1019 |
msgid ""
|
1020 |
"Someone imported a new configuration which overrode the firewall settings:"
|
1021 |
msgstr ""
|
1022 |
|
1023 |
-
#: lib/firewall_options.php:
|
1024 |
msgid "-User :"
|
1025 |
msgstr ""
|
1026 |
|
1027 |
-
#: lib/firewall_options.php:
|
1028 |
msgid "-IP :"
|
1029 |
msgstr ""
|
1030 |
|
1031 |
-
#: lib/firewall_options.php:
|
1032 |
msgid "-Date :"
|
1033 |
msgstr ""
|
1034 |
|
@@ -1039,7 +1117,7 @@ msgid ""
|
|
1039 |
"enable NinjaFirewall's Full WAF mode."
|
1040 |
msgstr ""
|
1041 |
|
1042 |
-
#: lib/firewall_policies.php:62 ninjafirewall.php:
|
1043 |
msgid "Firewall Policies"
|
1044 |
msgstr ""
|
1045 |
|
@@ -1087,6 +1165,17 @@ msgstr ""
|
|
1087 |
msgid "File Uploads"
|
1088 |
msgstr ""
|
1089 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1090 |
#: lib/firewall_policies.php:147
|
1091 |
msgid "Allow uploads"
|
1092 |
msgstr ""
|
@@ -1271,6 +1360,12 @@ msgstr ""
|
|
1271 |
msgid "Users Whitelist"
|
1272 |
msgstr ""
|
1273 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1274 |
#: lib/firewall_policies.php:518
|
1275 |
msgid "Add the Administrator to the whitelist (default)."
|
1276 |
msgstr ""
|
@@ -1359,6 +1454,12 @@ msgstr ""
|
|
1359 |
msgid "Block suspicious bots/scanners"
|
1360 |
msgstr ""
|
1361 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1362 |
#: lib/firewall_policies.php:713 lib/help.php:240
|
1363 |
msgid "HTTP_REFERER server variable"
|
1364 |
msgstr ""
|
@@ -2374,7 +2475,7 @@ msgid ""
|
|
2374 |
"package (third-party software, shell script, backdoor etc)."
|
2375 |
msgstr ""
|
2376 |
|
2377 |
-
#: lib/help.php:360 lib/network.php:32 ninjafirewall.php:
|
2378 |
msgid "Network"
|
2379 |
msgstr ""
|
2380 |
|
@@ -2410,7 +2511,7 @@ msgid ""
|
|
2410 |
"theme in order to take full control of your website."
|
2411 |
msgstr ""
|
2412 |
|
2413 |
-
#: lib/help.php:389 lib/login_protection.php:21 ninjafirewall.php:
|
2414 |
msgid "Login Protection"
|
2415 |
msgstr ""
|
2416 |
|
@@ -3355,61 +3456,61 @@ msgstr ""
|
|
3355 |
msgid "Low (default)"
|
3356 |
msgstr ""
|
3357 |
|
3358 |
-
#: lib/i18n-extra.php:
|
3359 |
msgid ""
|
3360 |
"If you are using a caching plugin, consult the contextual help before "
|
3361 |
"enabling the antispam."
|
3362 |
msgstr ""
|
3363 |
|
3364 |
-
#: lib/i18n-extra.php:
|
3365 |
msgid "Apply protection to"
|
3366 |
msgstr ""
|
3367 |
|
3368 |
-
#: lib/i18n-extra.php:
|
3369 |
msgid "Comment forms (defaut)"
|
3370 |
msgstr ""
|
3371 |
|
3372 |
-
#: lib/i18n-extra.php:
|
3373 |
msgid "User Registration form"
|
3374 |
msgstr ""
|
3375 |
|
3376 |
-
#: lib/i18n-extra.php:
|
3377 |
msgid "Save Antispam options"
|
3378 |
msgstr ""
|
3379 |
|
3380 |
-
#: lib/i18n-extra.php:
|
3381 |
msgid "Please enable JavaScript"
|
3382 |
msgstr ""
|
3383 |
|
3384 |
-
#: lib/i18n-extra.php:
|
3385 |
msgid "Sorry, this looks like spam to me."
|
3386 |
msgstr ""
|
3387 |
|
3388 |
-
#: lib/i18n-extra.php:
|
3389 |
msgid ""
|
3390 |
"Error: You must be whitelisted in order to use that feature: click on the <a "
|
3391 |
"href=\"?page=nfsubaccess\">Access Control</a> menu and ensure that the \"Do "
|
3392 |
"not block the following users\" option is enabled for the Admin/Super Admin."
|
3393 |
msgstr ""
|
3394 |
|
3395 |
-
#: lib/i18n-extra.php:
|
3396 |
msgid ""
|
3397 |
"Your license is valid until the indicated expiration date. If you don't "
|
3398 |
"renew it after this date, NinjaFirewall will keep working and protecting "
|
3399 |
"your website as usual, but updates/upgrades will stop."
|
3400 |
msgstr ""
|
3401 |
|
3402 |
-
#: lib/i18n-extra.php:
|
3403 |
#, php-format
|
3404 |
msgid ""
|
3405 |
"You can renew your license from <a href=\"%s\">NinTechNet.com</a> website."
|
3406 |
msgstr ""
|
3407 |
|
3408 |
-
#: lib/i18n-extra.php:
|
3409 |
msgid "Use shared memory"
|
3410 |
msgstr ""
|
3411 |
|
3412 |
-
#: lib/i18n-extra.php:
|
3413 |
msgid ""
|
3414 |
"This feature allows NinjaFirewall to use Unix shared memory segments in "
|
3415 |
"order to speed up all operations. The firewall will no longer need to "
|
@@ -3419,14 +3520,14 @@ msgid ""
|
|
3419 |
"processing speed from 25% to 30%, prevent blocking I/O and slow queries."
|
3420 |
msgstr ""
|
3421 |
|
3422 |
-
#: lib/i18n-extra.php:
|
3423 |
msgid ""
|
3424 |
"This option requires that your PHP version was compiled with the <code>--"
|
3425 |
"enable-shmop</code> parameter, otherwise, if it is not compatible with your "
|
3426 |
"server/hosting environment, it will be disabled."
|
3427 |
msgstr ""
|
3428 |
|
3429 |
-
#: lib/i18n-extra.php:
|
3430 |
#, php-format
|
3431 |
msgid ""
|
3432 |
"If you are using <a href=\"%s\">GB2312</a> character set (A.K.A <code>GBK</"
|
@@ -3436,24 +3537,24 @@ msgid ""
|
|
3436 |
"used by that charset."
|
3437 |
msgstr ""
|
3438 |
|
3439 |
-
#: lib/i18n-extra.php:
|
3440 |
msgid "Language"
|
3441 |
msgstr ""
|
3442 |
|
3443 |
-
#: lib/i18n-extra.php:
|
3444 |
msgid ""
|
3445 |
"When this option is enabled, NinjaFirewall will download, if available, the "
|
3446 |
"corresponding language files from the WordPress repo. Then, every hour, it "
|
3447 |
"will check if there's a new version and will download it."
|
3448 |
msgstr ""
|
3449 |
|
3450 |
-
#: lib/i18n-extra.php:
|
3451 |
msgid ""
|
3452 |
"Note that this does not apply to <code>en_US</code> and <code>fr_FR</code> "
|
3453 |
"locales because they are already included with NinjaFirewall."
|
3454 |
msgstr ""
|
3455 |
|
3456 |
-
#: lib/i18n-extra.php:
|
3457 |
#, php-format
|
3458 |
msgid ""
|
3459 |
"This options lets you export you current configuration or import it from "
|
@@ -3463,7 +3564,7 @@ msgid ""
|
|
3463 |
"configuration, except your current license."
|
3464 |
msgstr ""
|
3465 |
|
3466 |
-
#: lib/i18n-extra.php:
|
3467 |
msgid ""
|
3468 |
"You can allow/disallow uploads, or allow uploads but block scripts (PHP, "
|
3469 |
"CGI, Ruby, Python, bash/shell, JavaScript), C/C++ source code, binaries (MZ/"
|
@@ -3471,11 +3572,11 @@ msgid ""
|
|
3471 |
"SVG files containing Javascript/XML events."
|
3472 |
msgstr ""
|
3473 |
|
3474 |
-
#: lib/i18n-extra.php:
|
3475 |
msgid "Maximum allowed file size"
|
3476 |
msgstr ""
|
3477 |
|
3478 |
-
#: lib/i18n-extra.php:
|
3479 |
msgid ""
|
3480 |
"If you allow uploads, you can select the maximum size of an uploaded file. "
|
3481 |
"Any file bigger than this value will be rejected. Note that if your PHP "
|
@@ -3483,11 +3584,11 @@ msgid ""
|
|
3483 |
"be used before NinjaFirewall."
|
3484 |
msgstr ""
|
3485 |
|
3486 |
-
#: lib/i18n-extra.php:
|
3487 |
msgid "Decode Base64-encoded <code>POST</code> variable:"
|
3488 |
msgstr ""
|
3489 |
|
3490 |
-
#: lib/i18n-extra.php:
|
3491 |
#, php-format
|
3492 |
msgid ""
|
3493 |
"Object Serialization is a PHP feature used by many applications to generate "
|
@@ -3498,7 +3599,7 @@ msgid ""
|
|
3498 |
"request, cookies, user agent and referrer variables."
|
3499 |
msgstr ""
|
3500 |
|
3501 |
-
#: lib/i18n-extra.php:
|
3502 |
msgid ""
|
3503 |
"This option will reject any <code>GET</code> or <code>POST</code> request, "
|
3504 |
"<code>COOKIE</code>, <code>HTTP_USER_AGENT</code>, <code>REQUEST_URI</code>, "
|
@@ -3507,106 +3608,106 @@ msgid ""
|
|
3507 |
"is dangerous and should always be rejected."
|
3508 |
msgstr ""
|
3509 |
|
3510 |
-
#: lib/i18n-extra.php:
|
3511 |
msgid ""
|
3512 |
"This option will block any <code>GET</code> or <code>POST</code> request "
|
3513 |
"containing the localhost IP (127.0.0.1). It can be useful to block SQL "
|
3514 |
"dumpers and various hacker's shell scripts."
|
3515 |
msgstr ""
|
3516 |
|
3517 |
-
#: lib/i18n-extra.php:
|
3518 |
msgid ""
|
3519 |
"Access Control is a powerful set of directives that can be used to allow or "
|
3520 |
"restrict access to your website based on many criteria."
|
3521 |
msgstr ""
|
3522 |
|
3523 |
-
#: lib/i18n-extra.php:
|
3524 |
msgid ""
|
3525 |
"To make better use of them, it is important to understand NinjaFirewall's "
|
3526 |
"directives processing order."
|
3527 |
msgstr ""
|
3528 |
|
3529 |
-
#: lib/i18n-extra.php:
|
3530 |
msgid ""
|
3531 |
"Because NinjaFirewall is a PHP firewall, its Access Control options apply to "
|
3532 |
"PHP scripts, not to static elements (e.g., images, JS, CSS etc). Depending "
|
3533 |
"on your configuration, they can also apply to HTML pages."
|
3534 |
msgstr ""
|
3535 |
|
3536 |
-
#: lib/i18n-extra.php:
|
3537 |
msgid "Processing order:"
|
3538 |
msgstr ""
|
3539 |
|
3540 |
-
#: lib/i18n-extra.php:
|
3541 |
msgid "Incoming HTTP request"
|
3542 |
msgstr ""
|
3543 |
|
3544 |
-
#: lib/i18n-extra.php:
|
3545 |
#, php-format
|
3546 |
msgid "%s file"
|
3547 |
msgstr ""
|
3548 |
|
3549 |
-
#: lib/i18n-extra.php:
|
3550 |
msgid "Login Protection."
|
3551 |
msgstr ""
|
3552 |
|
3553 |
-
#: lib/i18n-extra.php:
|
3554 |
msgid "Access Control (except User Input Access Control):"
|
3555 |
msgstr ""
|
3556 |
|
3557 |
-
#: lib/i18n-extra.php:
|
3558 |
msgid "Role-based Access Control."
|
3559 |
msgstr ""
|
3560 |
|
3561 |
-
#: lib/i18n-extra.php:
|
3562 |
msgid "Allowed IPs."
|
3563 |
msgstr ""
|
3564 |
|
3565 |
-
#: lib/i18n-extra.php:
|
3566 |
msgid "Blocked IPs."
|
3567 |
msgstr ""
|
3568 |
|
3569 |
-
#: lib/i18n-extra.php:
|
3570 |
msgid "Allowed URLs."
|
3571 |
msgstr ""
|
3572 |
|
3573 |
-
#: lib/i18n-extra.php:
|
3574 |
msgid "Blocked URLs."
|
3575 |
msgstr ""
|
3576 |
|
3577 |
-
#: lib/i18n-extra.php:
|
3578 |
msgid "Bot Access Control."
|
3579 |
msgstr ""
|
3580 |
|
3581 |
-
#: lib/i18n-extra.php:
|
3582 |
msgid "Geolocation."
|
3583 |
msgstr ""
|
3584 |
|
3585 |
-
#: lib/i18n-extra.php:
|
3586 |
msgid "Rate Limiting."
|
3587 |
msgstr ""
|
3588 |
|
3589 |
-
#: lib/i18n-extra.php:
|
3590 |
msgid "File Guard."
|
3591 |
msgstr ""
|
3592 |
|
3593 |
-
#: lib/i18n-extra.php:
|
3594 |
msgid "NinjaFirewall built-in rules and policies + User Input Access Control."
|
3595 |
msgstr ""
|
3596 |
|
3597 |
-
#: lib/i18n-extra.php:
|
3598 |
msgid "Response body"
|
3599 |
msgstr ""
|
3600 |
|
3601 |
-
#: lib/i18n-extra.php:
|
3602 |
msgid "HTTP response headers (Firewall Policies)."
|
3603 |
msgstr ""
|
3604 |
|
3605 |
-
#: lib/i18n-extra.php:
|
3606 |
msgid "Web Filter."
|
3607 |
msgstr ""
|
3608 |
|
3609 |
-
#: lib/i18n-extra.php:
|
3610 |
#, php-format
|
3611 |
msgid ""
|
3612 |
"By default, any logged in WordPress administrator will not be blocked by "
|
@@ -3618,11 +3719,11 @@ msgid ""
|
|
3618 |
"enforced."
|
3619 |
msgstr ""
|
3620 |
|
3621 |
-
#: lib/i18n-extra.php:
|
3622 |
msgid "You can also add other users to the whitelist, depending on their role."
|
3623 |
msgstr ""
|
3624 |
|
3625 |
-
#: lib/i18n-extra.php:
|
3626 |
#, php-format
|
3627 |
msgid ""
|
3628 |
"this option should be used if you are behind a reverse proxy, a load "
|
@@ -3636,25 +3737,25 @@ msgid ""
|
|
3636 |
"NinjaFirewall will fall back to <code>REMOTE_ADDR</code>."
|
3637 |
msgstr ""
|
3638 |
|
3639 |
-
#: lib/i18n-extra.php:
|
3640 |
msgid ""
|
3641 |
"This option lets you select the HTTP method(s). All Access Control "
|
3642 |
"directives (Geolocation, IPs, bots and URLs) will only apply to the selected "
|
3643 |
"methods."
|
3644 |
msgstr ""
|
3645 |
|
3646 |
-
#: lib/i18n-extra.php:
|
3647 |
msgid ""
|
3648 |
"It does not apply to the \"Firewall Policies\" options, which use their own "
|
3649 |
"ones."
|
3650 |
msgstr ""
|
3651 |
|
3652 |
-
#: lib/i18n-extra.php:
|
3653 |
msgid ""
|
3654 |
"You can filter and block traffic coming from specific countries/territories."
|
3655 |
msgstr ""
|
3656 |
|
3657 |
-
#: lib/i18n-extra.php:
|
3658 |
msgid ""
|
3659 |
"This is the two-letter code that is used to define a country/territory (e."
|
3660 |
"g., US, UK, FR, DE etc), based on the visitors IP. NinjaFirewall can either "
|
@@ -3662,7 +3763,7 @@ msgid ""
|
|
3662 |
"your HTTP server (e.g., <code>GEOIP_COUNTRY_CODE</code>)."
|
3663 |
msgstr ""
|
3664 |
|
3665 |
-
#: lib/i18n-extra.php:
|
3666 |
#, php-format
|
3667 |
msgid ""
|
3668 |
"You can add/remove any country/territory from the two listboxes. For more "
|
@@ -3670,18 +3771,18 @@ msgid ""
|
|
3670 |
"want to consult <a href=\"%s\">the MaxMind GeoIP online help</a>."
|
3671 |
msgstr ""
|
3672 |
|
3673 |
-
#: lib/i18n-extra.php:
|
3674 |
msgid ""
|
3675 |
"Whether geolocation should apply to the whole site or to specific URLs only "
|
3676 |
"(e.g., /wp-login.php, /xmlrpc.php etc). Leave all fields empty if you want "
|
3677 |
"it to apply to the whole site."
|
3678 |
msgstr ""
|
3679 |
|
3680 |
-
#: lib/i18n-extra.php:
|
3681 |
msgid "Add <code>NINJA_COUNTRY_CODE</code> to PHP headers?"
|
3682 |
msgstr ""
|
3683 |
|
3684 |
-
#: lib/i18n-extra.php:
|
3685 |
msgid ""
|
3686 |
"After retrieving the two-letter country/territory code, NinjaFirewall can "
|
3687 |
"add it to the PHP headers in the <code>$_SERVER[\"NINJA_COUNTRY_CODE\"]</"
|
@@ -3689,48 +3790,48 @@ msgid ""
|
|
3689 |
"visitors location, simply use that variable."
|
3690 |
msgstr ""
|
3691 |
|
3692 |
-
#: lib/i18n-extra.php:
|
3693 |
msgid ""
|
3694 |
"If NinjaFirewall cannot find the two-letter ISO 3166 code, it will replace "
|
3695 |
"it with 2 hyphens (<code>--</code>)."
|
3696 |
msgstr ""
|
3697 |
|
3698 |
-
#: lib/i18n-extra.php:
|
3699 |
msgid ""
|
3700 |
"PHP code example to use in your theme or plugin to geolocate your visitors:"
|
3701 |
msgstr ""
|
3702 |
|
3703 |
-
#: lib/i18n-extra.php:
|
3704 |
msgid ""
|
3705 |
"NinjaFirewall includes GeoLite data created by MaxMind, available from "
|
3706 |
"http://www.maxmind.com"
|
3707 |
msgstr ""
|
3708 |
|
3709 |
-
#: lib/i18n-extra.php:
|
3710 |
msgid "IP / URL / Bot Access Control"
|
3711 |
msgstr ""
|
3712 |
|
3713 |
-
#: lib/i18n-extra.php:
|
3714 |
msgid ""
|
3715 |
"You can permanently allow/block an IP, a whole range of IP addresses or AS "
|
3716 |
"numbers (Autonomous System number). IPv4 and IPv6 are fully supported by "
|
3717 |
"NinjaFirewall."
|
3718 |
msgstr ""
|
3719 |
|
3720 |
-
#: lib/i18n-extra.php:
|
3721 |
msgid "Full IP:"
|
3722 |
msgstr ""
|
3723 |
|
3724 |
-
#: lib/i18n-extra.php:
|
3725 |
#, php-format
|
3726 |
msgid "IP ranges using CIDR notation: %s or %s."
|
3727 |
msgstr ""
|
3728 |
|
3729 |
-
#: lib/i18n-extra.php:
|
3730 |
msgid "Autonomous System number:"
|
3731 |
msgstr ""
|
3732 |
|
3733 |
-
#: lib/i18n-extra.php:
|
3734 |
msgid ""
|
3735 |
"This option allows you to slow down aggressive bots, crawlers, web scrapers "
|
3736 |
"or even small HTTP attacks. Any IP reaching the defined threshold will be "
|
@@ -3743,14 +3844,14 @@ msgid ""
|
|
3743 |
"turned off."
|
3744 |
msgstr ""
|
3745 |
|
3746 |
-
#: lib/i18n-extra.php:
|
3747 |
msgid ""
|
3748 |
"IPs temporarily banned by the Rate Limiting option can be unblocked "
|
3749 |
"immediately by clicking either the \"Save Access Control Directives\" or "
|
3750 |
"\"Restore Default Values\" buttons at the bottom of this page."
|
3751 |
msgstr ""
|
3752 |
|
3753 |
-
#: lib/i18n-extra.php:
|
3754 |
msgid ""
|
3755 |
"Because NinjaFirewall can handle a lot of HTTP requests per second and block "
|
3756 |
"IPs even before your blog is loaded, we strongly recommend that you disable "
|
@@ -3760,43 +3861,43 @@ msgid ""
|
|
3760 |
"during an attack."
|
3761 |
msgstr ""
|
3762 |
|
3763 |
-
#: lib/i18n-extra.php:
|
3764 |
msgid ""
|
3765 |
"You can permanently allow/block any access to one or more PHP scripts based "
|
3766 |
"on their path, relative to the web root (<code>SCRIPT_NAME</code>). You can "
|
3767 |
"enter either a full or partial path (case-sensitive)."
|
3768 |
msgstr ""
|
3769 |
|
3770 |
-
#: lib/i18n-extra.php:
|
3771 |
msgid ""
|
3772 |
"<code>/foo/bar.php</code> will block any access to the <code>bar.php</code> "
|
3773 |
"script located inside a <code>/foo/</code> directory"
|
3774 |
msgstr ""
|
3775 |
|
3776 |
-
#: lib/i18n-extra.php:
|
3777 |
msgid "etc"
|
3778 |
msgstr ""
|
3779 |
|
3780 |
-
#: lib/i18n-extra.php:
|
3781 |
msgid ""
|
3782 |
"<code>/foo/</code> will block access to all PHP scripts located inside a "
|
3783 |
"<code>/foo/</code> directory and its sub-directories."
|
3784 |
msgstr ""
|
3785 |
|
3786 |
-
#: lib/i18n-extra.php:
|
3787 |
msgid ""
|
3788 |
"Note that the \"Firewall Policies\" page already includes restrictions to "
|
3789 |
"some WordPress directories."
|
3790 |
msgstr ""
|
3791 |
|
3792 |
-
#: lib/i18n-extra.php:
|
3793 |
msgid ""
|
3794 |
"You can block bots, scanners and various crawlers based on the "
|
3795 |
"<code>HTTP_USER_AGENT</code> variable. You can enter either a full or "
|
3796 |
"partial name (case-insensitive)."
|
3797 |
msgstr ""
|
3798 |
|
3799 |
-
#: lib/i18n-extra.php:
|
3800 |
msgid ""
|
3801 |
"You can select to ignore or block some specific user input. It applies to "
|
3802 |
"the <code>GET</code>, <code>POST</code> and <code>COOKIE</code> global "
|
@@ -3804,34 +3905,34 @@ msgid ""
|
|
3804 |
"\"]</code>:"
|
3805 |
msgstr ""
|
3806 |
|
3807 |
-
#: lib/i18n-extra.php:
|
3808 |
msgid ""
|
3809 |
"When an input is added to the \"Unfiltered input\" list, it will not be "
|
3810 |
"filtered or sanitised. All other input present in the request will be "
|
3811 |
"filtered."
|
3812 |
msgstr ""
|
3813 |
|
3814 |
-
#: lib/i18n-extra.php:
|
3815 |
msgid ""
|
3816 |
"When an input is added to the \"Blocked input\", NinjaFirewall will block "
|
3817 |
"the request and close the connection if that input is found in the request."
|
3818 |
msgstr ""
|
3819 |
|
3820 |
-
#: lib/i18n-extra.php:
|
3821 |
msgid "Log Event"
|
3822 |
msgstr ""
|
3823 |
|
3824 |
-
#: lib/i18n-extra.php:
|
3825 |
msgid ""
|
3826 |
"You can enable/disable firewall logging for each access control directive "
|
3827 |
"separately."
|
3828 |
msgstr ""
|
3829 |
|
3830 |
-
#: lib/i18n-extra.php:
|
3831 |
msgid "Web Filter"
|
3832 |
msgstr ""
|
3833 |
|
3834 |
-
#: lib/i18n-extra.php:
|
3835 |
msgid ""
|
3836 |
"If NinjaFirewall can hook and scan incoming requests, it can also hook the "
|
3837 |
"response body (i.e., the output of the HTML page right before it is sent to "
|
@@ -3841,27 +3942,27 @@ msgid ""
|
|
3841 |
"hackers shell script, redirections and even errors (PHP/MySQL errors)."
|
3842 |
msgstr ""
|
3843 |
|
3844 |
-
#: lib/i18n-extra.php:
|
3845 |
msgid ""
|
3846 |
"In the case of a positive detection, NinjaFirewall will not block the "
|
3847 |
"response body but will send you an alert by email."
|
3848 |
msgstr ""
|
3849 |
|
3850 |
-
#: lib/i18n-extra.php:
|
3851 |
msgid "Search HTML page for the following keywords"
|
3852 |
msgstr ""
|
3853 |
|
3854 |
-
#: lib/i18n-extra.php:
|
3855 |
msgid ""
|
3856 |
"You can enter any keyword from 4 to 150 characters and select whether the "
|
3857 |
"search will be case sensitive or not."
|
3858 |
msgstr ""
|
3859 |
|
3860 |
-
#: lib/i18n-extra.php:
|
3861 |
msgid "Email Alerts"
|
3862 |
msgstr ""
|
3863 |
|
3864 |
-
#: lib/i18n-extra.php:
|
3865 |
msgid ""
|
3866 |
"You can use the notification throttling option to limit the frequency of "
|
3867 |
"alerts sent to you (and written to the firewall log) and select whether you "
|
@@ -3870,14 +3971,14 @@ msgid ""
|
|
3870 |
"in the \"Event Notifications\" menu."
|
3871 |
msgstr ""
|
3872 |
|
3873 |
-
#: lib/i18n-extra.php:
|
3874 |
msgid ""
|
3875 |
"Response body filtering can be resource-intensive. Try to limit the number "
|
3876 |
"of keywords to what you really need (less than 10) and, if possible, prefer "
|
3877 |
"case sensitive to case insensitive filtering."
|
3878 |
msgstr ""
|
3879 |
|
3880 |
-
#: lib/i18n-extra.php:
|
3881 |
msgid ""
|
3882 |
"NinjaFirewall can protect your blog against spam without user interaction (e."
|
3883 |
"g., CAPTCHA, math puzzles etc). The protection is totally transparent to "
|
@@ -3886,132 +3987,132 @@ msgid ""
|
|
3886 |
"generate your forms, they will not be protected against spam."
|
3887 |
msgstr ""
|
3888 |
|
3889 |
-
#: lib/i18n-extra.php:
|
3890 |
msgid "Protection level:"
|
3891 |
msgstr ""
|
3892 |
|
3893 |
-
#: lib/i18n-extra.php:
|
3894 |
msgid ""
|
3895 |
"Select the level of protection. In most cases, <strong>Low</strong> should "
|
3896 |
"be enough."
|
3897 |
msgstr ""
|
3898 |
|
3899 |
-
#: lib/i18n-extra.php:
|
3900 |
msgid "Apply protection to:"
|
3901 |
msgstr ""
|
3902 |
|
3903 |
-
#: lib/i18n-extra.php:
|
3904 |
msgid "Whether to protect comment and/or registration forms."
|
3905 |
msgstr ""
|
3906 |
|
3907 |
-
#: lib/i18n-extra.php:
|
3908 |
msgid "If you are using a caching plugin, ensure you follow these steps:"
|
3909 |
msgstr ""
|
3910 |
|
3911 |
-
#: lib/i18n-extra.php:
|
3912 |
msgid ""
|
3913 |
"Set the Protection Level to \"Low\" only. Do not use another value, "
|
3914 |
"otherwise the antispam could behave erratically after a while."
|
3915 |
msgstr ""
|
3916 |
|
3917 |
-
#: lib/i18n-extra.php:
|
3918 |
msgid ""
|
3919 |
"Flush/clear your cache immediately after enabling or disabling the antispam."
|
3920 |
msgstr ""
|
3921 |
|
3922 |
-
#: lib/i18n-extra.php:
|
3923 |
msgid ""
|
3924 |
"The firewall log displays blocked and sanitised requests as well as some "
|
3925 |
"useful information. It has 6 columns:"
|
3926 |
msgstr ""
|
3927 |
|
3928 |
-
#: lib/i18n-extra.php:
|
3929 |
msgid ""
|
3930 |
"RULE : reference of the NinjaFirewall built-in security rule that triggered "
|
3931 |
"the action. A hyphen (<code>-</code>) instead of a number means it was a "
|
3932 |
"rule from the \"Firewall Policies\" or \"Access Control\" pages."
|
3933 |
msgstr ""
|
3934 |
|
3935 |
-
#: lib/i18n-extra.php:
|
3936 |
msgid "The log can also be exported as a TSV (tab-separated values) text file."
|
3937 |
msgstr ""
|
3938 |
|
3939 |
-
#: lib/i18n-extra.php:
|
3940 |
msgid "Enable firewall log"
|
3941 |
msgstr ""
|
3942 |
|
3943 |
-
#: lib/i18n-extra.php:
|
3944 |
msgid "You can disable/enable the firewall log from this page."
|
3945 |
msgstr ""
|
3946 |
|
3947 |
-
#: lib/i18n-extra.php:
|
3948 |
msgid ""
|
3949 |
"Brute-force attacks will still be written to the firewall log, even if you "
|
3950 |
"disable it."
|
3951 |
msgstr ""
|
3952 |
|
3953 |
-
#: lib/i18n-extra.php:
|
3954 |
msgid "Auto-rotate log"
|
3955 |
msgstr ""
|
3956 |
|
3957 |
-
#: lib/i18n-extra.php:
|
3958 |
msgid ""
|
3959 |
"NinjaFirewall will rotate its log automatically on the very first day of "
|
3960 |
"each month. If your site is very busy, you may want to allow it to rotate "
|
3961 |
"the log when it reaches a certain size (MB) as well."
|
3962 |
msgstr ""
|
3963 |
|
3964 |
-
#: lib/i18n-extra.php:
|
3965 |
msgid ""
|
3966 |
"By default, if will rotate the log each month or earlier, if it reaches 2 "
|
3967 |
"megabytes."
|
3968 |
msgstr ""
|
3969 |
|
3970 |
-
#: lib/i18n-extra.php:
|
3971 |
msgid ""
|
3972 |
"Rotated logs, if any, can be selected and viewed from the dropdown menu."
|
3973 |
msgstr ""
|
3974 |
|
3975 |
-
#: lib/i18n-extra.php:
|
3976 |
msgid "Syslog"
|
3977 |
msgstr ""
|
3978 |
|
3979 |
-
#: lib/i18n-extra.php:
|
3980 |
msgid ""
|
3981 |
"In addition to the firewall log, events can also be redirected to the syslog "
|
3982 |
"server (<code>LOG_USER</code> facility)."
|
3983 |
msgstr ""
|
3984 |
|
3985 |
-
#: lib/i18n-extra.php:
|
3986 |
msgid ""
|
3987 |
"If you have a shared hosting account, keep this option disabled as you do "
|
3988 |
"not have any access to the server logs."
|
3989 |
msgstr ""
|
3990 |
|
3991 |
-
#: lib/i18n-extra.php:
|
3992 |
msgid "The logline uses the following format:"
|
3993 |
msgstr ""
|
3994 |
|
3995 |
-
#: lib/i18n-extra.php:
|
3996 |
msgid ""
|
3997 |
"BB: the level of severity as it appears in the firewall log. It can be "
|
3998 |
"<code>CRITICAL</CODE>, <CODE>HIGH</CODE>, <CODE>MEDIUM</CODE>, <CODE>INFO</"
|
3999 |
"CODE>, <CODE>UPLOAD</CODE> or <CODE>DEBUG_ON</CODE>."
|
4000 |
msgstr ""
|
4001 |
|
4002 |
-
#: lib/i18n-extra.php:
|
4003 |
msgid "CCCCCC: the 7-digit incident ID."
|
4004 |
msgstr ""
|
4005 |
|
4006 |
-
#: lib/i18n-extra.php:
|
4007 |
msgid "DD: the user IPv4 or IPv6 address."
|
4008 |
msgstr ""
|
4009 |
|
4010 |
-
#: lib/i18n-extra.php:
|
4011 |
msgid "EE: the blog (sub-)domain name."
|
4012 |
msgstr ""
|
4013 |
|
4014 |
-
#: lib/i18n-extra.php:
|
4015 |
#, php-format
|
4016 |
msgid ""
|
4017 |
"This logging option does not apply to the brute-force protection which can "
|
@@ -4019,14 +4120,14 @@ msgid ""
|
|
4019 |
"the <a href=\"%s\">Login Protection</a> page."
|
4020 |
msgstr ""
|
4021 |
|
4022 |
-
#: lib/i18n-extra.php:
|
4023 |
msgid ""
|
4024 |
"Secret key: The secret key will be used to generate your public key. Enter "
|
4025 |
"at least 30 ASCII characters, or use the one randomly created by "
|
4026 |
"NinjaFirewall."
|
4027 |
msgstr ""
|
4028 |
|
4029 |
-
#: lib/i18n-extra.php:
|
4030 |
msgid ""
|
4031 |
"This server IP address: As an additional protection layer, you can restrict "
|
4032 |
"access to the remote website(s) to the main server IP only. You can use IPv4 "
|
@@ -4034,331 +4135,331 @@ msgid ""
|
|
4034 |
"character instead."
|
4035 |
msgstr ""
|
4036 |
|
4037 |
-
#: lib/i18n-extra.php:
|
4038 |
#, php-format
|
4039 |
msgid ""
|
4040 |
"Public key: This is the public key that you will need to upload to each "
|
4041 |
"remote website (<a href=\"%s\">consult our blog</a> for more info about it)."
|
4042 |
msgstr ""
|
4043 |
|
4044 |
-
#: lib/i18n-extra.php:
|
4045 |
msgid ""
|
4046 |
"Remote websites URL: Enter the full URL of your NinjaFirewall protected "
|
4047 |
"website(s) that you want to remotely access from the main server."
|
4048 |
msgstr ""
|
4049 |
|
4050 |
-
#: lib/i18n-extra.php:
|
4051 |
msgid ""
|
4052 |
"Centralized Logging will keep working even if NinjaFirewall is disabled. Use "
|
4053 |
"the menu below if you want to disable it."
|
4054 |
msgstr ""
|
4055 |
|
4056 |
-
#: lib/i18n-extra.php:
|
4057 |
msgid "Enable Web Filter"
|
4058 |
msgstr ""
|
4059 |
|
4060 |
-
#: lib/i18n-extra.php:
|
4061 |
msgid "A full or partial string."
|
4062 |
msgstr ""
|
4063 |
|
4064 |
-
#: lib/i18n-extra.php:
|
4065 |
msgid "From 4 to maximum 150 characters."
|
4066 |
msgstr ""
|
4067 |
|
4068 |
-
#: lib/i18n-extra.php:
|
4069 |
msgid "Any character, except the vertical bar <code>|</code>"
|
4070 |
msgstr ""
|
4071 |
|
4072 |
-
#: lib/i18n-extra.php:
|
4073 |
msgid "Keywords to search:"
|
4074 |
msgstr ""
|
4075 |
|
4076 |
-
#: lib/i18n-extra.php:
|
4077 |
msgid "Case-sensitive search"
|
4078 |
msgstr ""
|
4079 |
|
4080 |
-
#: lib/i18n-extra.php:
|
4081 |
#, php-format
|
4082 |
msgid "Do not send me more than one email alert in a %s interval"
|
4083 |
msgstr ""
|
4084 |
|
4085 |
-
#: lib/i18n-extra.php:
|
4086 |
msgid "5-minute"
|
4087 |
msgstr ""
|
4088 |
|
4089 |
-
#: lib/i18n-extra.php:
|
4090 |
msgid "15-minute"
|
4091 |
msgstr ""
|
4092 |
|
4093 |
-
#: lib/i18n-extra.php:
|
4094 |
msgid "30-minute"
|
4095 |
msgstr ""
|
4096 |
|
4097 |
-
#: lib/i18n-extra.php:
|
4098 |
msgid "1-hour"
|
4099 |
msgstr ""
|
4100 |
|
4101 |
-
#: lib/i18n-extra.php:
|
4102 |
msgid "3-hour"
|
4103 |
msgstr ""
|
4104 |
|
4105 |
-
#: lib/i18n-extra.php:
|
4106 |
msgid "6-hour"
|
4107 |
msgstr ""
|
4108 |
|
4109 |
-
#: lib/i18n-extra.php:
|
4110 |
msgid "12-hour"
|
4111 |
msgstr ""
|
4112 |
|
4113 |
-
#: lib/i18n-extra.php:
|
4114 |
msgid "24-hour"
|
4115 |
msgstr ""
|
4116 |
|
4117 |
-
#: lib/i18n-extra.php:
|
4118 |
msgid ""
|
4119 |
"Clicking the \"Save Web Filter options\" button below will reset the current "
|
4120 |
"timer."
|
4121 |
msgstr ""
|
4122 |
|
4123 |
-
#: lib/i18n-extra.php:
|
4124 |
msgid "Attach the HTML page output to email alerts"
|
4125 |
msgstr ""
|
4126 |
|
4127 |
-
#: lib/i18n-extra.php:
|
4128 |
msgid "Save Web Filter options"
|
4129 |
msgstr ""
|
4130 |
|
4131 |
-
#: lib/i18n-extra.php:
|
4132 |
msgid "Help Desk:"
|
4133 |
msgstr ""
|
4134 |
|
4135 |
-
#: lib/i18n-extra.php:
|
4136 |
msgid "The selected log was deleted"
|
4137 |
msgstr ""
|
4138 |
|
4139 |
-
#: lib/i18n-extra.php:
|
4140 |
msgid "Export"
|
4141 |
msgstr ""
|
4142 |
|
4143 |
-
#: lib/i18n-extra.php:
|
4144 |
msgid "Delete"
|
4145 |
msgstr ""
|
4146 |
|
4147 |
-
#: lib/i18n-extra.php:
|
4148 |
msgid "Delete log?"
|
4149 |
msgstr ""
|
4150 |
|
4151 |
-
#: lib/i18n-extra.php:
|
4152 |
msgid "Today"
|
4153 |
msgstr ""
|
4154 |
|
4155 |
-
#: lib/i18n-extra.php:
|
4156 |
msgid "Upload"
|
4157 |
msgstr ""
|
4158 |
|
4159 |
-
#: lib/i18n-extra.php:
|
4160 |
msgid "Info"
|
4161 |
msgstr ""
|
4162 |
|
4163 |
-
#: lib/i18n-extra.php:
|
4164 |
msgid "Debug"
|
4165 |
msgstr ""
|
4166 |
|
4167 |
-
#: lib/i18n-extra.php:
|
4168 |
msgid "IP address:"
|
4169 |
msgstr ""
|
4170 |
|
4171 |
-
#: lib/i18n-extra.php:
|
4172 |
msgid "e.g., 1.2.3.4"
|
4173 |
msgstr ""
|
4174 |
|
4175 |
-
#: lib/i18n-extra.php:
|
4176 |
msgid "Add IP to blacklist"
|
4177 |
msgstr ""
|
4178 |
|
4179 |
-
#: lib/i18n-extra.php:
|
4180 |
msgid "Add IP to whitelist"
|
4181 |
msgstr ""
|
4182 |
|
4183 |
-
#: lib/i18n-extra.php:
|
4184 |
msgid "Add"
|
4185 |
msgstr ""
|
4186 |
|
4187 |
-
#: lib/i18n-extra.php:
|
4188 |
msgid "The address wad added to your IP Access Control list."
|
4189 |
msgstr ""
|
4190 |
|
4191 |
-
#: lib/i18n-extra.php:
|
4192 |
#, php-format
|
4193 |
msgid "1st day of the month, or if bigger than %s MB"
|
4194 |
msgstr ""
|
4195 |
|
4196 |
-
#: lib/i18n-extra.php:
|
4197 |
msgid "1st day of the month, regardless of its size"
|
4198 |
msgstr ""
|
4199 |
|
4200 |
-
#: lib/i18n-extra.php:
|
4201 |
msgid "Show the most recent"
|
4202 |
msgstr ""
|
4203 |
|
4204 |
-
#: lib/i18n-extra.php:
|
4205 |
msgid "lines"
|
4206 |
msgstr ""
|
4207 |
|
4208 |
-
#: lib/i18n-extra.php:
|
4209 |
msgid "Write events to the Syslog server too"
|
4210 |
msgstr ""
|
4211 |
|
4212 |
-
#: lib/i18n-extra.php:
|
4213 |
msgid "Your server configuration is not compatible with this option."
|
4214 |
msgstr ""
|
4215 |
|
4216 |
-
#: lib/i18n-extra.php:
|
4217 |
msgid "See contextual help before enabling this option."
|
4218 |
msgstr ""
|
4219 |
|
4220 |
-
#: lib/i18n-extra.php:
|
4221 |
msgid ""
|
4222 |
"The remote server rejected your request. Make sure that you uploaded the "
|
4223 |
"correct public key."
|
4224 |
msgstr ""
|
4225 |
|
4226 |
-
#: lib/i18n-extra.php:
|
4227 |
#, php-format
|
4228 |
msgid "The remote server returned the following HTTP error: %s"
|
4229 |
msgstr ""
|
4230 |
|
4231 |
-
#: lib/i18n-extra.php:
|
4232 |
msgid "The requested log does not exist on the remote website."
|
4233 |
msgstr ""
|
4234 |
|
4235 |
-
#: lib/i18n-extra.php:
|
4236 |
msgid "The remote website did not return the expected response."
|
4237 |
msgstr ""
|
4238 |
|
4239 |
-
#: lib/i18n-extra.php:
|
4240 |
msgid "Your server does not seem to be compatible with this option."
|
4241 |
msgstr ""
|
4242 |
|
4243 |
-
#: lib/i18n-extra.php:
|
4244 |
msgid "Load language files from the WordPress repo"
|
4245 |
msgstr ""
|
4246 |
|
4247 |
-
#: lib/i18n-extra.php:
|
4248 |
#, php-format
|
4249 |
msgid ""
|
4250 |
"If available, NinjaFirewall will download the language files from <a "
|
4251 |
"%s>translate.wordpress.org</a>."
|
4252 |
msgstr ""
|
4253 |
|
4254 |
-
#: lib/i18n-extra.php:
|
4255 |
msgid "Error: you do not have any license."
|
4256 |
msgstr ""
|
4257 |
|
4258 |
-
#: lib/i18n-extra.php:
|
4259 |
msgid "You have a valid license."
|
4260 |
msgstr ""
|
4261 |
|
4262 |
-
#: lib/i18n-extra.php:
|
4263 |
msgid ""
|
4264 |
"An unknown error occured while connecting to NinjaFirewall servers. Please "
|
4265 |
"try again in a few minutes"
|
4266 |
msgstr ""
|
4267 |
|
4268 |
-
#: lib/i18n-extra.php:
|
4269 |
msgid ""
|
4270 |
"An error occured while connecting to NinjaFirewall servers. Please try again "
|
4271 |
"in a few minutes"
|
4272 |
msgstr ""
|
4273 |
|
4274 |
-
#: lib/i18n-extra.php:
|
4275 |
msgid "Enter a valid license to save!"
|
4276 |
msgstr ""
|
4277 |
|
4278 |
-
#: lib/i18n-extra.php:
|
4279 |
msgid "This is already your current license!"
|
4280 |
msgstr ""
|
4281 |
|
4282 |
-
#: lib/i18n-extra.php:
|
4283 |
msgid "Your new license has been accepted and saved."
|
4284 |
msgstr ""
|
4285 |
|
4286 |
-
#: lib/i18n-extra.php:
|
4287 |
msgid "This license is not valid"
|
4288 |
msgstr ""
|
4289 |
|
4290 |
-
#: lib/i18n-extra.php:
|
4291 |
msgid "WP+ Edition License"
|
4292 |
msgstr ""
|
4293 |
|
4294 |
-
#: lib/i18n-extra.php:
|
4295 |
msgid "License Number"
|
4296 |
msgstr ""
|
4297 |
|
4298 |
-
#: lib/i18n-extra.php:
|
4299 |
msgid "No license found"
|
4300 |
msgstr ""
|
4301 |
|
4302 |
-
#: lib/i18n-extra.php:
|
4303 |
msgid "Click to check your license validity"
|
4304 |
msgstr ""
|
4305 |
|
4306 |
-
#: lib/i18n-extra.php:
|
4307 |
msgid "Expiration date"
|
4308 |
msgstr ""
|
4309 |
|
4310 |
-
#: lib/i18n-extra.php:
|
4311 |
msgid "Unknown expiration date"
|
4312 |
msgstr ""
|
4313 |
|
4314 |
-
#: lib/i18n-extra.php:
|
4315 |
msgid "Use the \"Check License Validity\" button to attempt to fix this error."
|
4316 |
msgstr ""
|
4317 |
|
4318 |
-
#: lib/i18n-extra.php:
|
4319 |
msgid "Your license will expire soon!"
|
4320 |
msgstr ""
|
4321 |
|
4322 |
-
#: lib/i18n-extra.php:
|
4323 |
msgid "Your license has expired."
|
4324 |
msgstr ""
|
4325 |
|
4326 |
-
#: lib/i18n-extra.php:
|
4327 |
msgid "License renewal"
|
4328 |
msgstr ""
|
4329 |
|
4330 |
-
#: lib/i18n-extra.php:
|
4331 |
msgid "Click here to get a license!"
|
4332 |
msgstr ""
|
4333 |
|
4334 |
-
#: lib/i18n-extra.php:
|
4335 |
msgid "Enter your new license and click on the save button"
|
4336 |
msgstr ""
|
4337 |
|
4338 |
-
#: lib/i18n-extra.php:
|
4339 |
msgid "Save New License"
|
4340 |
msgstr ""
|
4341 |
|
4342 |
-
#: lib/i18n-extra.php:
|
4343 |
msgid "Allow, but block dangerous files"
|
4344 |
msgstr ""
|
4345 |
|
4346 |
-
#: lib/i18n-extra.php:
|
4347 |
msgid "See contextual help for the list of files."
|
4348 |
msgstr ""
|
4349 |
|
4350 |
-
#: lib/i18n-extra.php:
|
4351 |
msgid "Apply to ZIP archives file contents"
|
4352 |
msgstr ""
|
4353 |
|
4354 |
-
#: lib/i18n-extra.php:
|
4355 |
msgid ""
|
4356 |
"Keep this option disabled if you are using scripts such as Paypal IPN or "
|
4357 |
"WordPress WP-Cron, unless you added their IP address or URL to your Access "
|
4358 |
"Control whitelist."
|
4359 |
msgstr ""
|
4360 |
|
4361 |
-
#: lib/i18n-extra.php:
|
4362 |
#, php-format
|
4363 |
msgid ""
|
4364 |
"Do not send a notification if the user is in the <a href=\"%s\">IP Access "
|
@@ -4371,7 +4472,7 @@ msgid ""
|
|
4371 |
"Error: Your .htaccess file is not writable, please change its permissions: %s"
|
4372 |
msgstr ""
|
4373 |
|
4374 |
-
#: lib/install.php:110 ninjafirewall.php:
|
4375 |
#, php-format
|
4376 |
msgid "Error: wrong parameter value (%s)."
|
4377 |
msgstr ""
|
@@ -4414,19 +4515,19 @@ msgstr ""
|
|
4414 |
msgid "File is not writable"
|
4415 |
msgstr ""
|
4416 |
|
4417 |
-
#: lib/install_default.php:
|
4418 |
msgid ""
|
4419 |
"Error: The installer cannot download the security rules from wordpress.org "
|
4420 |
"website."
|
4421 |
msgstr ""
|
4422 |
|
4423 |
-
#: lib/install_default.php:
|
4424 |
msgid ""
|
4425 |
"The server may be temporarily down or you may have network connectivity "
|
4426 |
"problems? Please try again in a few minutes."
|
4427 |
msgstr ""
|
4428 |
|
4429 |
-
#: lib/install_default.php:
|
4430 |
msgid ""
|
4431 |
"NinjaFirewall downloads its rules over an HTTPS secure connection. Maybe "
|
4432 |
"your server does not support SSL? You can force NinjaFirewall to use a non-"
|
@@ -4434,7 +4535,7 @@ msgid ""
|
|
4434 |
"config.php</strong> file:"
|
4435 |
msgstr ""
|
4436 |
|
4437 |
-
#: lib/install_default.php:
|
4438 |
#, php-format
|
4439 |
msgid ""
|
4440 |
"NinjaFirewall cannot create its <code>nfwlog/</code>log and cache folder; "
|
@@ -4613,10 +4714,27 @@ msgstr ""
|
|
4613 |
msgid "Error: unable to write to the %s configuration file"
|
4614 |
msgstr ""
|
4615 |
|
4616 |
-
#: lib/logs.php:36 ninjafirewall.php:
|
4617 |
msgid "Logs"
|
4618 |
msgstr ""
|
4619 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4620 |
#: lib/logs_firewall_log.php:35
|
4621 |
#, php-format
|
4622 |
msgid ""
|
@@ -4637,10 +4755,6 @@ msgstr ""
|
|
4637 |
msgid "Your public key has been saved"
|
4638 |
msgstr ""
|
4639 |
|
4640 |
-
#: lib/logs_firewall_log.php:85
|
4641 |
-
msgid "Error"
|
4642 |
-
msgstr ""
|
4643 |
-
|
4644 |
#: lib/logs_firewall_log.php:92
|
4645 |
msgid "Note"
|
4646 |
msgstr ""
|
@@ -4722,7 +4836,7 @@ msgid ""
|
|
4722 |
"Administrator to the whitelist\" option is enabled."
|
4723 |
msgstr ""
|
4724 |
|
4725 |
-
#: lib/logs_live_log.php:96 ninjafirewall.php:
|
4726 |
msgid ""
|
4727 |
"Live Log lets you watch your blog traffic in real time. To enable it, click "
|
4728 |
"on the button below."
|
@@ -4823,10 +4937,18 @@ msgstr ""
|
|
4823 |
msgid "Error: please enter the custom log format."
|
4824 |
msgstr ""
|
4825 |
|
4826 |
-
#: lib/monitoring.php:43 ninjafirewall.php:
|
4827 |
msgid "Monitoring"
|
4828 |
msgstr ""
|
4829 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4830 |
#: lib/monitoring_file_check.php:62
|
4831 |
msgid "Snapshot successfully created."
|
4832 |
msgstr ""
|
@@ -4839,7 +4961,7 @@ msgstr ""
|
|
4839 |
msgid "You must create a snapshot first."
|
4840 |
msgstr ""
|
4841 |
|
4842 |
-
#: lib/monitoring_file_check.php:102 lib/monitoring_file_check.php:
|
4843 |
msgid "NinjaFirewall detected that changes were made to your files."
|
4844 |
msgstr ""
|
4845 |
|
@@ -4932,17 +5054,17 @@ msgstr ""
|
|
4932 |
msgid "Last changes"
|
4933 |
msgstr ""
|
4934 |
|
4935 |
-
#: lib/monitoring_file_check.php:281 lib/monitoring_file_check.php:
|
4936 |
#, php-format
|
4937 |
msgid "New files: %s"
|
4938 |
msgstr ""
|
4939 |
|
4940 |
-
#: lib/monitoring_file_check.php:282 lib/monitoring_file_check.php:
|
4941 |
#, php-format
|
4942 |
msgid "Deleted files: %s"
|
4943 |
msgstr ""
|
4944 |
|
4945 |
-
#: lib/monitoring_file_check.php:283 lib/monitoring_file_check.php:
|
4946 |
#, php-format
|
4947 |
msgid "Modified files: %s"
|
4948 |
msgstr ""
|
@@ -5115,45 +5237,37 @@ msgstr ""
|
|
5115 |
msgid "Error reading new snapshot file."
|
5116 |
msgstr ""
|
5117 |
|
5118 |
-
#: lib/monitoring_file_check.php:
|
5119 |
msgid "New file"
|
5120 |
msgstr ""
|
5121 |
|
5122 |
-
#: lib/monitoring_file_check.php:
|
5123 |
msgid "Modified file"
|
5124 |
msgstr ""
|
5125 |
|
5126 |
-
#: lib/monitoring_file_check.php:
|
5127 |
msgid "Deleted file"
|
5128 |
msgstr ""
|
5129 |
|
5130 |
-
#: lib/monitoring_file_check.php:
|
5131 |
msgid "[NinjaFirewall] Alert: File Check detection"
|
5132 |
msgstr ""
|
5133 |
|
5134 |
-
#: lib/monitoring_file_check.php:
|
5135 |
-
#: lib/
|
5136 |
-
#: lib/security_rules_update.php:572 lib/security_rules_update.php:574
|
5137 |
-
#: lib/utils.php:225 lib/utils.php:311 lib/utils.php:435 lib/utils.php:1100
|
5138 |
-
#: lib/utils.php:1279 lib/utils.php:1558
|
5139 |
-
msgid "Blog:"
|
5140 |
-
msgstr ""
|
5141 |
-
|
5142 |
-
#: lib/monitoring_file_check.php:781 lib/monitoring_file_check.php:803
|
5143 |
-
#: lib/security_rules_update.php:577
|
5144 |
#, php-format
|
5145 |
msgid "Date: %s"
|
5146 |
msgstr ""
|
5147 |
|
5148 |
-
#: lib/monitoring_file_check.php:
|
5149 |
msgid "See attached file for details."
|
5150 |
msgstr ""
|
5151 |
|
5152 |
-
#: lib/monitoring_file_check.php:
|
5153 |
msgid "[NinjaFirewall] File Check report"
|
5154 |
msgstr ""
|
5155 |
|
5156 |
-
#: lib/monitoring_file_check.php:
|
5157 |
msgid "NinjaFirewall did not detect changes in your files."
|
5158 |
msgstr ""
|
5159 |
|
@@ -5199,7 +5313,7 @@ msgstr ""
|
|
5199 |
msgid "Save File Guard options"
|
5200 |
msgstr ""
|
5201 |
|
5202 |
-
#: lib/network.php:24 ninjafirewall.php:
|
5203 |
#, php-format
|
5204 |
msgid "You are not allowed to perform this task (%s)."
|
5205 |
msgstr ""
|
@@ -5222,8 +5336,14 @@ msgstr ""
|
|
5222 |
msgid "Save Network options"
|
5223 |
msgstr ""
|
5224 |
|
5225 |
-
#: lib/
|
5226 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
5227 |
msgid "Security Rules"
|
5228 |
msgstr ""
|
5229 |
|
@@ -5325,7 +5445,7 @@ msgstr ""
|
|
5325 |
msgid "Security rules have been updated."
|
5326 |
msgstr ""
|
5327 |
|
5328 |
-
#: lib/security_rules_update.php:91 lib/security_rules_update.php:
|
5329 |
msgid "No security rules update available."
|
5330 |
msgstr ""
|
5331 |
|
@@ -5344,6 +5464,13 @@ msgstr ""
|
|
5344 |
msgid "Check for updates"
|
5345 |
msgstr ""
|
5346 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5347 |
#: lib/security_rules_update.php:151
|
5348 |
msgid "Every 15 minutes"
|
5349 |
msgstr ""
|
@@ -5404,66 +5531,66 @@ msgstr ""
|
|
5404 |
msgid "Delete Log"
|
5405 |
msgstr ""
|
5406 |
|
5407 |
-
#: lib/security_rules_update.php:
|
5408 |
msgid "Error: Wrong rules format."
|
5409 |
msgstr ""
|
5410 |
|
5411 |
-
#: lib/security_rules_update.php:
|
5412 |
msgid "Error: Unable to unserialize the new rules."
|
5413 |
msgstr ""
|
5414 |
|
5415 |
-
#: lib/security_rules_update.php:
|
5416 |
msgid "Error: Unserialized rules seem corrupted."
|
5417 |
msgstr ""
|
5418 |
|
5419 |
-
#: lib/security_rules_update.php:
|
5420 |
#, php-format
|
5421 |
msgid "Security rules updated to version %s."
|
5422 |
msgstr ""
|
5423 |
|
5424 |
-
#: lib/security_rules_update.php:
|
5425 |
msgid "Error: Unable to retrieve the new rules version."
|
5426 |
msgstr ""
|
5427 |
|
5428 |
-
#: lib/security_rules_update.php:
|
5429 |
#, php-format
|
5430 |
msgid "Error: Server returned a %s HTTP error code (#1)."
|
5431 |
msgstr ""
|
5432 |
|
5433 |
-
#: lib/security_rules_update.php:
|
5434 |
msgid "Error: Unable to connect to the remote server"
|
5435 |
msgstr ""
|
5436 |
|
5437 |
-
#: lib/security_rules_update.php:
|
5438 |
#, php-format
|
5439 |
msgid "Error: The new rules versions do not match (%s != %s)."
|
5440 |
msgstr ""
|
5441 |
|
5442 |
-
#: lib/security_rules_update.php:
|
5443 |
#, php-format
|
5444 |
msgid ""
|
5445 |
"Error: The new rules %s digital signature is not correct. Aborting update, "
|
5446 |
"rules may have been tampered with."
|
5447 |
msgstr ""
|
5448 |
|
5449 |
-
#: lib/security_rules_update.php:
|
5450 |
#, php-format
|
5451 |
msgid "Error: Server returned a %s HTTP error code (#2)."
|
5452 |
msgstr ""
|
5453 |
|
5454 |
-
#: lib/security_rules_update.php:
|
5455 |
msgid "[NinjaFirewall] Security rules update"
|
5456 |
msgstr ""
|
5457 |
|
5458 |
-
#: lib/security_rules_update.php:
|
5459 |
msgid "NinjaFirewall security rules have been updated:"
|
5460 |
msgstr ""
|
5461 |
|
5462 |
-
#: lib/security_rules_update.php:
|
5463 |
msgid "Rules version:"
|
5464 |
msgstr ""
|
5465 |
|
5466 |
-
#: lib/security_rules_update.php:
|
5467 |
#, php-format
|
5468 |
msgid "This notification can be turned off from NinjaFirewall \"%s\" page."
|
5469 |
msgstr ""
|
@@ -5628,25 +5755,25 @@ msgstr ""
|
|
5628 |
msgid "Cancel and Close"
|
5629 |
msgstr ""
|
5630 |
|
5631 |
-
#: lib/utils.php:
|
5632 |
msgid "N/A"
|
5633 |
msgstr ""
|
5634 |
|
5635 |
-
#: lib/utils.php:
|
5636 |
#, php-format
|
5637 |
msgid "Attempt to create a new %s"
|
5638 |
msgstr ""
|
5639 |
|
5640 |
-
#: lib/utils.php:
|
5641 |
#, php-format
|
5642 |
msgid "Attempt to edit a published %s (ID: %s)"
|
5643 |
msgstr ""
|
5644 |
|
5645 |
-
#: lib/utils.php:
|
5646 |
msgid "Unauthenticated user"
|
5647 |
msgstr ""
|
5648 |
|
5649 |
-
#: lib/utils.php:
|
5650 |
msgid "Blocked post/page edition attempt"
|
5651 |
msgstr ""
|
5652 |
|
@@ -5656,7 +5783,7 @@ msgid ""
|
|
5656 |
"doesn't have the right capabilities:"
|
5657 |
msgstr ""
|
5658 |
|
5659 |
-
#: lib/utils.php:226 lib/utils.php:
|
5660 |
msgid "Username:"
|
5661 |
msgstr ""
|
5662 |
|
@@ -5664,24 +5791,19 @@ msgstr ""
|
|
5664 |
msgid "Action:"
|
5665 |
msgstr ""
|
5666 |
|
5667 |
-
#: lib/utils.php:
|
5668 |
-
#: lib/utils.php:
|
5669 |
-
msgid "User IP:"
|
5670 |
-
msgstr ""
|
5671 |
-
|
5672 |
-
#: lib/utils.php:242 lib/utils.php:327 lib/utils.php:449 lib/utils.php:1299
|
5673 |
-
#: lib/utils.php:1554
|
5674 |
msgid "A PHP backtrace has been attached to this message for your convenience."
|
5675 |
msgstr ""
|
5676 |
|
5677 |
-
#: lib/utils.php:244 lib/utils.php:
|
5678 |
msgid ""
|
5679 |
"This protection (and notification) can be turned off from NinjaFirewall "
|
5680 |
"\"Firewall Policies\" page."
|
5681 |
msgstr ""
|
5682 |
|
5683 |
-
#: lib/utils.php:259 lib/utils.php:260 lib/utils.php:
|
5684 |
-
#: lib/utils.php:
|
5685 |
msgid "You are not allowed to perform this task."
|
5686 |
msgstr ""
|
5687 |
|
@@ -5689,114 +5811,132 @@ msgstr ""
|
|
5689 |
msgid "Blocked post/page deletion attempt"
|
5690 |
msgstr ""
|
5691 |
|
5692 |
-
#: lib/utils.php:
|
5693 |
msgid ""
|
5694 |
"NinjaFirewall has blocked an attempt to delete a post by a user who doesn't "
|
5695 |
"have the right capabilities:"
|
5696 |
msgstr ""
|
5697 |
|
5698 |
-
#: lib/utils.php:
|
5699 |
msgid "Blocked user account creation"
|
5700 |
msgstr ""
|
5701 |
|
5702 |
-
#: lib/utils.php:
|
5703 |
msgid "NinjaFirewall has blocked an attempt to create a user account:"
|
5704 |
msgstr ""
|
5705 |
|
5706 |
-
#: lib/utils.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5707 |
msgid ""
|
5708 |
"Warning: Because NinjaFirewall's Login Protection is enabled, Site Health "
|
5709 |
"may return an error message regarding the loopback test (e.g., 404 or 401 "
|
5710 |
"HTTP status code). You can safely ignore it."
|
5711 |
msgstr ""
|
5712 |
|
5713 |
-
#: lib/utils.php:
|
5714 |
msgid "NinjaFirewall error"
|
5715 |
msgstr ""
|
5716 |
|
5717 |
-
#: lib/utils.php:
|
5718 |
#, php-format
|
5719 |
msgid ""
|
5720 |
"%s directory cannot be created. Please review your installation and ensure "
|
5721 |
"that %s is writable."
|
5722 |
msgstr ""
|
5723 |
|
5724 |
-
#: lib/utils.php:
|
5725 |
#, php-format
|
5726 |
msgid ""
|
5727 |
"%s directory is read-only. Please review your installation and ensure that "
|
5728 |
"%s is writable."
|
5729 |
msgstr ""
|
5730 |
|
5731 |
-
#: lib/utils.php:
|
5732 |
msgid "unknown error"
|
5733 |
msgstr ""
|
5734 |
|
5735 |
-
#: lib/utils.php:
|
5736 |
msgid "NinjaFirewall fatal error:"
|
5737 |
msgstr ""
|
5738 |
|
5739 |
-
#: lib/utils.php:
|
5740 |
msgid "Review your installation, your site is not protected."
|
5741 |
msgstr ""
|
5742 |
|
5743 |
-
#: lib/utils.php:
|
5744 |
msgid "Alert: WordPress console login"
|
5745 |
msgstr ""
|
5746 |
|
5747 |
-
#: lib/utils.php:
|
5748 |
msgid "Someone just logged in to your WordPress admin console:"
|
5749 |
msgstr ""
|
5750 |
|
5751 |
-
#: lib/utils.php:
|
5752 |
msgid "Forbidden access"
|
5753 |
msgstr ""
|
5754 |
|
5755 |
-
#: lib/utils.php:
|
5756 |
#, php-format
|
5757 |
msgid ""
|
5758 |
"<strong>ERROR</strong>: Invalid username, email address or password.<br /><a "
|
5759 |
"href=\"%s\">Lost your password</a>?"
|
5760 |
msgstr ""
|
5761 |
|
5762 |
-
#: lib/utils.php:
|
5763 |
msgid "[NinjaFirewall] Alert: Database changes detected"
|
5764 |
msgstr ""
|
5765 |
|
5766 |
-
#: lib/utils.php:
|
5767 |
msgid ""
|
5768 |
"NinjaFirewall has detected that one or more administrator accounts were "
|
5769 |
"modified in the database:"
|
5770 |
msgstr ""
|
5771 |
|
5772 |
-
#: lib/utils.php:
|
5773 |
#, php-format
|
5774 |
msgid "Total administrators : %s"
|
5775 |
msgstr ""
|
5776 |
|
5777 |
-
#: lib/utils.php:
|
5778 |
msgid ""
|
5779 |
"If you cannot see any modifications in the above fields, it is possible that "
|
5780 |
"the administrator password was changed."
|
5781 |
msgstr ""
|
5782 |
|
5783 |
-
#: lib/utils.php:
|
5784 |
msgid "Blocked privilege escalation attempt"
|
5785 |
msgstr ""
|
5786 |
|
5787 |
-
#: lib/utils.php:
|
5788 |
msgid ""
|
5789 |
"NinjaFirewall has blocked an attempt to modify a user capability by someone "
|
5790 |
"who does not have administrative privileges:"
|
5791 |
msgstr ""
|
5792 |
|
5793 |
-
#: lib/utils.php:
|
5794 |
msgid ""
|
5795 |
"NinjaFirewall brute-force protection is enabled and you are temporarily "
|
5796 |
"whitelisted."
|
5797 |
msgstr ""
|
5798 |
|
5799 |
-
#: lib/utils.php:
|
5800 |
#, php-format
|
5801 |
msgid ""
|
5802 |
"Hey, it seems that you've been using NinjaFirewall for some time. If you "
|
@@ -5805,79 +5945,91 @@ msgid ""
|
|
5805 |
"rate it. Thank you!"
|
5806 |
msgstr ""
|
5807 |
|
5808 |
-
#: lib/utils.php:
|
5809 |
msgid ""
|
5810 |
"The attempt was blocked and the option was reversed to its original value."
|
5811 |
msgstr ""
|
5812 |
|
5813 |
-
#: lib/utils.php:
|
5814 |
msgid "Attempt to modify WordPress settings"
|
5815 |
msgstr ""
|
5816 |
|
5817 |
-
#: lib/utils.php:
|
5818 |
msgid ""
|
5819 |
"NinjaFirewall has blocked an attempt to modify some important WordPress "
|
5820 |
"settings by a user that does not have administrative privileges:"
|
5821 |
msgstr ""
|
5822 |
|
5823 |
-
#: lib/utils.php:
|
5824 |
#, php-format
|
5825 |
msgid "Option: %s"
|
5826 |
msgstr ""
|
5827 |
|
5828 |
-
#: lib/utils.php:
|
5829 |
#, php-format
|
5830 |
msgid "Original value: %s"
|
5831 |
msgstr ""
|
5832 |
|
5833 |
-
#: lib/utils.php:
|
5834 |
#, php-format
|
5835 |
msgid "Modified value: %s"
|
5836 |
msgstr ""
|
5837 |
|
5838 |
-
#: lib/utils.php:
|
5839 |
#, php-format
|
5840 |
msgid "Action taken: %s"
|
5841 |
msgstr ""
|
5842 |
|
5843 |
-
#: lib/utils.php:
|
5844 |
msgid "Code injection attempt in WordPress options table"
|
5845 |
msgstr ""
|
5846 |
|
5847 |
-
#: lib/utils.php:
|
5848 |
msgid ""
|
5849 |
"NinjaFirewall has blocked an attempt to inject code in the WordPress options "
|
5850 |
"table by a user that does not have administrative privileges:"
|
5851 |
msgstr ""
|
5852 |
|
5853 |
-
#: lib/utils.php:
|
5854 |
#, php-format
|
5855 |
msgid "Code: %s"
|
5856 |
msgstr ""
|
5857 |
|
5858 |
-
#: lib/utils.php:
|
5859 |
msgid "Important: NinjaFirewall has detected that this is a security update."
|
5860 |
msgstr ""
|
5861 |
|
5862 |
-
#: lib/utils.php:
|
5863 |
msgid "More info about this warning."
|
5864 |
msgstr ""
|
5865 |
|
5866 |
-
#: lib/utils.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5867 |
#, php-format
|
5868 |
msgid "Error, cannot create the %s folder."
|
5869 |
msgstr ""
|
5870 |
|
5871 |
-
#: lib/utils.php:
|
5872 |
msgid "Check your server permissions and try again."
|
5873 |
msgstr ""
|
5874 |
|
5875 |
-
#: lib/utils.php:
|
5876 |
#, php-format
|
5877 |
msgid "Error, the %s folder is not writable."
|
5878 |
msgstr ""
|
5879 |
|
5880 |
-
#: lib/utils.php:
|
5881 |
#, php-format
|
5882 |
msgid "Error, cannot write %s."
|
5883 |
msgstr ""
|
@@ -6045,8 +6197,8 @@ msgstr ""
|
|
6045 |
|
6046 |
#: lib/wpplus.php:143
|
6047 |
msgid ""
|
6048 |
-
"The Web Filter can
|
6049 |
-
"page, and search it for some specific keywords
|
6050 |
"identify errors, hacked content and data leakage issues in the response body "
|
6051 |
"sent to your visitors."
|
6052 |
msgstr ""
|
@@ -6272,226 +6424,226 @@ msgstr ""
|
|
6272 |
msgid "Cannot retrieve user rules from database (#4)"
|
6273 |
msgstr ""
|
6274 |
|
6275 |
-
#: ninjafirewall.php:
|
6276 |
msgid ""
|
6277 |
"You do not have \"unfiltered_html\" capability. Please enable it in order to "
|
6278 |
"run NinjaFirewall (or make sure you do not have \"DISALLOW_UNFILTERED_HTML\" "
|
6279 |
"in your wp-config.php script)."
|
6280 |
msgstr ""
|
6281 |
|
6282 |
-
#: ninjafirewall.php:
|
6283 |
#, php-format
|
6284 |
msgid ""
|
6285 |
"NinjaFirewall requires WordPress %s or greater but your current version is "
|
6286 |
"%s."
|
6287 |
msgstr ""
|
6288 |
|
6289 |
-
#: ninjafirewall.php:
|
6290 |
#, php-format
|
6291 |
msgid ""
|
6292 |
"NinjaFirewall requires PHP 5.3 or greater but your current version is %s."
|
6293 |
msgstr ""
|
6294 |
|
6295 |
-
#: ninjafirewall.php:
|
6296 |
#, php-format
|
6297 |
msgid "NinjaFirewall requires the PHP %s extension."
|
6298 |
msgstr ""
|
6299 |
|
6300 |
-
#: ninjafirewall.php:
|
6301 |
msgid ""
|
6302 |
"You have SAFE_MODE enabled. Please disable it, it is deprecated as of PHP "
|
6303 |
"5.3.0 (see http://php.net/safe-mode)."
|
6304 |
msgstr ""
|
6305 |
|
6306 |
-
#: ninjafirewall.php:
|
6307 |
msgid "You are not allowed to activate NinjaFirewall."
|
6308 |
msgstr ""
|
6309 |
|
6310 |
-
#: ninjafirewall.php:
|
6311 |
msgid "NinjaFirewall is not compatible with Microsoft Windows."
|
6312 |
msgstr ""
|
6313 |
|
6314 |
-
#: ninjafirewall.php:
|
6315 |
msgid ""
|
6316 |
"All fields will be restored to their default values and any changes you made "
|
6317 |
"will be lost. Continue?"
|
6318 |
msgstr ""
|
6319 |
|
6320 |
-
#: ninjafirewall.php:
|
6321 |
msgid "Missing security nonce, try to reload the page."
|
6322 |
msgstr ""
|
6323 |
|
6324 |
-
#: ninjafirewall.php:
|
6325 |
msgid "Please select the HTTP server in the list."
|
6326 |
msgstr ""
|
6327 |
|
6328 |
-
#: ninjafirewall.php:
|
6329 |
msgid "Delete the firewall's error log ?"
|
6330 |
msgstr ""
|
6331 |
|
6332 |
-
#: ninjafirewall.php:
|
6333 |
msgid ""
|
6334 |
"This action will restore the selected configuration file and will override "
|
6335 |
"all your current firewall options, policies and rules. Continue?"
|
6336 |
msgstr ""
|
6337 |
|
6338 |
-
#: ninjafirewall.php:
|
6339 |
msgid ""
|
6340 |
"Any character that is not a letter [a-zA-Z], a digit [0-9], a dot [.], a "
|
6341 |
"hyphen [-] or an underscore [_] will be removed from the filename and "
|
6342 |
"replaced with the substitution character. Continue?"
|
6343 |
msgstr ""
|
6344 |
|
6345 |
-
#: ninjafirewall.php:
|
6346 |
msgid ""
|
6347 |
"Ensure that you can access your admin console over HTTPS before enabling "
|
6348 |
"this option, otherwise you will lock yourself out of your site. Continue?"
|
6349 |
msgstr ""
|
6350 |
|
6351 |
-
#: ninjafirewall.php:
|
6352 |
msgid ""
|
6353 |
"WooCommerce is running: if you block accounts creation, your customers won't "
|
6354 |
"be able to sign up. Continue?"
|
6355 |
msgstr ""
|
6356 |
|
6357 |
-
#: ninjafirewall.php:
|
6358 |
msgid ""
|
6359 |
"Your blog has user registration enabled: if you block accounts creation, "
|
6360 |
"your customers won't be able to sign up. Continue?"
|
6361 |
msgstr ""
|
6362 |
|
6363 |
-
#: ninjafirewall.php:
|
6364 |
msgid ""
|
6365 |
"Your multisite installation allows users to register new sites: if you "
|
6366 |
"enable this option, they will likely get blocked when creating their blog. "
|
6367 |
"Continue?"
|
6368 |
msgstr ""
|
6369 |
|
6370 |
-
#: ninjafirewall.php:
|
6371 |
msgid "Delete the current snapshot ?"
|
6372 |
msgstr ""
|
6373 |
|
6374 |
-
#: ninjafirewall.php:
|
6375 |
msgid "Invalid character."
|
6376 |
msgstr ""
|
6377 |
|
6378 |
-
#: ninjafirewall.php:
|
6379 |
msgid "\"admin\" is not acceptable, please choose another user name."
|
6380 |
msgstr ""
|
6381 |
|
6382 |
-
#: ninjafirewall.php:
|
6383 |
msgid "Please enter max 1024 character only."
|
6384 |
msgstr ""
|
6385 |
|
6386 |
-
#: ninjafirewall.php:
|
6387 |
msgid "Select when to enable the login protection."
|
6388 |
msgstr ""
|
6389 |
|
6390 |
-
#: ninjafirewall.php:
|
6391 |
msgid "Enter a name and a password for the HTTP authentication."
|
6392 |
msgstr ""
|
6393 |
|
6394 |
-
#: ninjafirewall.php:
|
6395 |
msgid "Your public key is not valid."
|
6396 |
msgstr ""
|
6397 |
|
6398 |
-
#: ninjafirewall.php:
|
6399 |
msgid "No traffic yet, please wait"
|
6400 |
msgstr ""
|
6401 |
|
6402 |
-
#: ninjafirewall.php:
|
6403 |
msgid "seconds..."
|
6404 |
msgstr ""
|
6405 |
|
6406 |
-
#: ninjafirewall.php:
|
6407 |
msgid "Error: Live Log did not receive the expected response from your server:"
|
6408 |
msgstr ""
|
6409 |
|
6410 |
-
#: ninjafirewall.php:
|
6411 |
msgid "Error: URL does not seem to exist (404 Not Found):"
|
6412 |
msgstr ""
|
6413 |
|
6414 |
-
#: ninjafirewall.php:
|
6415 |
msgid "Error: Cannot find your log file. Try to reload this page."
|
6416 |
msgstr ""
|
6417 |
|
6418 |
-
#: ninjafirewall.php:
|
6419 |
msgid "Error: The HTTP server returned the following error code:"
|
6420 |
msgstr ""
|
6421 |
|
6422 |
-
#: ninjafirewall.php:
|
6423 |
msgid "Error: Security nonces do not match. Reload the page and try again."
|
6424 |
msgstr ""
|
6425 |
|
6426 |
-
#: ninjafirewall.php:
|
6427 |
msgid "Error: NinjaFirewall is disabled"
|
6428 |
msgstr ""
|
6429 |
|
6430 |
-
#: ninjafirewall.php:
|
6431 |
#, php-format
|
6432 |
msgid "Error: missing parameter (%s)."
|
6433 |
msgstr ""
|
6434 |
|
6435 |
-
#: ninjafirewall.php:
|
6436 |
msgid "NinjaFirewall: Dashboard"
|
6437 |
msgstr ""
|
6438 |
|
6439 |
-
#: ninjafirewall.php:
|
6440 |
msgid "NinjaFirewall: Firewall Options"
|
6441 |
msgstr ""
|
6442 |
|
6443 |
-
#: ninjafirewall.php:
|
6444 |
msgid "NinjaFirewall: Firewall Policies"
|
6445 |
msgstr ""
|
6446 |
|
6447 |
-
#: ninjafirewall.php:
|
6448 |
msgid "NinjaFirewall: Monitoring"
|
6449 |
msgstr ""
|
6450 |
|
6451 |
-
#: ninjafirewall.php:
|
6452 |
msgid "NinjaFirewall: Anti-Malware"
|
6453 |
msgstr ""
|
6454 |
|
6455 |
-
#: ninjafirewall.php:
|
6456 |
msgid "NinjaFirewall: Network"
|
6457 |
msgstr ""
|
6458 |
|
6459 |
-
#: ninjafirewall.php:
|
6460 |
msgid "NinjaFirewall: Event Notifications"
|
6461 |
msgstr ""
|
6462 |
|
6463 |
-
#: ninjafirewall.php:
|
6464 |
msgid "NinjaFirewall: Log-in Protection"
|
6465 |
msgstr ""
|
6466 |
|
6467 |
-
#: ninjafirewall.php:
|
6468 |
msgid "NinjaFirewall: Logs"
|
6469 |
msgstr ""
|
6470 |
|
6471 |
-
#: ninjafirewall.php:
|
6472 |
msgid "NinjaFirewall: Security Rules"
|
6473 |
msgstr ""
|
6474 |
|
6475 |
-
#: ninjafirewall.php:
|
6476 |
msgid "NinjaFirewall Settings"
|
6477 |
msgstr ""
|
6478 |
|
6479 |
-
#: ninjafirewall.php:
|
6480 |
msgid "NinjaFirewall is enabled"
|
6481 |
msgstr ""
|
6482 |
|
6483 |
-
#: ninjafirewall.php:
|
6484 |
msgid "Access Restricted"
|
6485 |
msgstr ""
|
6486 |
|
6487 |
-
#: ninjafirewall.php:
|
6488 |
msgid "Settings"
|
6489 |
msgstr ""
|
6490 |
|
6491 |
-
#: ninjafirewall.php:
|
6492 |
msgid "Upgrade to Premium"
|
6493 |
msgstr ""
|
6494 |
|
6495 |
-
#: ninjafirewall.php:
|
6496 |
msgid "Rate it!"
|
6497 |
msgstr ""
|
2 |
msgid ""
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: Stable (latest release)\n"
|
5 |
+
"POT-Creation-Date: 2021-09-17 15:59+0700\n"
|
6 |
"PO-Revision-Date: 2018-04-05 22:52+0700\n"
|
7 |
"Last-Translator: NinTechNet <contact@nintechnet.com>\n"
|
8 |
"Language-Team: \n"
|
19 |
"X-Poedit-SearchPath-0: .\n"
|
20 |
"X-Poedit-SearchPathExcluded-0: /languages\n"
|
21 |
|
22 |
+
#: lib/anti_malware.php:24 ninjafirewall.php:914
|
23 |
msgid "Anti-Malware"
|
24 |
msgstr ""
|
25 |
|
98 |
msgid "Your changes have been saved."
|
99 |
msgstr ""
|
100 |
|
101 |
+
#: lib/dashboard.php:132 ninjafirewall.php:892
|
102 |
msgid "Dashboard"
|
103 |
msgstr ""
|
104 |
|
305 |
msgid "Centralized Logging"
|
306 |
msgstr ""
|
307 |
|
308 |
+
#: lib/dashboard.php:331 lib/security_rules_update.php:427
|
309 |
#, php-format
|
310 |
msgid "Error: %s"
|
311 |
msgstr ""
|
314 |
msgid "Source IP"
|
315 |
msgstr ""
|
316 |
|
317 |
+
#: lib/dashboard.php:346 lib/dashboard.php:355 lib/dashboard.php:365
|
318 |
+
#: lib/firewall_policies.php:755
|
319 |
+
msgid ""
|
320 |
+
"In the Premium version of NinjaFirewall, you can use the IP Access Control "
|
321 |
+
"section to easily configure all IP address related options (source, "
|
322 |
+
"whitelist, blacklist, rate limiting etc)."
|
323 |
+
msgstr ""
|
324 |
+
|
325 |
#: lib/dashboard.php:347
|
326 |
#, php-format
|
327 |
msgid "You have a private IP : %s"
|
403 |
msgid "Help & configuration"
|
404 |
msgstr ""
|
405 |
|
406 |
+
#: lib/dashboard.php:515
|
407 |
+
msgid "Cannot check if the PHP INI file is readable: connection error"
|
408 |
+
msgstr ""
|
409 |
+
|
410 |
#: lib/dashboard_about.php:29
|
411 |
msgid "Our blog:"
|
412 |
msgstr ""
|
454 |
msgid "Benchmarks"
|
455 |
msgstr ""
|
456 |
|
457 |
+
#: lib/dashboard_statistics.php:106
|
458 |
+
msgid ""
|
459 |
+
"In the Premium version of NinjaFirewall and on compatible servers, you can "
|
460 |
+
"use Unix shared memory to speed up the processing of each HTTP request by "
|
461 |
+
"the firewall."
|
462 |
+
msgstr ""
|
463 |
+
|
464 |
#: lib/dashboard_statistics.php:110
|
465 |
msgid "Average time per request"
|
466 |
msgstr ""
|
478 |
msgid "Slowest request"
|
479 |
msgstr ""
|
480 |
|
481 |
+
#: lib/dashboard_statistics.php:130
|
482 |
msgid "Critical"
|
483 |
msgstr ""
|
484 |
|
485 |
+
#: lib/dashboard_statistics.php:131
|
486 |
msgid "High"
|
487 |
msgstr ""
|
488 |
|
489 |
+
#: lib/dashboard_statistics.php:132
|
490 |
msgid "Medium"
|
491 |
msgstr ""
|
492 |
|
494 |
msgid "Select monthly stats to view..."
|
495 |
msgstr ""
|
496 |
|
497 |
+
#: lib/email_sodium.php:130
|
498 |
+
msgid "The link you followed has expired."
|
499 |
+
msgstr ""
|
500 |
+
|
501 |
+
#: lib/email_sodium.php:131 lib/email_sodium.php:184
|
502 |
+
#: lib/logs_firewall_log.php:85
|
503 |
+
msgid "Error"
|
504 |
+
msgstr ""
|
505 |
+
|
506 |
+
#: lib/email_sodium.php:165 lib/email_sodium.php:203
|
507 |
+
msgid "Email removal confirmation"
|
508 |
+
msgstr ""
|
509 |
+
|
510 |
+
#: lib/email_sodium.php:168
|
511 |
+
msgid "Your email address was removed from the \"Event Notifications\" option."
|
512 |
+
msgstr ""
|
513 |
+
|
514 |
+
#: lib/email_sodium.php:169 lib/monitoring_file_check.php:759
|
515 |
+
#: lib/monitoring_file_check.php:761 lib/monitoring_file_check.php:781
|
516 |
+
#: lib/monitoring_file_check.php:783 lib/security_rules_update.php:559
|
517 |
+
#: lib/security_rules_update.php:561 lib/utils.php:225 lib/utils.php:306
|
518 |
+
#: lib/utils.php:425 lib/utils.php:1038 lib/utils.php:1212 lib/utils.php:1484
|
519 |
+
msgid "Blog:"
|
520 |
+
msgstr ""
|
521 |
+
|
522 |
+
#: lib/email_sodium.php:170
|
523 |
+
msgid "Email address:"
|
524 |
+
msgstr ""
|
525 |
+
|
526 |
+
#: lib/email_sodium.php:171 lib/utils.php:230 lib/utils.php:310
|
527 |
+
#: lib/utils.php:427 lib/utils.php:1220 lib/utils.php:1485
|
528 |
+
msgid "User IP:"
|
529 |
+
msgstr ""
|
530 |
+
|
531 |
+
#: lib/email_sodium.php:172 lib/event_updates.php:157 lib/utils.php:233
|
532 |
+
#: lib/utils.php:313 lib/utils.php:430 lib/utils.php:1039 lib/utils.php:1223
|
533 |
+
#: lib/utils.php:1488
|
534 |
+
msgid "Date:"
|
535 |
+
msgstr ""
|
536 |
+
|
537 |
+
#: lib/email_sodium.php:183
|
538 |
+
msgid "Error, your resquest cannot be processed."
|
539 |
+
msgstr ""
|
540 |
+
|
541 |
+
#: lib/email_sodium.php:197
|
542 |
+
msgid ""
|
543 |
+
"If you want to remove your email address from the Event Notifications "
|
544 |
+
"option, click the button below. If the operation is successful, a "
|
545 |
+
"confirmation email will be sent to you."
|
546 |
+
msgstr ""
|
547 |
+
|
548 |
+
#: lib/email_sodium.php:199 lib/event_notifications.php:154
|
549 |
+
#: lib/event_notifications.php:166 lib/firewall_options.php:78
|
550 |
+
#: lib/firewall_options.php:113 lib/firewall_policies.php:25
|
551 |
+
#: lib/login_protection.php:309 lib/login_protection.php:324
|
552 |
+
#: lib/login_protection.php:345 lib/login_protection.php:352 lib/network.php:70
|
553 |
+
msgid "Yes"
|
554 |
+
msgstr ""
|
555 |
+
|
556 |
+
#: lib/email_sodium.php:201 lib/event_notifications.php:154
|
557 |
+
#: lib/event_notifications.php:166 lib/firewall_options.php:78
|
558 |
+
#: lib/firewall_options.php:113 lib/firewall_policies.php:26
|
559 |
+
#: lib/login_protection.php:309 lib/login_protection.php:324
|
560 |
+
#: lib/login_protection.php:345 lib/login_protection.php:352 lib/network.php:70
|
561 |
+
msgid "No"
|
562 |
+
msgstr ""
|
563 |
+
|
564 |
+
#: lib/event_notifications.php:34 lib/help.php:377 ninjafirewall.php:922
|
565 |
msgid "Event Notifications"
|
566 |
msgstr ""
|
567 |
|
679 |
msgid "Send me a daily activity report"
|
680 |
msgstr ""
|
681 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
682 |
#: lib/event_notifications.php:161
|
683 |
msgid "Log"
|
684 |
msgstr ""
|
745 |
msgid "Save Event Notifications"
|
746 |
msgstr ""
|
747 |
|
748 |
+
#: lib/event_notifications.php:476
|
749 |
msgid "[NinjaFirewall] Daily Activity Report"
|
750 |
msgstr ""
|
751 |
|
752 |
+
#: lib/event_notifications.php:486
|
753 |
#, php-format
|
754 |
msgid "Daily activity report for: %s"
|
755 |
msgstr ""
|
756 |
|
757 |
+
#: lib/event_notifications.php:487
|
758 |
msgid "Date Range Processed: Yesterday"
|
759 |
msgstr ""
|
760 |
|
761 |
+
#: lib/event_notifications.php:489
|
762 |
msgid "Blocked threats:"
|
763 |
msgstr ""
|
764 |
|
765 |
+
#: lib/event_notifications.php:491
|
766 |
msgid "critical:"
|
767 |
msgstr ""
|
768 |
|
769 |
+
#: lib/event_notifications.php:492
|
770 |
msgid "high:"
|
771 |
msgstr ""
|
772 |
|
773 |
+
#: lib/event_notifications.php:493
|
774 |
msgid "medium:"
|
775 |
msgstr ""
|
776 |
|
777 |
+
#: lib/event_notifications.php:495
|
778 |
msgid "Blocked brute-force attacks:"
|
779 |
msgstr ""
|
780 |
|
781 |
+
#: lib/event_notifications.php:496 lib/event_updates.php:219 lib/utils.php:1050
|
782 |
msgid ""
|
783 |
"This notification can be turned off from NinjaFirewall \"Event Notifications"
|
784 |
"\" page."
|
785 |
msgstr ""
|
786 |
|
787 |
+
#: lib/event_updates.php:53
|
788 |
+
msgid "Downloaded security rules are corrupted"
|
789 |
+
msgstr ""
|
790 |
+
|
791 |
+
#: lib/event_updates.php:154
|
792 |
msgid "[NinjaFirewall] Warning: Security update available"
|
793 |
msgstr ""
|
794 |
|
795 |
+
#: lib/event_updates.php:156
|
796 |
msgid ""
|
797 |
"NinjaFirewall has detected that there are security updates available for "
|
798 |
"your website:"
|
799 |
msgstr ""
|
800 |
|
801 |
+
#: lib/event_updates.php:160 lib/event_updates.php:162
|
|
|
|
|
|
|
|
|
|
|
802 |
#, php-format
|
803 |
msgid "Blog: %s"
|
804 |
msgstr ""
|
805 |
|
806 |
+
#: lib/event_updates.php:168 lib/event_updates.php:184
|
807 |
+
#: lib/event_updates.php:203
|
808 |
#, php-format
|
809 |
msgid "Your version: %s"
|
810 |
msgstr ""
|
811 |
|
812 |
+
#: lib/event_updates.php:169 lib/event_updates.php:185
|
813 |
+
#: lib/event_updates.php:204
|
814 |
#, php-format
|
815 |
msgid "New version: %s"
|
816 |
msgstr ""
|
817 |
|
818 |
+
#: lib/event_updates.php:171 lib/event_updates.php:188
|
819 |
+
#: lib/event_updates.php:207
|
820 |
msgid "Severity: This is an important security update"
|
821 |
msgstr ""
|
822 |
|
823 |
+
#: lib/event_updates.php:173 lib/event_updates.php:190
|
824 |
+
#: lib/event_updates.php:209
|
825 |
msgid "Severity: **This is a critical security update**"
|
826 |
msgstr ""
|
827 |
|
828 |
+
#: lib/event_updates.php:175 lib/event_updates.php:192
|
829 |
+
#: lib/event_updates.php:211
|
830 |
msgid "Type: Security fix"
|
831 |
msgstr ""
|
832 |
|
833 |
+
#: lib/event_updates.php:183
|
834 |
#, php-format
|
835 |
msgid "Plugin: %s"
|
836 |
msgstr ""
|
837 |
|
838 |
+
#: lib/event_updates.php:202
|
839 |
#, php-format
|
840 |
msgid "Theme: %s"
|
841 |
msgstr ""
|
842 |
|
843 |
+
#: lib/event_updates.php:217 lib/utils.php:1566
|
844 |
msgid "Don't leave your blog at risk, make sure to update as soon as possible."
|
845 |
msgstr ""
|
846 |
|
847 |
+
#: lib/event_updates.php:243
|
848 |
+
msgid "Cannot download security rules: connection error"
|
849 |
+
msgstr ""
|
850 |
+
|
851 |
+
#: lib/event_updates.php:249
|
852 |
+
#, php-format
|
853 |
+
msgid "Cannot download security rules: HTTP response error %s"
|
854 |
+
msgstr ""
|
855 |
+
|
856 |
#: lib/events.php:27
|
857 |
msgid "Name:"
|
858 |
msgstr ""
|
894 |
msgid "uploaded"
|
895 |
msgstr ""
|
896 |
|
897 |
+
#: lib/events.php:195
|
898 |
#, php-format
|
899 |
msgid "[NinjaFirewall] Alert: %s"
|
900 |
msgstr ""
|
901 |
|
902 |
+
#: lib/events.php:197 lib/events.php:199 lib/utils.php:787
|
903 |
msgid "-Blog:"
|
904 |
msgstr ""
|
905 |
|
906 |
+
#: lib/events.php:202
|
907 |
msgid "NinjaFirewall has detected the following activity on your account:"
|
908 |
msgstr ""
|
909 |
|
910 |
+
#: lib/events.php:204 lib/utils.php:792
|
911 |
msgid "-User:"
|
912 |
msgstr ""
|
913 |
|
914 |
+
#: lib/events.php:205 lib/utils.php:793
|
915 |
msgid "-IP:"
|
916 |
msgstr ""
|
917 |
|
918 |
+
#: lib/events.php:206 lib/utils.php:794
|
919 |
msgid "-Date:"
|
920 |
msgstr ""
|
921 |
|
922 |
+
#: lib/firewall_options.php:29 ninjafirewall.php:896
|
923 |
msgid "Firewall Options"
|
924 |
msgstr ""
|
925 |
|
1061 |
msgid "There are no backup available yet, check back later."
|
1062 |
msgstr ""
|
1063 |
|
1064 |
+
#: lib/firewall_options.php:330
|
1065 |
#, php-format
|
1066 |
msgid "Uploaded file is either corrupted or its format is not supported (#%s)"
|
1067 |
msgstr ""
|
1068 |
|
1069 |
+
#: lib/firewall_options.php:366
|
1070 |
msgid "The imported file is not compatible with that version of NinjaFirewall"
|
1071 |
msgstr ""
|
1072 |
|
1073 |
+
#: lib/firewall_options.php:473 ninjafirewall.php:213
|
1074 |
msgid "[NinjaFirewall] Alert: Firewall is disabled"
|
1075 |
msgstr ""
|
1076 |
|
1077 |
+
#: lib/firewall_options.php:475 lib/firewall_options.php:477
|
1078 |
+
#: ninjafirewall.php:215 ninjafirewall.php:217
|
1079 |
msgid "-Blog :"
|
1080 |
msgstr ""
|
1081 |
|
1082 |
+
#: lib/firewall_options.php:481 ninjafirewall.php:219
|
1083 |
msgid "Someone disabled NinjaFirewall from your WordPress admin dashboard:"
|
1084 |
msgstr ""
|
1085 |
|
1086 |
+
#: lib/firewall_options.php:484
|
1087 |
msgid ""
|
1088 |
"NinjaFirewall is disabled because someone enabled debugging mode from your "
|
1089 |
"WordPress admin dashboard:"
|
1090 |
msgstr ""
|
1091 |
|
1092 |
+
#: lib/firewall_options.php:487
|
1093 |
msgid "[NinjaFirewall] Alert: Firewall override settings"
|
1094 |
msgstr ""
|
1095 |
|
1096 |
+
#: lib/firewall_options.php:488
|
1097 |
msgid ""
|
1098 |
"Someone imported a new configuration which overrode the firewall settings:"
|
1099 |
msgstr ""
|
1100 |
|
1101 |
+
#: lib/firewall_options.php:494 ninjafirewall.php:220
|
1102 |
msgid "-User :"
|
1103 |
msgstr ""
|
1104 |
|
1105 |
+
#: lib/firewall_options.php:495 ninjafirewall.php:221
|
1106 |
msgid "-IP :"
|
1107 |
msgstr ""
|
1108 |
|
1109 |
+
#: lib/firewall_options.php:496 ninjafirewall.php:222
|
1110 |
msgid "-Date :"
|
1111 |
msgstr ""
|
1112 |
|
1117 |
"enable NinjaFirewall's Full WAF mode."
|
1118 |
msgstr ""
|
1119 |
|
1120 |
+
#: lib/firewall_policies.php:62 ninjafirewall.php:900
|
1121 |
msgid "Firewall Policies"
|
1122 |
msgstr ""
|
1123 |
|
1165 |
msgid "File Uploads"
|
1166 |
msgstr ""
|
1167 |
|
1168 |
+
#: lib/firewall_policies.php:144
|
1169 |
+
msgid ""
|
1170 |
+
"In the Premium version of NinjaFirewall, you can allow uploads while "
|
1171 |
+
"rejecting potentially dangerous files, even if they are compressed inside a "
|
1172 |
+
"ZIP archive: scripts (PHP, CGI, Ruby, Python, bash/shell), C/C++ source "
|
1173 |
+
"code, binaries (MZ/PE/NE and ELF formats), system files (.htaccess, ."
|
1174 |
+
"htpasswd and PHP INI) and SVG files containing Javascript/XML events. You "
|
1175 |
+
"can easily limit the size of each uploaded file too, without having to "
|
1176 |
+
"modify your PHP configuration."
|
1177 |
+
msgstr ""
|
1178 |
+
|
1179 |
#: lib/firewall_policies.php:147
|
1180 |
msgid "Allow uploads"
|
1181 |
msgstr ""
|
1360 |
msgid "Users Whitelist"
|
1361 |
msgstr ""
|
1362 |
|
1363 |
+
#: lib/firewall_policies.php:516
|
1364 |
+
msgid ""
|
1365 |
+
"In the Premium version of NinjaFirewall, the Access Control section allows "
|
1366 |
+
"you to whitelist WordPress users depending on their role."
|
1367 |
+
msgstr ""
|
1368 |
+
|
1369 |
#: lib/firewall_policies.php:518
|
1370 |
msgid "Add the Administrator to the whitelist (default)."
|
1371 |
msgstr ""
|
1454 |
msgid "Block suspicious bots/scanners"
|
1455 |
msgstr ""
|
1456 |
|
1457 |
+
#: lib/firewall_policies.php:687
|
1458 |
+
msgid ""
|
1459 |
+
"In the Premium version of NinjaFirewall, the Bot Access Control section "
|
1460 |
+
"allows you to select, edit, add and remove bots."
|
1461 |
+
msgstr ""
|
1462 |
+
|
1463 |
#: lib/firewall_policies.php:713 lib/help.php:240
|
1464 |
msgid "HTTP_REFERER server variable"
|
1465 |
msgstr ""
|
2475 |
"package (third-party software, shell script, backdoor etc)."
|
2476 |
msgstr ""
|
2477 |
|
2478 |
+
#: lib/help.php:360 lib/network.php:32 ninjafirewall.php:918
|
2479 |
msgid "Network"
|
2480 |
msgstr ""
|
2481 |
|
2511 |
"theme in order to take full control of your website."
|
2512 |
msgstr ""
|
2513 |
|
2514 |
+
#: lib/help.php:389 lib/login_protection.php:21 ninjafirewall.php:926
|
2515 |
msgid "Login Protection"
|
2516 |
msgstr ""
|
2517 |
|
3456 |
msgid "Low (default)"
|
3457 |
msgstr ""
|
3458 |
|
3459 |
+
#: lib/i18n-extra.php:126
|
3460 |
msgid ""
|
3461 |
"If you are using a caching plugin, consult the contextual help before "
|
3462 |
"enabling the antispam."
|
3463 |
msgstr ""
|
3464 |
|
3465 |
+
#: lib/i18n-extra.php:127
|
3466 |
msgid "Apply protection to"
|
3467 |
msgstr ""
|
3468 |
|
3469 |
+
#: lib/i18n-extra.php:128
|
3470 |
msgid "Comment forms (defaut)"
|
3471 |
msgstr ""
|
3472 |
|
3473 |
+
#: lib/i18n-extra.php:129
|
3474 |
msgid "User Registration form"
|
3475 |
msgstr ""
|
3476 |
|
3477 |
+
#: lib/i18n-extra.php:130
|
3478 |
msgid "Save Antispam options"
|
3479 |
msgstr ""
|
3480 |
|
3481 |
+
#: lib/i18n-extra.php:131
|
3482 |
msgid "Please enable JavaScript"
|
3483 |
msgstr ""
|
3484 |
|
3485 |
+
#: lib/i18n-extra.php:132
|
3486 |
msgid "Sorry, this looks like spam to me."
|
3487 |
msgstr ""
|
3488 |
|
3489 |
+
#: lib/i18n-extra.php:133
|
3490 |
msgid ""
|
3491 |
"Error: You must be whitelisted in order to use that feature: click on the <a "
|
3492 |
"href=\"?page=nfsubaccess\">Access Control</a> menu and ensure that the \"Do "
|
3493 |
"not block the following users\" option is enabled for the Admin/Super Admin."
|
3494 |
msgstr ""
|
3495 |
|
3496 |
+
#: lib/i18n-extra.php:134
|
3497 |
msgid ""
|
3498 |
"Your license is valid until the indicated expiration date. If you don't "
|
3499 |
"renew it after this date, NinjaFirewall will keep working and protecting "
|
3500 |
"your website as usual, but updates/upgrades will stop."
|
3501 |
msgstr ""
|
3502 |
|
3503 |
+
#: lib/i18n-extra.php:135
|
3504 |
#, php-format
|
3505 |
msgid ""
|
3506 |
"You can renew your license from <a href=\"%s\">NinTechNet.com</a> website."
|
3507 |
msgstr ""
|
3508 |
|
3509 |
+
#: lib/i18n-extra.php:136
|
3510 |
msgid "Use shared memory"
|
3511 |
msgstr ""
|
3512 |
|
3513 |
+
#: lib/i18n-extra.php:137
|
3514 |
msgid ""
|
3515 |
"This feature allows NinjaFirewall to use Unix shared memory segments in "
|
3516 |
"order to speed up all operations. The firewall will no longer need to "
|
3520 |
"processing speed from 25% to 30%, prevent blocking I/O and slow queries."
|
3521 |
msgstr ""
|
3522 |
|
3523 |
+
#: lib/i18n-extra.php:138
|
3524 |
msgid ""
|
3525 |
"This option requires that your PHP version was compiled with the <code>--"
|
3526 |
"enable-shmop</code> parameter, otherwise, if it is not compatible with your "
|
3527 |
"server/hosting environment, it will be disabled."
|
3528 |
msgstr ""
|
3529 |
|
3530 |
+
#: lib/i18n-extra.php:139
|
3531 |
#, php-format
|
3532 |
msgid ""
|
3533 |
"If you are using <a href=\"%s\">GB2312</a> character set (A.K.A <code>GBK</"
|
3537 |
"used by that charset."
|
3538 |
msgstr ""
|
3539 |
|
3540 |
+
#: lib/i18n-extra.php:140
|
3541 |
msgid "Language"
|
3542 |
msgstr ""
|
3543 |
|
3544 |
+
#: lib/i18n-extra.php:141
|
3545 |
msgid ""
|
3546 |
"When this option is enabled, NinjaFirewall will download, if available, the "
|
3547 |
"corresponding language files from the WordPress repo. Then, every hour, it "
|
3548 |
"will check if there's a new version and will download it."
|
3549 |
msgstr ""
|
3550 |
|
3551 |
+
#: lib/i18n-extra.php:142
|
3552 |
msgid ""
|
3553 |
"Note that this does not apply to <code>en_US</code> and <code>fr_FR</code> "
|
3554 |
"locales because they are already included with NinjaFirewall."
|
3555 |
msgstr ""
|
3556 |
|
3557 |
+
#: lib/i18n-extra.php:143
|
3558 |
#, php-format
|
3559 |
msgid ""
|
3560 |
"This options lets you export you current configuration or import it from "
|
3564 |
"configuration, except your current license."
|
3565 |
msgstr ""
|
3566 |
|
3567 |
+
#: lib/i18n-extra.php:144
|
3568 |
msgid ""
|
3569 |
"You can allow/disallow uploads, or allow uploads but block scripts (PHP, "
|
3570 |
"CGI, Ruby, Python, bash/shell, JavaScript), C/C++ source code, binaries (MZ/"
|
3572 |
"SVG files containing Javascript/XML events."
|
3573 |
msgstr ""
|
3574 |
|
3575 |
+
#: lib/i18n-extra.php:145
|
3576 |
msgid "Maximum allowed file size"
|
3577 |
msgstr ""
|
3578 |
|
3579 |
+
#: lib/i18n-extra.php:146
|
3580 |
msgid ""
|
3581 |
"If you allow uploads, you can select the maximum size of an uploaded file. "
|
3582 |
"Any file bigger than this value will be rejected. Note that if your PHP "
|
3584 |
"be used before NinjaFirewall."
|
3585 |
msgstr ""
|
3586 |
|
3587 |
+
#: lib/i18n-extra.php:147
|
3588 |
msgid "Decode Base64-encoded <code>POST</code> variable:"
|
3589 |
msgstr ""
|
3590 |
|
3591 |
+
#: lib/i18n-extra.php:148
|
3592 |
#, php-format
|
3593 |
msgid ""
|
3594 |
"Object Serialization is a PHP feature used by many applications to generate "
|
3599 |
"request, cookies, user agent and referrer variables."
|
3600 |
msgstr ""
|
3601 |
|
3602 |
+
#: lib/i18n-extra.php:149
|
3603 |
msgid ""
|
3604 |
"This option will reject any <code>GET</code> or <code>POST</code> request, "
|
3605 |
"<code>COOKIE</code>, <code>HTTP_USER_AGENT</code>, <code>REQUEST_URI</code>, "
|
3608 |
"is dangerous and should always be rejected."
|
3609 |
msgstr ""
|
3610 |
|
3611 |
+
#: lib/i18n-extra.php:150
|
3612 |
msgid ""
|
3613 |
"This option will block any <code>GET</code> or <code>POST</code> request "
|
3614 |
"containing the localhost IP (127.0.0.1). It can be useful to block SQL "
|
3615 |
"dumpers and various hacker's shell scripts."
|
3616 |
msgstr ""
|
3617 |
|
3618 |
+
#: lib/i18n-extra.php:151
|
3619 |
msgid ""
|
3620 |
"Access Control is a powerful set of directives that can be used to allow or "
|
3621 |
"restrict access to your website based on many criteria."
|
3622 |
msgstr ""
|
3623 |
|
3624 |
+
#: lib/i18n-extra.php:152
|
3625 |
msgid ""
|
3626 |
"To make better use of them, it is important to understand NinjaFirewall's "
|
3627 |
"directives processing order."
|
3628 |
msgstr ""
|
3629 |
|
3630 |
+
#: lib/i18n-extra.php:153
|
3631 |
msgid ""
|
3632 |
"Because NinjaFirewall is a PHP firewall, its Access Control options apply to "
|
3633 |
"PHP scripts, not to static elements (e.g., images, JS, CSS etc). Depending "
|
3634 |
"on your configuration, they can also apply to HTML pages."
|
3635 |
msgstr ""
|
3636 |
|
3637 |
+
#: lib/i18n-extra.php:154
|
3638 |
msgid "Processing order:"
|
3639 |
msgstr ""
|
3640 |
|
3641 |
+
#: lib/i18n-extra.php:155
|
3642 |
msgid "Incoming HTTP request"
|
3643 |
msgstr ""
|
3644 |
|
3645 |
+
#: lib/i18n-extra.php:156
|
3646 |
#, php-format
|
3647 |
msgid "%s file"
|
3648 |
msgstr ""
|
3649 |
|
3650 |
+
#: lib/i18n-extra.php:157
|
3651 |
msgid "Login Protection."
|
3652 |
msgstr ""
|
3653 |
|
3654 |
+
#: lib/i18n-extra.php:158
|
3655 |
msgid "Access Control (except User Input Access Control):"
|
3656 |
msgstr ""
|
3657 |
|
3658 |
+
#: lib/i18n-extra.php:159
|
3659 |
msgid "Role-based Access Control."
|
3660 |
msgstr ""
|
3661 |
|
3662 |
+
#: lib/i18n-extra.php:160
|
3663 |
msgid "Allowed IPs."
|
3664 |
msgstr ""
|
3665 |
|
3666 |
+
#: lib/i18n-extra.php:161
|
3667 |
msgid "Blocked IPs."
|
3668 |
msgstr ""
|
3669 |
|
3670 |
+
#: lib/i18n-extra.php:162
|
3671 |
msgid "Allowed URLs."
|
3672 |
msgstr ""
|
3673 |
|
3674 |
+
#: lib/i18n-extra.php:163
|
3675 |
msgid "Blocked URLs."
|
3676 |
msgstr ""
|
3677 |
|
3678 |
+
#: lib/i18n-extra.php:164
|
3679 |
msgid "Bot Access Control."
|
3680 |
msgstr ""
|
3681 |
|
3682 |
+
#: lib/i18n-extra.php:165
|
3683 |
msgid "Geolocation."
|
3684 |
msgstr ""
|
3685 |
|
3686 |
+
#: lib/i18n-extra.php:166
|
3687 |
msgid "Rate Limiting."
|
3688 |
msgstr ""
|
3689 |
|
3690 |
+
#: lib/i18n-extra.php:167
|
3691 |
msgid "File Guard."
|
3692 |
msgstr ""
|
3693 |
|
3694 |
+
#: lib/i18n-extra.php:168
|
3695 |
msgid "NinjaFirewall built-in rules and policies + User Input Access Control."
|
3696 |
msgstr ""
|
3697 |
|
3698 |
+
#: lib/i18n-extra.php:169
|
3699 |
msgid "Response body"
|
3700 |
msgstr ""
|
3701 |
|
3702 |
+
#: lib/i18n-extra.php:170
|
3703 |
msgid "HTTP response headers (Firewall Policies)."
|
3704 |
msgstr ""
|
3705 |
|
3706 |
+
#: lib/i18n-extra.php:171
|
3707 |
msgid "Web Filter."
|
3708 |
msgstr ""
|
3709 |
|
3710 |
+
#: lib/i18n-extra.php:172
|
3711 |
#, php-format
|
3712 |
msgid ""
|
3713 |
"By default, any logged in WordPress administrator will not be blocked by "
|
3719 |
"enforced."
|
3720 |
msgstr ""
|
3721 |
|
3722 |
+
#: lib/i18n-extra.php:173
|
3723 |
msgid "You can also add other users to the whitelist, depending on their role."
|
3724 |
msgstr ""
|
3725 |
|
3726 |
+
#: lib/i18n-extra.php:174
|
3727 |
#, php-format
|
3728 |
msgid ""
|
3729 |
"this option should be used if you are behind a reverse proxy, a load "
|
3737 |
"NinjaFirewall will fall back to <code>REMOTE_ADDR</code>."
|
3738 |
msgstr ""
|
3739 |
|
3740 |
+
#: lib/i18n-extra.php:175
|
3741 |
msgid ""
|
3742 |
"This option lets you select the HTTP method(s). All Access Control "
|
3743 |
"directives (Geolocation, IPs, bots and URLs) will only apply to the selected "
|
3744 |
"methods."
|
3745 |
msgstr ""
|
3746 |
|
3747 |
+
#: lib/i18n-extra.php:176
|
3748 |
msgid ""
|
3749 |
"It does not apply to the \"Firewall Policies\" options, which use their own "
|
3750 |
"ones."
|
3751 |
msgstr ""
|
3752 |
|
3753 |
+
#: lib/i18n-extra.php:177
|
3754 |
msgid ""
|
3755 |
"You can filter and block traffic coming from specific countries/territories."
|
3756 |
msgstr ""
|
3757 |
|
3758 |
+
#: lib/i18n-extra.php:178
|
3759 |
msgid ""
|
3760 |
"This is the two-letter code that is used to define a country/territory (e."
|
3761 |
"g., US, UK, FR, DE etc), based on the visitors IP. NinjaFirewall can either "
|
3763 |
"your HTTP server (e.g., <code>GEOIP_COUNTRY_CODE</code>)."
|
3764 |
msgstr ""
|
3765 |
|
3766 |
+
#: lib/i18n-extra.php:179
|
3767 |
#, php-format
|
3768 |
msgid ""
|
3769 |
"You can add/remove any country/territory from the two listboxes. For more "
|
3771 |
"want to consult <a href=\"%s\">the MaxMind GeoIP online help</a>."
|
3772 |
msgstr ""
|
3773 |
|
3774 |
+
#: lib/i18n-extra.php:180
|
3775 |
msgid ""
|
3776 |
"Whether geolocation should apply to the whole site or to specific URLs only "
|
3777 |
"(e.g., /wp-login.php, /xmlrpc.php etc). Leave all fields empty if you want "
|
3778 |
"it to apply to the whole site."
|
3779 |
msgstr ""
|
3780 |
|
3781 |
+
#: lib/i18n-extra.php:181
|
3782 |
msgid "Add <code>NINJA_COUNTRY_CODE</code> to PHP headers?"
|
3783 |
msgstr ""
|
3784 |
|
3785 |
+
#: lib/i18n-extra.php:182
|
3786 |
msgid ""
|
3787 |
"After retrieving the two-letter country/territory code, NinjaFirewall can "
|
3788 |
"add it to the PHP headers in the <code>$_SERVER[\"NINJA_COUNTRY_CODE\"]</"
|
3790 |
"visitors location, simply use that variable."
|
3791 |
msgstr ""
|
3792 |
|
3793 |
+
#: lib/i18n-extra.php:183
|
3794 |
msgid ""
|
3795 |
"If NinjaFirewall cannot find the two-letter ISO 3166 code, it will replace "
|
3796 |
"it with 2 hyphens (<code>--</code>)."
|
3797 |
msgstr ""
|
3798 |
|
3799 |
+
#: lib/i18n-extra.php:184
|
3800 |
msgid ""
|
3801 |
"PHP code example to use in your theme or plugin to geolocate your visitors:"
|
3802 |
msgstr ""
|
3803 |
|
3804 |
+
#: lib/i18n-extra.php:185
|
3805 |
msgid ""
|
3806 |
"NinjaFirewall includes GeoLite data created by MaxMind, available from "
|
3807 |
"http://www.maxmind.com"
|
3808 |
msgstr ""
|
3809 |
|
3810 |
+
#: lib/i18n-extra.php:186
|
3811 |
msgid "IP / URL / Bot Access Control"
|
3812 |
msgstr ""
|
3813 |
|
3814 |
+
#: lib/i18n-extra.php:187
|
3815 |
msgid ""
|
3816 |
"You can permanently allow/block an IP, a whole range of IP addresses or AS "
|
3817 |
"numbers (Autonomous System number). IPv4 and IPv6 are fully supported by "
|
3818 |
"NinjaFirewall."
|
3819 |
msgstr ""
|
3820 |
|
3821 |
+
#: lib/i18n-extra.php:188
|
3822 |
msgid "Full IP:"
|
3823 |
msgstr ""
|
3824 |
|
3825 |
+
#: lib/i18n-extra.php:189
|
3826 |
#, php-format
|
3827 |
msgid "IP ranges using CIDR notation: %s or %s."
|
3828 |
msgstr ""
|
3829 |
|
3830 |
+
#: lib/i18n-extra.php:190
|
3831 |
msgid "Autonomous System number:"
|
3832 |
msgstr ""
|
3833 |
|
3834 |
+
#: lib/i18n-extra.php:191
|
3835 |
msgid ""
|
3836 |
"This option allows you to slow down aggressive bots, crawlers, web scrapers "
|
3837 |
"or even small HTTP attacks. Any IP reaching the defined threshold will be "
|
3844 |
"turned off."
|
3845 |
msgstr ""
|
3846 |
|
3847 |
+
#: lib/i18n-extra.php:192
|
3848 |
msgid ""
|
3849 |
"IPs temporarily banned by the Rate Limiting option can be unblocked "
|
3850 |
"immediately by clicking either the \"Save Access Control Directives\" or "
|
3851 |
"\"Restore Default Values\" buttons at the bottom of this page."
|
3852 |
msgstr ""
|
3853 |
|
3854 |
+
#: lib/i18n-extra.php:193
|
3855 |
msgid ""
|
3856 |
"Because NinjaFirewall can handle a lot of HTTP requests per second and block "
|
3857 |
"IPs even before your blog is loaded, we strongly recommend that you disable "
|
3861 |
"during an attack."
|
3862 |
msgstr ""
|
3863 |
|
3864 |
+
#: lib/i18n-extra.php:194
|
3865 |
msgid ""
|
3866 |
"You can permanently allow/block any access to one or more PHP scripts based "
|
3867 |
"on their path, relative to the web root (<code>SCRIPT_NAME</code>). You can "
|
3868 |
"enter either a full or partial path (case-sensitive)."
|
3869 |
msgstr ""
|
3870 |
|
3871 |
+
#: lib/i18n-extra.php:195
|
3872 |
msgid ""
|
3873 |
"<code>/foo/bar.php</code> will block any access to the <code>bar.php</code> "
|
3874 |
"script located inside a <code>/foo/</code> directory"
|
3875 |
msgstr ""
|
3876 |
|
3877 |
+
#: lib/i18n-extra.php:196
|
3878 |
msgid "etc"
|
3879 |
msgstr ""
|
3880 |
|
3881 |
+
#: lib/i18n-extra.php:197
|
3882 |
msgid ""
|
3883 |
"<code>/foo/</code> will block access to all PHP scripts located inside a "
|
3884 |
"<code>/foo/</code> directory and its sub-directories."
|
3885 |
msgstr ""
|
3886 |
|
3887 |
+
#: lib/i18n-extra.php:198
|
3888 |
msgid ""
|
3889 |
"Note that the \"Firewall Policies\" page already includes restrictions to "
|
3890 |
"some WordPress directories."
|
3891 |
msgstr ""
|
3892 |
|
3893 |
+
#: lib/i18n-extra.php:199
|
3894 |
msgid ""
|
3895 |
"You can block bots, scanners and various crawlers based on the "
|
3896 |
"<code>HTTP_USER_AGENT</code> variable. You can enter either a full or "
|
3897 |
"partial name (case-insensitive)."
|
3898 |
msgstr ""
|
3899 |
|
3900 |
+
#: lib/i18n-extra.php:200
|
3901 |
msgid ""
|
3902 |
"You can select to ignore or block some specific user input. It applies to "
|
3903 |
"the <code>GET</code>, <code>POST</code> and <code>COOKIE</code> global "
|
3905 |
"\"]</code>:"
|
3906 |
msgstr ""
|
3907 |
|
3908 |
+
#: lib/i18n-extra.php:201
|
3909 |
msgid ""
|
3910 |
"When an input is added to the \"Unfiltered input\" list, it will not be "
|
3911 |
"filtered or sanitised. All other input present in the request will be "
|
3912 |
"filtered."
|
3913 |
msgstr ""
|
3914 |
|
3915 |
+
#: lib/i18n-extra.php:202
|
3916 |
msgid ""
|
3917 |
"When an input is added to the \"Blocked input\", NinjaFirewall will block "
|
3918 |
"the request and close the connection if that input is found in the request."
|
3919 |
msgstr ""
|
3920 |
|
3921 |
+
#: lib/i18n-extra.php:203
|
3922 |
msgid "Log Event"
|
3923 |
msgstr ""
|
3924 |
|
3925 |
+
#: lib/i18n-extra.php:204
|
3926 |
msgid ""
|
3927 |
"You can enable/disable firewall logging for each access control directive "
|
3928 |
"separately."
|
3929 |
msgstr ""
|
3930 |
|
3931 |
+
#: lib/i18n-extra.php:205
|
3932 |
msgid "Web Filter"
|
3933 |
msgstr ""
|
3934 |
|
3935 |
+
#: lib/i18n-extra.php:206
|
3936 |
msgid ""
|
3937 |
"If NinjaFirewall can hook and scan incoming requests, it can also hook the "
|
3938 |
"response body (i.e., the output of the HTML page right before it is sent to "
|
3942 |
"hackers shell script, redirections and even errors (PHP/MySQL errors)."
|
3943 |
msgstr ""
|
3944 |
|
3945 |
+
#: lib/i18n-extra.php:207
|
3946 |
msgid ""
|
3947 |
"In the case of a positive detection, NinjaFirewall will not block the "
|
3948 |
"response body but will send you an alert by email."
|
3949 |
msgstr ""
|
3950 |
|
3951 |
+
#: lib/i18n-extra.php:208
|
3952 |
msgid "Search HTML page for the following keywords"
|
3953 |
msgstr ""
|
3954 |
|
3955 |
+
#: lib/i18n-extra.php:209
|
3956 |
msgid ""
|
3957 |
"You can enter any keyword from 4 to 150 characters and select whether the "
|
3958 |
"search will be case sensitive or not."
|
3959 |
msgstr ""
|
3960 |
|
3961 |
+
#: lib/i18n-extra.php:210
|
3962 |
msgid "Email Alerts"
|
3963 |
msgstr ""
|
3964 |
|
3965 |
+
#: lib/i18n-extra.php:211
|
3966 |
msgid ""
|
3967 |
"You can use the notification throttling option to limit the frequency of "
|
3968 |
"alerts sent to you (and written to the firewall log) and select whether you "
|
3971 |
"in the \"Event Notifications\" menu."
|
3972 |
msgstr ""
|
3973 |
|
3974 |
+
#: lib/i18n-extra.php:212
|
3975 |
msgid ""
|
3976 |
"Response body filtering can be resource-intensive. Try to limit the number "
|
3977 |
"of keywords to what you really need (less than 10) and, if possible, prefer "
|
3978 |
"case sensitive to case insensitive filtering."
|
3979 |
msgstr ""
|
3980 |
|
3981 |
+
#: lib/i18n-extra.php:213
|
3982 |
msgid ""
|
3983 |
"NinjaFirewall can protect your blog against spam without user interaction (e."
|
3984 |
"g., CAPTCHA, math puzzles etc). The protection is totally transparent to "
|
3987 |
"generate your forms, they will not be protected against spam."
|
3988 |
msgstr ""
|
3989 |
|
3990 |
+
#: lib/i18n-extra.php:214
|
3991 |
msgid "Protection level:"
|
3992 |
msgstr ""
|
3993 |
|
3994 |
+
#: lib/i18n-extra.php:215
|
3995 |
msgid ""
|
3996 |
"Select the level of protection. In most cases, <strong>Low</strong> should "
|
3997 |
"be enough."
|
3998 |
msgstr ""
|
3999 |
|
4000 |
+
#: lib/i18n-extra.php:216
|
4001 |
msgid "Apply protection to:"
|
4002 |
msgstr ""
|
4003 |
|
4004 |
+
#: lib/i18n-extra.php:217
|
4005 |
msgid "Whether to protect comment and/or registration forms."
|
4006 |
msgstr ""
|
4007 |
|
4008 |
+
#: lib/i18n-extra.php:218
|
4009 |
msgid "If you are using a caching plugin, ensure you follow these steps:"
|
4010 |
msgstr ""
|
4011 |
|
4012 |
+
#: lib/i18n-extra.php:219
|
4013 |
msgid ""
|
4014 |
"Set the Protection Level to \"Low\" only. Do not use another value, "
|
4015 |
"otherwise the antispam could behave erratically after a while."
|
4016 |
msgstr ""
|
4017 |
|
4018 |
+
#: lib/i18n-extra.php:220
|
4019 |
msgid ""
|
4020 |
"Flush/clear your cache immediately after enabling or disabling the antispam."
|
4021 |
msgstr ""
|
4022 |
|
4023 |
+
#: lib/i18n-extra.php:221
|
4024 |
msgid ""
|
4025 |
"The firewall log displays blocked and sanitised requests as well as some "
|
4026 |
"useful information. It has 6 columns:"
|
4027 |
msgstr ""
|
4028 |
|
4029 |
+
#: lib/i18n-extra.php:222
|
4030 |
msgid ""
|
4031 |
"RULE : reference of the NinjaFirewall built-in security rule that triggered "
|
4032 |
"the action. A hyphen (<code>-</code>) instead of a number means it was a "
|
4033 |
"rule from the \"Firewall Policies\" or \"Access Control\" pages."
|
4034 |
msgstr ""
|
4035 |
|
4036 |
+
#: lib/i18n-extra.php:223
|
4037 |
msgid "The log can also be exported as a TSV (tab-separated values) text file."
|
4038 |
msgstr ""
|
4039 |
|
4040 |
+
#: lib/i18n-extra.php:224
|
4041 |
msgid "Enable firewall log"
|
4042 |
msgstr ""
|
4043 |
|
4044 |
+
#: lib/i18n-extra.php:225
|
4045 |
msgid "You can disable/enable the firewall log from this page."
|
4046 |
msgstr ""
|
4047 |
|
4048 |
+
#: lib/i18n-extra.php:226
|
4049 |
msgid ""
|
4050 |
"Brute-force attacks will still be written to the firewall log, even if you "
|
4051 |
"disable it."
|
4052 |
msgstr ""
|
4053 |
|
4054 |
+
#: lib/i18n-extra.php:227
|
4055 |
msgid "Auto-rotate log"
|
4056 |
msgstr ""
|
4057 |
|
4058 |
+
#: lib/i18n-extra.php:228
|
4059 |
msgid ""
|
4060 |
"NinjaFirewall will rotate its log automatically on the very first day of "
|
4061 |
"each month. If your site is very busy, you may want to allow it to rotate "
|
4062 |
"the log when it reaches a certain size (MB) as well."
|
4063 |
msgstr ""
|
4064 |
|
4065 |
+
#: lib/i18n-extra.php:229
|
4066 |
msgid ""
|
4067 |
"By default, if will rotate the log each month or earlier, if it reaches 2 "
|
4068 |
"megabytes."
|
4069 |
msgstr ""
|
4070 |
|
4071 |
+
#: lib/i18n-extra.php:230
|
4072 |
msgid ""
|
4073 |
"Rotated logs, if any, can be selected and viewed from the dropdown menu."
|
4074 |
msgstr ""
|
4075 |
|
4076 |
+
#: lib/i18n-extra.php:231
|
4077 |
msgid "Syslog"
|
4078 |
msgstr ""
|
4079 |
|
4080 |
+
#: lib/i18n-extra.php:232
|
4081 |
msgid ""
|
4082 |
"In addition to the firewall log, events can also be redirected to the syslog "
|
4083 |
"server (<code>LOG_USER</code> facility)."
|
4084 |
msgstr ""
|
4085 |
|
4086 |
+
#: lib/i18n-extra.php:233
|
4087 |
msgid ""
|
4088 |
"If you have a shared hosting account, keep this option disabled as you do "
|
4089 |
"not have any access to the server logs."
|
4090 |
msgstr ""
|
4091 |
|
4092 |
+
#: lib/i18n-extra.php:234
|
4093 |
msgid "The logline uses the following format:"
|
4094 |
msgstr ""
|
4095 |
|
4096 |
+
#: lib/i18n-extra.php:235
|
4097 |
msgid ""
|
4098 |
"BB: the level of severity as it appears in the firewall log. It can be "
|
4099 |
"<code>CRITICAL</CODE>, <CODE>HIGH</CODE>, <CODE>MEDIUM</CODE>, <CODE>INFO</"
|
4100 |
"CODE>, <CODE>UPLOAD</CODE> or <CODE>DEBUG_ON</CODE>."
|
4101 |
msgstr ""
|
4102 |
|
4103 |
+
#: lib/i18n-extra.php:236
|
4104 |
msgid "CCCCCC: the 7-digit incident ID."
|
4105 |
msgstr ""
|
4106 |
|
4107 |
+
#: lib/i18n-extra.php:237
|
4108 |
msgid "DD: the user IPv4 or IPv6 address."
|
4109 |
msgstr ""
|
4110 |
|
4111 |
+
#: lib/i18n-extra.php:238
|
4112 |
msgid "EE: the blog (sub-)domain name."
|
4113 |
msgstr ""
|
4114 |
|
4115 |
+
#: lib/i18n-extra.php:239
|
4116 |
#, php-format
|
4117 |
msgid ""
|
4118 |
"This logging option does not apply to the brute-force protection which can "
|
4120 |
"the <a href=\"%s\">Login Protection</a> page."
|
4121 |
msgstr ""
|
4122 |
|
4123 |
+
#: lib/i18n-extra.php:240
|
4124 |
msgid ""
|
4125 |
"Secret key: The secret key will be used to generate your public key. Enter "
|
4126 |
"at least 30 ASCII characters, or use the one randomly created by "
|
4127 |
"NinjaFirewall."
|
4128 |
msgstr ""
|
4129 |
|
4130 |
+
#: lib/i18n-extra.php:241
|
4131 |
msgid ""
|
4132 |
"This server IP address: As an additional protection layer, you can restrict "
|
4133 |
"access to the remote website(s) to the main server IP only. You can use IPv4 "
|
4135 |
"character instead."
|
4136 |
msgstr ""
|
4137 |
|
4138 |
+
#: lib/i18n-extra.php:242
|
4139 |
#, php-format
|
4140 |
msgid ""
|
4141 |
"Public key: This is the public key that you will need to upload to each "
|
4142 |
"remote website (<a href=\"%s\">consult our blog</a> for more info about it)."
|
4143 |
msgstr ""
|
4144 |
|
4145 |
+
#: lib/i18n-extra.php:243
|
4146 |
msgid ""
|
4147 |
"Remote websites URL: Enter the full URL of your NinjaFirewall protected "
|
4148 |
"website(s) that you want to remotely access from the main server."
|
4149 |
msgstr ""
|
4150 |
|
4151 |
+
#: lib/i18n-extra.php:244
|
4152 |
msgid ""
|
4153 |
"Centralized Logging will keep working even if NinjaFirewall is disabled. Use "
|
4154 |
"the menu below if you want to disable it."
|
4155 |
msgstr ""
|
4156 |
|
4157 |
+
#: lib/i18n-extra.php:245
|
4158 |
msgid "Enable Web Filter"
|
4159 |
msgstr ""
|
4160 |
|
4161 |
+
#: lib/i18n-extra.php:246
|
4162 |
msgid "A full or partial string."
|
4163 |
msgstr ""
|
4164 |
|
4165 |
+
#: lib/i18n-extra.php:247
|
4166 |
msgid "From 4 to maximum 150 characters."
|
4167 |
msgstr ""
|
4168 |
|
4169 |
+
#: lib/i18n-extra.php:248
|
4170 |
msgid "Any character, except the vertical bar <code>|</code>"
|
4171 |
msgstr ""
|
4172 |
|
4173 |
+
#: lib/i18n-extra.php:249
|
4174 |
msgid "Keywords to search:"
|
4175 |
msgstr ""
|
4176 |
|
4177 |
+
#: lib/i18n-extra.php:250
|
4178 |
msgid "Case-sensitive search"
|
4179 |
msgstr ""
|
4180 |
|
4181 |
+
#: lib/i18n-extra.php:251
|
4182 |
#, php-format
|
4183 |
msgid "Do not send me more than one email alert in a %s interval"
|
4184 |
msgstr ""
|
4185 |
|
4186 |
+
#: lib/i18n-extra.php:252
|
4187 |
msgid "5-minute"
|
4188 |
msgstr ""
|
4189 |
|
4190 |
+
#: lib/i18n-extra.php:253
|
4191 |
msgid "15-minute"
|
4192 |
msgstr ""
|
4193 |
|
4194 |
+
#: lib/i18n-extra.php:254
|
4195 |
msgid "30-minute"
|
4196 |
msgstr ""
|
4197 |
|
4198 |
+
#: lib/i18n-extra.php:255
|
4199 |
msgid "1-hour"
|
4200 |
msgstr ""
|
4201 |
|
4202 |
+
#: lib/i18n-extra.php:256
|
4203 |
msgid "3-hour"
|
4204 |
msgstr ""
|
4205 |
|
4206 |
+
#: lib/i18n-extra.php:257
|
4207 |
msgid "6-hour"
|
4208 |
msgstr ""
|
4209 |
|
4210 |
+
#: lib/i18n-extra.php:258
|
4211 |
msgid "12-hour"
|
4212 |
msgstr ""
|
4213 |
|
4214 |
+
#: lib/i18n-extra.php:259
|
4215 |
msgid "24-hour"
|
4216 |
msgstr ""
|
4217 |
|
4218 |
+
#: lib/i18n-extra.php:260
|
4219 |
msgid ""
|
4220 |
"Clicking the \"Save Web Filter options\" button below will reset the current "
|
4221 |
"timer."
|
4222 |
msgstr ""
|
4223 |
|
4224 |
+
#: lib/i18n-extra.php:261
|
4225 |
msgid "Attach the HTML page output to email alerts"
|
4226 |
msgstr ""
|
4227 |
|
4228 |
+
#: lib/i18n-extra.php:262
|
4229 |
msgid "Save Web Filter options"
|
4230 |
msgstr ""
|
4231 |
|
4232 |
+
#: lib/i18n-extra.php:263
|
4233 |
msgid "Help Desk:"
|
4234 |
msgstr ""
|
4235 |
|
4236 |
+
#: lib/i18n-extra.php:264
|
4237 |
msgid "The selected log was deleted"
|
4238 |
msgstr ""
|
4239 |
|
4240 |
+
#: lib/i18n-extra.php:265
|
4241 |
msgid "Export"
|
4242 |
msgstr ""
|
4243 |
|
4244 |
+
#: lib/i18n-extra.php:266
|
4245 |
msgid "Delete"
|
4246 |
msgstr ""
|
4247 |
|
4248 |
+
#: lib/i18n-extra.php:267
|
4249 |
msgid "Delete log?"
|
4250 |
msgstr ""
|
4251 |
|
4252 |
+
#: lib/i18n-extra.php:268
|
4253 |
msgid "Today"
|
4254 |
msgstr ""
|
4255 |
|
4256 |
+
#: lib/i18n-extra.php:269
|
4257 |
msgid "Upload"
|
4258 |
msgstr ""
|
4259 |
|
4260 |
+
#: lib/i18n-extra.php:270
|
4261 |
msgid "Info"
|
4262 |
msgstr ""
|
4263 |
|
4264 |
+
#: lib/i18n-extra.php:271
|
4265 |
msgid "Debug"
|
4266 |
msgstr ""
|
4267 |
|
4268 |
+
#: lib/i18n-extra.php:272
|
4269 |
msgid "IP address:"
|
4270 |
msgstr ""
|
4271 |
|
4272 |
+
#: lib/i18n-extra.php:273
|
4273 |
msgid "e.g., 1.2.3.4"
|
4274 |
msgstr ""
|
4275 |
|
4276 |
+
#: lib/i18n-extra.php:274
|
4277 |
msgid "Add IP to blacklist"
|
4278 |
msgstr ""
|
4279 |
|
4280 |
+
#: lib/i18n-extra.php:275
|
4281 |
msgid "Add IP to whitelist"
|
4282 |
msgstr ""
|
4283 |
|
4284 |
+
#: lib/i18n-extra.php:276
|
4285 |
msgid "Add"
|
4286 |
msgstr ""
|
4287 |
|
4288 |
+
#: lib/i18n-extra.php:277
|
4289 |
msgid "The address wad added to your IP Access Control list."
|
4290 |
msgstr ""
|
4291 |
|
4292 |
+
#: lib/i18n-extra.php:278
|
4293 |
#, php-format
|
4294 |
msgid "1st day of the month, or if bigger than %s MB"
|
4295 |
msgstr ""
|
4296 |
|
4297 |
+
#: lib/i18n-extra.php:279
|
4298 |
msgid "1st day of the month, regardless of its size"
|
4299 |
msgstr ""
|
4300 |
|
4301 |
+
#: lib/i18n-extra.php:280
|
4302 |
msgid "Show the most recent"
|
4303 |
msgstr ""
|
4304 |
|
4305 |
+
#: lib/i18n-extra.php:281
|
4306 |
msgid "lines"
|
4307 |
msgstr ""
|
4308 |
|
4309 |
+
#: lib/i18n-extra.php:282
|
4310 |
msgid "Write events to the Syslog server too"
|
4311 |
msgstr ""
|
4312 |
|
4313 |
+
#: lib/i18n-extra.php:283
|
4314 |
msgid "Your server configuration is not compatible with this option."
|
4315 |
msgstr ""
|
4316 |
|
4317 |
+
#: lib/i18n-extra.php:284
|
4318 |
msgid "See contextual help before enabling this option."
|
4319 |
msgstr ""
|
4320 |
|
4321 |
+
#: lib/i18n-extra.php:285
|
4322 |
msgid ""
|
4323 |
"The remote server rejected your request. Make sure that you uploaded the "
|
4324 |
"correct public key."
|
4325 |
msgstr ""
|
4326 |
|
4327 |
+
#: lib/i18n-extra.php:286
|
4328 |
#, php-format
|
4329 |
msgid "The remote server returned the following HTTP error: %s"
|
4330 |
msgstr ""
|
4331 |
|
4332 |
+
#: lib/i18n-extra.php:287
|
4333 |
msgid "The requested log does not exist on the remote website."
|
4334 |
msgstr ""
|
4335 |
|
4336 |
+
#: lib/i18n-extra.php:288
|
4337 |
msgid "The remote website did not return the expected response."
|
4338 |
msgstr ""
|
4339 |
|
4340 |
+
#: lib/i18n-extra.php:289
|
4341 |
msgid "Your server does not seem to be compatible with this option."
|
4342 |
msgstr ""
|
4343 |
|
4344 |
+
#: lib/i18n-extra.php:290
|
4345 |
msgid "Load language files from the WordPress repo"
|
4346 |
msgstr ""
|
4347 |
|
4348 |
+
#: lib/i18n-extra.php:291
|
4349 |
#, php-format
|
4350 |
msgid ""
|
4351 |
"If available, NinjaFirewall will download the language files from <a "
|
4352 |
"%s>translate.wordpress.org</a>."
|
4353 |
msgstr ""
|
4354 |
|
4355 |
+
#: lib/i18n-extra.php:292
|
4356 |
msgid "Error: you do not have any license."
|
4357 |
msgstr ""
|
4358 |
|
4359 |
+
#: lib/i18n-extra.php:293
|
4360 |
msgid "You have a valid license."
|
4361 |
msgstr ""
|
4362 |
|
4363 |
+
#: lib/i18n-extra.php:294
|
4364 |
msgid ""
|
4365 |
"An unknown error occured while connecting to NinjaFirewall servers. Please "
|
4366 |
"try again in a few minutes"
|
4367 |
msgstr ""
|
4368 |
|
4369 |
+
#: lib/i18n-extra.php:295
|
4370 |
msgid ""
|
4371 |
"An error occured while connecting to NinjaFirewall servers. Please try again "
|
4372 |
"in a few minutes"
|
4373 |
msgstr ""
|
4374 |
|
4375 |
+
#: lib/i18n-extra.php:296
|
4376 |
msgid "Enter a valid license to save!"
|
4377 |
msgstr ""
|
4378 |
|
4379 |
+
#: lib/i18n-extra.php:297
|
4380 |
msgid "This is already your current license!"
|
4381 |
msgstr ""
|
4382 |
|
4383 |
+
#: lib/i18n-extra.php:298
|
4384 |
msgid "Your new license has been accepted and saved."
|
4385 |
msgstr ""
|
4386 |
|
4387 |
+
#: lib/i18n-extra.php:299
|
4388 |
msgid "This license is not valid"
|
4389 |
msgstr ""
|
4390 |
|
4391 |
+
#: lib/i18n-extra.php:300
|
4392 |
msgid "WP+ Edition License"
|
4393 |
msgstr ""
|
4394 |
|
4395 |
+
#: lib/i18n-extra.php:301
|
4396 |
msgid "License Number"
|
4397 |
msgstr ""
|
4398 |
|
4399 |
+
#: lib/i18n-extra.php:302
|
4400 |
msgid "No license found"
|
4401 |
msgstr ""
|
4402 |
|
4403 |
+
#: lib/i18n-extra.php:303
|
4404 |
msgid "Click to check your license validity"
|
4405 |
msgstr ""
|
4406 |
|
4407 |
+
#: lib/i18n-extra.php:304
|
4408 |
msgid "Expiration date"
|
4409 |
msgstr ""
|
4410 |
|
4411 |
+
#: lib/i18n-extra.php:305
|
4412 |
msgid "Unknown expiration date"
|
4413 |
msgstr ""
|
4414 |
|
4415 |
+
#: lib/i18n-extra.php:306
|
4416 |
msgid "Use the \"Check License Validity\" button to attempt to fix this error."
|
4417 |
msgstr ""
|
4418 |
|
4419 |
+
#: lib/i18n-extra.php:307
|
4420 |
msgid "Your license will expire soon!"
|
4421 |
msgstr ""
|
4422 |
|
4423 |
+
#: lib/i18n-extra.php:308
|
4424 |
msgid "Your license has expired."
|
4425 |
msgstr ""
|
4426 |
|
4427 |
+
#: lib/i18n-extra.php:309
|
4428 |
msgid "License renewal"
|
4429 |
msgstr ""
|
4430 |
|
4431 |
+
#: lib/i18n-extra.php:310
|
4432 |
msgid "Click here to get a license!"
|
4433 |
msgstr ""
|
4434 |
|
4435 |
+
#: lib/i18n-extra.php:311
|
4436 |
msgid "Enter your new license and click on the save button"
|
4437 |
msgstr ""
|
4438 |
|
4439 |
+
#: lib/i18n-extra.php:312
|
4440 |
msgid "Save New License"
|
4441 |
msgstr ""
|
4442 |
|
4443 |
+
#: lib/i18n-extra.php:313
|
4444 |
msgid "Allow, but block dangerous files"
|
4445 |
msgstr ""
|
4446 |
|
4447 |
+
#: lib/i18n-extra.php:314
|
4448 |
msgid "See contextual help for the list of files."
|
4449 |
msgstr ""
|
4450 |
|
4451 |
+
#: lib/i18n-extra.php:315
|
4452 |
msgid "Apply to ZIP archives file contents"
|
4453 |
msgstr ""
|
4454 |
|
4455 |
+
#: lib/i18n-extra.php:316
|
4456 |
msgid ""
|
4457 |
"Keep this option disabled if you are using scripts such as Paypal IPN or "
|
4458 |
"WordPress WP-Cron, unless you added their IP address or URL to your Access "
|
4459 |
"Control whitelist."
|
4460 |
msgstr ""
|
4461 |
|
4462 |
+
#: lib/i18n-extra.php:317
|
4463 |
#, php-format
|
4464 |
msgid ""
|
4465 |
"Do not send a notification if the user is in the <a href=\"%s\">IP Access "
|
4472 |
"Error: Your .htaccess file is not writable, please change its permissions: %s"
|
4473 |
msgstr ""
|
4474 |
|
4475 |
+
#: lib/install.php:110 ninjafirewall.php:656 ninjafirewall.php:660
|
4476 |
#, php-format
|
4477 |
msgid "Error: wrong parameter value (%s)."
|
4478 |
msgstr ""
|
4515 |
msgid "File is not writable"
|
4516 |
msgstr ""
|
4517 |
|
4518 |
+
#: lib/install_default.php:168
|
4519 |
msgid ""
|
4520 |
"Error: The installer cannot download the security rules from wordpress.org "
|
4521 |
"website."
|
4522 |
msgstr ""
|
4523 |
|
4524 |
+
#: lib/install_default.php:169
|
4525 |
msgid ""
|
4526 |
"The server may be temporarily down or you may have network connectivity "
|
4527 |
"problems? Please try again in a few minutes."
|
4528 |
msgstr ""
|
4529 |
|
4530 |
+
#: lib/install_default.php:170
|
4531 |
msgid ""
|
4532 |
"NinjaFirewall downloads its rules over an HTTPS secure connection. Maybe "
|
4533 |
"your server does not support SSL? You can force NinjaFirewall to use a non-"
|
4535 |
"config.php</strong> file:"
|
4536 |
msgstr ""
|
4537 |
|
4538 |
+
#: lib/install_default.php:243
|
4539 |
#, php-format
|
4540 |
msgid ""
|
4541 |
"NinjaFirewall cannot create its <code>nfwlog/</code>log and cache folder; "
|
4714 |
msgid "Error: unable to write to the %s configuration file"
|
4715 |
msgstr ""
|
4716 |
|
4717 |
+
#: lib/logs.php:36 ninjafirewall.php:930
|
4718 |
msgid "Logs"
|
4719 |
msgstr ""
|
4720 |
|
4721 |
+
#: lib/logs.php:41
|
4722 |
+
msgid ""
|
4723 |
+
"In the Premium version of NinjaFirewall, you can filter the log by threat "
|
4724 |
+
"severity, type and date. You can delete it, enable its rotation based on the "
|
4725 |
+
"size of the file. It can be exported as a TSV (tab-separated values) text "
|
4726 |
+
"file. You can easily add any IP address to your Access Control whitelist or "
|
4727 |
+
"blacklist and it is possible to redirect all incidents and events to the "
|
4728 |
+
"Syslog server."
|
4729 |
+
msgstr ""
|
4730 |
+
|
4731 |
+
#: lib/logs.php:41
|
4732 |
+
msgid ""
|
4733 |
+
"Also, the Centralized Logging feature lets you remotely access the firewall "
|
4734 |
+
"log of all your NinjaFirewall protected websites from one single "
|
4735 |
+
"installation."
|
4736 |
+
msgstr ""
|
4737 |
+
|
4738 |
#: lib/logs_firewall_log.php:35
|
4739 |
#, php-format
|
4740 |
msgid ""
|
4755 |
msgid "Your public key has been saved"
|
4756 |
msgstr ""
|
4757 |
|
|
|
|
|
|
|
|
|
4758 |
#: lib/logs_firewall_log.php:92
|
4759 |
msgid "Note"
|
4760 |
msgstr ""
|
4836 |
"Administrator to the whitelist\" option is enabled."
|
4837 |
msgstr ""
|
4838 |
|
4839 |
+
#: lib/logs_live_log.php:96 ninjafirewall.php:353
|
4840 |
msgid ""
|
4841 |
"Live Log lets you watch your blog traffic in real time. To enable it, click "
|
4842 |
"on the button below."
|
4937 |
msgid "Error: please enter the custom log format."
|
4938 |
msgstr ""
|
4939 |
|
4940 |
+
#: lib/monitoring.php:43 ninjafirewall.php:904
|
4941 |
msgid "Monitoring"
|
4942 |
msgstr ""
|
4943 |
|
4944 |
+
#: lib/monitoring.php:48
|
4945 |
+
msgid ""
|
4946 |
+
"In the Premium version of NinjaFirewall, you can also monitor the response "
|
4947 |
+
"body, i.e., the output of the HTML page, and search it for some specific "
|
4948 |
+
"keywords, which can be useful to identify errors, hacked content and data "
|
4949 |
+
"leakage issues on your website."
|
4950 |
+
msgstr ""
|
4951 |
+
|
4952 |
#: lib/monitoring_file_check.php:62
|
4953 |
msgid "Snapshot successfully created."
|
4954 |
msgstr ""
|
4961 |
msgid "You must create a snapshot first."
|
4962 |
msgstr ""
|
4963 |
|
4964 |
+
#: lib/monitoring_file_check.php:102 lib/monitoring_file_check.php:757
|
4965 |
msgid "NinjaFirewall detected that changes were made to your files."
|
4966 |
msgstr ""
|
4967 |
|
5054 |
msgid "Last changes"
|
5055 |
msgstr ""
|
5056 |
|
5057 |
+
#: lib/monitoring_file_check.php:281 lib/monitoring_file_check.php:765
|
5058 |
#, php-format
|
5059 |
msgid "New files: %s"
|
5060 |
msgstr ""
|
5061 |
|
5062 |
+
#: lib/monitoring_file_check.php:282 lib/monitoring_file_check.php:767
|
5063 |
#, php-format
|
5064 |
msgid "Deleted files: %s"
|
5065 |
msgstr ""
|
5066 |
|
5067 |
+
#: lib/monitoring_file_check.php:283 lib/monitoring_file_check.php:766
|
5068 |
#, php-format
|
5069 |
msgid "Modified files: %s"
|
5070 |
msgstr ""
|
5237 |
msgid "Error reading new snapshot file."
|
5238 |
msgstr ""
|
5239 |
|
5240 |
+
#: lib/monitoring_file_check.php:730 ninjafirewall.php:460
|
5241 |
msgid "New file"
|
5242 |
msgstr ""
|
5243 |
|
5244 |
+
#: lib/monitoring_file_check.php:731 ninjafirewall.php:461
|
5245 |
msgid "Modified file"
|
5246 |
msgstr ""
|
5247 |
|
5248 |
+
#: lib/monitoring_file_check.php:732 ninjafirewall.php:462
|
5249 |
msgid "Deleted file"
|
5250 |
msgstr ""
|
5251 |
|
5252 |
+
#: lib/monitoring_file_check.php:756
|
5253 |
msgid "[NinjaFirewall] Alert: File Check detection"
|
5254 |
msgstr ""
|
5255 |
|
5256 |
+
#: lib/monitoring_file_check.php:763 lib/monitoring_file_check.php:785
|
5257 |
+
#: lib/security_rules_update.php:564
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5258 |
#, php-format
|
5259 |
msgid "Date: %s"
|
5260 |
msgstr ""
|
5261 |
|
5262 |
+
#: lib/monitoring_file_check.php:769
|
5263 |
msgid "See attached file for details."
|
5264 |
msgstr ""
|
5265 |
|
5266 |
+
#: lib/monitoring_file_check.php:778
|
5267 |
msgid "[NinjaFirewall] File Check report"
|
5268 |
msgstr ""
|
5269 |
|
5270 |
+
#: lib/monitoring_file_check.php:779
|
5271 |
msgid "NinjaFirewall did not detect changes in your files."
|
5272 |
msgstr ""
|
5273 |
|
5313 |
msgid "Save File Guard options"
|
5314 |
msgstr ""
|
5315 |
|
5316 |
+
#: lib/network.php:24 ninjafirewall.php:1191 ninjafirewall.php:1195
|
5317 |
#, php-format
|
5318 |
msgid "You are not allowed to perform this task (%s)."
|
5319 |
msgstr ""
|
5336 |
msgid "Save Network options"
|
5337 |
msgstr ""
|
5338 |
|
5339 |
+
#: lib/scheduled_tasks.php:120 lib/scheduled_tasks.php:128
|
5340 |
+
#: lib/scheduled_tasks.php:143 lib/scheduled_tasks.php:152
|
5341 |
+
#, php-format
|
5342 |
+
msgid "Scheduled task has stopped, restarting it (%s)"
|
5343 |
+
msgstr ""
|
5344 |
+
|
5345 |
+
#: lib/security_rules.php:44 lib/security_rules_update.php:565
|
5346 |
+
#: ninjafirewall.php:934
|
5347 |
msgid "Security Rules"
|
5348 |
msgstr ""
|
5349 |
|
5445 |
msgid "Security rules have been updated."
|
5446 |
msgstr ""
|
5447 |
|
5448 |
+
#: lib/security_rules_update.php:91 lib/security_rules_update.php:447
|
5449 |
msgid "No security rules update available."
|
5450 |
msgstr ""
|
5451 |
|
5464 |
msgid "Check for updates"
|
5465 |
msgstr ""
|
5466 |
|
5467 |
+
#: lib/security_rules_update.php:148
|
5468 |
+
msgid ""
|
5469 |
+
"In the Premium version of NinjaFirewall, you can check for security rules "
|
5470 |
+
"updates as often as every 15 minutes, versus one hour for the free WP "
|
5471 |
+
"Edition."
|
5472 |
+
msgstr ""
|
5473 |
+
|
5474 |
#: lib/security_rules_update.php:151
|
5475 |
msgid "Every 15 minutes"
|
5476 |
msgstr ""
|
5531 |
msgid "Delete Log"
|
5532 |
msgstr ""
|
5533 |
|
5534 |
+
#: lib/security_rules_update.php:314
|
5535 |
msgid "Error: Wrong rules format."
|
5536 |
msgstr ""
|
5537 |
|
5538 |
+
#: lib/security_rules_update.php:323
|
5539 |
msgid "Error: Unable to unserialize the new rules."
|
5540 |
msgstr ""
|
5541 |
|
5542 |
+
#: lib/security_rules_update.php:331
|
5543 |
msgid "Error: Unserialized rules seem corrupted."
|
5544 |
msgstr ""
|
5545 |
|
5546 |
+
#: lib/security_rules_update.php:390
|
5547 |
#, php-format
|
5548 |
msgid "Security rules updated to version %s."
|
5549 |
msgstr ""
|
5550 |
|
5551 |
+
#: lib/security_rules_update.php:436
|
5552 |
msgid "Error: Unable to retrieve the new rules version."
|
5553 |
msgstr ""
|
5554 |
|
5555 |
+
#: lib/security_rules_update.php:454
|
5556 |
#, php-format
|
5557 |
msgid "Error: Server returned a %s HTTP error code (#1)."
|
5558 |
msgstr ""
|
5559 |
|
5560 |
+
#: lib/security_rules_update.php:461 lib/security_rules_update.php:527
|
5561 |
msgid "Error: Unable to connect to the remote server"
|
5562 |
msgstr ""
|
5563 |
|
5564 |
+
#: lib/security_rules_update.php:491
|
5565 |
#, php-format
|
5566 |
msgid "Error: The new rules versions do not match (%s != %s)."
|
5567 |
msgstr ""
|
5568 |
|
5569 |
+
#: lib/security_rules_update.php:505
|
5570 |
#, php-format
|
5571 |
msgid ""
|
5572 |
"Error: The new rules %s digital signature is not correct. Aborting update, "
|
5573 |
"rules may have been tampered with."
|
5574 |
msgstr ""
|
5575 |
|
5576 |
+
#: lib/security_rules_update.php:520
|
5577 |
#, php-format
|
5578 |
msgid "Error: Server returned a %s HTTP error code (#2)."
|
5579 |
msgstr ""
|
5580 |
|
5581 |
+
#: lib/security_rules_update.php:556
|
5582 |
msgid "[NinjaFirewall] Security rules update"
|
5583 |
msgstr ""
|
5584 |
|
5585 |
+
#: lib/security_rules_update.php:557
|
5586 |
msgid "NinjaFirewall security rules have been updated:"
|
5587 |
msgstr ""
|
5588 |
|
5589 |
+
#: lib/security_rules_update.php:563
|
5590 |
msgid "Rules version:"
|
5591 |
msgstr ""
|
5592 |
|
5593 |
+
#: lib/security_rules_update.php:565
|
5594 |
#, php-format
|
5595 |
msgid "This notification can be turned off from NinjaFirewall \"%s\" page."
|
5596 |
msgstr ""
|
5755 |
msgid "Cancel and Close"
|
5756 |
msgstr ""
|
5757 |
|
5758 |
+
#: lib/utils.php:188 lib/utils.php:196 lib/utils.php:295
|
5759 |
msgid "N/A"
|
5760 |
msgstr ""
|
5761 |
|
5762 |
+
#: lib/utils.php:202
|
5763 |
#, php-format
|
5764 |
msgid "Attempt to create a new %s"
|
5765 |
msgstr ""
|
5766 |
|
5767 |
+
#: lib/utils.php:206
|
5768 |
#, php-format
|
5769 |
msgid "Attempt to edit a published %s (ID: %s)"
|
5770 |
msgstr ""
|
5771 |
|
5772 |
+
#: lib/utils.php:212 lib/utils.php:287
|
5773 |
msgid "Unauthenticated user"
|
5774 |
msgstr ""
|
5775 |
|
5776 |
+
#: lib/utils.php:217
|
5777 |
msgid "Blocked post/page edition attempt"
|
5778 |
msgstr ""
|
5779 |
|
5783 |
"doesn't have the right capabilities:"
|
5784 |
msgstr ""
|
5785 |
|
5786 |
+
#: lib/utils.php:226 lib/utils.php:307 lib/utils.php:426 lib/utils.php:1216
|
5787 |
msgid "Username:"
|
5788 |
msgstr ""
|
5789 |
|
5791 |
msgid "Action:"
|
5792 |
msgstr ""
|
5793 |
|
5794 |
+
#: lib/utils.php:242 lib/utils.php:322 lib/utils.php:439 lib/utils.php:1232
|
5795 |
+
#: lib/utils.php:1480
|
|
|
|
|
|
|
|
|
|
|
5796 |
msgid "A PHP backtrace has been attached to this message for your convenience."
|
5797 |
msgstr ""
|
5798 |
|
5799 |
+
#: lib/utils.php:244 lib/utils.php:324 lib/utils.php:1234 lib/utils.php:1490
|
5800 |
msgid ""
|
5801 |
"This protection (and notification) can be turned off from NinjaFirewall "
|
5802 |
"\"Firewall Policies\" page."
|
5803 |
msgstr ""
|
5804 |
|
5805 |
+
#: lib/utils.php:259 lib/utils.php:260 lib/utils.php:339 lib/utils.php:340
|
5806 |
+
#: lib/utils.php:456 lib/utils.php:457 lib/utils.php:1250 lib/utils.php:1251
|
5807 |
msgid "You are not allowed to perform this task."
|
5808 |
msgstr ""
|
5809 |
|
5811 |
msgid "Blocked post/page deletion attempt"
|
5812 |
msgstr ""
|
5813 |
|
5814 |
+
#: lib/utils.php:305
|
5815 |
msgid ""
|
5816 |
"NinjaFirewall has blocked an attempt to delete a post by a user who doesn't "
|
5817 |
"have the right capabilities:"
|
5818 |
msgstr ""
|
5819 |
|
5820 |
+
#: lib/utils.php:416
|
5821 |
msgid "Blocked user account creation"
|
5822 |
msgstr ""
|
5823 |
|
5824 |
+
#: lib/utils.php:423
|
5825 |
msgid "NinjaFirewall has blocked an attempt to create a user account:"
|
5826 |
msgstr ""
|
5827 |
|
5828 |
+
#: lib/utils.php:521
|
5829 |
+
#, php-format
|
5830 |
+
msgid "Backup file is corrupted, deleting it (%s)"
|
5831 |
+
msgstr ""
|
5832 |
+
|
5833 |
+
#: lib/utils.php:529
|
5834 |
+
#, php-format
|
5835 |
+
msgid ""
|
5836 |
+
"NinjaFirewall's options are corrupted, restoring them from last known good "
|
5837 |
+
"backup file (%s)"
|
5838 |
+
msgstr ""
|
5839 |
+
|
5840 |
+
#: lib/utils.php:535
|
5841 |
+
msgid ""
|
5842 |
+
"NinjaFirewall's options are corrupted, restoring their default values (no "
|
5843 |
+
"valid backup found)"
|
5844 |
+
msgstr ""
|
5845 |
+
|
5846 |
+
#: lib/utils.php:718
|
5847 |
msgid ""
|
5848 |
"Warning: Because NinjaFirewall's Login Protection is enabled, Site Health "
|
5849 |
"may return an error message regarding the loopback test (e.g., 404 or 401 "
|
5850 |
"HTTP status code). You can safely ignore it."
|
5851 |
msgstr ""
|
5852 |
|
5853 |
+
#: lib/utils.php:741 lib/utils.php:745
|
5854 |
msgid "NinjaFirewall error"
|
5855 |
msgstr ""
|
5856 |
|
5857 |
+
#: lib/utils.php:742
|
5858 |
#, php-format
|
5859 |
msgid ""
|
5860 |
"%s directory cannot be created. Please review your installation and ensure "
|
5861 |
"that %s is writable."
|
5862 |
msgstr ""
|
5863 |
|
5864 |
+
#: lib/utils.php:746
|
5865 |
#, php-format
|
5866 |
msgid ""
|
5867 |
"%s directory is read-only. Please review your installation and ensure that "
|
5868 |
"%s is writable."
|
5869 |
msgstr ""
|
5870 |
|
5871 |
+
#: lib/utils.php:761
|
5872 |
msgid "unknown error"
|
5873 |
msgstr ""
|
5874 |
|
5875 |
+
#: lib/utils.php:763
|
5876 |
msgid "NinjaFirewall fatal error:"
|
5877 |
msgstr ""
|
5878 |
|
5879 |
+
#: lib/utils.php:764
|
5880 |
msgid "Review your installation, your site is not protected."
|
5881 |
msgstr ""
|
5882 |
|
5883 |
+
#: lib/utils.php:785
|
5884 |
msgid "Alert: WordPress console login"
|
5885 |
msgstr ""
|
5886 |
|
5887 |
+
#: lib/utils.php:791
|
5888 |
msgid "Someone just logged in to your WordPress admin console:"
|
5889 |
msgstr ""
|
5890 |
|
5891 |
+
#: lib/utils.php:910 lib/utils.php:937
|
5892 |
msgid "Forbidden access"
|
5893 |
msgstr ""
|
5894 |
|
5895 |
+
#: lib/utils.php:956
|
5896 |
#, php-format
|
5897 |
msgid ""
|
5898 |
"<strong>ERROR</strong>: Invalid username, email address or password.<br /><a "
|
5899 |
"href=\"%s\">Lost your password</a>?"
|
5900 |
msgstr ""
|
5901 |
|
5902 |
+
#: lib/utils.php:1034
|
5903 |
msgid "[NinjaFirewall] Alert: Database changes detected"
|
5904 |
msgstr ""
|
5905 |
|
5906 |
+
#: lib/utils.php:1035
|
5907 |
msgid ""
|
5908 |
"NinjaFirewall has detected that one or more administrator accounts were "
|
5909 |
"modified in the database:"
|
5910 |
msgstr ""
|
5911 |
|
5912 |
+
#: lib/utils.php:1040
|
5913 |
#, php-format
|
5914 |
msgid "Total administrators : %s"
|
5915 |
msgstr ""
|
5916 |
|
5917 |
+
#: lib/utils.php:1049
|
5918 |
msgid ""
|
5919 |
"If you cannot see any modifications in the above fields, it is possible that "
|
5920 |
"the administrator password was changed."
|
5921 |
msgstr ""
|
5922 |
|
5923 |
+
#: lib/utils.php:1202
|
5924 |
msgid "Blocked privilege escalation attempt"
|
5925 |
msgstr ""
|
5926 |
|
5927 |
+
#: lib/utils.php:1210
|
5928 |
msgid ""
|
5929 |
"NinjaFirewall has blocked an attempt to modify a user capability by someone "
|
5930 |
"who does not have administrative privileges:"
|
5931 |
msgstr ""
|
5932 |
|
5933 |
+
#: lib/utils.php:1262
|
5934 |
msgid ""
|
5935 |
"NinjaFirewall brute-force protection is enabled and you are temporarily "
|
5936 |
"whitelisted."
|
5937 |
msgstr ""
|
5938 |
|
5939 |
+
#: lib/utils.php:1277
|
5940 |
#, php-format
|
5941 |
msgid ""
|
5942 |
"Hey, it seems that you've been using NinjaFirewall for some time. If you "
|
5945 |
"rate it. Thank you!"
|
5946 |
msgstr ""
|
5947 |
|
5948 |
+
#: lib/utils.php:1452
|
5949 |
msgid ""
|
5950 |
"The attempt was blocked and the option was reversed to its original value."
|
5951 |
msgstr ""
|
5952 |
|
5953 |
+
#: lib/utils.php:1457
|
5954 |
msgid "Attempt to modify WordPress settings"
|
5955 |
msgstr ""
|
5956 |
|
5957 |
+
#: lib/utils.php:1458
|
5958 |
msgid ""
|
5959 |
"NinjaFirewall has blocked an attempt to modify some important WordPress "
|
5960 |
"settings by a user that does not have administrative privileges:"
|
5961 |
msgstr ""
|
5962 |
|
5963 |
+
#: lib/utils.php:1459 lib/utils.php:1468
|
5964 |
#, php-format
|
5965 |
msgid "Option: %s"
|
5966 |
msgstr ""
|
5967 |
|
5968 |
+
#: lib/utils.php:1460
|
5969 |
#, php-format
|
5970 |
msgid "Original value: %s"
|
5971 |
msgstr ""
|
5972 |
|
5973 |
+
#: lib/utils.php:1461
|
5974 |
#, php-format
|
5975 |
msgid "Modified value: %s"
|
5976 |
msgstr ""
|
5977 |
|
5978 |
+
#: lib/utils.php:1462 lib/utils.php:1470
|
5979 |
#, php-format
|
5980 |
msgid "Action taken: %s"
|
5981 |
msgstr ""
|
5982 |
|
5983 |
+
#: lib/utils.php:1466
|
5984 |
msgid "Code injection attempt in WordPress options table"
|
5985 |
msgstr ""
|
5986 |
|
5987 |
+
#: lib/utils.php:1467
|
5988 |
msgid ""
|
5989 |
"NinjaFirewall has blocked an attempt to inject code in the WordPress options "
|
5990 |
"table by a user that does not have administrative privileges:"
|
5991 |
msgstr ""
|
5992 |
|
5993 |
+
#: lib/utils.php:1469
|
5994 |
#, php-format
|
5995 |
msgid "Code: %s"
|
5996 |
msgstr ""
|
5997 |
|
5998 |
+
#: lib/utils.php:1565
|
5999 |
msgid "Important: NinjaFirewall has detected that this is a security update."
|
6000 |
msgstr ""
|
6001 |
|
6002 |
+
#: lib/utils.php:1568
|
6003 |
msgid "More info about this warning."
|
6004 |
msgstr ""
|
6005 |
|
6006 |
+
#: lib/utils.php:1591
|
6007 |
+
#, php-format
|
6008 |
+
msgid "Cannot send notification, no valid email found (%s)"
|
6009 |
+
msgstr ""
|
6010 |
+
|
6011 |
+
#: lib/utils.php:1616
|
6012 |
+
#, php-format
|
6013 |
+
msgid ""
|
6014 |
+
"If you don't have access to that site any longer, you can remove your email "
|
6015 |
+
"by clicking the following link (valid for 12 hours): %s"
|
6016 |
+
msgstr ""
|
6017 |
+
|
6018 |
+
#: lib/utils.php:1642
|
6019 |
#, php-format
|
6020 |
msgid "Error, cannot create the %s folder."
|
6021 |
msgstr ""
|
6022 |
|
6023 |
+
#: lib/utils.php:1643 lib/utils.php:1652 lib/utils.php:1661
|
6024 |
msgid "Check your server permissions and try again."
|
6025 |
msgstr ""
|
6026 |
|
6027 |
+
#: lib/utils.php:1651
|
6028 |
#, php-format
|
6029 |
msgid "Error, the %s folder is not writable."
|
6030 |
msgstr ""
|
6031 |
|
6032 |
+
#: lib/utils.php:1660
|
6033 |
#, php-format
|
6034 |
msgid "Error, cannot write %s."
|
6035 |
msgstr ""
|
6197 |
|
6198 |
#: lib/wpplus.php:143
|
6199 |
msgid ""
|
6200 |
+
"The Web Filter can monitor the response body, i.e., the output of the HTML "
|
6201 |
+
"page, and search it for some specific keywords, which can be useful to "
|
6202 |
"identify errors, hacked content and data leakage issues in the response body "
|
6203 |
"sent to your visitors."
|
6204 |
msgstr ""
|
6424 |
msgid "Cannot retrieve user rules from database (#4)"
|
6425 |
msgstr ""
|
6426 |
|
6427 |
+
#: ninjafirewall.php:139
|
6428 |
msgid ""
|
6429 |
"You do not have \"unfiltered_html\" capability. Please enable it in order to "
|
6430 |
"run NinjaFirewall (or make sure you do not have \"DISALLOW_UNFILTERED_HTML\" "
|
6431 |
"in your wp-config.php script)."
|
6432 |
msgstr ""
|
6433 |
|
6434 |
+
#: ninjafirewall.php:146
|
6435 |
#, php-format
|
6436 |
msgid ""
|
6437 |
"NinjaFirewall requires WordPress %s or greater but your current version is "
|
6438 |
"%s."
|
6439 |
msgstr ""
|
6440 |
|
6441 |
+
#: ninjafirewall.php:150
|
6442 |
#, php-format
|
6443 |
msgid ""
|
6444 |
"NinjaFirewall requires PHP 5.3 or greater but your current version is %s."
|
6445 |
msgstr ""
|
6446 |
|
6447 |
+
#: ninjafirewall.php:154
|
6448 |
#, php-format
|
6449 |
msgid "NinjaFirewall requires the PHP %s extension."
|
6450 |
msgstr ""
|
6451 |
|
6452 |
+
#: ninjafirewall.php:158
|
6453 |
msgid ""
|
6454 |
"You have SAFE_MODE enabled. Please disable it, it is deprecated as of PHP "
|
6455 |
"5.3.0 (see http://php.net/safe-mode)."
|
6456 |
msgstr ""
|
6457 |
|
6458 |
+
#: ninjafirewall.php:162
|
6459 |
msgid "You are not allowed to activate NinjaFirewall."
|
6460 |
msgstr ""
|
6461 |
|
6462 |
+
#: ninjafirewall.php:166
|
6463 |
msgid "NinjaFirewall is not compatible with Microsoft Windows."
|
6464 |
msgstr ""
|
6465 |
|
6466 |
+
#: ninjafirewall.php:304
|
6467 |
msgid ""
|
6468 |
"All fields will be restored to their default values and any changes you made "
|
6469 |
"will be lost. Continue?"
|
6470 |
msgstr ""
|
6471 |
|
6472 |
+
#: ninjafirewall.php:308
|
6473 |
msgid "Missing security nonce, try to reload the page."
|
6474 |
msgstr ""
|
6475 |
|
6476 |
+
#: ninjafirewall.php:310
|
6477 |
msgid "Please select the HTTP server in the list."
|
6478 |
msgstr ""
|
6479 |
|
6480 |
+
#: ninjafirewall.php:313
|
6481 |
msgid "Delete the firewall's error log ?"
|
6482 |
msgstr ""
|
6483 |
|
6484 |
+
#: ninjafirewall.php:317
|
6485 |
msgid ""
|
6486 |
"This action will restore the selected configuration file and will override "
|
6487 |
"all your current firewall options, policies and rules. Continue?"
|
6488 |
msgstr ""
|
6489 |
|
6490 |
+
#: ninjafirewall.php:321
|
6491 |
msgid ""
|
6492 |
"Any character that is not a letter [a-zA-Z], a digit [0-9], a dot [.], a "
|
6493 |
"hyphen [-] or an underscore [_] will be removed from the filename and "
|
6494 |
"replaced with the substitution character. Continue?"
|
6495 |
msgstr ""
|
6496 |
|
6497 |
+
#: ninjafirewall.php:323
|
6498 |
msgid ""
|
6499 |
"Ensure that you can access your admin console over HTTPS before enabling "
|
6500 |
"this option, otherwise you will lock yourself out of your site. Continue?"
|
6501 |
msgstr ""
|
6502 |
|
6503 |
+
#: ninjafirewall.php:325
|
6504 |
msgid ""
|
6505 |
"WooCommerce is running: if you block accounts creation, your customers won't "
|
6506 |
"be able to sign up. Continue?"
|
6507 |
msgstr ""
|
6508 |
|
6509 |
+
#: ninjafirewall.php:327
|
6510 |
msgid ""
|
6511 |
"Your blog has user registration enabled: if you block accounts creation, "
|
6512 |
"your customers won't be able to sign up. Continue?"
|
6513 |
msgstr ""
|
6514 |
|
6515 |
+
#: ninjafirewall.php:329
|
6516 |
msgid ""
|
6517 |
"Your multisite installation allows users to register new sites: if you "
|
6518 |
"enable this option, they will likely get blocked when creating their blog. "
|
6519 |
"Continue?"
|
6520 |
msgstr ""
|
6521 |
|
6522 |
+
#: ninjafirewall.php:333
|
6523 |
msgid "Delete the current snapshot ?"
|
6524 |
msgstr ""
|
6525 |
|
6526 |
+
#: ninjafirewall.php:337
|
6527 |
msgid "Invalid character."
|
6528 |
msgstr ""
|
6529 |
|
6530 |
+
#: ninjafirewall.php:339
|
6531 |
msgid "\"admin\" is not acceptable, please choose another user name."
|
6532 |
msgstr ""
|
6533 |
|
6534 |
+
#: ninjafirewall.php:341
|
6535 |
msgid "Please enter max 1024 character only."
|
6536 |
msgstr ""
|
6537 |
|
6538 |
+
#: ninjafirewall.php:343
|
6539 |
msgid "Select when to enable the login protection."
|
6540 |
msgstr ""
|
6541 |
|
6542 |
+
#: ninjafirewall.php:345
|
6543 |
msgid "Enter a name and a password for the HTTP authentication."
|
6544 |
msgstr ""
|
6545 |
|
6546 |
+
#: ninjafirewall.php:349
|
6547 |
msgid "Your public key is not valid."
|
6548 |
msgstr ""
|
6549 |
|
6550 |
+
#: ninjafirewall.php:355
|
6551 |
msgid "No traffic yet, please wait"
|
6552 |
msgstr ""
|
6553 |
|
6554 |
+
#: ninjafirewall.php:357
|
6555 |
msgid "seconds..."
|
6556 |
msgstr ""
|
6557 |
|
6558 |
+
#: ninjafirewall.php:359
|
6559 |
msgid "Error: Live Log did not receive the expected response from your server:"
|
6560 |
msgstr ""
|
6561 |
|
6562 |
+
#: ninjafirewall.php:361
|
6563 |
msgid "Error: URL does not seem to exist (404 Not Found):"
|
6564 |
msgstr ""
|
6565 |
|
6566 |
+
#: ninjafirewall.php:363
|
6567 |
msgid "Error: Cannot find your log file. Try to reload this page."
|
6568 |
msgstr ""
|
6569 |
|
6570 |
+
#: ninjafirewall.php:365
|
6571 |
msgid "Error: The HTTP server returned the following error code:"
|
6572 |
msgstr ""
|
6573 |
|
6574 |
+
#: ninjafirewall.php:641 ninjafirewall.php:761 ninjafirewall.php:830
|
6575 |
msgid "Error: Security nonces do not match. Reload the page and try again."
|
6576 |
msgstr ""
|
6577 |
|
6578 |
+
#: ninjafirewall.php:647
|
6579 |
msgid "Error: NinjaFirewall is disabled"
|
6580 |
msgstr ""
|
6581 |
|
6582 |
+
#: ninjafirewall.php:652 ninjafirewall.php:766 ninjafirewall.php:796
|
6583 |
#, php-format
|
6584 |
msgid "Error: missing parameter (%s)."
|
6585 |
msgstr ""
|
6586 |
|
6587 |
+
#: ninjafirewall.php:892
|
6588 |
msgid "NinjaFirewall: Dashboard"
|
6589 |
msgstr ""
|
6590 |
|
6591 |
+
#: ninjafirewall.php:896
|
6592 |
msgid "NinjaFirewall: Firewall Options"
|
6593 |
msgstr ""
|
6594 |
|
6595 |
+
#: ninjafirewall.php:900
|
6596 |
msgid "NinjaFirewall: Firewall Policies"
|
6597 |
msgstr ""
|
6598 |
|
6599 |
+
#: ninjafirewall.php:904
|
6600 |
msgid "NinjaFirewall: Monitoring"
|
6601 |
msgstr ""
|
6602 |
|
6603 |
+
#: ninjafirewall.php:914
|
6604 |
msgid "NinjaFirewall: Anti-Malware"
|
6605 |
msgstr ""
|
6606 |
|
6607 |
+
#: ninjafirewall.php:918
|
6608 |
msgid "NinjaFirewall: Network"
|
6609 |
msgstr ""
|
6610 |
|
6611 |
+
#: ninjafirewall.php:922
|
6612 |
msgid "NinjaFirewall: Event Notifications"
|
6613 |
msgstr ""
|
6614 |
|
6615 |
+
#: ninjafirewall.php:926
|
6616 |
msgid "NinjaFirewall: Log-in Protection"
|
6617 |
msgstr ""
|
6618 |
|
6619 |
+
#: ninjafirewall.php:930
|
6620 |
msgid "NinjaFirewall: Logs"
|
6621 |
msgstr ""
|
6622 |
|
6623 |
+
#: ninjafirewall.php:934
|
6624 |
msgid "NinjaFirewall: Security Rules"
|
6625 |
msgstr ""
|
6626 |
|
6627 |
+
#: ninjafirewall.php:978
|
6628 |
msgid "NinjaFirewall Settings"
|
6629 |
msgstr ""
|
6630 |
|
6631 |
+
#: ninjafirewall.php:986
|
6632 |
msgid "NinjaFirewall is enabled"
|
6633 |
msgstr ""
|
6634 |
|
6635 |
+
#: ninjafirewall.php:1126
|
6636 |
msgid "Access Restricted"
|
6637 |
msgstr ""
|
6638 |
|
6639 |
+
#: ninjafirewall.php:1132
|
6640 |
msgid "Settings"
|
6641 |
msgstr ""
|
6642 |
|
6643 |
+
#: ninjafirewall.php:1133
|
6644 |
msgid "Upgrade to Premium"
|
6645 |
msgstr ""
|
6646 |
|
6647 |
+
#: ninjafirewall.php:1134
|
6648 |
msgid "Rate it!"
|
6649 |
msgstr ""
|
lib/dashboard.php
CHANGED
@@ -188,7 +188,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
188 |
?>
|
189 |
<tr>
|
190 |
<th scope="row" class="row-med"><?php _e('Firewall', 'ninjafirewall') ?></th>
|
191 |
-
<td><span class="dashicons dashicons-dismiss nfw-danger"></span
|
192 |
</tr>
|
193 |
|
194 |
<?php
|
@@ -230,7 +230,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
230 |
?>
|
231 |
<tr>
|
232 |
<th scope="row" class="row-med"><?php _e('Debugging mode', 'ninjafirewall') ?></th>
|
233 |
-
<td><span class="dashicons dashicons-dismiss nfw-danger"></span
|
234 |
</tr>
|
235 |
<?php
|
236 |
}
|
@@ -264,7 +264,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
264 |
?>
|
265 |
<tr>
|
266 |
<th scope="row" class="row-med"><?php _e('Updates', 'ninjafirewall') ?></th>
|
267 |
-
<td><span class="dashicons dashicons-dismiss nfw-danger"></span
|
268 |
</tr>
|
269 |
<?php
|
270 |
}
|
@@ -273,7 +273,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
273 |
?>
|
274 |
<tr>
|
275 |
<th scope="row" class="row-med"><?php _e('Admin user', 'ninjafirewall') ?></th>
|
276 |
-
<td><span class="dashicons dashicons-warning nfw-warning"></span
|
277 |
</tr>
|
278 |
<?php
|
279 |
} else {
|
@@ -301,7 +301,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
301 |
?>
|
302 |
<tr>
|
303 |
<th scope="row" class="row-med"><?php _e('User session', 'ninjafirewall') ?></th>
|
304 |
-
<td><span class="dashicons dashicons-warning nfw-warning"></span
|
305 |
</tr>
|
306 |
<?php
|
307 |
}
|
@@ -328,7 +328,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
328 |
<?php
|
329 |
if ( $err_msg ) {
|
330 |
?>
|
331 |
-
<td><span class="dashicons dashicons-dismiss nfw-danger"></span
|
332 |
</tr>
|
333 |
<?php
|
334 |
$err_msg = '';
|
@@ -343,8 +343,8 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
343 |
if (! filter_var(NFW_REMOTE_ADDR, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE) ) {
|
344 |
?>
|
345 |
<tr>
|
346 |
-
<th scope="row" class="row-med"><?php _e('Source IP', 'ninjafirewall')
|
347 |
-
<td><span class="dashicons dashicons-warning nfw-warning"></span
|
348 |
</tr>
|
349 |
<?php
|
350 |
}
|
@@ -352,8 +352,8 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
352 |
if ( NFW_REMOTE_ADDR != $_SERVER["HTTP_CF_CONNECTING_IP"] ) {
|
353 |
?>
|
354 |
<tr>
|
355 |
-
<th scope="row" class="row-med"><?php _e('CDN detection', 'ninjafirewall')
|
356 |
-
<td><span class="dashicons dashicons-warning nfw-warning"></span
|
357 |
</tr>
|
358 |
<?php
|
359 |
}
|
@@ -362,8 +362,8 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
362 |
if ( NFW_REMOTE_ADDR != $_SERVER["HTTP_INCAP_CLIENT_IP"] ) {
|
363 |
?>
|
364 |
<tr>
|
365 |
-
<th scope="row" class="row-med"><?php _e('CDN detection', 'ninjafirewall')
|
366 |
-
<td><span class="dashicons dashicons-warning nfw-warning"></span
|
367 |
</tr>
|
368 |
<?php
|
369 |
}
|
@@ -373,7 +373,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
373 |
?>
|
374 |
<tr>
|
375 |
<th scope="row" class="row-med"><?php _e('Log dir', 'ninjafirewall') ?></th>
|
376 |
-
<td><span class="dashicons dashicons-dismiss nfw-danger"></span
|
377 |
</tr>
|
378 |
<?php
|
379 |
}
|
@@ -382,7 +382,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
382 |
?>
|
383 |
<tr>
|
384 |
<th scope="row" class="row-med"><?php _e('Log dir', 'ninjafirewall') ?></th>
|
385 |
-
<td><span class="dashicons dashicons-dismiss nfw-danger"></span
|
386 |
</tr>
|
387 |
<?php
|
388 |
}
|
@@ -400,7 +400,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
400 |
?>
|
401 |
<tr>
|
402 |
<th scope="row" class="row-med">PHP INI</th>
|
403 |
-
<td><span class="dashicons dashicons-dismiss nfw-danger"></span
|
404 |
</tr>
|
405 |
<?php
|
406 |
}
|
@@ -412,7 +412,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
412 |
?>
|
413 |
<tr>
|
414 |
<th scope="row" class="row-med">PHP INI</th>
|
415 |
-
<td><span class="dashicons dashicons-dismiss nfw-danger"></span
|
416 |
</tr>
|
417 |
<?php
|
418 |
}
|
@@ -429,7 +429,7 @@ if (! empty( $_POST['delete-error-log'] ) ){
|
|
429 |
?>
|
430 |
<tr id="error-log-alert">
|
431 |
<th scope="row" class="row-med"><?php _e('Error log', 'ninjafirewall') ?></th>
|
432 |
-
<td><span class="dashicons dashicons-dismiss nfw-danger"></span
|
433 |
</tr>
|
434 |
<?php
|
435 |
}
|
@@ -512,7 +512,7 @@ function nfw_is_inireadable( $ini ) {
|
|
512 |
// the WordPress's API
|
513 |
@file_get_contents( $url, false, $context );
|
514 |
if ( empty( $http_response_header ) ) {
|
515 |
-
nfw_log_error( '
|
516 |
return false;
|
517 |
}
|
518 |
$response = explode( ' ', $http_response_header[0] );
|
188 |
?>
|
189 |
<tr>
|
190 |
<th scope="row" class="row-med"><?php _e('Firewall', 'ninjafirewall') ?></th>
|
191 |
+
<td><span class="dashicons dashicons-dismiss nfw-danger"></span><?php echo $msg ?></td>
|
192 |
</tr>
|
193 |
|
194 |
<?php
|
230 |
?>
|
231 |
<tr>
|
232 |
<th scope="row" class="row-med"><?php _e('Debugging mode', 'ninjafirewall') ?></th>
|
233 |
+
<td><span class="dashicons dashicons-dismiss nfw-danger"></span><?php _e('Enabled.', 'ninjafirewall') ?> <a href="?page=nfsubopt"><?php _e('Click here to turn Debugging Mode off', 'ninjafirewall') ?></a></td>
|
234 |
</tr>
|
235 |
<?php
|
236 |
}
|
264 |
?>
|
265 |
<tr>
|
266 |
<th scope="row" class="row-med"><?php _e('Updates', 'ninjafirewall') ?></th>
|
267 |
+
<td><span class="dashicons dashicons-dismiss nfw-danger"></span><a href="?page=nfsubupdates&tab=updates"><?php _e( 'Security rules updates are disabled.', 'ninjafirewall' ) ?></a> <?php _e( 'If you want your blog to be protected against the latest threats, enable automatic security rules updates.', 'ninjafirewall' ) ?></td>
|
268 |
</tr>
|
269 |
<?php
|
270 |
}
|
273 |
?>
|
274 |
<tr>
|
275 |
<th scope="row" class="row-med"><?php _e('Admin user', 'ninjafirewall') ?></th>
|
276 |
+
<td><span class="dashicons dashicons-warning nfw-warning"></span><?php printf( __('You are not whitelisted. Ensure that the "Do not block WordPress administrator" option is enabled in the <a href="%s">Firewall Policies</a> menu, otherwise you could get blocked by the firewall while working from your administration dashboard.', 'ninjafirewall'), '?page=nfsubpolicies') ?></td>
|
277 |
</tr>
|
278 |
<?php
|
279 |
} else {
|
301 |
?>
|
302 |
<tr>
|
303 |
<th scope="row" class="row-med"><?php _e('User session', 'ninjafirewall') ?></th>
|
304 |
+
<td><span class="dashicons dashicons-warning nfw-warning"></span><?php _e('It seems that the user session set by NinjaFirewall was not found by the firewall script.', 'ninjafirewall') ?></td>
|
305 |
</tr>
|
306 |
<?php
|
307 |
}
|
328 |
<?php
|
329 |
if ( $err_msg ) {
|
330 |
?>
|
331 |
+
<td><span class="dashicons dashicons-dismiss nfw-danger"></span><?php printf( __('Error: %s', 'ninjafirewall'), $err_msg) ?></td>
|
332 |
</tr>
|
333 |
<?php
|
334 |
$err_msg = '';
|
343 |
if (! filter_var(NFW_REMOTE_ADDR, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE) ) {
|
344 |
?>
|
345 |
<tr>
|
346 |
+
<th scope="row" class="row-med"><?php _e('Source IP', 'ninjafirewall') ?> <span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall, you can use the IP Access Control section to easily configure all IP address related options (source, whitelist, blacklist, rate limiting etc).', 'ninjafirewall' ) ?>"></span></th>
|
347 |
+
<td><span class="dashicons dashicons-warning nfw-warning"></span><?php printf( __('You have a private IP : %s', 'ninjafirewall') .'<br />'. __('If your site is behind a reverse proxy or a load balancer, ensure that you have setup your HTTP server or PHP to forward the correct visitor IP, otherwise use the NinjaFirewall %s configuration file.', 'ninjafirewall'), htmlentities(NFW_REMOTE_ADDR), '<code><a href="https://blog.nintechnet.com/ninjafirewall-wp-edition-the-htninja-configuration-file/">.htninja</a></code>') ?></td>
|
348 |
</tr>
|
349 |
<?php
|
350 |
}
|
352 |
if ( NFW_REMOTE_ADDR != $_SERVER["HTTP_CF_CONNECTING_IP"] ) {
|
353 |
?>
|
354 |
<tr>
|
355 |
+
<th scope="row" class="row-med"><?php _e('CDN detection', 'ninjafirewall') ?> <span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall, you can use the IP Access Control section to easily configure all IP address related options (source, whitelist, blacklist, rate limiting etc).', 'ninjafirewall' ) ?>"></span></th>
|
356 |
+
<td><span class="dashicons dashicons-warning nfw-warning"></span><?php printf( __('%s detected: you seem to be using Cloudflare CDN services. Ensure that you have setup your HTTP server or PHP to forward the correct visitor IP, otherwise use the NinjaFirewall %s configuration file.', 'ninjafirewall'), '<code>HTTP_CF_CONNECTING_IP</code>', '<code><a href="https://blog.nintechnet.com/ninjafirewall-wp-edition-the-htninja-configuration-file/">.htninja</a></code>') ?></td>
|
357 |
</tr>
|
358 |
<?php
|
359 |
}
|
362 |
if ( NFW_REMOTE_ADDR != $_SERVER["HTTP_INCAP_CLIENT_IP"] ) {
|
363 |
?>
|
364 |
<tr>
|
365 |
+
<th scope="row" class="row-med"><?php _e('CDN detection', 'ninjafirewall') ?> <span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall, you can use the IP Access Control section to easily configure all IP address related options (source, whitelist, blacklist, rate limiting etc).', 'ninjafirewall' ) ?>"></span></th>
|
366 |
+
<td><span class="dashicons dashicons-warning nfw-warning"></span><?php printf( __('%s detected: you seem to be using Incapsula CDN services. Ensure that you have setup your HTTP server or PHP to forward the correct visitor IP, otherwise use the NinjaFirewall %s configuration file.', 'ninjafirewall'), '<code>HTTP_INCAP_CLIENT_IP</code>', '<code><a href="https://blog.nintechnet.com/ninjafirewall-wp-edition-the-htninja-configuration-file/">.htninja</a></code>') ?></td>
|
367 |
</tr>
|
368 |
<?php
|
369 |
}
|
373 |
?>
|
374 |
<tr>
|
375 |
<th scope="row" class="row-med"><?php _e('Log dir', 'ninjafirewall') ?></th>
|
376 |
+
<td><span class="dashicons dashicons-dismiss nfw-danger"></span><?php printf( __('%s directory is not writable! Please chmod it to 0777 or equivalent.', 'ninjafirewall'), '<code>'. htmlspecialchars(NFW_LOG_DIR) .'/nfwlog/</code>') ?></td>
|
377 |
</tr>
|
378 |
<?php
|
379 |
}
|
382 |
?>
|
383 |
<tr>
|
384 |
<th scope="row" class="row-med"><?php _e('Log dir', 'ninjafirewall') ?></th>
|
385 |
+
<td><span class="dashicons dashicons-dismiss nfw-danger"></span><?php printf(__('%s directory is not writable! Please chmod it to 0777 or equivalent.', 'ninjafirewall'), '<code>'. htmlspecialchars(NFW_LOG_DIR) . '/nfwlog/cache/</code>') ?></td>
|
386 |
</tr>
|
387 |
<?php
|
388 |
}
|
400 |
?>
|
401 |
<tr>
|
402 |
<th scope="row" class="row-med">PHP INI</th>
|
403 |
+
<td><span class="dashicons dashicons-dismiss nfw-danger"></span><?php printf( esc_html__('The php.ini file is readable by web users: %s', 'ninjafirewall'), '<code>'. htmlspecialchars( $res ) .'</code>' ) ?> <br /><a href="https://blog.nintechnet.com/protecting-ninjafirewalls-php-ini-file/" target="_blank"><?php esc_html_e('Consult our blog for more info.', 'ninjafirewall') ?></a></td>
|
404 |
</tr>
|
405 |
<?php
|
406 |
}
|
412 |
?>
|
413 |
<tr>
|
414 |
<th scope="row" class="row-med">PHP INI</th>
|
415 |
+
<td><span class="dashicons dashicons-dismiss nfw-danger"></span><?php printf( esc_html__('The .user.ini file is readable by web users: %s', 'ninjafirewall'), '<code>'. htmlspecialchars( $res ) .'</code>' ) ?><br /><a href="https://blog.nintechnet.com/protecting-ninjafirewalls-php-ini-file/" target="_blank"><?php esc_html_e('Consult our blog for more info.', 'ninjafirewall') ?></a></td>
|
416 |
</tr>
|
417 |
<?php
|
418 |
}
|
429 |
?>
|
430 |
<tr id="error-log-alert">
|
431 |
<th scope="row" class="row-med"><?php _e('Error log', 'ninjafirewall') ?></th>
|
432 |
+
<td><span class="dashicons dashicons-dismiss nfw-danger"></span><input type="button" id="nfw-errorlog-thickbox" value="<?php _e('View error log', 'ninjafirewall') ?>" class="button-secondary"></td>
|
433 |
</tr>
|
434 |
<?php
|
435 |
}
|
512 |
// the WordPress's API
|
513 |
@file_get_contents( $url, false, $context );
|
514 |
if ( empty( $http_response_header ) ) {
|
515 |
+
nfw_log_error( __('Cannot check if the PHP INI file is readable: connection error', 'ninjafirewall') );
|
516 |
return false;
|
517 |
}
|
518 |
$response = explode( ' ', $http_response_header[0] );
|
lib/dashboard_statistics.php
CHANGED
@@ -103,7 +103,7 @@ if (! $total ) {
|
|
103 |
<td><canvas id="nfw_stats"></canvas></td>
|
104 |
</tr>
|
105 |
<tr>
|
106 |
-
<th scope="row" class="row-med"><h3><?php esc_html_e('Benchmarks', 'ninjafirewall')
|
107 |
<td> </td><td> </td>
|
108 |
</tr>
|
109 |
<tr>
|
103 |
<td><canvas id="nfw_stats"></canvas></td>
|
104 |
</tr>
|
105 |
<tr>
|
106 |
+
<th scope="row" class="row-med"><h3><?php esc_html_e('Benchmarks', 'ninjafirewall') ?> <span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall and on compatible servers, you can use Unix shared memory to speed up the processing of each HTTP request by the firewall.', 'ninjafirewall' ) ?>"></span></h3></th>
|
107 |
<td> </td><td> </td>
|
108 |
</tr>
|
109 |
<tr>
|
lib/email_sodium.php
ADDED
@@ -0,0 +1,209 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
+---------------------------------------------------------------------+
|
4 |
+
| NinjaFirewall (WP Edition) |
|
5 |
+
| |
|
6 |
+
| (c) NinTechNet - https://nintechnet.com/ |
|
7 |
+
+---------------------------------------------------------------------+
|
8 |
+
| This program is free software: you can redistribute it and/or |
|
9 |
+
| modify it under the terms of the GNU General Public License as |
|
10 |
+
| published by the Free Software Foundation, either version 3 of |
|
11 |
+
| the License, or (at your option) any later version. |
|
12 |
+
| |
|
13 |
+
| This program is distributed in the hope that it will be useful, |
|
14 |
+
| but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
15 |
+
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
16 |
+
| GNU General Public License for more details. |
|
17 |
+
+---------------------------------------------------------------------+
|
18 |
+
*/
|
19 |
+
|
20 |
+
if (! defined( 'NFW_ENGINE_VERSION' ) ) { die( 'Forbidden' ); }
|
21 |
+
|
22 |
+
// ---------------------------------------------------------------------
|
23 |
+
// Check whether Sodium is available (WordPress >=5.2 or PHP >= 7.2.0).
|
24 |
+
|
25 |
+
function nfw_check_sodium() {
|
26 |
+
|
27 |
+
$sodium = 0;
|
28 |
+
|
29 |
+
if ( function_exists('sodium_crypto_generichash') ) {
|
30 |
+
$sodium = 'php';
|
31 |
+
} elseif ( file_exists( ABSPATH . WPINC . '/sodium_compat/autoload.php' ) ) {
|
32 |
+
$sodium = 'wordpress';
|
33 |
+
}
|
34 |
+
return $sodium;
|
35 |
+
}
|
36 |
+
// ---------------------------------------------------------------------
|
37 |
+
// Generate an encrypted link for notification emails.
|
38 |
+
|
39 |
+
function nfw_sodium_encrypt( $email, $expire, $which_sodium ) {
|
40 |
+
|
41 |
+
if ( $which_sodium == 'php' ) {
|
42 |
+
// PHP native functions
|
43 |
+
$nonce = nfw_sodium_nonce();
|
44 |
+
$key = sodium_crypto_generichash( AUTH_KEY, null, SODIUM_CRYPTO_SECRETBOX_KEYBYTES );
|
45 |
+
$ciphertext = sodium_crypto_secretbox( "$email::$expire", $nonce, $key);
|
46 |
+
$link = sodium_bin2hex( $ciphertext );
|
47 |
+
|
48 |
+
} else {
|
49 |
+
// WP sodium libraries
|
50 |
+
require ABSPATH . WPINC .'/sodium_compat/autoload.php';
|
51 |
+
$nonce = nfw_sodium_nonce();
|
52 |
+
$key = \Sodium\crypto_generichash( AUTH_KEY, null, SODIUM_CRYPTO_SECRETBOX_KEYBYTES );
|
53 |
+
$ciphertext = \Sodium\crypto_secretbox( "$email::$expire", $nonce, $key);
|
54 |
+
$link = \Sodium\bin2hex( $ciphertext );
|
55 |
+
}
|
56 |
+
return $link;
|
57 |
+
}
|
58 |
+
|
59 |
+
// ---------------------------------------------------------------------
|
60 |
+
// Get or generate a nonce depending on the PHP version.
|
61 |
+
|
62 |
+
function nfw_sodium_nonce() {
|
63 |
+
|
64 |
+
$nfw_options = nfw_get_option( 'nfw_options' );
|
65 |
+
|
66 |
+
// Make sure we have a nonce, or create one and save it:
|
67 |
+
if ( empty( $nfw_options['sodium_nonce'] ) ) {
|
68 |
+
if ( function_exists('random_bytes') ) {
|
69 |
+
// PHP >=7
|
70 |
+
$nonce = random_bytes(SODIUM_CRYPTO_SECRETBOX_NONCEBYTES);
|
71 |
+
} else {
|
72 |
+
// PHP <7
|
73 |
+
$nonce = openssl_random_pseudo_bytes(SODIUM_CRYPTO_SECRETBOX_NONCEBYTES);
|
74 |
+
}
|
75 |
+
// Save it
|
76 |
+
$nfw_options['sodium_nonce'] = bin2hex( $nonce );
|
77 |
+
nfw_update_option( 'nfw_options', $nfw_options );
|
78 |
+
|
79 |
+
} else {
|
80 |
+
$nonce = hex2bin( $nfw_options['sodium_nonce'] );
|
81 |
+
}
|
82 |
+
|
83 |
+
return $nonce;
|
84 |
+
}
|
85 |
+
// ---------------------------------------------------------------------
|
86 |
+
// Verify encrypted signature.
|
87 |
+
|
88 |
+
function nfw_sodium_decrypt( $hex ) {
|
89 |
+
|
90 |
+
// Make sure we have Sodium
|
91 |
+
$which_sodium = nfw_check_sodium();
|
92 |
+
if ( empty( $which_sodium ) ) {
|
93 |
+
return;
|
94 |
+
}
|
95 |
+
// Hexadecimal input only
|
96 |
+
if (! preg_match( '/^(?:[0-9a-f]{2})+$/', $hex ) ) {
|
97 |
+
return;
|
98 |
+
}
|
99 |
+
$ciphertext = hex2bin( $hex );
|
100 |
+
|
101 |
+
// Retrieve our nonce
|
102 |
+
$nonce = nfw_sodium_nonce();
|
103 |
+
|
104 |
+
if ( $which_sodium == 'php' ) {
|
105 |
+
// PHP native functions
|
106 |
+
$key = sodium_crypto_generichash( AUTH_KEY, null, SODIUM_CRYPTO_SECRETBOX_KEYBYTES );
|
107 |
+
$decrypted = sodium_crypto_secretbox_open( $ciphertext, $nonce, $key );
|
108 |
+
|
109 |
+
} else {
|
110 |
+
// WP sodium libraries
|
111 |
+
require ABSPATH . WPINC .'/sodium_compat/autoload.php';
|
112 |
+
$key = \Sodium\crypto_generichash( AUTH_KEY, null, SODIUM_CRYPTO_SECRETBOX_KEYBYTES );
|
113 |
+
$decrypted = \Sodium\crypto_secretbox_open( $ciphertext, $nonce, $key );
|
114 |
+
}
|
115 |
+
|
116 |
+
if ( $decrypted === false ) {
|
117 |
+
nfw_removal_error();
|
118 |
+
}
|
119 |
+
|
120 |
+
$data = explode( '::', $decrypted );
|
121 |
+
if ( empty( $data[0] ) || empty( $data[1] ) ) {
|
122 |
+
nfw_removal_error();
|
123 |
+
}
|
124 |
+
|
125 |
+
// Verify expiry date
|
126 |
+
$now = time();
|
127 |
+
if ( $data[1] < $now ) {
|
128 |
+
// Link has expired
|
129 |
+
wp_die(
|
130 |
+
esc_html__('The link you followed has expired.', 'ninjafirewall' ),
|
131 |
+
esc_html__('Error', 'ninjafirewall'),
|
132 |
+
200
|
133 |
+
);
|
134 |
+
}
|
135 |
+
|
136 |
+
// Confirm deletion?
|
137 |
+
if ( empty( $_REQUEST['nfw_confirm'] ) ) {
|
138 |
+
nfw_removal_confimation( $_GET['nfw_stop_notification'] );
|
139 |
+
exit;
|
140 |
+
}
|
141 |
+
|
142 |
+
$new_list = '';
|
143 |
+
$found = 0;
|
144 |
+
$nfw_options = nfw_get_option( 'nfw_options' );
|
145 |
+
$recipients = explode( ',', $nfw_options['alert_email'] );
|
146 |
+
foreach( $recipients as $recipient ) {
|
147 |
+
$recipient = trim( $recipient );
|
148 |
+
if ( $recipient == $data[0] ) {
|
149 |
+
// Remove that email from the list
|
150 |
+
$found = 1;
|
151 |
+
continue;
|
152 |
+
}
|
153 |
+
$new_list .= "$recipient, ";
|
154 |
+
}
|
155 |
+
|
156 |
+
if ( $found ) {
|
157 |
+
// Update options
|
158 |
+
$nfw_options['alert_email'] = trim( $new_list, ', ' );
|
159 |
+
if ( empty( $nfw_options['alert_email'] ) ) {
|
160 |
+
$nfw_options['alert_email'] = get_option('admin_email');
|
161 |
+
}
|
162 |
+
nfw_update_option( 'nfw_options', $nfw_options );
|
163 |
+
|
164 |
+
nfw_get_blogtimezone();
|
165 |
+
$subject = __('Email removal confirmation', 'ninjafirewall');
|
166 |
+
nfw_log2( 'WordPress: ' . $subject, "User: {$data[0]}", 6, 0);
|
167 |
+
$subject = "[NinjaFirewall] $subject";
|
168 |
+
$message = __('Your email address was removed from the "Event Notifications" option.', 'ninjafirewall') . "\n\n";
|
169 |
+
$message.= __('Blog:', 'ninjafirewall') .' '. home_url('/') . "\n";
|
170 |
+
$message.= __('Email address:', 'ninjafirewall') .' '. "{$data[0]}\n";
|
171 |
+
$message.= __('User IP:', 'ninjafirewall') .' '. NFW_REMOTE_ADDR . "\n";
|
172 |
+
$message.= __('Date:', 'ninjafirewall') .' '. date_i18n('F j, Y @ H:i:s') . ' (UTC '. date('O') . ")\n\n";
|
173 |
+
wp_mail( $data[0], $subject, $message );
|
174 |
+
}
|
175 |
+
|
176 |
+
}
|
177 |
+
// ---------------------------------------------------------------------
|
178 |
+
// Fatal error.
|
179 |
+
|
180 |
+
function nfw_removal_error() {
|
181 |
+
|
182 |
+
wp_die(
|
183 |
+
esc_html__('Error, your resquest cannot be processed.', 'ninjafirewall' ),
|
184 |
+
esc_html__('Error', 'ninjafirewall'),
|
185 |
+
200
|
186 |
+
);
|
187 |
+
}
|
188 |
+
|
189 |
+
// ---------------------------------------------------------------------
|
190 |
+
// Email removal confirmation.
|
191 |
+
|
192 |
+
function nfw_removal_confimation( $hex ) {
|
193 |
+
|
194 |
+
$home_url = esc_url( home_url('/') );
|
195 |
+
$removal_url = esc_url( home_url("/?nfw_stop_notification=$hex&nfw_confirm=1") );
|
196 |
+
wp_die(
|
197 |
+
esc_html__('If you want to remove your email address from the Event Notifications option, click the button below. If the operation is successful, a confirmation email will be sent to you.', 'ninjafirewall').
|
198 |
+
'<p>
|
199 |
+
<button class="button button-large button-active" style="min-width:100px;" onclick=\'location.href="'. $removal_url .'"\'>'. esc_html__('Yes', 'ninjafirewall' ) .'</button>
|
200 |
+
|
201 |
+
<button class="button button-large button-active" style="min-width:100px;" onclick=\'location.href="'. $home_url .'"\'>'. esc_html__('No', 'ninjafirewall' ) .'</button>
|
202 |
+
</p>',
|
203 |
+
esc_html__('Email removal confirmation', 'ninjafirewall'),
|
204 |
+
200
|
205 |
+
);
|
206 |
+
}
|
207 |
+
|
208 |
+
// ---------------------------------------------------------------------
|
209 |
+
// EOL
|
lib/event_notifications.php
CHANGED
@@ -39,7 +39,7 @@ if ( isset( $_POST['nfw_options']) ) {
|
|
39 |
wp_nonce_ays('events_save');
|
40 |
}
|
41 |
nf_sub_event_save();
|
42 |
-
echo '<div class="updated notice is-dismissible"><p>' .
|
43 |
$nfw_options = nfw_get_option( 'nfw_options' );
|
44 |
}
|
45 |
|
@@ -357,19 +357,8 @@ function nf_sub_event_save() {
|
|
357 |
}
|
358 |
if ( empty( $_POST['nfw_options']['a_52']) ) {
|
359 |
$nfw_options['a_52'] = 0;
|
360 |
-
// Clear the daily report cronjob, if any:
|
361 |
-
if ( wp_next_scheduled('nfdailyreport') ) {
|
362 |
-
wp_clear_scheduled_hook('nfdailyreport');
|
363 |
-
}
|
364 |
} else {
|
365 |
$nfw_options['a_52'] = 1;
|
366 |
-
// Delete the current one, if any:
|
367 |
-
if ( wp_next_scheduled('nfdailyreport') ) {
|
368 |
-
wp_clear_scheduled_hook('nfdailyreport');
|
369 |
-
}
|
370 |
-
// Create the cronjob that will send the daily report:
|
371 |
-
nfw_get_blogtimezone();
|
372 |
-
wp_schedule_event( strtotime( date('Y-m-d 00:00:05', strtotime("+1 day")) ), 'daily', 'nfdailyreport');
|
373 |
}
|
374 |
|
375 |
if ( empty( $_POST['nfw_options']['a_61']) ) {
|
@@ -396,15 +385,18 @@ function nf_sub_event_save() {
|
|
396 |
foreach ($tmp_email as $notif_email) {
|
397 |
$nfw_options['alert_email'] .= sanitize_email($notif_email) . ', ';
|
398 |
}
|
399 |
-
$nfw_options['alert_email'] =
|
400 |
}
|
401 |
if ( empty( $nfw_options['alert_email'] ) ) {
|
402 |
$nfw_options['alert_email'] = get_option('admin_email');
|
403 |
}
|
404 |
|
405 |
-
// Update options
|
406 |
nfw_update_option( 'nfw_options', $nfw_options );
|
407 |
|
|
|
|
|
|
|
408 |
}
|
409 |
|
410 |
// ---------------------------------------------------------------------
|
@@ -425,16 +417,10 @@ function nf_daily_report() {
|
|
425 |
if ( $nf_transient == false || $nf_transient < time() ) {
|
426 |
set_transient( 'nfw_dailyreport', time() + 300, 300 );
|
427 |
|
428 |
-
if ( ( is_multisite() ) && ( @$nfw_options['alert_sa_only'] == 2 ) ) {
|
429 |
-
$recipient = get_option('admin_email');
|
430 |
-
} else {
|
431 |
-
$recipient = $nfw_options['alert_email'];
|
432 |
-
}
|
433 |
-
|
434 |
$logstats = array();
|
435 |
$logstats = nf_daily_report_log();
|
436 |
|
437 |
-
nf_daily_report_email(
|
438 |
}
|
439 |
|
440 |
}
|
@@ -483,7 +469,7 @@ function nf_daily_report_log() {
|
|
483 |
|
484 |
// ---------------------------------------------------------------------
|
485 |
|
486 |
-
function nf_daily_report_email(
|
487 |
|
488 |
nfw_get_blogtimezone();
|
489 |
|
@@ -511,8 +497,7 @@ function nf_daily_report_email($recipient, $logstats) {
|
|
511 |
$message .= NF_PG_SIGNATURE ."\n\n";
|
512 |
$message .= NF_PG_MORESEC;
|
513 |
|
514 |
-
|
515 |
-
|
516 |
}
|
517 |
|
518 |
// ---------------------------------------------------------------------
|
39 |
wp_nonce_ays('events_save');
|
40 |
}
|
41 |
nf_sub_event_save();
|
42 |
+
echo '<div class="updated notice is-dismissible"><p>' . esc_html__('Your changes have been saved.', 'ninjafirewall') . '</p></div>';
|
43 |
$nfw_options = nfw_get_option( 'nfw_options' );
|
44 |
}
|
45 |
|
357 |
}
|
358 |
if ( empty( $_POST['nfw_options']['a_52']) ) {
|
359 |
$nfw_options['a_52'] = 0;
|
|
|
|
|
|
|
|
|
360 |
} else {
|
361 |
$nfw_options['a_52'] = 1;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
362 |
}
|
363 |
|
364 |
if ( empty( $_POST['nfw_options']['a_61']) ) {
|
385 |
foreach ($tmp_email as $notif_email) {
|
386 |
$nfw_options['alert_email'] .= sanitize_email($notif_email) . ', ';
|
387 |
}
|
388 |
+
$nfw_options['alert_email'] = trim($nfw_options['alert_email'], ', ' );
|
389 |
}
|
390 |
if ( empty( $nfw_options['alert_email'] ) ) {
|
391 |
$nfw_options['alert_email'] = get_option('admin_email');
|
392 |
}
|
393 |
|
394 |
+
// Update options
|
395 |
nfw_update_option( 'nfw_options', $nfw_options );
|
396 |
|
397 |
+
// Recreate cronjobs if needed
|
398 |
+
nfw_create_scheduled_tasks('nfdailyreport');
|
399 |
+
|
400 |
}
|
401 |
|
402 |
// ---------------------------------------------------------------------
|
417 |
if ( $nf_transient == false || $nf_transient < time() ) {
|
418 |
set_transient( 'nfw_dailyreport', time() + 300, 300 );
|
419 |
|
|
|
|
|
|
|
|
|
|
|
|
|
420 |
$logstats = array();
|
421 |
$logstats = nf_daily_report_log();
|
422 |
|
423 |
+
nf_daily_report_email( $logstats );
|
424 |
}
|
425 |
|
426 |
}
|
469 |
|
470 |
// ---------------------------------------------------------------------
|
471 |
|
472 |
+
function nf_daily_report_email( $logstats ) {
|
473 |
|
474 |
nfw_get_blogtimezone();
|
475 |
|
497 |
$message .= NF_PG_SIGNATURE ."\n\n";
|
498 |
$message .= NF_PG_MORESEC;
|
499 |
|
500 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
|
|
501 |
}
|
502 |
|
503 |
// ---------------------------------------------------------------------
|
lib/event_updates.php
CHANGED
@@ -50,7 +50,7 @@ function nfw_check_security_updates() {
|
|
50 |
}
|
51 |
|
52 |
if (! isset( $list['wordpress'] ) || ! isset( $list['themes'] ) || ! isset( $list['plugins'] ) ) {
|
53 |
-
nfw_log_error(
|
54 |
return false;
|
55 |
}
|
56 |
|
@@ -151,12 +151,6 @@ function nfw_alert_security_updates( $found = array() ) {
|
|
151 |
|
152 |
$nfw_options = nfw_get_option('nfw_options');
|
153 |
|
154 |
-
if ( is_multisite() && $nfw_options['alert_sa_only'] == 2 ) {
|
155 |
-
$recipient = get_option('admin_email');
|
156 |
-
} else {
|
157 |
-
$recipient = $nfw_options['alert_email'];
|
158 |
-
}
|
159 |
-
|
160 |
$subject = __('[NinjaFirewall] Warning: Security update available', 'ninjafirewall');
|
161 |
|
162 |
$message = __('NinjaFirewall has detected that there are security updates available for your website:', 'ninjafirewall') . "\n\n".
|
@@ -225,7 +219,7 @@ function nfw_alert_security_updates( $found = array() ) {
|
|
225 |
$message.= __('This notification can be turned off from NinjaFirewall "Event Notifications" page.', 'ninjafirewall') . "\n\n";
|
226 |
$message .= NF_PG_SIGNATURE ."\n\n";
|
227 |
$message .= NF_PG_MORESEC;
|
228 |
-
|
229 |
|
230 |
}
|
231 |
|
@@ -246,12 +240,14 @@ function nfw_fetch_security_updates( $url ) {
|
|
246 |
)
|
247 |
);
|
248 |
if ( is_wp_error( $res ) ) {
|
249 |
-
nfw_log_error( '
|
250 |
return false;
|
251 |
}
|
252 |
|
253 |
if ( $res['response']['code'] != 200 ) {
|
254 |
-
nfw_log_error(
|
|
|
|
|
255 |
return false;
|
256 |
}
|
257 |
|
50 |
}
|
51 |
|
52 |
if (! isset( $list['wordpress'] ) || ! isset( $list['themes'] ) || ! isset( $list['plugins'] ) ) {
|
53 |
+
nfw_log_error( __('Downloaded security rules are corrupted', 'ninjafirewall' ) );
|
54 |
return false;
|
55 |
}
|
56 |
|
151 |
|
152 |
$nfw_options = nfw_get_option('nfw_options');
|
153 |
|
|
|
|
|
|
|
|
|
|
|
|
|
154 |
$subject = __('[NinjaFirewall] Warning: Security update available', 'ninjafirewall');
|
155 |
|
156 |
$message = __('NinjaFirewall has detected that there are security updates available for your website:', 'ninjafirewall') . "\n\n".
|
219 |
$message.= __('This notification can be turned off from NinjaFirewall "Event Notifications" page.', 'ninjafirewall') . "\n\n";
|
220 |
$message .= NF_PG_SIGNATURE ."\n\n";
|
221 |
$message .= NF_PG_MORESEC;
|
222 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
223 |
|
224 |
}
|
225 |
|
240 |
)
|
241 |
);
|
242 |
if ( is_wp_error( $res ) ) {
|
243 |
+
nfw_log_error( __('Cannot download security rules: connection error', 'ninjafirewall') );
|
244 |
return false;
|
245 |
}
|
246 |
|
247 |
if ( $res['response']['code'] != 200 ) {
|
248 |
+
nfw_log_error(
|
249 |
+
sprintf( __('Cannot download security rules: HTTP response error %s', 'ninjafirewall'), $res['response']['code'] )
|
250 |
+
);
|
251 |
return false;
|
252 |
}
|
253 |
|
lib/events.php
CHANGED
@@ -189,12 +189,6 @@ function nfw_sys_events() {
|
|
189 |
|
190 |
if (! empty( $alert_action ) ) {
|
191 |
|
192 |
-
if ( is_multisite() && $nfw_options['alert_sa_only'] == 2 ) {
|
193 |
-
$recipient = get_option('admin_email');
|
194 |
-
} else {
|
195 |
-
$recipient = $nfw_options['alert_email'];
|
196 |
-
}
|
197 |
-
|
198 |
global $current_user;
|
199 |
$current_user = wp_get_current_user();
|
200 |
|
@@ -213,7 +207,7 @@ function nfw_sys_events() {
|
|
213 |
$url .
|
214 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
215 |
|
216 |
-
|
217 |
|
218 |
if (! empty($nfw_options['a_41']) ) {
|
219 |
nfw_log2(
|
189 |
|
190 |
if (! empty( $alert_action ) ) {
|
191 |
|
|
|
|
|
|
|
|
|
|
|
|
|
192 |
global $current_user;
|
193 |
$current_user = wp_get_current_user();
|
194 |
|
207 |
$url .
|
208 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
209 |
|
210 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
211 |
|
212 |
if (! empty($nfw_options['a_41']) ) {
|
213 |
nfw_log2(
|
lib/firewall.php
CHANGED
@@ -362,6 +362,18 @@ function nfw_connect() {
|
|
362 |
if (! $nfw_['fh'] = fopen($wp_config, 'r') ) {
|
363 |
return 2;
|
364 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
365 |
while (! feof($nfw_['fh'])) {
|
366 |
$nfw_['line'] = fgets($nfw_['fh']);
|
367 |
if ( preg_match('/^\s*define\s*\(\s*[\'"]DB_NAME[\'"]\s*,\s*[\'"](.+?)[\'"]/', $nfw_['line'], $nfw_['match']) ) {
|
@@ -377,6 +389,17 @@ function nfw_connect() {
|
|
377 |
$nfw_['DB_HOST'] = $nfw_['match'][1];
|
378 |
} elseif ( preg_match('/^\s*\$table_prefix\s*=\s*[\'"](.+?)[\'"]/', $nfw_['line'], $nfw_['match']) ) {
|
379 |
$nfw_['table_prefix'] = $nfw_['match'][1];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
380 |
}
|
381 |
}
|
382 |
fclose($nfw_['fh']);
|
@@ -387,10 +410,11 @@ function nfw_connect() {
|
|
387 |
|
388 |
nfw_check_dbhost();
|
389 |
// Make sure mysqli extension is loaded
|
390 |
-
if (! function_exists( '
|
391 |
return 14;
|
392 |
}
|
393 |
-
@$nfw_['mysqli'] =
|
|
|
394 |
if ($nfw_['mysqli']->connect_error) {
|
395 |
return 4;
|
396 |
}
|
362 |
if (! $nfw_['fh'] = fopen($wp_config, 'r') ) {
|
363 |
return 2;
|
364 |
}
|
365 |
+
|
366 |
+
// Potential SQL flags
|
367 |
+
$nfw_['MYSQL_CLIENT_FLAGS'] = 0;
|
368 |
+
$available_flags = array(
|
369 |
+
'MYSQLI_CLIENT_COMPRESS' => MYSQLI_CLIENT_COMPRESS,
|
370 |
+
'MYSQLI_CLIENT_FOUND_ROWS' => MYSQLI_CLIENT_FOUND_ROWS,
|
371 |
+
'MYSQLI_CLIENT_IGNORE_SPACE' => MYSQLI_CLIENT_IGNORE_SPACE,
|
372 |
+
'MYSQLI_CLIENT_INTERACTIVE' => MYSQLI_CLIENT_INTERACTIVE,
|
373 |
+
'MYSQLI_CLIENT_SSL' => MYSQLI_CLIENT_SSL,
|
374 |
+
'MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT' => MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT
|
375 |
+
);
|
376 |
+
|
377 |
while (! feof($nfw_['fh'])) {
|
378 |
$nfw_['line'] = fgets($nfw_['fh']);
|
379 |
if ( preg_match('/^\s*define\s*\(\s*[\'"]DB_NAME[\'"]\s*,\s*[\'"](.+?)[\'"]/', $nfw_['line'], $nfw_['match']) ) {
|
389 |
$nfw_['DB_HOST'] = $nfw_['match'][1];
|
390 |
} elseif ( preg_match('/^\s*\$table_prefix\s*=\s*[\'"](.+?)[\'"]/', $nfw_['line'], $nfw_['match']) ) {
|
391 |
$nfw_['table_prefix'] = $nfw_['match'][1];
|
392 |
+
} elseif ( preg_match('/^\s*define\s*\(\s*[\'"]MYSQL_CLIENT_FLAGS[\'"]\s*,\s*(.+?)\s*\)/', $nfw_['line'], $nfw_['match']) ) {
|
393 |
+
if ( empty( $nfw_['MYSQL_CLIENT_FLAGS'] ) ) {
|
394 |
+
// There could be one or more flags, e.g., 'MYSQLI_CLIENT_SSL | MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT'
|
395 |
+
$tmp_flags = explode( '|', $nfw_['match'][1] );
|
396 |
+
foreach( $tmp_flags as $tmp_flag ) {
|
397 |
+
$tmp_flag = trim( $tmp_flag );
|
398 |
+
if ( isset( $available_flags[$tmp_flag] ) ) {
|
399 |
+
$nfw_['MYSQL_CLIENT_FLAGS'] += $available_flags[$tmp_flag];
|
400 |
+
}
|
401 |
+
}
|
402 |
+
}
|
403 |
}
|
404 |
}
|
405 |
fclose($nfw_['fh']);
|
410 |
|
411 |
nfw_check_dbhost();
|
412 |
// Make sure mysqli extension is loaded
|
413 |
+
if (! function_exists( 'mysqli_real_connect' ) ) {
|
414 |
return 14;
|
415 |
}
|
416 |
+
@$nfw_['mysqli'] = mysqli_init();
|
417 |
+
@mysqli_real_connect( $nfw_['mysqli'], $nfw_['DB_HOST'], $nfw_['DB_USER'], $nfw_['DB_PASSWORD'], $nfw_['DB_NAME'], $nfw_['port'], $nfw_['socket'], $nfw_['MYSQL_CLIENT_FLAGS'] );
|
418 |
if ($nfw_['mysqli']->connect_error) {
|
419 |
return 4;
|
420 |
}
|
lib/firewall_options.php
CHANGED
@@ -256,20 +256,7 @@ function nf_sub_options_save() {
|
|
256 |
}
|
257 |
$nfw_options['enabled'] = 0;
|
258 |
|
259 |
-
// Disable
|
260 |
-
if ( wp_next_scheduled('nfwgccron') ) {
|
261 |
-
wp_clear_scheduled_hook('nfwgccron');
|
262 |
-
}
|
263 |
-
if ( wp_next_scheduled('nfscanevent') ) {
|
264 |
-
wp_clear_scheduled_hook('nfscanevent');
|
265 |
-
}
|
266 |
-
if ( wp_next_scheduled('nfsecupdates') ) {
|
267 |
-
wp_clear_scheduled_hook('nfsecupdates');
|
268 |
-
}
|
269 |
-
if ( wp_next_scheduled('nfdailyreport') ) {
|
270 |
-
wp_clear_scheduled_hook('nfdailyreport');
|
271 |
-
}
|
272 |
-
// Disable brute-force protection :
|
273 |
if ( file_exists( NFW_LOG_DIR . '/nfwlog/cache/bf_conf.php' ) ) {
|
274 |
rename(NFW_LOG_DIR . '/nfwlog/cache/bf_conf.php', NFW_LOG_DIR . '/nfwlog/cache/bf_conf_off.php');
|
275 |
}
|
@@ -277,47 +264,7 @@ function nf_sub_options_save() {
|
|
277 |
} else {
|
278 |
$nfw_options['enabled'] = 1;
|
279 |
|
280 |
-
// Re-enable
|
281 |
-
if (! empty($nfw_options['sched_scan']) ) {
|
282 |
-
if ($nfw_options['sched_scan'] == 1) {
|
283 |
-
$schedtype = 'hourly';
|
284 |
-
} elseif ($nfw_options['sched_scan'] == 2) {
|
285 |
-
$schedtype = 'twicedaily';
|
286 |
-
} else {
|
287 |
-
$schedtype = 'daily';
|
288 |
-
}
|
289 |
-
if ( wp_next_scheduled('nfscanevent') ) {
|
290 |
-
wp_clear_scheduled_hook('nfscanevent');
|
291 |
-
}
|
292 |
-
wp_schedule_event( time() + 3600, $schedtype, 'nfscanevent');
|
293 |
-
}
|
294 |
-
// Re-enable the garbage collector:
|
295 |
-
if ( wp_next_scheduled('nfwgccron') ) {
|
296 |
-
wp_clear_scheduled_hook('nfwgccron');
|
297 |
-
}
|
298 |
-
wp_schedule_event( time() + 1800, 'hourly', 'nfwgccron' );
|
299 |
-
if (! empty($nfw_options['enable_updates']) ) {
|
300 |
-
if ($nfw_options['sched_updates'] == 1) {
|
301 |
-
$schedtype = 'hourly';
|
302 |
-
} elseif ($nfw_options['sched_updates'] == 2) {
|
303 |
-
$schedtype = 'twicedaily';
|
304 |
-
} else {
|
305 |
-
$schedtype = 'daily';
|
306 |
-
}
|
307 |
-
if ( wp_next_scheduled('nfsecupdates') ) {
|
308 |
-
wp_clear_scheduled_hook('nfsecupdates');
|
309 |
-
}
|
310 |
-
wp_schedule_event( time() + 15, $schedtype, 'nfsecupdates');
|
311 |
-
}
|
312 |
-
// Re-enable daily report, if needed :
|
313 |
-
if (! empty($nfw_options['a_52']) ) {
|
314 |
-
if ( wp_next_scheduled('nfdailyreport') ) {
|
315 |
-
wp_clear_scheduled_hook('nfdailyreport');
|
316 |
-
}
|
317 |
-
nfw_get_blogtimezone();
|
318 |
-
wp_schedule_event( strtotime( date('Y-m-d 00:00:05', strtotime("+1 day")) ), 'daily', 'nfdailyreport');
|
319 |
-
}
|
320 |
-
// Reenable brute-force protection :
|
321 |
if ( file_exists( NFW_LOG_DIR . '/nfwlog/cache/bf_conf_off.php' ) ) {
|
322 |
rename(NFW_LOG_DIR . '/nfwlog/cache/bf_conf_off.php', NFW_LOG_DIR . '/nfwlog/cache/bf_conf.php');
|
323 |
}
|
@@ -365,6 +312,13 @@ function nf_sub_options_save() {
|
|
365 |
// Save them :
|
366 |
nfw_update_option( 'nfw_options', $nfw_options);
|
367 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
368 |
}
|
369 |
// ---------------------------------------------------------------------
|
370 |
|
@@ -457,44 +411,9 @@ function nf_sub_options_import( $file ) {
|
|
457 |
// We don't import the File Check 'snapshot directory' path
|
458 |
// (applies to imported configuration, not to restoration of configuration backup):
|
459 |
$nfw_options['snapdir'] = '';
|
460 |
-
|
461 |
-
if ( wp_next_scheduled('nfscanevent') ) {
|
462 |
-
wp_clear_scheduled_hook('nfscanevent');
|
463 |
-
}
|
464 |
}
|
465 |
|
466 |
-
// Re-enable auto updates, if needed :
|
467 |
-
if ( wp_next_scheduled('nfsecupdates') ) {
|
468 |
-
// Clear old one :
|
469 |
-
wp_clear_scheduled_hook('nfsecupdates');
|
470 |
-
}
|
471 |
-
if (! empty($nfw_options['enable_updates']) ) {
|
472 |
-
if ($nfw_options['sched_updates'] == 1) {
|
473 |
-
$schedtype = 'hourly';
|
474 |
-
} elseif ($nfw_options['sched_updates'] == 2) {
|
475 |
-
$schedtype = 'twicedaily';
|
476 |
-
} else {
|
477 |
-
$schedtype = 'daily';
|
478 |
-
}
|
479 |
-
wp_schedule_event( time() + 15, $schedtype, 'nfsecupdates');
|
480 |
-
}
|
481 |
-
// Re-enable daily report, if needed :
|
482 |
-
if ( wp_next_scheduled('nfdailyreport') ) {
|
483 |
-
// Clear old one :
|
484 |
-
wp_clear_scheduled_hook('nfdailyreport');
|
485 |
-
}
|
486 |
-
if (! empty($nfw_options['a_52']) ) {
|
487 |
-
nfw_get_blogtimezone();
|
488 |
-
wp_schedule_event( strtotime( date('Y-m-d 00:00:05', strtotime("+1 day")) ), 'daily', 'nfdailyreport');
|
489 |
-
}
|
490 |
-
|
491 |
-
// Re-enable the garbage collector, if needed:
|
492 |
-
if ( wp_next_scheduled('nfwgccron') ) {
|
493 |
-
// Clear old one:
|
494 |
-
wp_clear_scheduled_hook('nfwgccron');
|
495 |
-
}
|
496 |
-
wp_schedule_event( time() + 60, 'hourly', 'nfwgccron' );
|
497 |
-
|
498 |
// Check compatibility before importing HSTS headers configration
|
499 |
// or unset the option :
|
500 |
if (! function_exists('header_register_callback') || ! function_exists('headers_list') || ! function_exists('header_remove') ) {
|
@@ -530,6 +449,9 @@ function nf_sub_options_import( $file ) {
|
|
530 |
// Save rules :
|
531 |
nfw_update_option( 'nfw_rules', $nfw_rules);
|
532 |
|
|
|
|
|
|
|
533 |
// Alert the admin :
|
534 |
nf_sub_options_alert(3);
|
535 |
|
@@ -542,12 +464,6 @@ function nf_sub_options_alert( $what ) {
|
|
542 |
|
543 |
$nfw_options = nfw_get_option( 'nfw_options' );
|
544 |
|
545 |
-
if ( ( is_multisite() ) && ( $nfw_options['alert_sa_only'] == 2 ) ) {
|
546 |
-
$recipient = get_option('admin_email');
|
547 |
-
} else {
|
548 |
-
$recipient = $nfw_options['alert_email'];
|
549 |
-
}
|
550 |
-
|
551 |
global $current_user;
|
552 |
$current_user = wp_get_current_user();
|
553 |
|
@@ -581,7 +497,7 @@ function nf_sub_options_alert( $what ) {
|
|
581 |
$url .
|
582 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
583 |
|
584 |
-
|
585 |
}
|
586 |
|
587 |
// ---------------------------------------------------------------------
|
256 |
}
|
257 |
$nfw_options['enabled'] = 0;
|
258 |
|
259 |
+
// Disable brute-force protection
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
260 |
if ( file_exists( NFW_LOG_DIR . '/nfwlog/cache/bf_conf.php' ) ) {
|
261 |
rename(NFW_LOG_DIR . '/nfwlog/cache/bf_conf.php', NFW_LOG_DIR . '/nfwlog/cache/bf_conf_off.php');
|
262 |
}
|
264 |
} else {
|
265 |
$nfw_options['enabled'] = 1;
|
266 |
|
267 |
+
// Re-enable brute-force protection
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
268 |
if ( file_exists( NFW_LOG_DIR . '/nfwlog/cache/bf_conf_off.php' ) ) {
|
269 |
rename(NFW_LOG_DIR . '/nfwlog/cache/bf_conf_off.php', NFW_LOG_DIR . '/nfwlog/cache/bf_conf.php');
|
270 |
}
|
312 |
// Save them :
|
313 |
nfw_update_option( 'nfw_options', $nfw_options);
|
314 |
|
315 |
+
// Update cronjobs
|
316 |
+
if ( empty( $nfw_options['enabled'] ) ) {
|
317 |
+
nfw_delete_scheduled_tasks();
|
318 |
+
} else {
|
319 |
+
nfw_create_scheduled_tasks();
|
320 |
+
}
|
321 |
+
|
322 |
}
|
323 |
// ---------------------------------------------------------------------
|
324 |
|
411 |
// We don't import the File Check 'snapshot directory' path
|
412 |
// (applies to imported configuration, not to restoration of configuration backup):
|
413 |
$nfw_options['snapdir'] = '';
|
414 |
+
$nfw_options['sched_scan'] = '';
|
|
|
|
|
|
|
415 |
}
|
416 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
417 |
// Check compatibility before importing HSTS headers configration
|
418 |
// or unset the option :
|
419 |
if (! function_exists('header_register_callback') || ! function_exists('headers_list') || ! function_exists('header_remove') ) {
|
449 |
// Save rules :
|
450 |
nfw_update_option( 'nfw_rules', $nfw_rules);
|
451 |
|
452 |
+
// Recreate cronjobs if needed
|
453 |
+
nfw_create_scheduled_tasks();
|
454 |
+
|
455 |
// Alert the admin :
|
456 |
nf_sub_options_alert(3);
|
457 |
|
464 |
|
465 |
$nfw_options = nfw_get_option( 'nfw_options' );
|
466 |
|
|
|
|
|
|
|
|
|
|
|
|
|
467 |
global $current_user;
|
468 |
$current_user = wp_get_current_user();
|
469 |
|
497 |
$url .
|
498 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
499 |
|
500 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
501 |
}
|
502 |
|
503 |
// ---------------------------------------------------------------------
|
lib/firewall_policies.php
CHANGED
@@ -141,7 +141,7 @@ wp_nonce_field('policies_save', 'nfwnonce', 0);
|
|
141 |
<h3><?php _e('Uploads', 'ninjafirewall') ?></h3>
|
142 |
<table class="form-table nfw-table">
|
143 |
<tr>
|
144 |
-
<th scope="row" class="row-med"><?php _e('File Uploads', 'ninjafirewall')
|
145 |
<td>
|
146 |
<select name="nfw_options[uploads]" onchange="nfwjs_upload_onoff(this);">
|
147 |
<option value="1"<?php selected( $uploads, 1 ) ?>><?php echo __('Allow uploads', 'ninjafirewall') .' '. __('(default)', 'ninjafirewall') ?></option>
|
@@ -513,7 +513,7 @@ wp_nonce_field('policies_save', 'nfwnonce', 0);
|
|
513 |
?>
|
514 |
<table class="form-table nfw-table">
|
515 |
<tr style="background-color:#F9F9F9;border: solid 1px #DFDFDF;">
|
516 |
-
<th scope="row" class="row-med"><?php _e('Users Whitelist', 'ninjafirewall')
|
517 |
<td>
|
518 |
<p><label><input type="radio" name="nfw_options[wl_admin]" value="1"<?php checked( $wl_admin, 1 ) ?>> <?php _e('Add the Administrator to the whitelist (default).', 'ninjafirewall') ?></label></p>
|
519 |
<p><label><input type="radio" name="nfw_options[wl_admin]" value="2"<?php checked( $wl_admin, 2 ) ?>> <?php _e('Add all logged in users to the whitelist.', 'ninjafirewall') ?></label></p>
|
@@ -684,7 +684,7 @@ wp_nonce_field('policies_save', 'nfwnonce', 0);
|
|
684 |
</td>
|
685 |
</tr>
|
686 |
<tr>
|
687 |
-
<th scope="row" class="row-med"><?php _e('Block suspicious bots/scanners', 'ninjafirewall')
|
688 |
<td>
|
689 |
<?php nfw_toggle_switch( 'info', 'nfw_rules[block_bots]', $yes, $no, 'small', $block_bots ) ?>
|
690 |
</td>
|
@@ -752,7 +752,7 @@ wp_nonce_field('policies_save', 'nfwnonce', 0);
|
|
752 |
$allow_local_ip = 1;
|
753 |
}
|
754 |
?>
|
755 |
-
<h3>IP
|
756 |
<table class="form-table nfw-table" border=0>
|
757 |
<tr>
|
758 |
<th scope="row" class="row-med"><?php _e('Block localhost IP in <code>GET/POST</code> request', 'ninjafirewall') ?></th>
|
@@ -850,7 +850,7 @@ wp_nonce_field('policies_save', 'nfwnonce', 0);
|
|
850 |
<option value="2"<?php selected( $nfw_options['response_headers'][3], 2 ) ?>><?php printf( __('Set to %s', 'ninjafirewall'), '"1"'); ?></option>
|
851 |
<option value="1"<?php selected( $nfw_options['response_headers'][3], 1 ) ?>><?php printf( __('Set to %s', 'ninjafirewall'), '"1; mode=block"') ?></option>
|
852 |
</select>
|
853 |
-
<p class="description"><span class="dashicons dashicons-warning nfw-warning"></span
|
854 |
</td>
|
855 |
</tr>
|
856 |
<tr>
|
@@ -909,7 +909,7 @@ wp_nonce_field('policies_save', 'nfwnonce', 0);
|
|
909 |
<p><label><input type="checkbox" name="nfw_options[strict_transport_sub]" value="1"<?php checked( $subdom, 1 );disabled($hsts_err, 1) ?>> <?php _e('Apply to subdomains', 'ninjafirewall') ?></label> <label><input type="checkbox" name="nfw_options[strict_transport_preload]" value="1"<?php checked( $preload, 1 );disabled($hsts_err, 1) ?>> <?php _e('Preload', 'ninjafirewall') ?></label></p>
|
910 |
<?php
|
911 |
if (! empty( $hsts_msg ) ) {
|
912 |
-
echo '<
|
913 |
}
|
914 |
?>
|
915 |
</td>
|
141 |
<h3><?php _e('Uploads', 'ninjafirewall') ?></h3>
|
142 |
<table class="form-table nfw-table">
|
143 |
<tr>
|
144 |
+
<th scope="row" class="row-med"><?php _e('File Uploads', 'ninjafirewall') ?> <span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall, you can allow uploads while rejecting potentially dangerous files, even if they are compressed inside a ZIP archive: scripts (PHP, CGI, Ruby, Python, bash/shell), C/C++ source code, binaries (MZ/PE/NE and ELF formats), system files (.htaccess, .htpasswd and PHP INI) and SVG files containing Javascript/XML events. You can easily limit the size of each uploaded file too, without having to modify your PHP configuration.', 'ninjafirewall' ) ?>"></span></th>
|
145 |
<td>
|
146 |
<select name="nfw_options[uploads]" onchange="nfwjs_upload_onoff(this);">
|
147 |
<option value="1"<?php selected( $uploads, 1 ) ?>><?php echo __('Allow uploads', 'ninjafirewall') .' '. __('(default)', 'ninjafirewall') ?></option>
|
513 |
?>
|
514 |
<table class="form-table nfw-table">
|
515 |
<tr style="background-color:#F9F9F9;border: solid 1px #DFDFDF;">
|
516 |
+
<th scope="row" class="row-med"><?php _e('Users Whitelist', 'ninjafirewall') ?> <span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall, the Access Control section allows you to whitelist WordPress users depending on their role.', 'ninjafirewall' ) ?>"></span></th>
|
517 |
<td>
|
518 |
<p><label><input type="radio" name="nfw_options[wl_admin]" value="1"<?php checked( $wl_admin, 1 ) ?>> <?php _e('Add the Administrator to the whitelist (default).', 'ninjafirewall') ?></label></p>
|
519 |
<p><label><input type="radio" name="nfw_options[wl_admin]" value="2"<?php checked( $wl_admin, 2 ) ?>> <?php _e('Add all logged in users to the whitelist.', 'ninjafirewall') ?></label></p>
|
684 |
</td>
|
685 |
</tr>
|
686 |
<tr>
|
687 |
+
<th scope="row" class="row-med"><?php _e('Block suspicious bots/scanners', 'ninjafirewall') ?> <span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall, the Bot Access Control section allows you to select, edit, add and remove bots.', 'ninjafirewall' ) ?>"></span></th>
|
688 |
<td>
|
689 |
<?php nfw_toggle_switch( 'info', 'nfw_rules[block_bots]', $yes, $no, 'small', $block_bots ) ?>
|
690 |
</td>
|
752 |
$allow_local_ip = 1;
|
753 |
}
|
754 |
?>
|
755 |
+
<h3>IP <span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall, you can use the IP Access Control section to easily configure all IP address related options (source, whitelist, blacklist, rate limiting etc).', 'ninjafirewall' ) ?>"></span></h3>
|
756 |
<table class="form-table nfw-table" border=0>
|
757 |
<tr>
|
758 |
<th scope="row" class="row-med"><?php _e('Block localhost IP in <code>GET/POST</code> request', 'ninjafirewall') ?></th>
|
850 |
<option value="2"<?php selected( $nfw_options['response_headers'][3], 2 ) ?>><?php printf( __('Set to %s', 'ninjafirewall'), '"1"'); ?></option>
|
851 |
<option value="1"<?php selected( $nfw_options['response_headers'][3], 1 ) ?>><?php printf( __('Set to %s', 'ninjafirewall'), '"1; mode=block"') ?></option>
|
852 |
</select>
|
853 |
+
<p class="description"><span class="dashicons dashicons-warning nfw-warning"></span><?php esc_html_e('This header is deprecated and most browsers phased out support for it. Consider using Content-Security-Policy instead.', 'ninjafirewall') ?></p>
|
854 |
</td>
|
855 |
</tr>
|
856 |
<tr>
|
909 |
<p><label><input type="checkbox" name="nfw_options[strict_transport_sub]" value="1"<?php checked( $subdom, 1 );disabled($hsts_err, 1) ?>> <?php _e('Apply to subdomains', 'ninjafirewall') ?></label> <label><input type="checkbox" name="nfw_options[strict_transport_preload]" value="1"<?php checked( $preload, 1 );disabled($hsts_err, 1) ?>> <?php _e('Preload', 'ninjafirewall') ?></label></p>
|
910 |
<?php
|
911 |
if (! empty( $hsts_msg ) ) {
|
912 |
+
echo '<p class="description"><span class="dashicons dashicons-warning nfw-warning"></span>'. $hsts_msg .'</p>';
|
913 |
}
|
914 |
?>
|
915 |
</td>
|
lib/help.php
CHANGED
@@ -101,7 +101,7 @@ get_current_screen()->add_help_tab( array(
|
|
101 |
'title' => __('Export/import configuration', 'ninjafirewall'),
|
102 |
'content' => '<br />' .
|
103 |
sprintf( __('This options lets you export you current configuration or import it from another NinjaFirewall (WP Edition) installation. The imported file must match the major version of your current version (%s) otherwise it will be rejected. Note that importing will override all firewall rules and options.', 'ninjafirewall'), (int) $major_current .'.x' ) .
|
104 |
-
'<p><span class="dashicons dashicons-warning nfw-warning"></span
|
105 |
__('"File Check" configuration will not be exported/imported.', 'ninjafirewall') . '</p>'
|
106 |
) );
|
107 |
|
@@ -153,7 +153,7 @@ function help_nfsubpolicies() {
|
|
153 |
__('This action will be performed when the filtering process is over, right before NinjaFirewall forwards the request to your PHP script.', 'ninjafirewall') . '
|
154 |
<br />
|
155 |
<br />
|
156 |
-
<span class="dashicons dashicons-warning nfw-warning"></span
|
157 |
) );
|
158 |
|
159 |
get_current_screen()->add_help_tab( array(
|
@@ -182,7 +182,7 @@ function help_nfsubpolicies() {
|
|
182 |
<p><strong>' . __('Block user accounts creation', 'ninjafirewall'). '</strong><br />' . __('Enabling this policy will block any attempt (e.g., exploiting a vulnerability, using a backdoor etc) to create a user account. If you allow user registration, you should not enable it.', 'ninjafirewall'). '</p>
|
183 |
|
184 |
<p><strong>' . __('Block attempts to gain administrative privileges', 'ninjafirewall'). '</strong><br />' . __('This policy will block vulnerabilities that could be leveraged by attackers to gain administrative privileges.', 'ninjafirewall') .'</p>
|
185 |
-
<p><span class="dashicons dashicons-warning nfw-warning"></span
|
186 |
|
187 |
<p><strong>' . __('Block attempts to publish, edit or delete a published post by users who do not have the right capabilities', 'ninjafirewall'). '</strong><br />' . __('This policy will block vulnerabilities that could be leveraged by attackers to create, edit or delete posts. Note that it applies to <code>post</code> and <code>page</code> post types only (not custom ones).', 'ninjafirewall'). '</p>
|
188 |
|
@@ -273,12 +273,12 @@ function help_nfsubpolicies() {
|
|
273 |
<p>' . __('Since v3.1.3, WordPress sets this value to <code>SAMEORIGIN</code> for the administrator and the login page only.', 'ninjafirewall'). '</p>
|
274 |
|
275 |
<p><strong>' . __('Set <code>X-XSS-Protection</code>', 'ninjafirewall'). '</strong><br />' . __('This header allows browsers to identify and block XSS attacks by preventing malicious scripts from executing. It is enabled by default on all compatible browsers.', 'ninjafirewall'). '</p>'.
|
276 |
-
'<p><span class="dashicons dashicons-warning nfw-warning"></span
|
277 |
|
278 |
'<p><strong>' . __('Force <code>SameSite</code> flag on all cookies to mitigate CSRF attacks', 'ninjafirewall'). '</strong><br />' . __('Adding this flag to cookies helps to mitigate the risk of CSRF (cross-site request forgery) attacks because cookies can only be sent in requests originating from the same origin as the target domain.', 'ninjafirewall'). '</p>'.
|
279 |
|
280 |
'<p><strong>' . __('Force <code>HttpOnly</code> flag on all cookies to mitigate XSS attacks', 'ninjafirewall'). '</strong><br />' . __('Adding this flag to cookies helps to mitigate the risk of cross-site scripting by preventing them from being accessed through client-side scripts. NinjaFirewall can hook all cookies sent by your blog, its plugins or any other PHP script, add the <code>HttpOnly</code> flag if it is missing, and re-inject those cookies back into your server HTTP response headers right before they are sent to your visitors. Note that WordPress sets that flag on the logged in user cookies only.', 'ninjafirewall'). '</p>
|
281 |
-
<p><span class="dashicons dashicons-warning nfw-warning"></span
|
282 |
|
283 |
<p><strong>' . __('Set <code>Strict-Transport-Security</code> (HSTS) to enforce secure connections to the server', 'ninjafirewall'). '</strong><br />' . __('This policy enforces secure HTTPS connections to the server. Web browsers will not allow the user to access the web application over insecure HTTP protocol. It helps to defend against cookie hijacking and Man-in-the-middle attacks. Most recent browsers support HSTS headers.', 'ninjafirewall'). '</p>
|
284 |
|
@@ -335,7 +335,7 @@ function help_nfsubfileguard() {
|
|
335 |
'<br />'.
|
336 |
__('Reports will be sent to the contact email address defined in the "Event Notifications" menu.', 'ninjafirewall'). '</p>'.
|
337 |
|
338 |
-
'<p><span class="dashicons dashicons-warning nfw-warning"></span
|
339 |
) );
|
340 |
|
341 |
// File Guard :
|
@@ -348,7 +348,7 @@ function help_nfsubfileguard() {
|
|
348 |
__('If a hacker uploaded a shell script to your site (or injected a backdoor into an already existing file) and tried to directly access that file using his browser or a script, NinjaFirewall would hook the HTTP request and immediately detect that the file was recently modified/created. It would send you a detailed alert (script name, IP, request, date and time). Alerts will be sent to the contact email address defined in the "Event Notifications" menu.', 'ninjafirewall') .
|
349 |
'<p>' . __('If you do not want to monitor a folder, you can exclude its full path or a part of it (e.g., <code>/var/www/public_html/cache/</code> or <code>/cache/</code> etc). NinjaFirewall will compare this value to the <code>$_SERVER["SCRIPT_FILENAME"]</code> server variable and, if it matches, will ignore it.', 'ninjafirewall') . '</p>' .
|
350 |
__('Multiple values must be comma-separated (e.g., <code>/foo/bar/,/cache/</code>).', 'ninjafirewall') .
|
351 |
-
'<p><span class="dashicons dashicons-warning nfw-warning"></span
|
352 |
) );
|
353 |
}
|
354 |
/* ------------------------------------------------------------------ */ // i18n+
|
@@ -434,7 +434,7 @@ function help_nfsublogin() {
|
|
434 |
__('Sample loglines:', 'ninjafirewall') .
|
435 |
'<br />
|
436 |
<textarea class="large-text code" style="height:80px;" wrap="off">Aug 31 01:40:35 www ninjafirewall[6191]: Possible brute-force attack from 172.16.0.1 on mysite.com (wp-login.php). Blocking access for 5mn.'. "\n" . 'Aug 31 01:45:28 www ninjafirewall[6192]: Possible brute-force attack from fe80::6e88:14ff:fe3e:86f0 on blog.domain.com (XML-RPC API). Blocking access for 25mn.</textarea>
|
437 |
-
<p><span class="dashicons dashicons-warning nfw-warning"></span
|
438 |
</div>'
|
439 |
) );
|
440 |
|
@@ -469,7 +469,7 @@ function help_nfsublog() {
|
|
469 |
'<ul><li>' . __('Enter your public key (optional): This is the public key that was created from your main server.', 'ninjafirewall') . '</li>
|
470 |
</ul>' .
|
471 |
|
472 |
-
'<p><span class="dashicons dashicons-warning nfw-warning"></span
|
473 |
__('Centralized Logging will keep working even if NinjaFirewall is disabled. Delete your public key below if you want to disable it.', 'ninjafirewall') .
|
474 |
'</p>'.
|
475 |
'</div>'
|
@@ -487,7 +487,7 @@ function help_nfsublog() {
|
|
487 |
|
488 |
<p>' . __('Live Log does not make use of any WordPress core file (e.g., <code>admin-ajax.php</code>). It communicates directly with the firewall without loading WordPress bootstrap. Consequently, it is fast, lightweight and it should not affect your server load, even if you set its refresh rate to the lowest value.', 'ninjafirewall') . '</p>
|
489 |
|
490 |
-
<p><span class="dashicons dashicons-warning nfw-warning"></span
|
491 |
</p>'.
|
492 |
|
493 |
|
101 |
'title' => __('Export/import configuration', 'ninjafirewall'),
|
102 |
'content' => '<br />' .
|
103 |
sprintf( __('This options lets you export you current configuration or import it from another NinjaFirewall (WP Edition) installation. The imported file must match the major version of your current version (%s) otherwise it will be rejected. Note that importing will override all firewall rules and options.', 'ninjafirewall'), (int) $major_current .'.x' ) .
|
104 |
+
'<p><span class="dashicons dashicons-warning nfw-warning"></span>' .
|
105 |
__('"File Check" configuration will not be exported/imported.', 'ninjafirewall') . '</p>'
|
106 |
) );
|
107 |
|
153 |
__('This action will be performed when the filtering process is over, right before NinjaFirewall forwards the request to your PHP script.', 'ninjafirewall') . '
|
154 |
<br />
|
155 |
<br />
|
156 |
+
<span class="dashicons dashicons-warning nfw-warning"></span>'. __('If you enabled <code>POST</code> requests sanitising, articles and messages posted by your visitors could be corrupted with excessive backslashes or substitution characters.', 'ninjafirewall'). '</li></ul>'
|
157 |
) );
|
158 |
|
159 |
get_current_screen()->add_help_tab( array(
|
182 |
<p><strong>' . __('Block user accounts creation', 'ninjafirewall'). '</strong><br />' . __('Enabling this policy will block any attempt (e.g., exploiting a vulnerability, using a backdoor etc) to create a user account. If you allow user registration, you should not enable it.', 'ninjafirewall'). '</p>
|
183 |
|
184 |
<p><strong>' . __('Block attempts to gain administrative privileges', 'ninjafirewall'). '</strong><br />' . __('This policy will block vulnerabilities that could be leveraged by attackers to gain administrative privileges.', 'ninjafirewall') .'</p>
|
185 |
+
<p><span class="dashicons dashicons-warning nfw-warning"></span>' . __("If you have a multisite installation, this option will apply to the main site only. If you want it to apply to all subsites in your network, check the 'Apply to all subsites in the network' option.", 'ninjafirewall'). '</p>
|
186 |
|
187 |
<p><strong>' . __('Block attempts to publish, edit or delete a published post by users who do not have the right capabilities', 'ninjafirewall'). '</strong><br />' . __('This policy will block vulnerabilities that could be leveraged by attackers to create, edit or delete posts. Note that it applies to <code>post</code> and <code>page</code> post types only (not custom ones).', 'ninjafirewall'). '</p>
|
188 |
|
273 |
<p>' . __('Since v3.1.3, WordPress sets this value to <code>SAMEORIGIN</code> for the administrator and the login page only.', 'ninjafirewall'). '</p>
|
274 |
|
275 |
<p><strong>' . __('Set <code>X-XSS-Protection</code>', 'ninjafirewall'). '</strong><br />' . __('This header allows browsers to identify and block XSS attacks by preventing malicious scripts from executing. It is enabled by default on all compatible browsers.', 'ninjafirewall'). '</p>'.
|
276 |
+
'<p><span class="dashicons dashicons-warning nfw-warning"></span>' . __('This header is deprecated and most browsers phased out support for it. Consider using Content-Security-Policy instead.', 'ninjafirewall'). '</p>'.
|
277 |
|
278 |
'<p><strong>' . __('Force <code>SameSite</code> flag on all cookies to mitigate CSRF attacks', 'ninjafirewall'). '</strong><br />' . __('Adding this flag to cookies helps to mitigate the risk of CSRF (cross-site request forgery) attacks because cookies can only be sent in requests originating from the same origin as the target domain.', 'ninjafirewall'). '</p>'.
|
279 |
|
280 |
'<p><strong>' . __('Force <code>HttpOnly</code> flag on all cookies to mitigate XSS attacks', 'ninjafirewall'). '</strong><br />' . __('Adding this flag to cookies helps to mitigate the risk of cross-site scripting by preventing them from being accessed through client-side scripts. NinjaFirewall can hook all cookies sent by your blog, its plugins or any other PHP script, add the <code>HttpOnly</code> flag if it is missing, and re-inject those cookies back into your server HTTP response headers right before they are sent to your visitors. Note that WordPress sets that flag on the logged in user cookies only.', 'ninjafirewall'). '</p>
|
281 |
+
<p><span class="dashicons dashicons-warning nfw-warning"></span>' . __('If your PHP scripts send cookies that need to be accessed from JavaScript, you should keep that option disabled.', 'ninjafirewall'). '</p>
|
282 |
|
283 |
<p><strong>' . __('Set <code>Strict-Transport-Security</code> (HSTS) to enforce secure connections to the server', 'ninjafirewall'). '</strong><br />' . __('This policy enforces secure HTTPS connections to the server. Web browsers will not allow the user to access the web application over insecure HTTP protocol. It helps to defend against cookie hijacking and Man-in-the-middle attacks. Most recent browsers support HSTS headers.', 'ninjafirewall'). '</p>
|
284 |
|
335 |
'<br />'.
|
336 |
__('Reports will be sent to the contact email address defined in the "Event Notifications" menu.', 'ninjafirewall'). '</p>'.
|
337 |
|
338 |
+
'<p><span class="dashicons dashicons-warning nfw-warning"></span>'. sprintf( __('Scheduled scans rely on <a href="%s">WordPress pseudo cron</a> which works only if your site gets sufficient traffic.', 'ninjafirewall'), 'http://codex.wordpress.org/Category:WP-Cron_Functions') . '</p>'
|
339 |
) );
|
340 |
|
341 |
// File Guard :
|
348 |
__('If a hacker uploaded a shell script to your site (or injected a backdoor into an already existing file) and tried to directly access that file using his browser or a script, NinjaFirewall would hook the HTTP request and immediately detect that the file was recently modified/created. It would send you a detailed alert (script name, IP, request, date and time). Alerts will be sent to the contact email address defined in the "Event Notifications" menu.', 'ninjafirewall') .
|
349 |
'<p>' . __('If you do not want to monitor a folder, you can exclude its full path or a part of it (e.g., <code>/var/www/public_html/cache/</code> or <code>/cache/</code> etc). NinjaFirewall will compare this value to the <code>$_SERVER["SCRIPT_FILENAME"]</code> server variable and, if it matches, will ignore it.', 'ninjafirewall') . '</p>' .
|
350 |
__('Multiple values must be comma-separated (e.g., <code>/foo/bar/,/cache/</code>).', 'ninjafirewall') .
|
351 |
+
'<p><span class="dashicons dashicons-warning nfw-warning"></span>' . __('File Guard real-time detection is a totally unique feature, because NinjaFirewall is the only plugin for WordPress that can hook HTTP requests sent to any PHP script, even if that script is not part of the WordPress package (third-party software, shell script, backdoor etc).', 'ninjafirewall') . '</p>'
|
352 |
) );
|
353 |
}
|
354 |
/* ------------------------------------------------------------------ */ // i18n+
|
434 |
__('Sample loglines:', 'ninjafirewall') .
|
435 |
'<br />
|
436 |
<textarea class="large-text code" style="height:80px;" wrap="off">Aug 31 01:40:35 www ninjafirewall[6191]: Possible brute-force attack from 172.16.0.1 on mysite.com (wp-login.php). Blocking access for 5mn.'. "\n" . 'Aug 31 01:45:28 www ninjafirewall[6192]: Possible brute-force attack from fe80::6e88:14ff:fe3e:86f0 on blog.domain.com (XML-RPC API). Blocking access for 25mn.</textarea>
|
437 |
+
<p><span class="dashicons dashicons-warning nfw-warning"></span>' . sprintf( __('Be careful if you are behind a load balancer, reverse-proxy or CDN because the Login Protection feature will always record the <code>REMOTE_ADDR</code> IP. If you have an application parsing the AUTH log in order to ban IPs (e.g. Fail2ban), you <strong>must</strong> setup your HTTP server to forward the correct IP (or use the <code><a href="%s">.htninja</a></code> file), otherwise you will likely block legitimate users.', 'ninjafirewall'), 'https://blog.nintechnet.com/ninjafirewall-wp-edition-the-htninja-configuration-file/') . '</p>
|
438 |
</div>'
|
439 |
) );
|
440 |
|
469 |
'<ul><li>' . __('Enter your public key (optional): This is the public key that was created from your main server.', 'ninjafirewall') . '</li>
|
470 |
</ul>' .
|
471 |
|
472 |
+
'<p><span class="dashicons dashicons-warning nfw-warning"></span>'.
|
473 |
__('Centralized Logging will keep working even if NinjaFirewall is disabled. Delete your public key below if you want to disable it.', 'ninjafirewall') .
|
474 |
'</p>'.
|
475 |
'</div>'
|
487 |
|
488 |
<p>' . __('Live Log does not make use of any WordPress core file (e.g., <code>admin-ajax.php</code>). It communicates directly with the firewall without loading WordPress bootstrap. Consequently, it is fast, lightweight and it should not affect your server load, even if you set its refresh rate to the lowest value.', 'ninjafirewall') . '</p>
|
489 |
|
490 |
+
<p><span class="dashicons dashicons-warning nfw-warning"></span>' . __('If you are using the optional <code>.htninja</code> configuration file to whitelist your IP, the Live Log feature will not work.', 'ninjafirewall') . '
|
491 |
</p>'.
|
492 |
|
493 |
|
lib/i18n-extra.php
CHANGED
@@ -123,8 +123,6 @@ __('Your changes have been saved. If you are using a caching plugin, do not forg
|
|
123 |
__('Enable antispam protection', 'ninjafirewall');
|
124 |
__('Protection level', 'ninjafirewall');
|
125 |
__('Low (default)', 'ninjafirewall');
|
126 |
-
__('Medium', 'ninjafirewall');
|
127 |
-
__('High', 'ninjafirewall');
|
128 |
__('If you are using a caching plugin, consult the contextual help before enabling the antispam.', 'ninjafirewall');
|
129 |
__('Apply protection to', 'ninjafirewall');
|
130 |
__('Comment forms (defaut)', 'ninjafirewall');
|
@@ -268,7 +266,6 @@ __('Export', 'ninjafirewall');
|
|
268 |
__('Delete', 'ninjafirewall');
|
269 |
__('Delete log?', 'ninjafirewall');
|
270 |
__('Today', 'ninjafirewall');
|
271 |
-
__('Critical', 'ninjafirewall');
|
272 |
__('Upload', 'ninjafirewall');
|
273 |
__('Info', 'ninjafirewall');
|
274 |
__('Debug', 'ninjafirewall');
|
123 |
__('Enable antispam protection', 'ninjafirewall');
|
124 |
__('Protection level', 'ninjafirewall');
|
125 |
__('Low (default)', 'ninjafirewall');
|
|
|
|
|
126 |
__('If you are using a caching plugin, consult the contextual help before enabling the antispam.', 'ninjafirewall');
|
127 |
__('Apply protection to', 'ninjafirewall');
|
128 |
__('Comment forms (defaut)', 'ninjafirewall');
|
266 |
__('Delete', 'ninjafirewall');
|
267 |
__('Delete log?', 'ninjafirewall');
|
268 |
__('Today', 'ninjafirewall');
|
|
|
269 |
__('Upload', 'ninjafirewall');
|
270 |
__('Info', 'ninjafirewall');
|
271 |
__('Debug', 'ninjafirewall');
|
lib/install_default.php
CHANGED
@@ -26,20 +26,6 @@ function nfw_load_default_conf() {
|
|
26 |
|
27 |
$nfw_rules = array();
|
28 |
|
29 |
-
// We first delete all scheduled tasks if any (reinstallation etc):
|
30 |
-
if ( wp_next_scheduled( 'nfwgccron' ) ) {
|
31 |
-
wp_clear_scheduled_hook( 'nfwgccron' );
|
32 |
-
}
|
33 |
-
if ( wp_next_scheduled('nfscanevent') ) {
|
34 |
-
wp_clear_scheduled_hook('nfscanevent');
|
35 |
-
}
|
36 |
-
if ( wp_next_scheduled('nfsecupdates') ) {
|
37 |
-
wp_clear_scheduled_hook('nfsecupdates');
|
38 |
-
}
|
39 |
-
if ( wp_next_scheduled('nfdailyreport') ) {
|
40 |
-
wp_clear_scheduled_hook('nfdailyreport');
|
41 |
-
}
|
42 |
-
|
43 |
$logo = plugins_url() . '/ninjafirewall/images/ninjafirewall_75.png';
|
44 |
$logo = preg_replace( '/^https?:/', '', $logo );
|
45 |
|
@@ -220,11 +206,9 @@ function nfw_load_default_conf() {
|
|
220 |
// (the garbage collect should be ran/scheduled last):
|
221 |
nfw_update_option( 'nfw_options', $nfw_options);
|
222 |
nfw_update_option( 'nfw_rules', $nfw_rules);
|
|
|
|
|
223 |
// ------------------------------------------------------------------
|
224 |
-
nfw_get_blogtimezone();
|
225 |
-
wp_schedule_event( strtotime( date('Y-m-d 00:00:05', strtotime("+1 day")) ), 'daily', 'nfdailyreport');
|
226 |
-
wp_schedule_event( time() + 3600, 'hourly', 'nfsecupdates');
|
227 |
-
wp_schedule_event( time() + 1800, 'hourly', 'nfwgccron' );
|
228 |
|
229 |
nfw_create_log_dir();
|
230 |
|
26 |
|
27 |
$nfw_rules = array();
|
28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
$logo = plugins_url() . '/ninjafirewall/images/ninjafirewall_75.png';
|
30 |
$logo = preg_replace( '/^https?:/', '', $logo );
|
31 |
|
206 |
// (the garbage collect should be ran/scheduled last):
|
207 |
nfw_update_option( 'nfw_options', $nfw_options);
|
208 |
nfw_update_option( 'nfw_rules', $nfw_rules);
|
209 |
+
// Create conjobs
|
210 |
+
nfw_create_scheduled_tasks();
|
211 |
// ------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
212 |
|
213 |
nfw_create_log_dir();
|
214 |
|
lib/logs.php
CHANGED
@@ -38,6 +38,7 @@ if ( $_REQUEST['tab'] == 'livelog' ) {
|
|
38 |
<h2 class="nav-tab-wrapper wp-clearfix" style="cursor:pointer">
|
39 |
<a id="tab-firewalllog" class="nav-tab<?php echo $firewalllog_tab ?>" onClick="nfwjs_switch_tabs('firewalllog', 'firewalllog:livelog')"><?php _e( 'Firewall Log', 'ninjafirewall' ) ?></a>
|
40 |
<a id="tab-livelog" class="nav-tab<?php echo $livelog_tab ?>" onClick="nfwjs_switch_tabs('livelog', 'firewalllog:livelog')"><?php _e( 'Live Log', 'ninjafirewall' ) ?></a>
|
|
|
41 |
</h2>
|
42 |
<br />
|
43 |
|
38 |
<h2 class="nav-tab-wrapper wp-clearfix" style="cursor:pointer">
|
39 |
<a id="tab-firewalllog" class="nav-tab<?php echo $firewalllog_tab ?>" onClick="nfwjs_switch_tabs('firewalllog', 'firewalllog:livelog')"><?php _e( 'Firewall Log', 'ninjafirewall' ) ?></a>
|
40 |
<a id="tab-livelog" class="nav-tab<?php echo $livelog_tab ?>" onClick="nfwjs_switch_tabs('livelog', 'firewalllog:livelog')"><?php _e( 'Live Log', 'ninjafirewall' ) ?></a>
|
41 |
+
<a class="nav-tab"><span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall, you can filter the log by threat severity, type and date. You can delete it, enable its rotation based on the size of the file. It can be exported as a TSV (tab-separated values) text file. You can easily add any IP address to your Access Control whitelist or blacklist and it is possible to redirect all incidents and events to the Syslog server.', 'ninjafirewall' ); echo ' '; esc_attr_e('Also, the Centralized Logging feature lets you remotely access the firewall log of all your NinjaFirewall protected websites from one single installation.', 'ninjafirewall' ) ?>"></span></a>
|
42 |
</h2>
|
43 |
<br />
|
44 |
|
lib/monitoring.php
CHANGED
@@ -45,6 +45,7 @@ if ( $_REQUEST['tab'] == 'filecheck' ) {
|
|
45 |
<h2 class="nav-tab-wrapper wp-clearfix" style="cursor:pointer">
|
46 |
<a id="tab-filecheck" class="nav-tab<?php echo $filecheck_tab ?>" onClick="nfwjs_switch_tabs('filecheck', 'fileguard:filecheck')"><?php _e( 'File Check', 'ninjafirewall' ) ?></a>
|
47 |
<a id="tab-fileguard" class="nav-tab<?php echo $fileguard_tab ?>" onClick="nfwjs_switch_tabs('fileguard', 'fileguard:filecheck')"><?php _e( 'File Guard', 'ninjafirewall' ) ?></a>
|
|
|
48 |
</h2>
|
49 |
<br />
|
50 |
|
45 |
<h2 class="nav-tab-wrapper wp-clearfix" style="cursor:pointer">
|
46 |
<a id="tab-filecheck" class="nav-tab<?php echo $filecheck_tab ?>" onClick="nfwjs_switch_tabs('filecheck', 'fileguard:filecheck')"><?php _e( 'File Check', 'ninjafirewall' ) ?></a>
|
47 |
<a id="tab-fileguard" class="nav-tab<?php echo $fileguard_tab ?>" onClick="nfwjs_switch_tabs('fileguard', 'fileguard:filecheck')"><?php _e( 'File Guard', 'ninjafirewall' ) ?></a>
|
48 |
+
<a class="nav-tab"><span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall, you can also monitor the response body, i.e., the output of the HTML page, and search it for some specific keywords, which can be useful to identify errors, hacked content and data leakage issues on your website.', 'ninjafirewall' ) ?>"></span></a>
|
49 |
</h2>
|
50 |
<br />
|
51 |
|
lib/monitoring_file_check.php
CHANGED
@@ -697,24 +697,8 @@ function nf_scheduled_scan() {
|
|
697 |
|
698 |
if (! isset($_POST['sched_scan']) || ! preg_match('/^[1-3]$/', $_POST['sched_scan']) ) {
|
699 |
$nfw_options['sched_scan'] = 0;
|
700 |
-
// Clear scheduled scan, if any :
|
701 |
-
if ( wp_next_scheduled('nfscanevent') ) {
|
702 |
-
wp_clear_scheduled_hook('nfscanevent');
|
703 |
-
}
|
704 |
} else {
|
705 |
-
if ($_POST['sched_scan'] == 1) {
|
706 |
-
$schedtype = 'hourly';
|
707 |
-
} elseif ($_POST['sched_scan'] == 2) {
|
708 |
-
$schedtype = 'twicedaily';
|
709 |
-
} else {
|
710 |
-
$schedtype = 'daily';
|
711 |
-
}
|
712 |
$nfw_options['sched_scan'] = $_POST['sched_scan'];
|
713 |
-
// Create a new scheduled scan :
|
714 |
-
if ( wp_next_scheduled('nfscanevent') ) {
|
715 |
-
wp_clear_scheduled_hook('nfscanevent');
|
716 |
-
}
|
717 |
-
wp_schedule_event( time() + 3600, $schedtype, 'nfscanevent');
|
718 |
}
|
719 |
|
720 |
if ( empty($_POST['report_scan']) ) {
|
@@ -724,6 +708,9 @@ function nf_scheduled_scan() {
|
|
724 |
}
|
725 |
nfw_update_option('nfw_options', $nfw_options);
|
726 |
|
|
|
|
|
|
|
727 |
}
|
728 |
|
729 |
// ---------------------------------------------------------------------
|
@@ -731,11 +718,6 @@ function nf_scheduled_scan() {
|
|
731 |
function nf_scan_email($nfmon_diff, $log_dir) {
|
732 |
|
733 |
$nfw_options = nfw_get_option('nfw_options');
|
734 |
-
if ( ( is_multisite() ) && ( $nfw_options['alert_sa_only'] == 2 ) ) {
|
735 |
-
$recipient = get_option('admin_email');
|
736 |
-
} else {
|
737 |
-
$recipient = $nfw_options['alert_email'];
|
738 |
-
}
|
739 |
|
740 |
nfw_get_blogtimezone();
|
741 |
|
@@ -787,7 +769,7 @@ function nf_scan_email($nfmon_diff, $log_dir) {
|
|
787 |
$msg .= __('See attached file for details.', 'ninjafirewall') . "\n\n" .
|
788 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
789 |
|
790 |
-
|
791 |
unlink($log_dir . 'nf_filecheck.txt');
|
792 |
|
793 |
} else {
|
@@ -803,7 +785,7 @@ function nf_scan_email($nfmon_diff, $log_dir) {
|
|
803 |
$msg .= sprintf( __('Date: %s', 'ninjafirewall'), ucfirst(date_i18n('M d, Y @ H:i:s O')) ) . "\n\n" .
|
804 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
805 |
|
806 |
-
|
807 |
}
|
808 |
}
|
809 |
|
697 |
|
698 |
if (! isset($_POST['sched_scan']) || ! preg_match('/^[1-3]$/', $_POST['sched_scan']) ) {
|
699 |
$nfw_options['sched_scan'] = 0;
|
|
|
|
|
|
|
|
|
700 |
} else {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
701 |
$nfw_options['sched_scan'] = $_POST['sched_scan'];
|
|
|
|
|
|
|
|
|
|
|
702 |
}
|
703 |
|
704 |
if ( empty($_POST['report_scan']) ) {
|
708 |
}
|
709 |
nfw_update_option('nfw_options', $nfw_options);
|
710 |
|
711 |
+
// Update cronjobs
|
712 |
+
nfw_create_scheduled_tasks('nfscanevent');
|
713 |
+
|
714 |
}
|
715 |
|
716 |
// ---------------------------------------------------------------------
|
718 |
function nf_scan_email($nfmon_diff, $log_dir) {
|
719 |
|
720 |
$nfw_options = nfw_get_option('nfw_options');
|
|
|
|
|
|
|
|
|
|
|
721 |
|
722 |
nfw_get_blogtimezone();
|
723 |
|
769 |
$msg .= __('See attached file for details.', 'ninjafirewall') . "\n\n" .
|
770 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
771 |
|
772 |
+
nfw_mail( $subject, $msg, 'unsubscribe', $headers = '', $log_dir . 'nf_filecheck.txt' );
|
773 |
unlink($log_dir . 'nf_filecheck.txt');
|
774 |
|
775 |
} else {
|
785 |
$msg .= sprintf( __('Date: %s', 'ninjafirewall'), ucfirst(date_i18n('M d, Y @ H:i:s O')) ) . "\n\n" .
|
786 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
787 |
|
788 |
+
nfw_mail( $subject, $msg, 'unsubscribe' );
|
789 |
}
|
790 |
}
|
791 |
|
lib/scheduled_tasks.php
ADDED
@@ -0,0 +1,176 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
+---------------------------------------------------------------------+
|
4 |
+
| NinjaFirewall (WP Edition) |
|
5 |
+
| |
|
6 |
+
| (c) NinTechNet - https://nintechnet.com/ |
|
7 |
+
+---------------------------------------------------------------------+
|
8 |
+
| This program is free software: you can redistribute it and/or |
|
9 |
+
| modify it under the terms of the GNU General Public License as |
|
10 |
+
| published by the Free Software Foundation, either version 3 of |
|
11 |
+
| the License, or (at your option) any later version. |
|
12 |
+
| |
|
13 |
+
| This program is distributed in the hope that it will be useful, |
|
14 |
+
| but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
15 |
+
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
16 |
+
| GNU General Public License for more details. |
|
17 |
+
+---------------------------------------------------------------------+
|
18 |
+
*/
|
19 |
+
|
20 |
+
if (! defined( 'NFW_ENGINE_VERSION' ) ) { die( 'Forbidden' ); }
|
21 |
+
|
22 |
+
// ---------------------------------------------------------------------
|
23 |
+
// Create scheduled tasks.
|
24 |
+
|
25 |
+
function nfw_create_scheduled_tasks( $task = 0 ) {
|
26 |
+
|
27 |
+
$nfw_options = nfw_get_option( 'nfw_options' );
|
28 |
+
|
29 |
+
// Return if NF was disabled from the "Options" page
|
30 |
+
if ( empty( $nfw_options['enabled'] ) ) {
|
31 |
+
return;
|
32 |
+
}
|
33 |
+
|
34 |
+
|
35 |
+
// File Check (optional)
|
36 |
+
if (! $task || $task == 'nfscanevent' ) {
|
37 |
+
if ( wp_next_scheduled('nfscanevent') ) {
|
38 |
+
wp_clear_scheduled_hook('nfscanevent');
|
39 |
+
}
|
40 |
+
if (! empty($nfw_options['sched_scan']) ) {
|
41 |
+
if ($nfw_options['sched_scan'] == 1) {
|
42 |
+
$schedtype = 'hourly';
|
43 |
+
} elseif ($nfw_options['sched_scan'] == 2) {
|
44 |
+
$schedtype = 'twicedaily';
|
45 |
+
} else {
|
46 |
+
$schedtype = 'daily';
|
47 |
+
}
|
48 |
+
wp_schedule_event( time() + 120, $schedtype, 'nfscanevent');
|
49 |
+
}
|
50 |
+
}
|
51 |
+
|
52 |
+
|
53 |
+
// Garbage Collector (always on)
|
54 |
+
if ( wp_next_scheduled( 'nfwgccron' ) ) {
|
55 |
+
wp_clear_scheduled_hook( 'nfwgccron' );
|
56 |
+
}
|
57 |
+
wp_schedule_event( time() + 30, 'hourly', 'nfwgccron' );
|
58 |
+
|
59 |
+
|
60 |
+
// Security rules update (optional)
|
61 |
+
if (! $task || $task == 'nfsecupdates' ) {
|
62 |
+
if ( wp_next_scheduled('nfsecupdates') ) {
|
63 |
+
wp_clear_scheduled_hook('nfsecupdates');
|
64 |
+
}
|
65 |
+
if (! empty($nfw_options['enable_updates']) ) {
|
66 |
+
if ($nfw_options['sched_updates'] == 1) {
|
67 |
+
$schedtype = 'hourly';
|
68 |
+
} elseif ($nfw_options['sched_updates'] == 2) {
|
69 |
+
$schedtype = 'twicedaily';
|
70 |
+
} else {
|
71 |
+
$schedtype = 'daily';
|
72 |
+
}
|
73 |
+
wp_schedule_event( time() + 60, $schedtype, 'nfsecupdates');
|
74 |
+
}
|
75 |
+
}
|
76 |
+
|
77 |
+
|
78 |
+
// Daily report (optional)
|
79 |
+
if (! $task || $task == 'nfdailyreport' ) {
|
80 |
+
if ( wp_next_scheduled('nfdailyreport') ) {
|
81 |
+
wp_clear_scheduled_hook('nfdailyreport');
|
82 |
+
}
|
83 |
+
if (! empty( $nfw_options['a_52'] ) ) {
|
84 |
+
nfw_get_blogtimezone();
|
85 |
+
wp_schedule_event( strtotime( date('Y-m-d 00:00:05', strtotime('+1 day')) ), 'daily', 'nfdailyreport');
|
86 |
+
}
|
87 |
+
}
|
88 |
+
|
89 |
+
}
|
90 |
+
// ---------------------------------------------------------------------
|
91 |
+
// Verify scheduled tasks, reactivate them if needed and write
|
92 |
+
// the incident to the error log.
|
93 |
+
|
94 |
+
function nfw_verify_scheduled_tasks() {
|
95 |
+
|
96 |
+
if ( defined('NFW_DONTVERIFYCRON') && NFW_DONTVERIFYCRON == true ) {
|
97 |
+
return;
|
98 |
+
}
|
99 |
+
|
100 |
+
$nfw_options = nfw_get_option( 'nfw_options' );
|
101 |
+
|
102 |
+
// Return if NF was disabled from the "Options" page
|
103 |
+
if ( empty( $nfw_options['enabled'] ) ) {
|
104 |
+
return;
|
105 |
+
}
|
106 |
+
|
107 |
+
$now = time();
|
108 |
+
|
109 |
+
// File Check (optional)
|
110 |
+
if (! empty($nfw_options['sched_scan']) && ! wp_next_scheduled('nfscanevent') ) {
|
111 |
+
if ($nfw_options['sched_scan'] == 1) {
|
112 |
+
$schedtype = 'hourly';
|
113 |
+
} elseif ($nfw_options['sched_scan'] == 2) {
|
114 |
+
$schedtype = 'twicedaily';
|
115 |
+
} else {
|
116 |
+
$schedtype = 'daily';
|
117 |
+
}
|
118 |
+
wp_schedule_event( $now + 120, $schedtype, 'nfscanevent');
|
119 |
+
nfw_log_error(
|
120 |
+
sprintf( __('Scheduled task has stopped, restarting it (%s)', 'ninjafirewall'), 'nfscanevent' )
|
121 |
+
);
|
122 |
+
}
|
123 |
+
|
124 |
+
// Garbage Collector (always on)
|
125 |
+
if (! wp_next_scheduled('nfwgccron') ) {
|
126 |
+
wp_schedule_event( $now + 30, 'hourly', 'nfwgccron' );
|
127 |
+
nfw_log_error(
|
128 |
+
sprintf( __('Scheduled task has stopped, restarting it (%s)', 'ninjafirewall'), 'nfwgccron' )
|
129 |
+
);
|
130 |
+
}
|
131 |
+
|
132 |
+
// Security rules update (optional)
|
133 |
+
if (! empty($nfw_options['enable_updates']) && ! wp_next_scheduled('nfsecupdates') ) {
|
134 |
+
if ($nfw_options['sched_updates'] == 1) {
|
135 |
+
$schedtype = 'hourly';
|
136 |
+
} elseif ($nfw_options['sched_updates'] == 2) {
|
137 |
+
$schedtype = 'twicedaily';
|
138 |
+
} else {
|
139 |
+
$schedtype = 'daily';
|
140 |
+
}
|
141 |
+
wp_schedule_event( $now + 60, $schedtype, 'nfsecupdates');
|
142 |
+
nfw_log_error(
|
143 |
+
sprintf( __('Scheduled task has stopped, restarting it (%s)', 'ninjafirewall'), 'nfsecupdates' )
|
144 |
+
);
|
145 |
+
}
|
146 |
+
|
147 |
+
// Daily report (optional)
|
148 |
+
if (! empty( $nfw_options['a_52'] ) && ! wp_next_scheduled('nfdailyreport') ) {
|
149 |
+
nfw_get_blogtimezone();
|
150 |
+
wp_schedule_event( strtotime( date('Y-m-d 00:00:05', strtotime('+1 day')) ), 'daily', 'nfdailyreport');
|
151 |
+
nfw_log_error(
|
152 |
+
sprintf( __('Scheduled task has stopped, restarting it (%s)', 'ninjafirewall'), 'nfdailyreport' )
|
153 |
+
);
|
154 |
+
}
|
155 |
+
}
|
156 |
+
// ---------------------------------------------------------------------
|
157 |
+
// Delete scheduled tasks.
|
158 |
+
|
159 |
+
function nfw_delete_scheduled_tasks() {
|
160 |
+
|
161 |
+
if ( wp_next_scheduled('nfscanevent') ) {
|
162 |
+
wp_clear_scheduled_hook('nfscanevent');
|
163 |
+
}
|
164 |
+
if ( wp_next_scheduled( 'nfwgccron' ) ) {
|
165 |
+
wp_clear_scheduled_hook( 'nfwgccron' );
|
166 |
+
}
|
167 |
+
if ( wp_next_scheduled('nfsecupdates') ) {
|
168 |
+
wp_clear_scheduled_hook('nfsecupdates');
|
169 |
+
}
|
170 |
+
if ( wp_next_scheduled('nfdailyreport') ) {
|
171 |
+
wp_clear_scheduled_hook('nfdailyreport');
|
172 |
+
}
|
173 |
+
|
174 |
+
}
|
175 |
+
// ---------------------------------------------------------------------
|
176 |
+
// EOF
|
lib/security_rules_update.php
CHANGED
@@ -145,7 +145,7 @@ if ( empty($nfw_options['notify_updates']) && isset($nfw_options['notify_updates
|
|
145 |
<div id="upd_table"<?php echo $enable_updates == 1 ? '' : ' style="display:none"' ?>>
|
146 |
<table class="form-table nfw-table">
|
147 |
<tr>
|
148 |
-
<th scope="row" class="row-med"><?php _e('Check for updates', 'ninjafirewall')
|
149 |
<td>
|
150 |
<select name="sched_updates">
|
151 |
<option disabled><?php _e('Every 15 minutes', 'ninjafirewall') ?> (Premium)</option>
|
@@ -255,18 +255,8 @@ function nf_sub_updates_save() {
|
|
255 |
|
256 |
if ( empty($_POST['enable_updates']) ) {
|
257 |
$nfw_options['enable_updates'] = 0;
|
258 |
-
// Clear scheduled scan (if any) and its options :
|
259 |
-
if ( wp_next_scheduled('nfsecupdates') ) {
|
260 |
-
wp_clear_scheduled_hook('nfsecupdates');
|
261 |
-
}
|
262 |
} else {
|
263 |
$nfw_options['enable_updates'] = 1;
|
264 |
-
// Create a new scheduled scan :
|
265 |
-
if ( wp_next_scheduled('nfsecupdates') ) {
|
266 |
-
wp_clear_scheduled_hook('nfsecupdates');
|
267 |
-
}
|
268 |
-
// Start next cron in 90 seconds:
|
269 |
-
wp_schedule_event( time() + 90, $schedtype, 'nfsecupdates');
|
270 |
}
|
271 |
|
272 |
if ( empty($_POST['notify_updates']) ) {
|
@@ -277,6 +267,9 @@ function nf_sub_updates_save() {
|
|
277 |
|
278 |
nfw_update_option('nfw_options', $nfw_options);
|
279 |
|
|
|
|
|
|
|
280 |
}
|
281 |
|
282 |
// ---------------------------------------------------------------------
|
@@ -560,12 +553,6 @@ function nf_sub_updates_notification($new_rules_version) {
|
|
560 |
|
561 |
$nfw_options = nfw_get_option('nfw_options');
|
562 |
|
563 |
-
if ( ( is_multisite() ) && ( $nfw_options['alert_sa_only'] == 2 ) ) {
|
564 |
-
$recipient = get_option('admin_email');
|
565 |
-
} else {
|
566 |
-
$recipient = $nfw_options['alert_email'];
|
567 |
-
}
|
568 |
-
|
569 |
$subject = __('[NinjaFirewall] Security rules update', 'ninjafirewall');
|
570 |
$msg = __('NinjaFirewall security rules have been updated:', 'ninjafirewall') . "\n\n";
|
571 |
if ( is_multisite() ) {
|
@@ -578,7 +565,7 @@ function nf_sub_updates_notification($new_rules_version) {
|
|
578 |
sprintf( __('This notification can be turned off from NinjaFirewall "%s" page.', 'ninjafirewall'), __('Security Rules', 'ninjafirewall') ) ."\n\n" .
|
579 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
580 |
|
581 |
-
|
582 |
}
|
583 |
|
584 |
// ---------------------------------------------------------------------
|
145 |
<div id="upd_table"<?php echo $enable_updates == 1 ? '' : ' style="display:none"' ?>>
|
146 |
<table class="form-table nfw-table">
|
147 |
<tr>
|
148 |
+
<th scope="row" class="row-med"><?php _e('Check for updates', 'ninjafirewall') ?> <span class="ninjafirewall-tip" data-tip="<?php esc_attr_e('In the Premium version of NinjaFirewall, you can check for security rules updates as often as every 15 minutes, versus one hour for the free WP Edition.', 'ninjafirewall' ) ?>"></span></th>
|
149 |
<td>
|
150 |
<select name="sched_updates">
|
151 |
<option disabled><?php _e('Every 15 minutes', 'ninjafirewall') ?> (Premium)</option>
|
255 |
|
256 |
if ( empty($_POST['enable_updates']) ) {
|
257 |
$nfw_options['enable_updates'] = 0;
|
|
|
|
|
|
|
|
|
258 |
} else {
|
259 |
$nfw_options['enable_updates'] = 1;
|
|
|
|
|
|
|
|
|
|
|
|
|
260 |
}
|
261 |
|
262 |
if ( empty($_POST['notify_updates']) ) {
|
267 |
|
268 |
nfw_update_option('nfw_options', $nfw_options);
|
269 |
|
270 |
+
// Recreate cronjobs if needed
|
271 |
+
nfw_create_scheduled_tasks('nfsecupdates');
|
272 |
+
|
273 |
}
|
274 |
|
275 |
// ---------------------------------------------------------------------
|
553 |
|
554 |
$nfw_options = nfw_get_option('nfw_options');
|
555 |
|
|
|
|
|
|
|
|
|
|
|
|
|
556 |
$subject = __('[NinjaFirewall] Security rules update', 'ninjafirewall');
|
557 |
$msg = __('NinjaFirewall security rules have been updated:', 'ninjafirewall') . "\n\n";
|
558 |
if ( is_multisite() ) {
|
565 |
sprintf( __('This notification can be turned off from NinjaFirewall "%s" page.', 'ninjafirewall'), __('Security Rules', 'ninjafirewall') ) ."\n\n" .
|
566 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
567 |
|
568 |
+
nfw_mail( $subject, $msg, 'unsubscribe' );
|
569 |
}
|
570 |
|
571 |
// ---------------------------------------------------------------------
|
lib/utils.php
CHANGED
@@ -171,6 +171,11 @@ function nf_wp_insert_post_empty_content( $maybe_empty, $postarr ) {
|
|
171 |
return false;
|
172 |
}
|
173 |
|
|
|
|
|
|
|
|
|
|
|
174 |
// We must use meta capability (edit_post/edit_page), not capability (edit_postS/edit_pageS).
|
175 |
$edit_post = "edit_{$postarr['post_type']}";
|
176 |
if ( current_user_can( $edit_post, $id ) ) {
|
@@ -215,11 +220,6 @@ function nf_wp_insert_post_empty_content( $maybe_empty, $postarr ) {
|
|
215 |
// Alert the admin:
|
216 |
nfw_get_blogtimezone();
|
217 |
|
218 |
-
if ( is_multisite() && $nfw_options['alert_sa_only'] == 2 ) {
|
219 |
-
$recipient = get_option('admin_email');
|
220 |
-
} else {
|
221 |
-
$recipient = $nfw_options['alert_email'];
|
222 |
-
}
|
223 |
$subject = '[NinjaFirewall] ' . $subject;
|
224 |
$message = __('NinjaFirewall has blocked an attempt to edit/create a post by a user who doesn\'t have the right capabilities:', 'ninjafirewall') . "\n\n";
|
225 |
$message.= __('Blog:', 'ninjafirewall') .' '. home_url('/') . "\n";
|
@@ -244,11 +244,11 @@ function nf_wp_insert_post_empty_content( $maybe_empty, $postarr ) {
|
|
244 |
$message.= __('This protection (and notification) can be turned off from NinjaFirewall "Firewall Policies" page.', 'ninjafirewall') . "\n\n";
|
245 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC ."\n";
|
246 |
if ( empty( $nftmpfname ) ) {
|
247 |
-
|
248 |
|
249 |
} else {
|
250 |
// Attach backtrace and delete temp file:
|
251 |
-
|
252 |
unlink( $nftmpfname );
|
253 |
}
|
254 |
|
@@ -301,11 +301,6 @@ function nf_pre_delete_post( $delete, $post, $force_delete ) {
|
|
301 |
// Alert the admin:
|
302 |
nfw_get_blogtimezone();
|
303 |
|
304 |
-
if ( is_multisite() && $nfw_options['alert_sa_only'] == 2 ) {
|
305 |
-
$recipient = get_option('admin_email');
|
306 |
-
} else {
|
307 |
-
$recipient = $nfw_options['alert_email'];
|
308 |
-
}
|
309 |
$subject = '[NinjaFirewall] ' . $subject;
|
310 |
$message = __('NinjaFirewall has blocked an attempt to delete a post by a user who doesn\'t have the right capabilities:', 'ninjafirewall') . "\n\n";
|
311 |
$message.= __('Blog:', 'ninjafirewall') .' '. home_url('/') . "\n";
|
@@ -329,11 +324,11 @@ function nf_pre_delete_post( $delete, $post, $force_delete ) {
|
|
329 |
$message.= __('This protection (and notification) can be turned off from NinjaFirewall "Firewall Policies" page.', 'ninjafirewall') . "\n\n";
|
330 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC ."\n";
|
331 |
if ( empty( $nftmpfname ) ) {
|
332 |
-
|
333 |
|
334 |
} else {
|
335 |
// Attach backtrace and delete temp file:
|
336 |
-
|
337 |
unlink( $nftmpfname );
|
338 |
}
|
339 |
|
@@ -424,11 +419,6 @@ function nfw_account_creation( $user_login ) {
|
|
424 |
nfw_get_blogtimezone();
|
425 |
|
426 |
// Alert the admin:
|
427 |
-
if ( is_multisite() && $nfw_options['alert_sa_only'] == 2 ) {
|
428 |
-
$recipient = get_option('admin_email');
|
429 |
-
} else {
|
430 |
-
$recipient = $nfw_options['alert_email'];
|
431 |
-
}
|
432 |
$subject = '[NinjaFirewall] ' . $subject;
|
433 |
$message = __('NinjaFirewall has blocked an attempt to create a user account:', 'ninjafirewall') . "\n\n";
|
434 |
// Show current blog, not main site (multisite):
|
@@ -451,11 +441,11 @@ function nfw_account_creation( $user_login ) {
|
|
451 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
452 |
|
453 |
if ( empty( $nftmpfname ) ) {
|
454 |
-
|
455 |
|
456 |
} else {
|
457 |
// Attach backtrace and delete temp file:
|
458 |
-
|
459 |
unlink( $nftmpfname );
|
460 |
}
|
461 |
|
@@ -528,7 +518,7 @@ function nfw_garbage_collector() {
|
|
528 |
|
529 |
// Delete this corrupted backup file:
|
530 |
} else {
|
531 |
-
nfw_log_error( sprintf( 'Backup file is corrupted, deleting it (%s)', $last_file ) );
|
532 |
unlink( $last_file );
|
533 |
}
|
534 |
}
|
@@ -536,13 +526,13 @@ function nfw_garbage_collector() {
|
|
536 |
// Restore the last good backup:
|
537 |
if (! empty( $valid_option ) ) {
|
538 |
nfw_update_option( 'nfw_options', $content[0] );
|
539 |
-
nfw_log_error( sprintf( '
|
540 |
|
541 |
// Restore the default settings if no backup file was found
|
542 |
// (this action will also restore the firewall rules):
|
543 |
} else {
|
544 |
require_once __DIR__ .'/install_default.php';
|
545 |
-
nfw_log_error( '
|
546 |
nfw_load_default_conf();
|
547 |
}
|
548 |
|
@@ -672,31 +662,6 @@ function nfw_garbage_collector() {
|
|
672 |
@file_put_contents( $path . $file, '<?php exit; ?>B' . base64_encode( $data ), LOCK_EX );
|
673 |
}
|
674 |
|
675 |
-
// ------------------------------------------------------------------
|
676 |
-
// Make sure the security rules cron job is working as expected:
|
677 |
-
if (! empty( $nfw_options['enable_updates'] ) ) {
|
678 |
-
$nextcron = wp_next_scheduled('nfsecupdates');
|
679 |
-
if ( $nfw_options['sched_updates'] == 1 ) {
|
680 |
-
$sched_updates = 60 * 60;
|
681 |
-
$sched_type = 'hourly';
|
682 |
-
} elseif ( $nfw_options['sched_updates'] == 2 ) {
|
683 |
-
$sched_updates = 60 * 60 * 12;
|
684 |
-
$sched_type = 'twicedaily';
|
685 |
-
} else {
|
686 |
-
$sched_updates = 60 * 60 * 24;
|
687 |
-
$sched_type = 'daily';
|
688 |
-
}
|
689 |
-
$interval = $nextcron - time();
|
690 |
-
if ( $interval > $sched_updates || $nextcron < 1 ) {
|
691 |
-
nfw_log_error(
|
692 |
-
sprintf( '"nfsecupdates" scheduled event is corrupted (%s)', "$interval > $sched_updates" )
|
693 |
-
);
|
694 |
-
// Recreate it:
|
695 |
-
wp_clear_scheduled_hook('nfsecupdates');
|
696 |
-
wp_schedule_event( time() + 90, $sched_type, 'nfsecupdates');
|
697 |
-
}
|
698 |
-
}
|
699 |
-
|
700 |
// ------------------------------------------------------------------
|
701 |
// Security updates
|
702 |
require __DIR__ .'/event_updates.php';
|
@@ -720,20 +685,6 @@ function nfw_log_error( $message ) {
|
|
720 |
|
721 |
// ---------------------------------------------------------------------
|
722 |
|
723 |
-
function nfw_get_blogtimezone() {
|
724 |
-
|
725 |
-
$tzstring = get_option( 'timezone_string' );
|
726 |
-
if (! $tzstring ) {
|
727 |
-
$tzstring = ini_get( 'date.timezone' );
|
728 |
-
if (! $tzstring ) {
|
729 |
-
$tzstring = 'UTC';
|
730 |
-
}
|
731 |
-
}
|
732 |
-
date_default_timezone_set( $tzstring );
|
733 |
-
}
|
734 |
-
|
735 |
-
// ---------------------------------------------------------------------
|
736 |
-
|
737 |
function nfw_select_ip() {
|
738 |
// Ensure we have a proper and single IP (a user may use the .htninja file
|
739 |
// to redirect HTTP_X_FORWARDED_FOR, which may contain more than one IP,
|
@@ -831,12 +782,6 @@ function nfw_send_loginemail( $user_login, $whoami ) {
|
|
831 |
|
832 |
$nfw_options = nfw_get_option( 'nfw_options' );
|
833 |
|
834 |
-
if ( ( is_multisite() ) && ( $nfw_options['alert_sa_only'] == 2 ) ) {
|
835 |
-
$recipient = get_option('admin_email');
|
836 |
-
} else {
|
837 |
-
$recipient = $nfw_options['alert_email'];
|
838 |
-
}
|
839 |
-
|
840 |
$subject = '[NinjaFirewall] ' . __('Alert: WordPress console login', 'ninjafirewall');
|
841 |
// Show current blog, not main site (multisite):
|
842 |
$url = __('-Blog:', 'ninjafirewall') .' '. home_url('/') . "\n\n";
|
@@ -850,8 +795,7 @@ function nfw_send_loginemail( $user_login, $whoami ) {
|
|
850 |
$url .
|
851 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
852 |
|
853 |
-
|
854 |
-
|
855 |
}
|
856 |
|
857 |
// --------------------------------------------------------------------- s1:h0
|
@@ -1087,12 +1031,6 @@ function nf_check_dbdata() {
|
|
1087 |
|
1088 |
nfw_get_blogtimezone();
|
1089 |
// Send an email to the admin:
|
1090 |
-
if ( ( is_multisite() ) && ( $nfw_options['alert_sa_only'] == 2 ) ) {
|
1091 |
-
$recipient = get_option('admin_email');
|
1092 |
-
} else {
|
1093 |
-
$recipient = $nfw_options['alert_email'];
|
1094 |
-
}
|
1095 |
-
|
1096 |
$subject = __('[NinjaFirewall] Alert: Database changes detected', 'ninjafirewall');
|
1097 |
$message = __('NinjaFirewall has detected that one or more administrator accounts were modified in the database:', 'ninjafirewall') . "\n\n";
|
1098 |
// Even if this is a multisite install, we display
|
@@ -1111,7 +1049,7 @@ function nf_check_dbdata() {
|
|
1111 |
$message.= __('If you cannot see any modifications in the above fields, it is possible that the administrator password was changed.', 'ninjafirewall'). "\n\n";
|
1112 |
$message.= __('This notification can be turned off from NinjaFirewall "Event Notifications" page.', 'ninjafirewall') . "\n\n";
|
1113 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
1114 |
-
|
1115 |
|
1116 |
// Log event if required:
|
1117 |
if (! empty($nfw_options['a_41']) ) {
|
@@ -1267,11 +1205,6 @@ function nfwhook_user_meta( $id, $key, $value ) {
|
|
1267 |
// Alert the admin:
|
1268 |
nfw_get_blogtimezone();
|
1269 |
|
1270 |
-
if ( is_multisite() && $nfw_options['alert_sa_only'] == 2 ) {
|
1271 |
-
$recipient = get_option('admin_email');
|
1272 |
-
} else {
|
1273 |
-
$recipient = $nfw_options['alert_email'];
|
1274 |
-
}
|
1275 |
$subject = '[NinjaFirewall] ' . $subject;
|
1276 |
|
1277 |
$message = __('NinjaFirewall has blocked an attempt to modify a user capability by someone who does not have administrative privileges:', 'ninjafirewall') . "\n\n";
|
@@ -1298,16 +1231,15 @@ function nfwhook_user_meta( $id, $key, $value ) {
|
|
1298 |
file_put_contents( $nftmpfname, print_r( $dbg, true ) );
|
1299 |
$message.= __('A PHP backtrace has been attached to this message for your convenience.', 'ninjafirewall') . "\n\n";
|
1300 |
}
|
1301 |
-
|
1302 |
$message.= __('This protection (and notification) can be turned off from NinjaFirewall "Firewall Policies" page.', 'ninjafirewall') . "\n\n";
|
1303 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
1304 |
|
1305 |
if ( empty( $nftmpfname ) ) {
|
1306 |
-
|
1307 |
|
1308 |
} else {
|
1309 |
// Attach backtrace and delete temp file:
|
1310 |
-
|
1311 |
unlink( $nftmpfname );
|
1312 |
}
|
1313 |
|
@@ -1517,12 +1449,6 @@ function nf_monitor_options_alert( $option, $value, $old_value, $type ) {
|
|
1517 |
|
1518 |
nfw_get_blogtimezone();
|
1519 |
|
1520 |
-
if ( is_multisite() && $nfw_options['alert_sa_only'] == 2 ) {
|
1521 |
-
$recipient = get_option('admin_email');
|
1522 |
-
} else {
|
1523 |
-
$recipient = $nfw_options['alert_email'];
|
1524 |
-
}
|
1525 |
-
|
1526 |
$action = __('The attempt was blocked and the option was reversed to its original value.', 'ninjafirewall');
|
1527 |
|
1528 |
// WP settings:
|
@@ -1565,11 +1491,11 @@ function nf_monitor_options_alert( $option, $value, $old_value, $type ) {
|
|
1565 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
1566 |
|
1567 |
if ( empty( $nftmpfname ) ) {
|
1568 |
-
|
1569 |
|
1570 |
} else {
|
1571 |
// Attach backtrace and delete temp file:
|
1572 |
-
|
1573 |
unlink( $nftmpfname );
|
1574 |
}
|
1575 |
|
@@ -1609,6 +1535,25 @@ function nfw_verify_secupdates() {
|
|
1609 |
|
1610 |
}
|
1611 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1612 |
// Update our list if needed
|
1613 |
if (! empty( $cleared ) ) {
|
1614 |
nfw_update_option( 'nfw_checked', $nfw_checked );
|
@@ -1628,6 +1573,60 @@ function nfw_in_plugin_update_message( $plugin_data, $r ) {
|
|
1628 |
'</a></span>';
|
1629 |
}
|
1630 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1631 |
// ---------------------------------------------------------------------
|
1632 |
// Activate WPWAF mode.
|
1633 |
|
171 |
return false;
|
172 |
}
|
173 |
|
174 |
+
$old_post = get_post( $id );
|
175 |
+
if ( $old_post->post_title == $postarr['post_title'] && $old_post->post_content == $postarr['post_content'] ) {
|
176 |
+
return false;
|
177 |
+
}
|
178 |
+
|
179 |
// We must use meta capability (edit_post/edit_page), not capability (edit_postS/edit_pageS).
|
180 |
$edit_post = "edit_{$postarr['post_type']}";
|
181 |
if ( current_user_can( $edit_post, $id ) ) {
|
220 |
// Alert the admin:
|
221 |
nfw_get_blogtimezone();
|
222 |
|
|
|
|
|
|
|
|
|
|
|
223 |
$subject = '[NinjaFirewall] ' . $subject;
|
224 |
$message = __('NinjaFirewall has blocked an attempt to edit/create a post by a user who doesn\'t have the right capabilities:', 'ninjafirewall') . "\n\n";
|
225 |
$message.= __('Blog:', 'ninjafirewall') .' '. home_url('/') . "\n";
|
244 |
$message.= __('This protection (and notification) can be turned off from NinjaFirewall "Firewall Policies" page.', 'ninjafirewall') . "\n\n";
|
245 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC ."\n";
|
246 |
if ( empty( $nftmpfname ) ) {
|
247 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
248 |
|
249 |
} else {
|
250 |
// Attach backtrace and delete temp file:
|
251 |
+
nfw_mail( $subject, $message, 'unsubscribe', $headers = '', $nftmpfname );
|
252 |
unlink( $nftmpfname );
|
253 |
}
|
254 |
|
301 |
// Alert the admin:
|
302 |
nfw_get_blogtimezone();
|
303 |
|
|
|
|
|
|
|
|
|
|
|
304 |
$subject = '[NinjaFirewall] ' . $subject;
|
305 |
$message = __('NinjaFirewall has blocked an attempt to delete a post by a user who doesn\'t have the right capabilities:', 'ninjafirewall') . "\n\n";
|
306 |
$message.= __('Blog:', 'ninjafirewall') .' '. home_url('/') . "\n";
|
324 |
$message.= __('This protection (and notification) can be turned off from NinjaFirewall "Firewall Policies" page.', 'ninjafirewall') . "\n\n";
|
325 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC ."\n";
|
326 |
if ( empty( $nftmpfname ) ) {
|
327 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
328 |
|
329 |
} else {
|
330 |
// Attach backtrace and delete temp file:
|
331 |
+
nfw_mail( $subject, $message, 'unsubscribe', $headers = '', $nftmpfname );
|
332 |
unlink( $nftmpfname );
|
333 |
}
|
334 |
|
419 |
nfw_get_blogtimezone();
|
420 |
|
421 |
// Alert the admin:
|
|
|
|
|
|
|
|
|
|
|
422 |
$subject = '[NinjaFirewall] ' . $subject;
|
423 |
$message = __('NinjaFirewall has blocked an attempt to create a user account:', 'ninjafirewall') . "\n\n";
|
424 |
// Show current blog, not main site (multisite):
|
441 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
442 |
|
443 |
if ( empty( $nftmpfname ) ) {
|
444 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
445 |
|
446 |
} else {
|
447 |
// Attach backtrace and delete temp file:
|
448 |
+
nfw_mail( $subject, $message, 'unsubscribe', $headers = '', $nftmpfname );
|
449 |
unlink( $nftmpfname );
|
450 |
}
|
451 |
|
518 |
|
519 |
// Delete this corrupted backup file:
|
520 |
} else {
|
521 |
+
nfw_log_error( sprintf( __('Backup file is corrupted, deleting it (%s)', 'ninjafirewall'), $last_file ) );
|
522 |
unlink( $last_file );
|
523 |
}
|
524 |
}
|
526 |
// Restore the last good backup:
|
527 |
if (! empty( $valid_option ) ) {
|
528 |
nfw_update_option( 'nfw_options', $content[0] );
|
529 |
+
nfw_log_error( sprintf( __('NinjaFirewall\'s options are corrupted, restoring them from last known good backup file (%s)', 'ninjafirewall'), $last_file ) );
|
530 |
|
531 |
// Restore the default settings if no backup file was found
|
532 |
// (this action will also restore the firewall rules):
|
533 |
} else {
|
534 |
require_once __DIR__ .'/install_default.php';
|
535 |
+
nfw_log_error( __('NinjaFirewall\'s options are corrupted, restoring their default values (no valid backup found)', 'ninjafirewall') );
|
536 |
nfw_load_default_conf();
|
537 |
}
|
538 |
|
662 |
@file_put_contents( $path . $file, '<?php exit; ?>B' . base64_encode( $data ), LOCK_EX );
|
663 |
}
|
664 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
665 |
// ------------------------------------------------------------------
|
666 |
// Security updates
|
667 |
require __DIR__ .'/event_updates.php';
|
685 |
|
686 |
// ---------------------------------------------------------------------
|
687 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
688 |
function nfw_select_ip() {
|
689 |
// Ensure we have a proper and single IP (a user may use the .htninja file
|
690 |
// to redirect HTTP_X_FORWARDED_FOR, which may contain more than one IP,
|
782 |
|
783 |
$nfw_options = nfw_get_option( 'nfw_options' );
|
784 |
|
|
|
|
|
|
|
|
|
|
|
|
|
785 |
$subject = '[NinjaFirewall] ' . __('Alert: WordPress console login', 'ninjafirewall');
|
786 |
// Show current blog, not main site (multisite):
|
787 |
$url = __('-Blog:', 'ninjafirewall') .' '. home_url('/') . "\n\n";
|
795 |
$url .
|
796 |
NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
797 |
|
798 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
|
|
799 |
}
|
800 |
|
801 |
// --------------------------------------------------------------------- s1:h0
|
1031 |
|
1032 |
nfw_get_blogtimezone();
|
1033 |
// Send an email to the admin:
|
|
|
|
|
|
|
|
|
|
|
|
|
1034 |
$subject = __('[NinjaFirewall] Alert: Database changes detected', 'ninjafirewall');
|
1035 |
$message = __('NinjaFirewall has detected that one or more administrator accounts were modified in the database:', 'ninjafirewall') . "\n\n";
|
1036 |
// Even if this is a multisite install, we display
|
1049 |
$message.= __('If you cannot see any modifications in the above fields, it is possible that the administrator password was changed.', 'ninjafirewall'). "\n\n";
|
1050 |
$message.= __('This notification can be turned off from NinjaFirewall "Event Notifications" page.', 'ninjafirewall') . "\n\n";
|
1051 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
1052 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
1053 |
|
1054 |
// Log event if required:
|
1055 |
if (! empty($nfw_options['a_41']) ) {
|
1205 |
// Alert the admin:
|
1206 |
nfw_get_blogtimezone();
|
1207 |
|
|
|
|
|
|
|
|
|
|
|
1208 |
$subject = '[NinjaFirewall] ' . $subject;
|
1209 |
|
1210 |
$message = __('NinjaFirewall has blocked an attempt to modify a user capability by someone who does not have administrative privileges:', 'ninjafirewall') . "\n\n";
|
1231 |
file_put_contents( $nftmpfname, print_r( $dbg, true ) );
|
1232 |
$message.= __('A PHP backtrace has been attached to this message for your convenience.', 'ninjafirewall') . "\n\n";
|
1233 |
}
|
|
|
1234 |
$message.= __('This protection (and notification) can be turned off from NinjaFirewall "Firewall Policies" page.', 'ninjafirewall') . "\n\n";
|
1235 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
1236 |
|
1237 |
if ( empty( $nftmpfname ) ) {
|
1238 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
1239 |
|
1240 |
} else {
|
1241 |
// Attach backtrace and delete temp file:
|
1242 |
+
nfw_mail( $subject, $message, 'unsubscribe', $headers = '', $nftmpfname );
|
1243 |
unlink( $nftmpfname );
|
1244 |
}
|
1245 |
|
1449 |
|
1450 |
nfw_get_blogtimezone();
|
1451 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1452 |
$action = __('The attempt was blocked and the option was reversed to its original value.', 'ninjafirewall');
|
1453 |
|
1454 |
// WP settings:
|
1491 |
$message.= NF_PG_SIGNATURE ."\n\n". NF_PG_MORESEC;
|
1492 |
|
1493 |
if ( empty( $nftmpfname ) ) {
|
1494 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
1495 |
|
1496 |
} else {
|
1497 |
// Attach backtrace and delete temp file:
|
1498 |
+
nfw_mail( $subject, $message, 'unsubscribe', $headers = '', $nftmpfname );
|
1499 |
unlink( $nftmpfname );
|
1500 |
}
|
1501 |
|
1535 |
|
1536 |
}
|
1537 |
}
|
1538 |
+
|
1539 |
+
// Flush plugins or themes that were uninstalled instead of updated
|
1540 |
+
if (! empty( $nfw_checked['plugins'] ) ) {
|
1541 |
+
foreach( $nfw_checked['plugins'] as $k => $v ) {
|
1542 |
+
if (! file_exists( WP_PLUGIN_DIR ."/$k" ) ) {
|
1543 |
+
unset( $nfw_checked['plugins'][$k] );
|
1544 |
+
$cleared = 1;
|
1545 |
+
}
|
1546 |
+
}
|
1547 |
+
}
|
1548 |
+
if (! empty( $nfw_checked['themes'] ) ) {
|
1549 |
+
foreach( $nfw_checked['themes'] as $k => $v ) {
|
1550 |
+
if (! is_dir( WP_CONTENT_DIR ."/themes/$k" ) ) {
|
1551 |
+
unset( $nfw_checked['themes'][$k] );
|
1552 |
+
$cleared = 1;
|
1553 |
+
}
|
1554 |
+
}
|
1555 |
+
}
|
1556 |
+
|
1557 |
// Update our list if needed
|
1558 |
if (! empty( $cleared ) ) {
|
1559 |
nfw_update_option( 'nfw_checked', $nfw_checked );
|
1573 |
'</a></span>';
|
1574 |
}
|
1575 |
|
1576 |
+
// ---------------------------------------------------------------------
|
1577 |
+
// Send a notification email to one or multiple recipient with a unsubscribe
|
1578 |
+
// link for admin users who don't have anymore access to the site.
|
1579 |
+
// If the recipient's email was taken from the get_option('admin_email') option,
|
1580 |
+
// we don't send any link as we don't want to remove that email.
|
1581 |
+
|
1582 |
+
function nfw_mail( $subject, $message, $unsubscribe = 0, $headers = '', $attachments = '' ) {
|
1583 |
+
|
1584 |
+
$nfw_options = nfw_get_option( 'nfw_options' );
|
1585 |
+
|
1586 |
+
if ( is_multisite() && ( $nfw_options['alert_sa_only'] == 2 ) ) {
|
1587 |
+
$recipient = get_option('admin_email');
|
1588 |
+
// User is the main admin of the site, we can't help here:
|
1589 |
+
$unsubscribe = 0;
|
1590 |
+
} else {
|
1591 |
+
$recipient = $nfw_options['alert_email'];
|
1592 |
+
}
|
1593 |
+
|
1594 |
+
if ( empty( $recipient ) ) {
|
1595 |
+
nfw_log_error( sprintf( __('Cannot send notification, no valid email found (%s)', 'ninjafirewall'), 'alert_email' ) );
|
1596 |
+
return;
|
1597 |
+
}
|
1598 |
+
|
1599 |
+
require_once 'email_sodium.php';
|
1600 |
+
|
1601 |
+
// In order to use Sodium, we must have WordPress >=5.2 or PHP >= 7.2.0
|
1602 |
+
if (! empty( $unsubscribe ) ) {
|
1603 |
+
$unsubscribe = nfw_check_sodium();
|
1604 |
+
}
|
1605 |
+
|
1606 |
+
if (! empty( $unsubscribe ) ) {
|
1607 |
+
// Link will be valid for 12 hours
|
1608 |
+
$expire = time() + 60*60*12;
|
1609 |
+
$admin_email = get_option('admin_email');
|
1610 |
+
// We need to create a unique unsubscribe link for each recipients
|
1611 |
+
$recipients = explode(',', $recipient );
|
1612 |
+
foreach( $recipients as $to ) {
|
1613 |
+
$to = trim( $to );
|
1614 |
+
// If that's the admin email, we can't remove it:
|
1615 |
+
if ( $to == $admin_email ) {
|
1616 |
+
$click = '';
|
1617 |
+
} else {
|
1618 |
+
$link = nfw_sodium_encrypt( $to, $expire, $unsubscribe );
|
1619 |
+
$uri = home_url('/') ."?nfw_stop_notification=$link";
|
1620 |
+
$click = "\n\n". sprintf( __("If you don't have access to that site any longer, you can remove your email by clicking the following link (valid for 12 hours): %s", 'ninjafirewall'), $uri );
|
1621 |
+
}
|
1622 |
+
wp_mail( $to, $subject, $message . $click, $headers, $attachments );
|
1623 |
+
}
|
1624 |
+
|
1625 |
+
} else {
|
1626 |
+
wp_mail( $recipient, $subject, $message, $headers, $attachments );
|
1627 |
+
}
|
1628 |
+
}
|
1629 |
+
|
1630 |
// ---------------------------------------------------------------------
|
1631 |
// Activate WPWAF mode.
|
1632 |
|
lib/wpplus.php
CHANGED
@@ -140,7 +140,7 @@ nf_not_allowed( 'block', __LINE__ );
|
|
140 |
<div class="feature-section is-wide has-2-columns">
|
141 |
<div class="column is-vertically-aligned-center">
|
142 |
<h3>Web Filter</h3>
|
143 |
-
<p><?php _e('The Web Filter can
|
144 |
<?php _e('In the case of a positive detection, NinjaFirewall will not block the response body but will send you an alert by email. It can even attach the whole HTML source of the page for your review.', 'ninjafirewall') ?></p>
|
145 |
</div>
|
146 |
<div class="column">
|
140 |
<div class="feature-section is-wide has-2-columns">
|
141 |
<div class="column is-vertically-aligned-center">
|
142 |
<h3>Web Filter</h3>
|
143 |
+
<p><?php _e('The Web Filter can monitor the response body, i.e., the output of the HTML page, and search it for some specific keywords, which can be useful to identify errors, hacked content and data leakage issues in the response body sent to your visitors.', 'ninjafirewall') .' ' ?>
|
144 |
<?php _e('In the case of a positive detection, NinjaFirewall will not block the response body but will send you an alert by email. It can even attach the whole HTML source of the page for your review.', 'ninjafirewall') ?></p>
|
145 |
</div>
|
146 |
<div class="column">
|
ninjafirewall.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: NinjaFirewall (WP Edition)
|
4 |
Plugin URI: https://nintechnet.com/
|
5 |
Description: A true Web Application Firewall to protect and secure WordPress.
|
6 |
-
Version: 4.4
|
7 |
Author: The Ninja Technologies Network
|
8 |
Author URI: https://nintechnet.com/
|
9 |
License: GPLv3 or later
|
@@ -19,7 +19,7 @@ Domain Path: /languages
|
|
19 |
| (c) NinTechNet - https://nintechnet.com/ |
|
20 |
+---------------------------------------------------------------------+
|
21 |
*/
|
22 |
-
define( 'NFW_ENGINE_VERSION', '4.4' );
|
23 |
/*
|
24 |
+---------------------------------------------------------------------+
|
25 |
| This program is free software: you can redistribute it and/or |
|
@@ -88,7 +88,7 @@ $err_fw = array(
|
|
88 |
13 => sprintf( __("The firewall cannot access its log and cache folders. If you changed the name of WordPress %s or %s folders, you must define NinjaFirewall's built-in %s constant (see %s for more info)", 'ninjafirewall'), '<code>/wp-content/</code>', '<code>/plugins/</code>', '<code>NFW_LOG_DIR</code>', "<a href='https://blog.nintechnet.com/ninjafirewall-wp-edition-the-htninja-configuration-file/' target='_blank'>Path to NinjaFirewall's log and cache directory</a>"),
|
89 |
14 => __('The PHP msqli extension is missing or not loaded.', 'ninjafirewall'),
|
90 |
15 => __('Cannot retrieve user options from database (#4)', 'ninjafirewall'),
|
91 |
-
16 => __('Cannot retrieve user rules from database (#4)', 'ninjafirewall')
|
92 |
|
93 |
);
|
94 |
|
@@ -98,9 +98,29 @@ if (! defined('NFW_LOG_DIR') ) {
|
|
98 |
if (! empty($_SERVER['DOCUMENT_ROOT']) && $_SERVER['DOCUMENT_ROOT'] != '/' ) {
|
99 |
$_SERVER['DOCUMENT_ROOT'] = rtrim( $_SERVER['DOCUMENT_ROOT'] , '/' );
|
100 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
101 |
/* ------------------------------------------------------------------ */
|
102 |
|
103 |
require plugin_dir_path(__FILE__) .'lib/custom_plugin.php';
|
|
|
104 |
require plugin_dir_path(__FILE__) .'lib/utils.php';
|
105 |
require plugin_dir_path(__FILE__) .'lib/events.php';
|
106 |
|
@@ -167,44 +187,8 @@ function nfw_activate() {
|
|
167 |
exit( $res );
|
168 |
}
|
169 |
|
170 |
-
//
|
171 |
-
|
172 |
-
if ($nfw_options['sched_scan'] == 1) {
|
173 |
-
$schedtype = 'hourly';
|
174 |
-
} elseif ($nfw_options['sched_scan'] == 2) {
|
175 |
-
$schedtype = 'twicedaily';
|
176 |
-
} else {
|
177 |
-
$schedtype = 'daily';
|
178 |
-
}
|
179 |
-
if ( wp_next_scheduled('nfscanevent') ) {
|
180 |
-
wp_clear_scheduled_hook('nfscanevent');
|
181 |
-
}
|
182 |
-
wp_schedule_event( time() + 3600, $schedtype, 'nfscanevent');
|
183 |
-
}
|
184 |
-
// Re-enable auto updates, if needed
|
185 |
-
if (! empty($nfw_options['enable_updates']) ) {
|
186 |
-
if ($nfw_options['sched_updates'] == 1) {
|
187 |
-
$schedtype = 'hourly';
|
188 |
-
} elseif ($nfw_options['sched_updates'] == 2) {
|
189 |
-
$schedtype = 'twicedaily';
|
190 |
-
} else {
|
191 |
-
$schedtype = 'daily';
|
192 |
-
}
|
193 |
-
if ( wp_next_scheduled('nfsecupdates') ) {
|
194 |
-
wp_clear_scheduled_hook('nfsecupdates');
|
195 |
-
}
|
196 |
-
wp_schedule_event( time() + 15, $schedtype, 'nfsecupdates');
|
197 |
-
}
|
198 |
-
// Re-enable daily report, if needed
|
199 |
-
if (! empty($nfw_options['a_52']) ) {
|
200 |
-
if ( wp_next_scheduled('nfdailyreport') ) {
|
201 |
-
wp_clear_scheduled_hook('nfdailyreport');
|
202 |
-
}
|
203 |
-
nfw_get_blogtimezone();
|
204 |
-
wp_schedule_event( strtotime( date('Y-m-d 00:00:05', strtotime("+1 day")) ), 'daily', 'nfdailyreport');
|
205 |
-
}
|
206 |
-
// Re-enable the garbage collector:
|
207 |
-
wp_schedule_event( time() + 1800, 'hourly', 'nfwgccron' );
|
208 |
|
209 |
// Re-enable brute-force protection
|
210 |
if ( file_exists( NFW_LOG_DIR . '/nfwlog/cache/bf_conf_off.php' ) ) {
|
@@ -224,11 +208,6 @@ function nfw_deactivate() {
|
|
224 |
|
225 |
// Reused from Firewall Options
|
226 |
if ( empty( $_REQUEST['action'] ) || strpos( $_REQUEST['action'], 'deactivate' ) === false ) {
|
227 |
-
if ( ( is_multisite() ) && ( $nfw_options['alert_sa_only'] == 2 ) ) {
|
228 |
-
$recipient = get_option('admin_email');
|
229 |
-
} else {
|
230 |
-
$recipient = $nfw_options['alert_email'];
|
231 |
-
}
|
232 |
global $current_user;
|
233 |
$current_user = wp_get_current_user();
|
234 |
$subject = __('[NinjaFirewall] Alert: Firewall is disabled', 'ninjafirewall');
|
@@ -243,30 +222,21 @@ function nfw_deactivate() {
|
|
243 |
__('-Date :', 'ninjafirewall') .' '. ucfirst( date_i18n('F j, Y @ H:i:s O') ) ."\n" .
|
244 |
$url .
|
245 |
NF_PG_SIGNATURE ."\n";
|
246 |
-
|
247 |
}
|
248 |
|
249 |
$nfw_options['enabled'] = 0;
|
250 |
nfw_disable_wpwaf();
|
251 |
|
252 |
-
if ( wp_next_scheduled('nfwgccron') ) {
|
253 |
-
wp_clear_scheduled_hook('nfwgccron');
|
254 |
-
}
|
255 |
-
if ( wp_next_scheduled('nfscanevent') ) {
|
256 |
-
wp_clear_scheduled_hook('nfscanevent');
|
257 |
-
}
|
258 |
-
if ( wp_next_scheduled('nfsecupdates') ) {
|
259 |
-
wp_clear_scheduled_hook('nfsecupdates');
|
260 |
-
}
|
261 |
-
if ( wp_next_scheduled('nfdailyreport') ) {
|
262 |
-
wp_clear_scheduled_hook('nfdailyreport');
|
263 |
-
}
|
264 |
if ( file_exists( NFW_LOG_DIR . '/nfwlog/cache/bf_conf.php' ) ) {
|
265 |
rename(NFW_LOG_DIR . '/nfwlog/cache/bf_conf.php', NFW_LOG_DIR . '/nfwlog/cache/bf_conf_off.php');
|
266 |
}
|
267 |
|
268 |
nfw_update_option( 'nfw_options', $nfw_options);
|
269 |
|
|
|
|
|
|
|
270 |
}
|
271 |
|
272 |
register_deactivation_hook( __FILE__, 'nfw_deactivate' );
|
@@ -292,9 +262,18 @@ function nfw_load_ext( $hook ) {
|
|
292 |
$extra_css = null;
|
293 |
}
|
294 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
295 |
wp_enqueue_script(
|
296 |
'nfw_javascript',
|
297 |
-
plugin_dir_url( __FILE__ ) .
|
298 |
$extra_js,
|
299 |
NFW_ENGINE_VERSION
|
300 |
);
|
@@ -305,8 +284,7 @@ function nfw_load_ext( $hook ) {
|
|
305 |
'nfw_charts',
|
306 |
plugin_dir_url( __FILE__ ) . 'static/chart.min.js',
|
307 |
array( 'jquery' ),
|
308 |
-
NFW_ENGINE_VERSION
|
309 |
-
false
|
310 |
);
|
311 |
}
|
312 |
|
@@ -384,7 +362,7 @@ function nfw_load_ext( $hook ) {
|
|
384 |
'log_not_found' =>
|
385 |
__('Error: Cannot find your log file. Try to reload this page.', 'ninjafirewall'),
|
386 |
'http_error' =>
|
387 |
-
__('Error: The HTTP server returned the following error code:', 'ninjafirewall')
|
388 |
);
|
389 |
|
390 |
wp_localize_script( 'nfw_javascript', 'nfwi18n', $nfw_js_array );
|
@@ -414,6 +392,9 @@ function nfw_admin_init() {
|
|
414 |
// Post-update adjustment:
|
415 |
require plugin_dir_path(__FILE__) . 'lib/init_update.php';
|
416 |
|
|
|
|
|
|
|
417 |
// --------------------------------------------
|
418 |
// Anything below requires admin authentication
|
419 |
// --------------------------------------------
|
@@ -546,21 +527,36 @@ function nfw_admin_init() {
|
|
546 |
|
547 |
add_action('admin_init', 'nfw_admin_init' );
|
548 |
|
549 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
550 |
// Check if the user is an admin and if we must whitelist them.
|
551 |
|
552 |
-
function
|
553 |
|
554 |
-
|
555 |
|
556 |
$nfw_options = nfw_get_option( 'nfw_options' );
|
557 |
-
|
558 |
// Don't do anything if NinjaFirewall is disabled:
|
559 |
-
if ( empty( $nfw_options['enabled'] ) ) { return; }
|
560 |
|
561 |
-
|
|
|
|
|
|
|
562 |
$whoami = '';
|
563 |
-
foreach( $
|
564 |
if ( $v == 'administrator' ) {
|
565 |
$admin_flag = 1;
|
566 |
}
|
@@ -571,7 +567,7 @@ function nfw_login_hook( $user_login, $user ) {
|
|
571 |
// Still nothing: Maybe an additional superadmin
|
572 |
if ( empty( $whoami ) && is_multisite() ) {
|
573 |
// $user->ID is required here
|
574 |
-
if ( is_super_admin( $
|
575 |
$admin_flag = 1;
|
576 |
$whoami = 'administrator';
|
577 |
}
|
@@ -580,10 +576,10 @@ function nfw_login_hook( $user_login, $user ) {
|
|
580 |
// Are we supposed to send an alert?
|
581 |
if (! empty($nfw_options['a_0']) ) {
|
582 |
if ( ( $nfw_options['a_0'] == 1 && isset( $admin_flag ) ) || $nfw_options['a_0'] == 2 ) {
|
583 |
-
nfw_send_loginemail( $user_login, $whoami );
|
584 |
// Write event to log?
|
585 |
-
if (! empty($nfw_options['a_41']) ) {
|
586 |
-
nfw_log2('Logged in user', "{$user_login} ({$whoami})", 6, 0);
|
587 |
}
|
588 |
}
|
589 |
}
|
@@ -593,7 +589,7 @@ function nfw_login_hook( $user_login, $user ) {
|
|
593 |
if ( ( $nfw_options['wl_admin'] == 1 && isset( $admin_flag ) ) || $nfw_options['wl_admin'] == 2 ) {
|
594 |
// Set the goodguy flag:
|
595 |
$_SESSION['nfw_goodguy'] = 1;
|
596 |
-
return;
|
597 |
}
|
598 |
}
|
599 |
|
@@ -601,6 +597,8 @@ function nfw_login_hook( $user_login, $user ) {
|
|
601 |
if ( isset( $_SESSION['nfw_goodguy'] ) ) {
|
602 |
unset( $_SESSION['nfw_goodguy'] );
|
603 |
}
|
|
|
|
|
604 |
}
|
605 |
|
606 |
// Hook priority can be defined in the wp-config.php or .htninja
|
@@ -609,10 +607,10 @@ if ( defined('NFW_LOGINHOOK') ) {
|
|
609 |
} else {
|
610 |
$NFW_LOGINHOOK = -999999999;
|
611 |
}
|
612 |
-
add_action( 'wp_login', 'nfw_login_hook', $NFW_LOGINHOOK, 2 );
|
613 |
|
614 |
-
|
615 |
|
|
|
616 |
function nfw_logout_hook() {
|
617 |
|
618 |
nfw_session_start();
|
3 |
Plugin Name: NinjaFirewall (WP Edition)
|
4 |
Plugin URI: https://nintechnet.com/
|
5 |
Description: A true Web Application Firewall to protect and secure WordPress.
|
6 |
+
Version: 4.4.1
|
7 |
Author: The Ninja Technologies Network
|
8 |
Author URI: https://nintechnet.com/
|
9 |
License: GPLv3 or later
|
19 |
| (c) NinTechNet - https://nintechnet.com/ |
|
20 |
+---------------------------------------------------------------------+
|
21 |
*/
|
22 |
+
define( 'NFW_ENGINE_VERSION', '4.4.1' );
|
23 |
/*
|
24 |
+---------------------------------------------------------------------+
|
25 |
| This program is free software: you can redistribute it and/or |
|
88 |
13 => sprintf( __("The firewall cannot access its log and cache folders. If you changed the name of WordPress %s or %s folders, you must define NinjaFirewall's built-in %s constant (see %s for more info)", 'ninjafirewall'), '<code>/wp-content/</code>', '<code>/plugins/</code>', '<code>NFW_LOG_DIR</code>', "<a href='https://blog.nintechnet.com/ninjafirewall-wp-edition-the-htninja-configuration-file/' target='_blank'>Path to NinjaFirewall's log and cache directory</a>"),
|
89 |
14 => __('The PHP msqli extension is missing or not loaded.', 'ninjafirewall'),
|
90 |
15 => __('Cannot retrieve user options from database (#4)', 'ninjafirewall'),
|
91 |
+
16 => __('Cannot retrieve user rules from database (#4)', 'ninjafirewall')
|
92 |
|
93 |
);
|
94 |
|
98 |
if (! empty($_SERVER['DOCUMENT_ROOT']) && $_SERVER['DOCUMENT_ROOT'] != '/' ) {
|
99 |
$_SERVER['DOCUMENT_ROOT'] = rtrim( $_SERVER['DOCUMENT_ROOT'] , '/' );
|
100 |
}
|
101 |
+
// ---------------------------------------------------------------------
|
102 |
+
// Get the blog's timezone.
|
103 |
+
|
104 |
+
function nfw_get_blogtimezone() {
|
105 |
+
|
106 |
+
// Try to get the user timezone from WP configuration...
|
107 |
+
$tzstring = get_option( 'timezone_string' );
|
108 |
+
// ...or from PHP...
|
109 |
+
if (! $tzstring ) {
|
110 |
+
$tzstring = ini_get( 'date.timezone' );
|
111 |
+
// ...or use UTC :
|
112 |
+
if (! $tzstring ) {
|
113 |
+
$tzstring = 'UTC';
|
114 |
+
}
|
115 |
+
}
|
116 |
+
// Set the timezone :
|
117 |
+
date_default_timezone_set( $tzstring );
|
118 |
+
|
119 |
+
}
|
120 |
/* ------------------------------------------------------------------ */
|
121 |
|
122 |
require plugin_dir_path(__FILE__) .'lib/custom_plugin.php';
|
123 |
+
require plugin_dir_path(__FILE__) .'lib/scheduled_tasks.php';
|
124 |
require plugin_dir_path(__FILE__) .'lib/utils.php';
|
125 |
require plugin_dir_path(__FILE__) .'lib/events.php';
|
126 |
|
187 |
exit( $res );
|
188 |
}
|
189 |
|
190 |
+
// Create scheduled tasks.
|
191 |
+
nfw_create_scheduled_tasks();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
192 |
|
193 |
// Re-enable brute-force protection
|
194 |
if ( file_exists( NFW_LOG_DIR . '/nfwlog/cache/bf_conf_off.php' ) ) {
|
208 |
|
209 |
// Reused from Firewall Options
|
210 |
if ( empty( $_REQUEST['action'] ) || strpos( $_REQUEST['action'], 'deactivate' ) === false ) {
|
|
|
|
|
|
|
|
|
|
|
211 |
global $current_user;
|
212 |
$current_user = wp_get_current_user();
|
213 |
$subject = __('[NinjaFirewall] Alert: Firewall is disabled', 'ninjafirewall');
|
222 |
__('-Date :', 'ninjafirewall') .' '. ucfirst( date_i18n('F j, Y @ H:i:s O') ) ."\n" .
|
223 |
$url .
|
224 |
NF_PG_SIGNATURE ."\n";
|
225 |
+
nfw_mail( $subject, $message, 'unsubscribe' );
|
226 |
}
|
227 |
|
228 |
$nfw_options['enabled'] = 0;
|
229 |
nfw_disable_wpwaf();
|
230 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
231 |
if ( file_exists( NFW_LOG_DIR . '/nfwlog/cache/bf_conf.php' ) ) {
|
232 |
rename(NFW_LOG_DIR . '/nfwlog/cache/bf_conf.php', NFW_LOG_DIR . '/nfwlog/cache/bf_conf_off.php');
|
233 |
}
|
234 |
|
235 |
nfw_update_option( 'nfw_options', $nfw_options);
|
236 |
|
237 |
+
// Remove any existing cron
|
238 |
+
nfw_delete_scheduled_tasks();
|
239 |
+
|
240 |
}
|
241 |
|
242 |
register_deactivation_hook( __FILE__, 'nfw_deactivate' );
|
262 |
$extra_css = null;
|
263 |
}
|
264 |
|
265 |
+
// TipTip (WP Edition only)
|
266 |
+
wp_enqueue_script(
|
267 |
+
'jquery-tiptip',
|
268 |
+
plugin_dir_url( __FILE__ ) .'static/jquery.tipTip.js',
|
269 |
+
array( 'jquery' ),
|
270 |
+
NFW_ENGINE_VERSION
|
271 |
+
);
|
272 |
+
|
273 |
+
|
274 |
wp_enqueue_script(
|
275 |
'nfw_javascript',
|
276 |
+
plugin_dir_url( __FILE__ ) .'static/ninjafirewall.js',
|
277 |
$extra_js,
|
278 |
NFW_ENGINE_VERSION
|
279 |
);
|
284 |
'nfw_charts',
|
285 |
plugin_dir_url( __FILE__ ) . 'static/chart.min.js',
|
286 |
array( 'jquery' ),
|
287 |
+
NFW_ENGINE_VERSION
|
|
|
288 |
);
|
289 |
}
|
290 |
|
362 |
'log_not_found' =>
|
363 |
__('Error: Cannot find your log file. Try to reload this page.', 'ninjafirewall'),
|
364 |
'http_error' =>
|
365 |
+
__('Error: The HTTP server returned the following error code:', 'ninjafirewall')
|
366 |
);
|
367 |
|
368 |
wp_localize_script( 'nfw_javascript', 'nfwi18n', $nfw_js_array );
|
392 |
// Post-update adjustment:
|
393 |
require plugin_dir_path(__FILE__) . 'lib/init_update.php';
|
394 |
|
395 |
+
// Make sure cronjobs are running as expected
|
396 |
+
nfw_verify_scheduled_tasks();
|
397 |
+
|
398 |
// --------------------------------------------
|
399 |
// Anything below requires admin authentication
|
400 |
// --------------------------------------------
|
527 |
|
528 |
add_action('admin_init', 'nfw_admin_init' );
|
529 |
|
530 |
+
// ---------------------------------------------------------------------
|
531 |
+
// Check if the user wants to remove her email from the notification list.
|
532 |
+
|
533 |
+
function nfw_init_emailremoval() {
|
534 |
+
|
535 |
+
if (! empty( $_GET['nfw_stop_notification'] ) ) {
|
536 |
+
require_once 'lib/email_sodium.php';
|
537 |
+
nfw_sodium_decrypt( $_GET['nfw_stop_notification'] );
|
538 |
+
}
|
539 |
+
|
540 |
+
}
|
541 |
+
add_action('init', 'nfw_init_emailremoval' );
|
542 |
+
|
543 |
+
// ---------------------------------------------------------------------
|
544 |
// Check if the user is an admin and if we must whitelist them.
|
545 |
|
546 |
+
function nfw_auth_cookie( $cookie, $user_id, $expiration, $scheme, $token ) {
|
547 |
|
548 |
+
if ( $scheme != 'logged_in' ) { return $cookie; }
|
549 |
|
550 |
$nfw_options = nfw_get_option( 'nfw_options' );
|
|
|
551 |
// Don't do anything if NinjaFirewall is disabled:
|
552 |
+
if ( empty( $nfw_options['enabled'] ) ) { return $cookie; }
|
553 |
|
554 |
+
nfw_session_start();
|
555 |
+
|
556 |
+
$wp_user = get_user_by( 'id', $user_id );
|
557 |
+
// Fetch user roles
|
558 |
$whoami = '';
|
559 |
+
foreach( $wp_user->roles as $k => $v ) {
|
560 |
if ( $v == 'administrator' ) {
|
561 |
$admin_flag = 1;
|
562 |
}
|
567 |
// Still nothing: Maybe an additional superadmin
|
568 |
if ( empty( $whoami ) && is_multisite() ) {
|
569 |
// $user->ID is required here
|
570 |
+
if ( is_super_admin( $wp_user->ID ) ) {
|
571 |
$admin_flag = 1;
|
572 |
$whoami = 'administrator';
|
573 |
}
|
576 |
// Are we supposed to send an alert?
|
577 |
if (! empty($nfw_options['a_0']) ) {
|
578 |
if ( ( $nfw_options['a_0'] == 1 && isset( $admin_flag ) ) || $nfw_options['a_0'] == 2 ) {
|
579 |
+
nfw_send_loginemail( $wp_user->data->user_login, $whoami );
|
580 |
// Write event to log?
|
581 |
+
if (! empty( $nfw_options['a_41'] ) ) {
|
582 |
+
nfw_log2('Logged in user', "{$wp_user->data->user_login} ({$whoami})", 6, 0);
|
583 |
}
|
584 |
}
|
585 |
}
|
589 |
if ( ( $nfw_options['wl_admin'] == 1 && isset( $admin_flag ) ) || $nfw_options['wl_admin'] == 2 ) {
|
590 |
// Set the goodguy flag:
|
591 |
$_SESSION['nfw_goodguy'] = 1;
|
592 |
+
return $cookie;
|
593 |
}
|
594 |
}
|
595 |
|
597 |
if ( isset( $_SESSION['nfw_goodguy'] ) ) {
|
598 |
unset( $_SESSION['nfw_goodguy'] );
|
599 |
}
|
600 |
+
|
601 |
+
return $cookie;
|
602 |
}
|
603 |
|
604 |
// Hook priority can be defined in the wp-config.php or .htninja
|
607 |
} else {
|
608 |
$NFW_LOGINHOOK = -999999999;
|
609 |
}
|
|
|
610 |
|
611 |
+
add_filter( 'auth_cookie', 'nfw_auth_cookie', $NFW_LOGINHOOK, 5 );
|
612 |
|
613 |
+
/* ------------------------------------------------------------------ */
|
614 |
function nfw_logout_hook() {
|
615 |
|
616 |
nfw_session_start();
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: nintechnet, bruandet
|
|
3 |
Tags: security, firewall, malware, protection, hack, antispam, virus, scanner, hacked site, brute force, seguridad, seguranca, sicherheit, sicurezza, veiligheid, classicpress
|
4 |
Requires at least: 4.7
|
5 |
Tested up to: 5.8
|
6 |
-
Stable tag: 4.4
|
7 |
Requires PHP: 5.5
|
8 |
License: GPLv3 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
@@ -208,6 +208,17 @@ WordPress Sicherheit Plugin.
|
|
208 |
|
209 |
Need more security? Take the time to explore our supercharged Premium edition: [NinjaFirewall WP+ Edition](https://nintechnet.com/ninjafirewall/wp-edition/?comparison)
|
210 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
211 |
= 4.4 =
|
212 |
|
213 |
* The "Full WAF" mode can be configured to exclude some directories. That can be done from the "NinjaFirewall > Dashboard" page by clicking on the new "Configure" button. There's no need to use the ".htninja" script to exclude folders anymore. That can be useful to exclude third-party applications that rely on PHP sessions and could behave erratically with the "Full WAF" mode (e.g., Piwik/Matomo, phpMyAdmin, forums etc).
|
3 |
Tags: security, firewall, malware, protection, hack, antispam, virus, scanner, hacked site, brute force, seguridad, seguranca, sicherheit, sicurezza, veiligheid, classicpress
|
4 |
Requires at least: 4.7
|
5 |
Tested up to: 5.8
|
6 |
+
Stable tag: 4.4.1
|
7 |
Requires PHP: 5.5
|
8 |
License: GPLv3 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
208 |
|
209 |
Need more security? Take the time to explore our supercharged Premium edition: [NinjaFirewall WP+ Edition](https://nintechnet.com/ninjafirewall/wp-edition/?comparison)
|
210 |
|
211 |
+
= 4.4.1 =
|
212 |
+
|
213 |
+
* Added support for MySQL/MariaDB database connection over SSL.
|
214 |
+
* NinjaFirewall will permanently monitor its scheduled tasks (cron) to make sure they are working. If they stopped, it would restart them and write the incident to its error log (which can be viewed from the "NinjaFirewall > Dashboard" page).
|
215 |
+
* Uninstalled plugins and themes will be removed from the cache used for security updates notifications.
|
216 |
+
* Error messages were rewritten for better understanding.
|
217 |
+
* The "Block attempts to publish, edit or delete a published post by users who do not have the right capabilities" policy will only apply if the content or the title of the post has been changed, so that plugins that are used to modify metadata such as the date and time will not be blocked.
|
218 |
+
* Users who do not have access to a WordPress installation any longer but keep receiving the firewall's email notifications, can remove their email address by clicking on the corresponding link found in every notification sent by NinjaFirewall.
|
219 |
+
* WP+ Edition (Premium): Updated GeoIP databases.
|
220 |
+
* Many additional small fixes and adjustments.
|
221 |
+
|
222 |
= 4.4 =
|
223 |
|
224 |
* The "Full WAF" mode can be configured to exclude some directories. That can be done from the "NinjaFirewall > Dashboard" page by clicking on the new "Configure" button. There's no need to use the ".htninja" script to exclude folders anymore. That can be useful to exclude third-party applications that rely on PHP sessions and could behave erratically with the "Full WAF" mode (e.g., Piwik/Matomo, phpMyAdmin, forums etc).
|
static/jquery.tipTip.js
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* TipTip
|
3 |
+
* Copyright 2010 Drew Wilson
|
4 |
+
* www.drewwilson.com
|
5 |
+
* code.drewwilson.com/entry/tiptip-jquery-plugin
|
6 |
+
*
|
7 |
+
* Version 1.3 - Updated: Mar. 23, 2010
|
8 |
+
*
|
9 |
+
* This Plug-In will create a custom tooltip to replace the default
|
10 |
+
* browser tooltip. It is extremely lightweight and very smart in
|
11 |
+
* that it detects the edges of the browser window and will make sure
|
12 |
+
* the tooltip stays within the current window size. As a result the
|
13 |
+
* tooltip will adjust itself to be displayed above, below, to the left
|
14 |
+
* or to the right depending on what is necessary to stay within the
|
15 |
+
* browser window. It is completely customizable as well via CSS.
|
16 |
+
*
|
17 |
+
* This TipTip jQuery plug-in is dual licensed under the MIT and GPL licenses:
|
18 |
+
* http://www.opensource.org/licenses/mit-license.php
|
19 |
+
* http://www.gnu.org/licenses/gpl.html
|
20 |
+
*/
|
21 |
+
(function($){$.fn.tipTip=function(options){var defaults={activation:"hover",keepAlive:false,maxWidth:"200px",edgeOffset:3,defaultPosition:"bottom",delay:400,fadeIn:200,fadeOut:200,attribute:"title",content:false,enter:function(){},exit:function(){}};var opts=$.extend(defaults,options);if($("#tiptip_holder").length<=0){var tiptip_holder=$('<div id="tiptip_holder" style="max-width:'+opts.maxWidth+';"></div>');var tiptip_content=$('<div id="tiptip_content"></div>');var tiptip_arrow=$('<div id="tiptip_arrow"></div>');$("body").append(tiptip_holder.html(tiptip_content).prepend(tiptip_arrow.html('<div id="tiptip_arrow_inner"></div>')))}else{var tiptip_holder=$("#tiptip_holder");var tiptip_content=$("#tiptip_content");var tiptip_arrow=$("#tiptip_arrow")}return this.each(function(){var org_elem=$(this);if(opts.content){var org_title=opts.content}else{var org_title=org_elem.attr(opts.attribute)}if(org_title!=""){if(!opts.content){org_elem.removeAttr(opts.attribute)}var timeout=false;if(opts.activation=="hover"){org_elem.hover(function(){active_tiptip()},function(){if(!opts.keepAlive){deactive_tiptip()}});if(opts.keepAlive){tiptip_holder.hover(function(){},function(){deactive_tiptip()})}}else if(opts.activation=="focus"){org_elem.focus(function(){active_tiptip()}).blur(function(){deactive_tiptip()})}else if(opts.activation=="click"){org_elem.click(function(){active_tiptip();return false}).hover(function(){},function(){if(!opts.keepAlive){deactive_tiptip()}});if(opts.keepAlive){tiptip_holder.hover(function(){},function(){deactive_tiptip()})}}function active_tiptip(){opts.enter.call(this);tiptip_content.html(org_title);tiptip_holder.hide().removeAttr("class").css("margin","0");tiptip_arrow.removeAttr("style");var top=parseInt(org_elem.offset()['top']);var left=parseInt(org_elem.offset()['left']);var org_width=parseInt(org_elem.outerWidth());var org_height=parseInt(org_elem.outerHeight());var tip_w=tiptip_holder.outerWidth();var tip_h=tiptip_holder.outerHeight();var w_compare=Math.round((org_width-tip_w)/2);var h_compare=Math.round((org_height-tip_h)/2);var marg_left=Math.round(left+w_compare);var marg_top=Math.round(top+org_height+opts.edgeOffset);var t_class="";var arrow_top="";var arrow_left=Math.round(tip_w-12)/2;if(opts.defaultPosition=="bottom"){t_class="_bottom"}else if(opts.defaultPosition=="top"){t_class="_top"}else if(opts.defaultPosition=="left"){t_class="_left"}else if(opts.defaultPosition=="right"){t_class="_right"}var right_compare=(w_compare+left)<parseInt($(window).scrollLeft());var left_compare=(tip_w+left)>parseInt($(window).width());if((right_compare&&w_compare<0)||(t_class=="_right"&&!left_compare)||(t_class=="_left"&&left<(tip_w+opts.edgeOffset+5))){t_class="_right";arrow_top=Math.round(tip_h-13)/2;arrow_left=-12;marg_left=Math.round(left+org_width+opts.edgeOffset);marg_top=Math.round(top+h_compare)}else if((left_compare&&w_compare<0)||(t_class=="_left"&&!right_compare)){t_class="_left";arrow_top=Math.round(tip_h-13)/2;arrow_left=Math.round(tip_w);marg_left=Math.round(left-(tip_w+opts.edgeOffset+5));marg_top=Math.round(top+h_compare)}var top_compare=(top+org_height+opts.edgeOffset+tip_h+8)>parseInt($(window).height()+$(window).scrollTop());var bottom_compare=((top+org_height)-(opts.edgeOffset+tip_h+8))<0;if(top_compare||(t_class=="_bottom"&&top_compare)||(t_class=="_top"&&!bottom_compare)){if(t_class=="_top"||t_class=="_bottom"){t_class="_top"}else{t_class=t_class+"_top"}arrow_top=tip_h;marg_top=Math.round(top-(tip_h+5+opts.edgeOffset))}else if(bottom_compare|(t_class=="_top"&&bottom_compare)||(t_class=="_bottom"&&!top_compare)){if(t_class=="_top"||t_class=="_bottom"){t_class="_bottom"}else{t_class=t_class+"_bottom"}arrow_top=-12;marg_top=Math.round(top+org_height+opts.edgeOffset)}if(t_class=="_right_top"||t_class=="_left_top"){marg_top=marg_top+5}else if(t_class=="_right_bottom"||t_class=="_left_bottom"){marg_top=marg_top-5}if(t_class=="_left_top"||t_class=="_left_bottom"){marg_left=marg_left+5}tiptip_arrow.css({"margin-left":arrow_left+"px","margin-top":arrow_top+"px"});tiptip_holder.css({"margin-left":marg_left+"px","margin-top":marg_top+"px"}).attr("class","tip"+t_class);if(timeout){clearTimeout(timeout)}timeout=setTimeout(function(){tiptip_holder.stop(true,true).fadeIn(opts.fadeIn)},opts.delay)}function deactive_tiptip(){opts.exit.call(this);if(timeout){clearTimeout(timeout)}tiptip_holder.fadeOut(opts.fadeOut)}}})}})(jQuery);
|
static/ninjafirewall.css
CHANGED
@@ -296,3 +296,118 @@ td.country-list {
|
|
296 |
margin: .5em 0;
|
297 |
padding: 2px;
|
298 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
296 |
margin: .5em 0;
|
297 |
padding: 2px;
|
298 |
}
|
299 |
+
/* TipTip CSS - Version 1.2 */
|
300 |
+
.ninjafirewall-tip{
|
301 |
+
color:#3c434a;
|
302 |
+
display:inline-block;
|
303 |
+
font-size:1.2em;
|
304 |
+
font-style:normal;
|
305 |
+
position:relative;
|
306 |
+
vertical-align:middle;
|
307 |
+
height:18px;
|
308 |
+
line-height:18px;
|
309 |
+
width:18px;
|
310 |
+
}
|
311 |
+
.ninjafirewall-tip::after{
|
312 |
+
font-family:Dashicons;
|
313 |
+
font-weight:400;
|
314 |
+
font-variant:normal;
|
315 |
+
text-transform:none;
|
316 |
+
line-height:1;
|
317 |
+
-webkit-font-smoothing:antialiased;
|
318 |
+
margin:0;
|
319 |
+
text-indent:0;
|
320 |
+
position:absolute;
|
321 |
+
top:0;
|
322 |
+
left:0;
|
323 |
+
width:100%;
|
324 |
+
height:100%;
|
325 |
+
text-align:center;
|
326 |
+
content: "\f223";
|
327 |
+
cursor:help;
|
328 |
+
}
|
329 |
+
#tiptip_holder {
|
330 |
+
display: none;
|
331 |
+
position: absolute;
|
332 |
+
top: 0;
|
333 |
+
left: 0;
|
334 |
+
z-index: 99999;
|
335 |
+
}
|
336 |
+
#tiptip_holder.tip_top {
|
337 |
+
padding-bottom: 5px;
|
338 |
+
}
|
339 |
+
#tiptip_holder.tip_bottom {
|
340 |
+
padding-top: 5px;
|
341 |
+
}
|
342 |
+
#tiptip_holder.tip_right {
|
343 |
+
padding-left: 5px;
|
344 |
+
}
|
345 |
+
#tiptip_holder.tip_left {
|
346 |
+
padding-right: 5px;
|
347 |
+
}
|
348 |
+
#tiptip_content {
|
349 |
+
font-size: 14px;
|
350 |
+
color: #000;
|
351 |
+
padding: 4px 8px;
|
352 |
+
background-color:#F5F5B5;
|
353 |
+
border-radius: 4px;
|
354 |
+
-webkit-border-radius: 4px;
|
355 |
+
-moz-border-radius: 4px;
|
356 |
+
border:1px #666 solid;
|
357 |
+
}
|
358 |
+
#tiptip_arrow, #tiptip_arrow_inner {
|
359 |
+
position: absolute;
|
360 |
+
border-color: transparent;
|
361 |
+
border-style: solid;
|
362 |
+
border-width: 6px;
|
363 |
+
height: 0;
|
364 |
+
width: 0;
|
365 |
+
}
|
366 |
+
#tiptip_holder.tip_top #tiptip_arrow {
|
367 |
+
border-top-color: #fff;
|
368 |
+
border-top-color: rgba(255,255,255);
|
369 |
+
}
|
370 |
+
#tiptip_holder.tip_bottom #tiptip_arrow {
|
371 |
+
border-bottom-color: #fff;
|
372 |
+
border-bottom-color: rgba(255,255,255);
|
373 |
+
}
|
374 |
+
#tiptip_holder.tip_right #tiptip_arrow {
|
375 |
+
border-right-color: #fff;
|
376 |
+
border-right-color: rgba(255,255,255);
|
377 |
+
}
|
378 |
+
#tiptip_holder.tip_left #tiptip_arrow {
|
379 |
+
border-left-color: #fff;
|
380 |
+
border-left-color: rgba(255,255,255);
|
381 |
+
}
|
382 |
+
#tiptip_holder.tip_top #tiptip_arrow_inner {
|
383 |
+
margin-top: -7px;
|
384 |
+
margin-left: -6px;
|
385 |
+
border-top-color: rgb(25,25,25);
|
386 |
+
}
|
387 |
+
#tiptip_holder.tip_bottom #tiptip_arrow_inner {
|
388 |
+
margin-top: -5px;
|
389 |
+
margin-left: -6px;
|
390 |
+
border-bottom-color: rgb(25,25,25);
|
391 |
+
}
|
392 |
+
#tiptip_holder.tip_right #tiptip_arrow_inner {
|
393 |
+
margin-top: -6px;
|
394 |
+
margin-left: -5px;
|
395 |
+
border-right-color: rgb(25,25,25);
|
396 |
+
}
|
397 |
+
#tiptip_holder.tip_left #tiptip_arrow_inner {
|
398 |
+
margin-top: -6px;
|
399 |
+
margin-left: -7px;
|
400 |
+
border-left-color: rgb(25,25,25);
|
401 |
+
}
|
402 |
+
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
403 |
+
#tiptip_content {
|
404 |
+
padding: 4px 8px 5px 8px;
|
405 |
+
background-color:#F5F5B5;
|
406 |
+
}
|
407 |
+
#tiptip_holder.tip_bottom #tiptip_arrow_inner {
|
408 |
+
border-bottom-color: rgba(45,45,45);
|
409 |
+
}
|
410 |
+
#tiptip_holder.tip_top #tiptip_arrow_inner {
|
411 |
+
border-top-color: rgba(20,20,20);
|
412 |
+
}
|
413 |
+
}
|
static/ninjafirewall.js
CHANGED
@@ -19,6 +19,18 @@
|
|
19 |
// =====================================================================
|
20 |
// Generic.
|
21 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
function nfwjs_switch_tabs( what, list ) {
|
23 |
// Active tab:
|
24 |
jQuery('#'+ what +'-options').show();
|
19 |
// =====================================================================
|
20 |
// Generic.
|
21 |
|
22 |
+
// TipTip tooltip
|
23 |
+
jQuery( document ).ready(function( $ ) {
|
24 |
+
$( '.ninjafirewall-tip' ).tipTip( {
|
25 |
+
'attribute': 'data-tip',
|
26 |
+
'fadeIn': 50,
|
27 |
+
'fadeOut': 50,
|
28 |
+
'delay': 100,
|
29 |
+
'maxWidth' : '300px'
|
30 |
+
});
|
31 |
+
});
|
32 |
+
|
33 |
+
|
34 |
function nfwjs_switch_tabs( what, list ) {
|
35 |
// Active tab:
|
36 |
jQuery('#'+ what +'-options').show();
|
uninstall.php
CHANGED
@@ -39,6 +39,8 @@ nfw_uninstall();
|
|
39 |
|
40 |
function nfw_uninstall() {
|
41 |
|
|
|
|
|
42 |
// Unset the goodguy flag :
|
43 |
if ( isset( $_SESSION['nfw_goodguy'] ) ) {
|
44 |
unset( $_SESSION['nfw_goodguy'] );
|
@@ -117,19 +119,9 @@ function nfw_uninstall() {
|
|
117 |
@file_put_contents( $ini, $data, LOCK_EX );
|
118 |
}
|
119 |
|
120 |
-
// Remove any scheduled cron job
|
121 |
-
|
122 |
-
|
123 |
-
}
|
124 |
-
if ( wp_next_scheduled('nfsecupdates') ) {
|
125 |
-
wp_clear_scheduled_hook('nfsecupdates');
|
126 |
-
}
|
127 |
-
if ( wp_next_scheduled('nfdailyreport') ) {
|
128 |
-
wp_clear_scheduled_hook('nfdailyreport');
|
129 |
-
}
|
130 |
-
if ( wp_next_scheduled( 'nfwgccron' ) ) {
|
131 |
-
wp_clear_scheduled_hook( 'nfwgccron' );
|
132 |
-
}
|
133 |
|
134 |
// Delete DB rows :
|
135 |
delete_option('nfw_options');
|
39 |
|
40 |
function nfw_uninstall() {
|
41 |
|
42 |
+
if (! defined( 'NFW_ENGINE_VERSION' ) ) { define( 'NFW_ENGINE_VERSION', true ); }
|
43 |
+
|
44 |
// Unset the goodguy flag :
|
45 |
if ( isset( $_SESSION['nfw_goodguy'] ) ) {
|
46 |
unset( $_SESSION['nfw_goodguy'] );
|
119 |
@file_put_contents( $ini, $data, LOCK_EX );
|
120 |
}
|
121 |
|
122 |
+
// Remove any scheduled cron job
|
123 |
+
include_once 'lib/scheduled_tasks.php';
|
124 |
+
nfw_delete_scheduled_tasks();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
|
126 |
// Delete DB rows :
|
127 |
delete_option('nfw_options');
|