Compare commits

...

358 Commits
2.111 ... 2.202

Author SHA1 Message Date
Ilia Ross
25321b467b Update changelog 2024-08-11 21:10:43 +03:00
Ilia Ross
dc17b3cbe5 Fix changelog 2024-08-11 21:06:19 +03:00
Ilia Ross
a4621a800b Fix changelog 2024-08-11 21:01:33 +03:00
Jamie Cameron
97308e69aa changelog update 2024-08-11 07:42:09 -07:00
Jamie Cameron
86144e16f7 New version bump 2024-08-11 07:41:05 -07:00
Jamie Cameron
b18b9decd4 Fix schema page description 2024-08-11 03:48:02 -07:00
Jamie Cameron
90cd81893e Fix bugs in LDAP import 2024-08-11 03:42:06 -07:00
Jamie Cameron
9d7c3fdd9a Work on schema import support 2024-08-11 03:27:04 -07:00
Jamie Cameron
c0e36426bd Remove useless fixed spacing 2024-08-11 02:50:23 -07:00
Jamie Cameron
9dd678946d Use proper function to check status 2024-08-08 19:25:14 -07:00
Jamie Cameron
d440ba7f58 Let the user know why no rules are down 2024-08-08 19:24:10 -07:00
Jamie Cameron
090a769145 Use proper function 2024-08-08 19:21:34 -07:00
Jamie Cameron
bcec22b385 Merge branch 'master' of github.com:webmin/webmin 2024-08-08 19:20:43 -07:00
Jamie Cameron
dbfc621482 Add a monitor for firewalld https://github.com/virtualmin/virtualmin-gpl/issues/870 2024-08-08 19:16:00 -07:00
Ilia Ross
6bc70a7738 Add support for disk I/O in FreeBSD 2024-08-07 15:28:58 +03:00
Ilia Ross
f5b3f9cc1d Fix to use os_type for OS check
0ac51a83e9 (r145024453)
2024-08-06 12:21:19 +03:00
Ilia Ross
24055330d3 Fix build system 2024-08-04 17:03:41 +03:00
Ilia Ross
0ac51a83e9 Add an API to count processes 2024-08-03 17:05:56 +03:00
Ilia Ross
e517300fe0 Fix to display wildcard char next to dbs https://github.com/virtualmin/virtualmin-gpl/issues/723#issuecomment-2263713657 2024-08-02 15:22:21 +03:00
Ilia Ross
ae34d0ef86 Fix to unquote database name in view
https://github.com/virtualmin/virtualmin-gpl/issues/723#issuecomment-2262824643
2024-08-01 20:29:40 +03:00
Ilia Ross
8236fb2fd8 Add support to display tag, algo and digests in table #2245 2024-08-01 13:01:30 +03:00
Ilia Ross
f499c62da4 Update CHANGELOG.md 2024-08-01 00:52:57 +03:00
Ilia Ross
a51e3d0a22 Fix BIND service name is now named.service in Debian 12 and Ubuntu 24.04
[build]
2024-08-01 00:34:02 +03:00
Ilia Ross
e1398bf75b Version bump 2.202 2024-07-30 22:13:20 +03:00
Ilia Ross
ba26d2aac0 Merge pull request #2241 from bim-g/update_ui_print_header_documentation
[FIX] Add missing `title` parameter to `ui_print_header` method on the documentation
2024-07-30 05:12:35 +03:00
bim-g
7225ccab73 [FIX] Add missing title parameter to ui_print_header documentation 2024-07-30 01:02:54 +02:00
Ilia Ross
d224d0aafc Fix backup file naming to be consistent with Virtualmin 2024-07-28 23:46:38 +03:00
Ilia Ross
8220fef7e0 Fix to name downloaded backup file nicely #2239
E.g. webmin-backup-config-host.ubuntu24-pro.virtualmin.dev-2024-07-28-20-08.tgz
2024-07-28 20:11:55 +03:00
Jamie Cameron
1a658b1010 If given names are enabled, always add the needed class 2024-07-27 14:53:23 -07:00
Jamie Cameron
4c3b792adc LDAP config file param has moved to the ldap-client module 2024-07-27 14:40:18 -07:00
Jamie Cameron
19940bae86 Base may have a sub-entry for users and groups 2024-07-27 14:26:25 -07:00
Jamie Cameron
256178c6c3 sometimes LDAP connect fails with sigpipe 2024-07-26 21:04:55 -07:00
Jamie Cameron
2a43a870c2 Fix init script name 2024-07-26 19:09:02 -07:00
Jamie Cameron
615765b995 Check status from init script if possible 2024-07-26 19:06:16 -07:00
Jamie Cameron
6f7003965e Merge branch 'master' of github.com:webmin/webmin 2024-07-26 14:56:52 -07:00
Jamie Cameron
d8a7a583a3 Prevent duplication of systemd actions and init scripts https://github.com/webmin/webmin/issues/2227 2024-07-26 14:56:46 -07:00
Jamie Cameron
c51cc8f38a Merge pull request #2234 from webmin/dev/mysql-improve-operations-with-large-dbs
Fix to optimize getting table index structure for large databases
2024-07-26 14:22:58 -07:00
Ilia Ross
5210f623f3 Fix to use prepared statements 2024-07-26 21:11:05 +03:00
Jamie Cameron
ba4b65774e Merge branch 'master' of github.com:webmin/webmin 2024-07-26 10:20:51 -07:00
Jamie Cameron
b1d273c555 BIND 4 is ancient and shouldn't be shown by default https://github.com/webmin/webmin/issues/2232 2024-07-26 10:20:42 -07:00
Ilia Ross
b03f1b766f Fix to optimize getting table index stats for large tables 2024-07-26 19:56:45 +03:00
Ilia Ross
a9ed10401d Update changelog (progress) 2024-07-26 00:55:11 +03:00
Ilia Ross
253d85b6ee Fix setting webprefix for WebSocket URL
https://forum.virtualmin.com/t/after-update-webmin-2-200-cant-view-stat-history/128119/6?u=ilia
2024-07-26 00:41:40 +03:00
Jamie Cameron
0247b71fb7 Show full BIND version https://github.com/webmin/webmin/issues/2226 2024-07-24 14:02:00 -07:00
Jamie Cameron
fd819d83e8 New version bump 2024-07-23 21:58:01 -07:00
Jamie Cameron
8c5fcef916 Fix string for update logging 2024-07-23 21:57:32 -07:00
Jamie Cameron
c15bbca109 Separate comment column https://github.com/webmin/webmin/issues/2221 2024-07-23 21:52:24 -07:00
Jamie Cameron
c47c4b7ffd Merge branch 'master' of github.com:webmin/webmin 2024-07-23 20:12:17 -07:00
Jamie Cameron
8efa25eabf Add missing function 2024-07-23 20:12:06 -07:00
Ilia Ross
190bd58b1b Fix to clarify option name 2024-07-24 03:50:01 +03:00
Ilia Ross
d645dc9345 Update changelog for Webmin 2.201 2024-07-24 03:25:43 +03:00
Ilia Ross
963bb60c02 Fix to go directly to viewing logs on module load 2024-07-24 03:18:31 +03:00
Jamie Cameron
fa4e39ec9a Merge branch 'master' of github.com:webmin/webmin 2024-07-23 17:00:41 -07:00
Jamie Cameron
c1b45ff210 Add option to include compressed rotated logs in searches, and enable it by default, to maintain parity with the old sylog module 2024-07-23 17:00:34 -07:00
Ilia Ross
5cb103bde3 Revert "Fix to call exit after redirect"
This reverts commit e3a1fd849b.
2024-07-24 02:02:14 +03:00
Ilia Ross
7282348b7d Fix to use consistent download page 2024-07-24 00:20:58 +03:00
Ilia Ross
e3a1fd849b Fix to call exit after redirect 2024-07-24 00:20:47 +03:00
Jamie Cameron
1fb01aa46e Fix permissions 2024-07-23 13:50:19 -07:00
Jamie Cameron
779ebb4a63 Fix redirection to first log 2024-07-23 13:50:02 -07:00
Jamie Cameron
c391830670 Fix more cases where switch_to_unix_user isn't being passed the username 2024-07-22 16:48:28 -07:00
Jamie Cameron
c8c6c3e40f Merge branch 'master' of github.com:webmin/webmin 2024-07-22 16:11:41 -07:00
Jamie Cameron
c1f45d6d61 When running a command as a different user, the username needs to be passed to switch_to_unix_user so that all the secondary groups can be populated https://github.com/webmin/webmin/issues/2223 2024-07-22 16:11:37 -07:00
Ilia Ross
8804ba6529 Update CHANGELOG.md 2024-07-22 16:00:56 +03:00
Ilia Ross
11ae39081c Fix to try more simple patch command at first 2024-07-22 14:18:51 +03:00
Jamie Cameron
2751224d4d Really update version 2024-07-21 10:21:20 -07:00
Jamie Cameron
6fce9fa491 New version bump 2024-07-21 10:20:43 -07:00
Jamie Cameron
41fdb5dac2 Fix renumbering when adding a domain 2024-07-20 21:53:49 -07:00
Jamie Cameron
4ffca4597c Clean up group_to_dn function 2024-07-20 21:30:46 -07:00
Jamie Cameron
ecfc06d9c6 Preserve firstname and surname 2024-07-20 21:28:45 -07:00
Jamie Cameron
db55dde7ce Merge branch 'master' of github.com:webmin/webmin 2024-07-20 21:23:16 -07:00
Jamie Cameron
c6edd4b97d Code cleanups 2024-07-20 21:19:01 -07:00
Ilia Ross
8cd2dbae96 Fix to redirect to tabs only inside same module
https://forum.virtualmin.com/t/small-upgrade-error-maybe-wrong-url-on-button/127999?u=ilia
2024-07-21 02:37:32 +03:00
Jamie Cameron
8676a3fb21 Merge branch 'master' of github.com:webmin/webmin 2024-07-20 16:18:25 -07:00
Jamie Cameron
27339eb1bf Use my instead of local 2024-07-20 16:18:16 -07:00
Ilia Ross
e014926854 Update CHANGELOG.md for 2.200 2024-07-21 02:00:01 +03:00
Ilia Ross
a721f60f9c Fix to allow service-worker.js in unauth [build] 2024-07-20 15:57:40 +03:00
Jamie Cameron
46c76e13f9 Merge branch 'master' of github.com:webmin/webmin 2024-07-19 16:52:29 -07:00
Jamie Cameron
f72058306b COnfig option to show hostname and comment https://github.com/webmin/webmin.com/issues/18 2024-07-19 16:52:23 -07:00
Ilia Ross
a15446d3b1 Fix to simplify the code and use no globals [build] 2024-07-19 13:40:14 +03:00
Ilia Ross
fc9ce7f3dd Fix comment 2024-07-19 13:30:01 +03:00
Ilia Ross
72cd50a054 Fix to consider "F" as new theme name "Framed" not "Gray" 2024-07-19 13:13:53 +03:00
Ilia Ross
e307fb4dcd Fix to drop unnecessary option 2024-07-19 12:36:52 +03:00
Jamie Cameron
d631929194 Merge branch 'master' of github.com:webmin/webmin 2024-07-16 16:08:06 -07:00
Jamie Cameron
db9628e7eb Update MIME types for javascript and gzipped files 2024-07-16 16:08:01 -07:00
Jamie Cameron
2c04c04ce7 Merge pull request #2217 from webmin/dev/package-updates-always-show-sec
Fix to always show security updates button
2024-07-16 11:51:16 -07:00
Ilia Ross
a5301245d3 Fix to always show security updates button 2024-07-16 17:38:14 +03:00
Jamie Cameron
165af690c7 Log automatic package updates 2024-07-13 17:07:07 -07:00
Jamie Cameron
29da8ea3d0 Clarify what kind of update it is https://forum.virtualmin.com/t/security-updates-being-auto-installed-regardles-of-software-scheduled-upgrades-set-to-just-notify/127852 2024-07-12 17:22:19 -07:00
Jamie Cameron
73b7e62f13 Merge branch 'master' of github.com:webmin/webmin 2024-07-09 08:30:51 -07:00
Ilia Ross
76141ce22f Fix to use larger QR code [build] 2024-07-09 15:53:18 +03:00
Jamie Cameron
4b575b8168 Clarify comment 2024-07-08 22:55:44 -07:00
Ilia Ross
2b28521297 Fix to display correct return button 2024-07-08 21:03:40 +03:00
Ilia Ross
be767951ca Fix to have no block elements in header 2024-07-08 19:33:52 +03:00
Jamie Cameron
9960d6011f Update comment to match reality 2024-07-07 11:12:47 -07:00
Jamie Cameron
461bd30e2a Save last size and subset mode 2024-07-06 15:26:57 -07:00
Jamie Cameron
2f88a4eefb Follow default reuse option 2024-07-06 15:23:17 -07:00
Jamie Cameron
c9f368d264 Properly check all ServerAlias directives and ports 2024-07-06 15:12:08 -07:00
Jamie Cameron
0e24e8ac61 Merge branch 'master' of github.com:webmin/webmin 2024-07-05 10:32:21 -07:00
Jamie Cameron
1d0d25efac Don't add tab param twice https://sourceforge.net/p/webadmin/bugs/5648/ 2024-07-05 10:01:55 -07:00
Jamie Cameron
1c5d2d2bd7 Merge pull request #2211 from webmin/dev/preserve-file-acls
Add ability to preserve original file ACLs
2024-07-03 15:43:43 -07:00
Ilia Ross
77e809166c Fix to use backquote_command instead 2024-07-03 10:40:20 +03:00
Jamie Cameron
927a2c32d8 Show queue state in list 2024-07-02 21:36:05 -07:00
Jamie Cameron
4a3c6c4854 Merge branch 'master' of github.com:webmin/webmin 2024-07-02 21:21:27 -07:00
Jamie Cameron
37beab77ba Show mail queue directory 2024-07-02 21:21:21 -07:00
Ilia Ross
82f5284ffc Fix to use pipe handling data directly in memory
https://github.com/webmin/webmin/pull/2211#discussion_r1663042881
2024-07-02 22:48:40 +03:00
Ilia Ross
5f579e8ded Fix to invalidate OS EOL data on upgrade 2024-07-02 22:24:09 +03:00
Ilia Ross
4b66ac0be5 Add ability to preserve original file ACLs
https://github.com/webmin/authentic-theme/discussions/1511#discussioncomment-9913902
2024-07-02 20:50:19 +03:00
Jamie Cameron
e69fb75c8e Show the mail queue path 2024-07-01 21:33:22 -07:00
Jamie Cameron
ff8781c112 Merge branch 'master' of github.com:webmin/webmin 2024-07-01 21:15:04 -07:00
Jamie Cameron
0dd75db8d8 Don't wrap header lines 2024-07-01 21:09:17 -07:00
Jamie Cameron
05d01aeef3 Merge pull request #2207 from webmin/dev/patch-api
Add apply patch CLI API
2024-06-30 11:05:00 -07:00
Jamie Cameron
11f2bc20eb Merge branch 'master' of github.com:webmin/webmin 2024-06-30 10:07:08 -07:00
Jamie Cameron
52c3178b92 Add API to delete sections 2024-06-30 10:07:01 -07:00
Jamie Cameron
e3dec2222d Merge pull request #2209 from webmin/dev/separate-temps-collection-2208
Fix to separate drive and CPU temperatures collection #2208
2024-06-30 08:24:26 -07:00
Ilia Ross
05752faec0 Fix to separate drive and CPU temperatures collection #2208 2024-06-30 15:54:47 +03:00
Ilia Ross
7507433bf1 Fix to drop dependency from Term::ANSIColor 2024-06-30 11:41:41 +03:00
Ilia Ross
248cb719c0 Fix restart command depend on config dir 2024-06-29 23:32:15 +03:00
Ilia Ross
94b7fdf0ec Fix to escape params 2024-06-29 23:29:55 +03:00
Ilia Ross
d89f6411b6 Fix to use has_command API 2024-06-29 20:34:29 +03:00
Ilia Ross
01d08a3605 Fix to make patch API work directly from URL 2024-06-28 19:48:51 +03:00
Jamie Cameron
1cf3813fb6 Merge branch 'master' of github.com:webmin/webmin 2024-06-27 19:45:29 -07:00
Jamie Cameron
1216ae709b Stop showing and editing dnssec-lookaside https://github.com/webmin/webmin/issues/617 2024-06-27 19:45:21 -07:00
Ilia Ross
3d9497ff45 Fix command example 2024-06-28 01:51:02 +03:00
Ilia Ross
a6832450d1 Fix to restart Webmin when done 2024-06-28 01:38:28 +03:00
Ilia Ross
e41037388c Apply a patch to Webmin core or its modules from GitHub or a local file 2024-06-28 01:35:10 +03:00
Ilia Ross
a7b3af534b Fix to drop Threads module from recommended packages 2024-06-26 18:12:47 +03:00
Ilia Ross
87e006ceeb Add new API to verify session id 2024-06-26 14:39:23 +03:00
Ilia Ross
fbee8f0588 Add logging for active FTP conns 2024-06-20 20:04:19 +03:00
Jamie Cameron
e077b4da94 Start of work on support for requesting only a subset of hostnames 2024-06-19 22:05:22 -07:00
Jamie Cameron
38efad8265 Escape some inputs 2024-06-19 20:37:25 -07:00
Jamie Cameron
4d2a1fa084 Add spam folder name 2024-06-19 17:19:51 -07:00
Jamie Cameron
13b2eca3b1 Follow webmin code standards 2024-06-19 16:48:41 -07:00
Ilia Ross
aa4c3b1de6 Fix embedded styles margin 2024-06-19 16:55:25 +03:00
Ilia Ross
edaab4fd6f Fix embedded styles 2024-06-19 16:52:04 +03:00
Jamie Cameron
6fded0862c Merge pull request #2201 from webmin/dev/fix-last-command-match-freebsd
Fix listing last logins in FreeBSD
2024-06-18 16:16:37 -07:00
Ilia Ross
4006b0454e Fix to escape and not to truncate username 2024-06-18 23:51:19 +03:00
Ilia Ross
5d4ab58baa Fix the regex for last command on FreeBSD 2024-06-18 23:50:12 +03:00
Jamie Cameron
e6c7a60fe6 Merge pull request #2200 from webmin/dev/fix-last-command-regexes
Fix the regex to correctly match the output of the `last` command on contemporary systems
2024-06-18 13:38:21 -07:00
Ilia Ross
a75781d61a Fix the regex to correctly match the output of the last command on contemporary systems 2024-06-18 23:36:31 +03:00
Jamie Cameron
45348f5b02 Merge pull request #2199 from webmin/dev/last-dont-truncate-username
Fix not to truncate usernames
2024-06-18 11:33:01 -07:00
Ilia Ross
548c078813 Fix not to truncate usernames 2024-06-18 20:23:22 +03:00
Ilia Ross
76ccb2b7ed Fix support for Chrony in Debian systems 2024-06-17 15:09:42 +03:00
Ilia Ross
61d2081371 Add to support more passible options to systemd service file 2024-06-16 01:55:03 +03:00
Ilia Ross
458916b4d8 Fix to simplify make_date calls 2024-06-16 01:48:14 +03:00
Jamie Cameron
37451ad905 Merge pull request #2197 from vsc55/fix-2196
Fix metod detect Linux Gentoo.
2024-06-15 09:50:06 -07:00
Javier Pastor
9eec58a1f1 Fix metod detect Linux Gentoo. 2024-06-15 18:41:54 +02:00
Ilia Ross
178f527afa Fix to return an actual value 2024-06-15 16:50:04 +03:00
Jamie Cameron
cd1555b3e1 Merge branch 'master' of github.com:webmin/webmin 2024-06-12 16:53:02 -07:00
Jamie Cameron
2d7cfca67f Prevent duplicate also-notify and allow-transfer IPs 2024-06-12 16:52:50 -07:00
Jamie Cameron
e92a35b3ed Merge pull request #2195 from webmin/dev/xterm-acls-allow-not-enforce-sudo
Fix to allow disabling the enforcement of sudo-capable logins
2024-06-12 15:47:08 -07:00
Ilia Ross
e35efd0f00 Fix to always show the field 2024-06-13 01:36:41 +03:00
Ilia Ross
a12f385a5b Fix to consider user with the same name 2024-06-13 01:07:21 +03:00
Ilia Ross
5dc7cfafd7 Fix to allow disabling the enforcement of sudo-capable logins 2024-06-12 20:14:06 +03:00
Jamie Cameron
35aee74311 Merge pull request #2194 from webmin/dev/xterm-start-with-sudocapable
Fix to start with a sudo-capable user if possible
2024-06-11 18:19:05 -07:00
Ilia Ross
d04dfdf157 Fix to simplify the test 2024-06-12 01:20:29 +03:00
Ilia Ross
41f1adf0df Fix to start with a sudo-capable user if possible 2024-06-11 15:31:00 +03:00
Ilia Ross
1ae01bed8d Fix to support theme styling for embedded calendar 2024-06-10 16:34:29 +03:00
Ilia Ross
4a6f5d9a6a Fix not to load images by default and ask 2024-06-10 14:23:18 +03:00
Ilia Ross
bb3a4bc1e8 Fix font size consistency 2024-06-10 13:48:14 +03:00
Jamie Cameron
084c117547 Merge pull request #2193 from webmin/dev/embed-calendar
Add support for embedding calendar events inline in email messages
2024-06-09 18:48:18 -07:00
Ilia Ross
0221a092b9 Drop duplicate code
https://github.com/webmin/webmin/pull/2193#discussion_r1632362334
2024-06-09 21:16:52 +03:00
Ilia Ross
535d4173b3 Fix to factor out code to separate functions to be available in Usermin 2024-06-09 19:59:50 +03:00
Ilia Ross
20d481e96b Add further margin fixes 2024-06-09 19:13:52 +03:00
Ilia Ross
0256ee47f2 Fix block margin for perfect alignment 2024-06-09 16:16:52 +03:00
Ilia Ross
6af5ed6e2f Fix margin for inner content 2024-06-09 16:09:44 +03:00
Ilia Ross
abeff44b1a Add further improvements to TZs 2024-06-09 04:39:53 +03:00
Ilia Ross
35298efd8a Fix timezones 2024-06-09 04:14:32 +03:00
Ilia Ross
3fa687e716 Fix bugs 2024-06-09 03:49:43 +03:00
Ilia Ross
43fc057484 Add further indent improvements 2024-06-09 03:24:23 +03:00
Ilia Ross
70e9a1c00b Fix indentation 2024-06-09 03:14:50 +03:00
Ilia Ross
d21188c2ad Add improvements to mail frame interactions 2024-06-09 03:06:53 +03:00
Ilia Ross
a780103e2f Fix to improve calendar styles 2024-06-09 02:45:51 +03:00
Ilia Ross
4014293760 Fix to resize embedding iframe for content to fit on view details 2024-06-09 01:55:56 +03:00
Ilia Ross
ba3be31335 Fix to resize iframe if called by some elements from inside 2024-06-09 01:53:36 +03:00
Ilia Ross
adb3d0bb67 Revert "Fix to expose mail iframe resize function"
This reverts commit cd9bc8b7c4.
2024-06-09 01:42:12 +03:00
Ilia Ross
cd9bc8b7c4 Fix to expose mail iframe resize function 2024-06-09 01:16:21 +03:00
Ilia Ross
e1ebcf0506 Fix code to fit within an 80-character width 2024-06-09 01:06:27 +03:00
Ilia Ross
17a27dbe00 Fix to drop showing organizer time unless TZ is explicitly given 2024-06-09 00:48:36 +03:00
Ilia Ross
e36e943251 Fix to keep calendar cell always in right size 2024-06-09 00:31:39 +03:00
Ilia Ross
95ee1e2f2d Add support to embed iCalendar to email message 2024-06-08 23:52:59 +03:00
Ilia Ross
37cde80bbe Fix standard description to replace new lines to HTML break 2024-06-08 23:36:59 +03:00
Ilia Ross
45852664fe Add further fixes and improvements to the processor 2024-06-08 23:19:46 +03:00
Ilia Ross
00885b1f76 Fix location detection 2024-06-08 18:40:35 +03:00
Ilia Ross
cce8911f0f Add additional details to the object 2024-06-08 16:53:25 +03:00
Ilia Ross
3a151469c7 Add proper date parsing and storing extensive details about event 2024-06-08 16:47:08 +03:00
Ilia Ross
e3b94dc458 Fix summary match for strings like SUMMARY;LANGUAGE=fr-CA 2024-06-08 02:18:20 +03:00
Jamie Cameron
cde548ada3 Merge pull request #2192 from webmin/dev/websocket-url-proxy-rely
Set websocket URL depending on the proxy unless defined in config
2024-06-06 20:39:03 -07:00
Ilia Ross
00d0a89630 Set socket URL depending on the proxy unless defined in config 2024-06-07 01:15:27 +03:00
Ilia Ross
9c971202b3 Remove debug 2024-06-07 00:47:47 +03:00
Ilia Ross
2aa3bce4da Fix explicitly set module name from the caller 2024-06-07 00:35:41 +03:00
Ilia Ross
4103177d1e Fix dependencies [build] 2024-06-06 22:55:39 +03:00
Jamie Cameron
31b6cdc82b Merge branch 'master' of github.com:webmin/webmin 2024-06-06 08:34:03 -07:00
Jamie Cameron
fd8c634277 Zone key record might not exist https://forum.virtualmin.com/t/security-updates/127159 2024-06-06 08:33:34 -07:00
Ilia Ross
596ba13b1e Add logic to store iCalendars 2024-06-06 01:59:58 +03:00
Ilia Ross
5e684bf41b Add improvements to iCalendar parser 2024-06-05 03:34:33 +03:00
Jamie Cameron
356c8f7f53 Merge pull request #2191 from webmin/dev/websockets-funcs-are-global
Improve WebSockets API
2024-06-04 16:27:40 -07:00
Ilia Ross
185465351a Fix to use named loop variable 2024-06-05 00:07:44 +03:00
Ilia Ross
8d84e7313a Fix to call function properly 2024-06-04 23:54:13 +03:00
Ilia Ross
71e37adfed Add ability to clean all modules with websockets=1 on the .info 2024-06-04 19:55:25 +03:00
Ilia Ross
af912d9539 Add API to get WebSocket URL 2024-06-04 19:07:34 +03:00
Ilia Ross
5b31c7df84 Factor out WebSockets port and host options to global config 2024-06-04 18:43:34 +03:00
Ilia Ross
55b5939194 Move websocket functions to be always available 2024-06-04 15:48:06 +03:00
Jamie Cameron
00ddfd4d05 Also cleanup websockets 2024-06-03 18:42:31 -07:00
Jamie Cameron
2d23a3503e Fix spacing 2024-06-03 18:34:59 -07:00
Jamie Cameron
a838d11a26 No need for a loop to process a 1-element array 2024-06-03 18:29:56 -07:00
Jamie Cameron
5f28a28d8d Merge pull request #2189 from webmin/dev/icalendar-event-parser
Add support to parse calendar events files #2160
2024-06-03 16:05:49 -07:00
Ilia Ross
e13df24539 Fix to assign argument array before anything else 2024-06-04 00:54:55 +03:00
Ilia Ross
4f7924338d Add missing websockets-lib-funcs.pl file to the build #2190
[build]
2024-06-04 00:48:35 +03:00
Ilia Ross
3a1d609579 Add support to parse calendar events files 2024-06-03 20:58:38 +03:00
Jamie Cameron
e441427031 Merge pull request #2170 from webmin/dev/logviewer-custom-units
Add support for additional units in systemd log viewer
2024-06-01 09:57:19 -07:00
Ilia Ross
469857a41e Fix to use links as is
https://github.com/webmin/webmin/pull/2170#discussion_r1623004037
2024-06-01 18:37:28 +03:00
Ilia Ross
e47c82e7e8 Fix cron id format [build] 2024-06-01 15:32:43 +03:00
Ilia Ross
a0f6dd935c Fix to favour lexically scoped variable over global 2024-06-01 15:31:50 +03:00
Jamie Cameron
e302b706ec Add a default option for mynetworks_style https://github.com/webmin/webmin/issues/2174 2024-05-31 16:26:56 -07:00
Jamie Cameron
8c7fc88d51 Use more accurate wording https://github.com/webmin/webmin/issues/2174 2024-05-31 16:25:11 -07:00
Jamie Cameron
7b4d905eb6 Merge branch 'master' of github.com:webmin/webmin 2024-05-31 16:02:57 -07:00
Jamie Cameron
a1a6f669b2 Use a unique ID for webmin crons created in the same process at the same time https://forum.virtualmin.com/t/webmin-server-stauts/126983 2024-05-31 16:02:41 -07:00
Jamie Cameron
0298d884ef Merge pull request #2182 from webmin/dev/take-out-ws-lib-and-make-it-work-with-themes
Dev/take-out-ws-lib-and-make-it-work-with-themes
2024-05-31 13:40:31 -07:00
Ilia Ross
5a8b3467a1 Fix to consider themes using websockets too 2024-05-31 23:04:19 +03:00
Ilia Ross
17fb8304c3 Fix to take out WebSockets library 2024-05-31 22:58:27 +03:00
Jamie Cameron
5cd88dad43 Merge pull request #2181 from webmin/dev/fix-proftpd-mods-load
Fix how modules are loaded in ProFTPd
2024-05-31 12:41:50 -07:00
Ilia Ross
c15e7a5e5e Fix how modules are loaded in ProFTPd 2024-05-31 19:55:37 +03:00
Jamie Cameron
fad464be47 Merge pull request #2180 from webmin/dev/better-xterm-logging
Dev/better-xterm-logging
2024-05-31 08:57:39 -07:00
Ilia Ross
489db4c769 Fix to store logs in var directory 2024-05-31 16:54:36 +03:00
Ilia Ross
cc663af3df Fix to log username 2024-05-31 16:51:08 +03:00
Ilia Ross
0b58cd5197 Fix to print log nicely 2024-05-31 16:31:56 +03:00
Ilia Ross
dbd16c21cc Fix to drop extra new line [build] 2024-05-31 15:52:50 +03:00
Ilia Ross
8ddabb35b6 Fix test for ports below zero and put port number to error message 2024-05-31 15:50:34 +03:00
Ilia Ross
8476206da8 Merge pull request #2179 from webmin/dev/impove-status-module
Dev/impove-status-module
2024-05-31 13:37:18 +03:00
Ilia Ross
e0085e82d4 Fix to remove colon in button text as its relation is obvious 2024-05-31 13:10:18 +03:00
Ilia Ross
b697c134f1 Fix to break status icons to a new line 2024-05-31 12:15:02 +03:00
Ilia Ross
5d363d60fe Fix to break remotes to a new line without pointless limits 2024-05-31 12:14:45 +03:00
Ilia Ross
f06bc871dc Fix to break each icon to a new line 2024-05-31 12:13:33 +03:00
Ilia Ross
45e16aeeac Revert "[build] - Test collect_interval=5 preset"
This reverts commit 9be50b5aef.
2024-05-30 15:30:01 +03:00
Ilia Ross
9be50b5aef [build] - Test collect_interval=5 preset 2024-05-30 15:01:27 +03:00
Ilia Ross
80c7c7794c Fix saving SMTP TLS client security level #2177 2024-05-30 12:28:44 +03:00
Ilia Ross
decb55b8ff Add support for storing replaced text values and keys #2176
9e0d4cd9b6
2024-05-30 02:39:19 +03:00
Jamie Cameron
d061a190ac Handle case where FPM config contains no PHP options yet https://forum.virtualmin.com/t/pfp-fpm-default-configuration/127002 2024-05-29 16:26:48 -07:00
Jamie Cameron
6d89004446 Merge branch 'master' of github.com:webmin/webmin 2024-05-29 13:22:51 -07:00
Jamie Cameron
9817085c70 Delete PID file on shutdown 2024-05-29 13:22:47 -07:00
Ilia Ross
ca3362ee84 Fix to properly test fetched filtered content 2024-05-29 19:20:15 +03:00
Ilia Ross
e88ba87eae Add a message for progressive logs with no data 2024-05-29 17:38:28 +03:00
Ilia Ross
a420c7142f Fix to use hash for mapping since select names 2024-05-29 15:35:41 +03:00
Ilia Ross
6f37dc94bf Revert the change to hide logs from other modules yet
https://github.com/webmin/webmin/pull/2170#discussion_r1618145017
2024-05-29 11:30:53 +03:00
Ilia Ross
c59a200725 Fix functions name 2024-05-29 03:11:28 +03:00
Ilia Ross
e56aa7711c Add status handler function 2024-05-29 03:11:18 +03:00
Ilia Ross
b480b4caa3 Fix SPA themes have own control over onbeforeunload event 2024-05-29 01:37:43 +03:00
Ilia Ross
db456ad458 Add crucial calls abortion control 2024-05-29 01:11:53 +03:00
Ilia Ross
9513d85157 Fix to just always call it Filter 2024-05-28 22:59:45 +03:00
Ilia Ross
68b547d55a Fix to include forwarded message on empty body
a268373550 (r142447419)

[build]
2024-05-28 16:56:23 +03:00
Ilia Ross
dccc3fb10e Fix to call check right away
https://github.com/webmin/webmin/pull/2170#discussion_r1616387257
2024-05-28 00:08:23 +03:00
Jamie Cameron
d6bed07aae Delete obsolete java applet for running strace 2024-05-27 12:17:51 -07:00
Ilia Ross
bb7938a0f5 Add support for tailing logs in real time 2024-05-27 21:52:24 +03:00
Ilia Ross
8164480b48 Fix lines bug in journalctl 2024-05-27 18:08:57 +03:00
Ilia Ross
4155fdb4c5 Fix not to use bare words 2024-05-27 15:05:15 +03:00
Ilia Ross
19efd89c28 Fix bug when hiding controls 2024-05-27 14:53:01 +03:00
Ilia Ross
f911137624 Add module config and other buttons in case index page is bypassed 2024-05-27 14:40:06 +03:00
Ilia Ross
d4ac34e4b5 Fix to show right title when viewing journal 2024-05-27 14:39:23 +03:00
Ilia Ross
5323bda372 Fix to limit select width not to break the page on long systemd entries 2024-05-27 14:37:40 +03:00
Ilia Ross
1b1ac686e3 Fix to redirect straight to log view or show error 2024-05-27 13:57:27 +03:00
Ilia Ross
75e9323429 Rename the old logging system to "System Logs RS" to free up the name for actual systemd-journald 2024-05-27 13:47:10 +03:00
Ilia Ross
554b439bf8 Fix to drop redundant support for extra units 2024-05-27 00:56:42 +03:00
Ilia Ross
2f9a0b3f21 Add support for showing messages all units and filter by since
Fix numerous of other bugs:

  1. No `tac` for `journalctl` as there is a special `-r` flag
  2. No using tail for `journalctl`
2024-05-27 00:52:45 +03:00
Jamie Cameron
f457b971a7 Check if an NFS server is actually installed 2024-05-26 11:35:24 -07:00
Jamie Cameron
f5252d3f09 Merge branch 'master' of github.com:webmin/webmin 2024-05-25 22:19:28 -07:00
Jamie Cameron
60a9419cc3 Use static routes to set the default gateway https://forum.virtualmin.com/t/ubuntu-and-network-configurations/126890 2024-05-25 22:18:53 -07:00
Ilia Ross
cc2502737f Add support for additional units in systemd log viewer 2024-05-26 01:12:39 +03:00
Jamie Cameron
0cbd11335d Don't show procmail icon if controlled by Virtualmin https://github.com/virtualmin/virtualmin-gpl/issues/818 2024-05-25 11:42:02 -07:00
Ilia Ross
f9198b0fbd Update translations 2024-05-25 01:40:22 +03:00
Jamie Cameron
bb24e2bbdd Merge pull request #2168 from webmin/dev/firewalld-block-ip
Add support for blocking a given IP temporarily or permanently
2024-05-24 15:10:49 -07:00
Ilia Ross
a86eb6ff46 Fix to use substitution 2024-05-25 00:58:57 +03:00
Ilia Ross
d2420038f9 Update translations 2024-05-24 23:20:43 +03:00
Ilia Ross
26625786cb Fix layout 2024-05-24 23:16:51 +03:00
Ilia Ross
3f2023d174 Update translations 2024-05-24 22:55:30 +03:00
Ilia Ross
6b190a6cba Add support for blocking a given IP temporarily or permanently 2024-05-24 22:30:54 +03:00
Jamie Cameron
5c465a587c Add function to clear the Webmin cache for a URL 2024-05-23 15:17:27 -07:00
Jamie Cameron
61f631c1f7 Add more choices for smtpd_sasl_security_options 2024-05-22 14:30:19 -07:00
Jamie Cameron
40c1c30ae2 Don't show the last perl eval faiure unless full error reporting is enabled, because it scares the users https://github.com/virtualmin/virtualmin-gpl/issues/813 2024-05-20 16:22:59 -07:00
Jamie Cameron
d805878186 Merge branch 'master' of github.com:webmin/webmin 2024-05-20 13:29:46 -07:00
Jamie Cameron
84d46adcee There are only 65536 ports https://github.com/webmin/webmin/discussions/2161 2024-05-20 13:29:26 -07:00
Jamie Cameron
b740f9850b Merge pull request #2163 from webmin/dev/log-nicely
Fix to always use log function
2024-05-20 11:39:42 -07:00
Ilia Ross
2641985b98 Fix typo 2024-05-20 19:06:18 +03:00
Ilia Ross
736e514766 Fix to always use log function 2024-05-20 18:48:44 +03:00
Jamie Cameron
5ab6ce618d Sometimes less than a whole line is read 2024-05-17 19:47:14 -07:00
Jamie Cameron
1c8257ecff Add missing icon 2024-05-17 19:38:55 -07:00
Jamie Cameron
ebfd1e9e51 Terminal doesn't work in proxy mode https://forum.virtualmin.com/t/webmin-terminal-wss-connection-time-out/126735 2024-05-16 20:13:12 -07:00
Jamie Cameron
70dede0e22 Merge branch 'master' of github.com:webmin/webmin 2024-05-11 15:20:24 -07:00
Jamie Cameron
35e9f0a01d Limit UDP replies to 1 every 5 seconds per IP 2024-05-11 15:20:19 -07:00
Ilia Ross
0c8777acef Add support for nested forms embedded in tabs 2024-05-12 01:17:42 +03:00
Ilia Ross
04523fdb86 Fix tab name 2024-05-10 14:25:06 +03:00
Ilia Ross
b83bcc4723 Fix to compare versions correctly 2024-05-08 21:28:43 +03:00
Jamie Cameron
b9bb060250 Default changed in version 3.4 https://github.com/webmin/webmin/issues/2156 2024-05-08 10:42:32 -07:00
Jamie Cameron
f49f8f2fb1 Add more authentication methods https://github.com/webmin/webmin/issues/2154 2024-05-08 10:33:06 -07:00
Jamie Cameron
801f1f61d8 Always show extra client restrictions field https://github.com/webmin/webmin/issues/2153 2024-05-08 10:25:29 -07:00
Jamie Cameron
ede9921ea4 Merge branch 'master' of github.com:webmin/webmin 2024-05-08 09:39:36 -07:00
Jamie Cameron
cbd7a91d5c Cache the list of boot interfaces https://forum.virtualmin.com/t/webmin-network-settings-does-not-pickup-or-allow-setting-of-default-route/126466/ 2024-05-08 09:39:29 -07:00
Ilia Ross
36c8aa5e7d Update Xterm.js 2024-05-08 15:37:22 +03:00
Jamie Cameron
7881b1c6c2 Remove options that were obsoleted in version 3.9 https://github.com/webmin/webmin/issues/2150 2024-05-07 15:41:34 -07:00
Jamie Cameron
4a918ee504 Merge branch 'master' of github.com:webmin/webmin 2024-05-07 15:39:02 -07:00
Jamie Cameron
078d3acb98 Remove obsolete smtp_use_tls option 2024-05-07 15:38:22 -07:00
Ilia Ross
6a521ea32c Fix some experimental MIME types are now recognized #2147 2024-05-05 23:28:01 +03:00
Ilia Ross
0c0639d2e9 Add missing option help file #2146 2024-05-05 17:20:52 +03:00
Jamie Cameron
1c8cee607e Merge pull request #2145 from webmin/dev/jail-backend-port
Dev/jail-backend-port
2024-05-04 14:26:12 -07:00
Ilia Ross
4ac3a675e8 No need to stress 2024-05-04 21:40:25 +03:00
Ilia Ross
35dfcbe456 Update language 2024-05-04 21:38:31 +03:00
Ilia Ross
1d5900eb70 Add ports support 2024-05-04 21:37:28 +03:00
Ilia Ross
e2d6caf359 Add backend support 2024-05-04 21:35:38 +03:00
Ilia Ross
1cc640a8e2 Move enabled 2024-05-04 21:01:52 +03:00
Ilia Ross
13442d4aa4 Update translations 2024-05-03 14:16:43 +03:00
Jamie Cameron
677b39bd61 Improve wording 2024-05-02 21:51:23 -07:00
Jamie Cameron
0dc1af46f2 Document password timeouts with a tooltip 2024-05-02 21:49:33 -07:00
Jamie Cameron
bff3e78630 Also update MySQL to MariaDB in text strings https://github.com/virtualmin/virtualmin-gpl/issues/798 2024-05-01 20:30:48 -07:00
Jamie Cameron
d9d4522430 Clarify which characters cannot be used https://forum.virtualmin.com/t/virtualmin-seems-to-have-broken-itself-sort-of-dont-you-just-love-a-descriptive-title/126306 2024-05-01 07:51:01 -07:00
Jamie Cameron
0bd657978f Merge branch 'master' of github.com:webmin/webmin 2024-04-30 16:49:34 -07:00
Jamie Cameron
d59c49b6ce Change default monitor name if it's MariaDB https://github.com/virtualmin/virtualmin-gpl/issues/798 2024-04-30 16:48:15 -07:00
Ilia Ross
fae522a28e Add support for another AMD CPU #2140 [build] 2024-04-30 15:51:16 +03:00
Ilia Ross
9dcb1da4f5 Fix to invalidate EOL cache on re-checks #2139 2024-04-29 13:51:05 +03:00
Jamie Cameron
591161560a Merge branch 'master' of github.com:webmin/webmin 2024-04-28 09:07:40 -07:00
Jamie Cameron
799ccb3683 Add missing local variable 2024-04-28 09:05:02 -07:00
Ilia Ross
4e5da791e2 Fix to limit input to 4 numbers https://github.com/webmin/webmin/issues/2138#issuecomment-2079609477 [build] 2024-04-26 18:39:46 +03:00
Ilia Ross
4db36071b3 Fix $rawtime scope #2136 [build] 2024-04-26 16:02:24 +03:00
Ilia Ross
8de5c83ca8 Add ctrl help #2134 2024-04-26 13:34:20 +03:00
Ilia Ross
9b496bf413 Fix to drop installing systemd service at boot script [build]
https://github.com/webmin/webmin/issues/2133
2024-04-21 17:53:03 +03:00
Ilia Ross
985129bb70 Fix to call update boot script after adding boot #2133 [build] 2024-04-21 17:45:10 +03:00
Ilia Ross
f1804201e6 Fix indent [build] 2024-04-21 16:43:47 +03:00
Ilia Ross
0b1e5f87e1 Dev: Remove debug info 2024-04-21 16:41:25 +03:00
Ilia Ross
1e94a328ba Dev: Add more debug [build] 2024-04-21 16:29:05 +03:00
Ilia Ross
bac62e03c7 Add debug [build] 2024-04-21 16:18:10 +03:00
Ilia Ross
b1a6beda22 Revert "Fix to use latest version [build]"
This reverts commit cd46f97288.
2024-04-21 15:54:33 +03:00
Ilia Ross
b57d57b729 Fix to check for status only if it was running in the first place
https://sourceforge.net/p/webadmin/bugs/5646/

[build]
2024-04-21 15:48:09 +03:00
Ilia Ross
cd46f97288 Fix to use latest version [build] 2024-04-21 15:38:39 +03:00
Ilia Ross
1f2a7902c6 Fix to save status of service correctly [build] 2024-04-21 14:59:12 +03:00
Ilia Ross
975ae7b497 Fix to wait for systemd to update configuration
[build]
2024-04-21 14:53:03 +03:00
Ilia Ross
f252296471 Fix to preserve service state https://github.com/webmin/webmin/issues/2133
[build]
2024-04-21 13:56:11 +03:00
Jamie Cameron
f33b433b96 Merge pull request #2130 from webmin/dev/disable-manual-upgrades
Fix to correctly disable manual upgrades
2024-04-20 11:29:19 -07:00
Ilia Ross
6eb674b451 Fix to swap lines 2024-04-20 16:22:12 +03:00
Ilia Ross
690bae82fc Fix to use disable hash 2024-04-19 20:51:03 +03:00
Ilia Ross
575c1ca5a3 Fix to use Perl to get repo files 2024-04-19 20:33:24 +03:00
Jamie Cameron
97e4545c58 Merge pull request #2131 from Romanitch/bind8
Add ED25519 & ED448 DNSSEC Key Algorithm
2024-04-18 15:45:03 -07:00
Ilia Ross
73150b7818 Fix to remove un_urlize as unnecessary 2024-04-18 23:26:55 +03:00
Ilia Ross
c72a24369c Fix how self Webmin and Usermin upgrades are banned 2024-04-18 22:57:31 +03:00
Ilia Ross
ed7ac533d4 Fix to remove from build time 2024-04-18 21:19:40 +03:00
Romanitch
6df08bc645 add ED25519 & ED448 DNSSEC Key Algorithm 2024-04-18 19:43:16 +03:00
Ilia Ross
54d2766960 Fix to correctly disable manual upgrades
https://forum.virtualmin.com/t/should-this-warning-be-displayed/126011
2024-04-17 20:39:43 +03:00
Ilia Ross
c22f7fa8af Fix to correctly call the package for Debian systems 2024-04-17 20:00:38 +03:00
Jamie Cameron
da285e9804 Merge pull request #2129 from swelljoe/deprecate-old-netbsd-mounts
Fix for 10+ versions of netbsd
2024-04-17 09:48:10 -07:00
Joe Cooper
db42daab77 Fix for 10+ versions of netbsd 2024-04-17 10:09:42 -05:00
Ilia Ross
e2cf926097 Fix to correctly handle save and save and next buttons 2024-04-17 15:33:47 +03:00
Jamie Cameron
6f1b0db855 Merge branch 'master' of github.com:webmin/webmin 2024-04-16 19:50:21 -07:00
Jamie Cameron
1f99616848 Fix passing of params by save-and-next button 2024-04-16 19:49:58 -07:00
Jamie Cameron
d10d98421e Merge pull request #2128 from Mr-Method/dev/translation_uk/lang
dev/translation_uk/lang
2024-04-16 19:39:37 -07:00
Jamie Cameron
827e02d47d Merge pull request #2127 from Mr-Method/dev/translation_uk/filemin
dev/translation_uk/filemin
2024-04-16 19:39:13 -07:00
Jamie Cameron
1bee7442a6 Merge pull request #2126 from Mr-Method/dev/translation_uk/cpan
dev/translation_uk/cpan
2024-04-16 16:44:22 -07:00
Mr-Method
d165a4740a dev/translation_uk/lang
translated with wbmtranslator 0.9.2 (fixed)
2024-04-17 01:53:27 +03:00
Mr-Method
4126264a63 dev/translation_uk/filemin
translated with wbmtranslator 0.9.2 (fixed)
2024-04-17 01:47:59 +03:00
Jamie Cameron
0d390df894 Merge pull request #2125 from Mr-Method/dev/translation_uk/change-user
dev/translation_uk/change-user
2024-04-16 15:32:55 -07:00
Mr-Method
eda29478de dev/translation_uk/cpan
translated with wbmtranslator 0.9.2 (fixed)
2024-04-17 01:28:54 +03:00
Mr-Method
ea98188a63 dev/translation_uk/change-user
translated with wbmtranslator 0.9.2 (fixed)
2024-04-17 01:21:48 +03:00
446 changed files with 4278 additions and 3036 deletions

View File

@@ -7,13 +7,13 @@ on:
jobs:
build:
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
if: contains(github.event.head_commit.message, '[build]')
steps:
- uses: actions/checkout@v3
- uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: git tar gzip openssl curl openssh-client rpm perl libjson-pp-perl libdigest-sha-perl liblist-moreutils-perl libencode-detect-perl
packages: git tar gzip openssl curl openssh-client rpm perl libjson-pp-perl libdigest-sha-perl liblist-moreutils-perl libencode-detect-perl zstd
version: 1.0
- uses: szenius/set-timezone@v1.2
with:

View File

@@ -1,5 +1,43 @@
## Changelog
#### 2.202 (August 12, 2024)
* Add support for importing schemas to the LDAP Server module
* Add support for displaying disk and network I/Os in FreeBSD on the dashboard
* Fix to automatically set the WebSocket URL webprefix correctly
* Fix to name downloaded backup file nicely in Backup Configuration Files module [#2239](https://github.com/webmin/webmin/issues/2239)
* Fix to optimize getting table index stats for large tables in MySQL/MariaDB module [pull#2234](https://github.com/webmin/webmin/pull/2234)
* Fix duplication of _systemd_ actions and init scripts [#2227](https://github.com/webmin/webmin/issues/2227)
* Fix BIND service name for Debian 12 and Ubuntu 24.04
* Update the Authentic theme to the latest version with various fixes and improvements
#### 2.201 (July 24, 2024)
* Fix real-time monitoring not updating graphs in the Dashboard [#2222](https://github.com/webmin/webmin/issues/2222)
* Fix Terminal module to work correctly with _sudo_-capable users [#2223](https://github.com/webmin/webmin/issues/2223)
#### 2.200 (July 21, 2024)
* Add support for blocking a given IP temporarily or permanently in the FirewallD module
* Add support for parsing iCalendar event files in the Mailbox module
* Add support for tailing logs in real time in System Logs module
* Add ability to preserve original file ACLs when writing files [webmin/authentic-theme#1511](https://github.com/webmin/authentic-theme/discussions/1511#discussioncomment-9913902)
* Add a `patch` sub-command to the `webmin` command for easy application of patches
* Add a config option to display hostname and comment in the DHCP Server module [#2221](https://github.com/webmin/webmin/issues/2221)
* Add support for ED25519 and ED448 algorithms in BIND DNS module for DNSSEC
* Add support for larger ranger of authentication methods in Dovecot module
* Add improved support for displaying last logins in the Users and Groups module
* Fix to prevent duplicate `also-notify` and `allow-transfer` IPs in the BIND DNS module
* Fix issues with Terminal module to correct text display problems in editor mode
* Fix to store Terminal module logs in the `/var/webmin` directory
* Fix to display the Spam folder nicely in the Mailbox module
* Fix how modules are loaded in ProFTPd module
* Fix support for the Chrony service on Debian systems in the System Time module
* Fix to use static routes to set the default gateway in Network Configuration module
* Fix to correctly invalidate EOL cache on re-checks [#2139](https://github.com/webmin/webmin/issues/2139)
* Fix to change default monitor name based on database used MariaDB vs MySQL [#2139](https://github.com/virtualmin/virtualmin-gpl/issues/798)
* Fix to disable manual upgrades for systems installed from the repository
* Fix to preserve Webmin service state during package upgrades [#2133](https://github.com/webmin/webmin/issues/2133)
* Change to enforce _sudo_-capable logins as themselves in the Terminal module [docs/modules/terminal](https://webmin.com/docs/modules/terminal/#about)
* Rename "System Logs" module to "System Logs RS" and "System Logs Viewer" to "System Logs" for clarity
#### 2.111 (April 16, 2024)
* Fix EOL detection for unreleased Linux distributions

File diff suppressed because one or more lines are too long

View File

@@ -3,6 +3,7 @@
use strict;
use warnings;
use POSIX qw(strftime);
no warnings 'redefine';
no warnings 'uninitialized';
require './backup-config-lib.pl';
@@ -59,7 +60,12 @@ print &ui_tabs_end_tab();
# Show immediate form
print &ui_tabs_start_tab("tab", "backup");
print &ui_form_start("backup.cgi/backup.tgz", "post");
my $filename = 'webmin-backup-config-on-';
my $hostname = &get_system_hostname();
$hostname =~ s/\./-/g;
$filename .= $hostname;
$filename .= "-".strftime("%Y-%m-%d-%H-%M", localtime);
print &ui_form_start("backup.cgi/$filename.tgz", "post");
print &ui_table_start($text{'index_header'}, undef, 2);
my @dmods = split(/\s+/, $config{'mods'} || "");

View File

@@ -74,7 +74,7 @@ backup_eserver2=Missing or invalid SSH server
backup_epath=Missing or invalid absolute path on FTP server
backup_epath2=Missing or invalid absolute path on SSH server
backup_euser=Invalid characters in FTP server login
backup_epass=Invalid characters in FTP server password
backup_epass=Invalid characters in FTP server password - @, : and / cannot be used
backup_eport=Missing or invalid FTP server port
backup_esport=Missing or invalid SSH server port
backup_emods=No modules selected

164
bin/patch Executable file
View File

@@ -0,0 +1,164 @@
#!/usr/bin/env perl
# patch - Apply a patch to Webmin core or its modules from GitHub or a local file
use strict;
use warnings;
use 5.010;
use Getopt::Long qw(:config permute pass_through);
use Pod::Usage;
use File::Basename;
use Cwd qw(cwd);
my %opt;
GetOptions(
'help|h' => \$opt{'help'},
'config|c=s' => \$opt{'config'},
);
pod2usage(0) if ($opt{'help'});
# Get Webmin path
my $path = cwd;
my $lib = "web-lib-funcs.pl";
if (!-r "$path/$lib") {
$path = dirname(dirname($0));
if (!-r "$path/$lib") {
$path = $path = Cwd::realpath('..');
}
}
# Init core
my $config_dir = $opt{'config'} || '/etc/webmin';
$ENV{'WEBMIN_CONFIG'} = $config_dir;
push(@INC, $path);
eval 'use WebminCore';
init_config();
# Check if curl is installed
if (!has_command('curl')) {
print "\"curl\" command is not installed\n";
exit 1;
}
# Check if git is installed
if (!has_command('patch')) {
if (!has_command('git')) {
print "Neither \"patch\" nor \"git\" commands are installed\n";
exit 1;
}
}
# Get patch URL or file
my $patch = $ARGV[0];
# Params check
if (!$patch) {
pod2usage(0);
exit 1;
}
# Patch check
if ($patch !~ /^https?:\/\//) {
if (!-r $patch) {
print "Patch file $patch doesn't exist\n";
exit 1;
}
}
elsif ($patch =~ /^https?:\/\/(github|gitlab)\.com/ &&
$patch !~ /\.patch$/ && $patch !~ /\.diff$/) {
$patch .= '.patch';
}
# Parse module name from URL
my $module = "";
if ($patch =~ m{https://(github|gitlab)\.com/[^/]+/([^/]+)/commit/[^/]+}) {
$module = $2;
$module = "" if ($2 eq 'webmin');
# Special handling for some modules
$module = $module =~ /^virtualmin-pro$/ ?
'virtual-server/pro' :
'virtual-server'
if $module =~ /^virtualmin-(gpl|pro)$/;
}
# Check if module exists
if (!-d "$path/$module") {
print "Module $module doesn't exist\n";
exit 1;
}
# Download command or cat patch file
my $cmd;
if ($patch =~ /^https?:\/\//) {
$cmd = "curl -s @{[quotemeta($patch)]}";
chdir "$path/$module";
}
else {
$cmd = "cat @{[quotemeta($patch)]}";
}
# Apply patch using Patch or Git command
my $output;
if (has_command('patch')) {
$output = `$cmd 2>&1 | patch -p1 --verbose 2>&1`;
if ($output !~ /succeeded/i) {
print "Patch failed: $output\n";
exit 1;
}
} else {
$output = `$cmd 2>&1 | git apply --reject --verbose --whitespace=fix 2>&1`;
if ($output !~ /applied patch.*?cleanly/i) {
print "Patch failed: $output\n";
exit 1;
}
}
print "Patch applied successfully to:\n";
print " $1\n" while $output =~ /^(?|Applied patch\s+(\S+)|patching file\s+(\S+))/mg;
system("$config_dir/restart");
=pod
=head1 NAME
patch
=head1 DESCRIPTION
Apply a patch to Webmin core or its modules from GitHub or a local file.
=head1 SYNOPSIS
webmin patch patch-url/file
=head1 OPTIONS
=over
=item --help, -h
Give this help list.
=item --config, -c
Specify the full path to the Webmin configuration directory. Defaults to
C</etc/webmin>
Examples of usage:
Apply a patch from a URL.
- webmin patch https://github.com/webmin/webmin/commit/e6a2bb15b0.patch
- webmin patch https://github.com/virtualmin/virtualmin-gpl/commit/f4433153d
Apply a patch from local file.
- cd /usr/libexec/webmin/virtual-server/pro &&
webmin patch /root/virtualmin-pro/patches/patch-1.patch
=back
=head1 LICENSE AND COPYRIGHT
Copyright 2024 Ilia Ross <ilia@virtualmin.com>

View File

@@ -64,12 +64,12 @@ our $dnssec_dlv_zone = "dlv.isc.org.";
our @dnssec_dlv_key = ( 257, 3, 5, '"BEAAAAPHMu/5onzrEE7z1egmhg/WPO0+juoZrW3euWEn4MxDCE1+lLy2brhQv5rN32RKtMzX6Mj70jdzeND4XknW58dnJNPCxn8+jAGl2FZLK8t+1uq4W+nnA3qO2+DL+k6BD4mewMLbIYFwe0PG73Te9fZ2kJb56dhgMde5ymX4BI/oQ+cAK50/xvJv00Frf8kw6ucMTwFlgPe+jnGxPPEmHAte/URkY62ZfkLoBAADLHQ9IrS2tryAe7mbBZVcOwIeU/Rw/mRx/vwwMCTgNboMQKtUdvNXDrYJDSHZws3xiRXF1Rf+al9UmZfSav/4NWLKjHzpT59k/VStTDN0YUuWrBNh"' );
my $rand_flag;
if ($gconfig{'os_type'} =~ /-linux$/ &&
if ($gconfig{'os_type'} =~ /-linux$/ &&
$config{'force_random'} eq '0' &&
-r "/dev/urandom" &&
$bind_version =~ /^9\./ &&
&compare_version_numbers($bind_version, '<', '9.14.2')) {
# Version: 9.14.2 deprecated the use of -r option
# Version: 9.14.2 deprecated the use of -r option
# in favor of using /dev/random [bugs:#5370]
$rand_flag = "-r /dev/urandom";
}
@@ -1006,7 +1006,7 @@ else {
}
if ($access{'dironly'}) {
# Check directory access control
# Check directory access control
return 1 if (!$file);
$file = &absolute_path($file);
return 0 if (!&allowed_zone_file(\%access, $file));
@@ -1336,9 +1336,9 @@ elsif ($type eq "DMARC") {
print &ui_table_row($text{'value_dmarcfo'},
&ui_select("dmarcfo", $dmarc->{'fo'},
[ [ undef, $text{'default'} ],
[ 0, $text{'value_dmarcfo0'} ],
[ 1, $text{'value_dmarcfo1'} ],
[ 'd', $text{'value_dmarcfod'} ],
[ 0, $text{'value_dmarcfo0'} ],
[ 1, $text{'value_dmarcfo1'} ],
[ 'd', $text{'value_dmarcfod'} ],
[ 's', $text{'value_dmarcfos'} ] ]));
}
elsif ($type eq "NSEC3PARAM") {
@@ -1492,7 +1492,7 @@ return 1;
# expand_ip6(ip)
# Transform compact (with ::) IPv6 address to the unique expanded form
# (without :: and leading zeroes in all parts)
# (without :: and leading zeroes in all parts)
sub expand_ip6
{
my ($ip) = @_;
@@ -1508,7 +1508,7 @@ return $ip;
}
# expandall_ip6(ip)
# Transform IPv6 address to the expanded form containing all internal 0's
# Transform IPv6 address to the expanded form containing all internal 0's
sub expandall_ip6
{
my ($ip) = @_;
@@ -1519,7 +1519,7 @@ $ip =~ s/(:|^)(\w)(?=:|$)/:000$2/g;
return $ip;
}
sub time_unit_choice
sub time_unit_choice
{
my ($name, $value) = @_;
return &ui_select($name, $value =~ /^(S?)$/i ? "" :
@@ -1988,6 +1988,8 @@ if (@transfer) {
}
}
if (@notify) {
my %done;
@notify = grep { !$done{$_->{'name'}}++ } @notify;
my $also = { 'name' => 'also-notify',
'type' => 1,
'members' => \@notify};
@@ -1996,6 +1998,8 @@ if (@notify) {
'values' => [ 'yes' ] });
}
if (@transfer) {
my %done;
@transfer = grep { !$done{$_->{'name'}}++ } @transfer;
my $allow = { 'name' => 'allow-transfer',
'type' => 1,
'members' => \@transfer };
@@ -2636,7 +2640,7 @@ my $parent = &get_config_parent();
my $bconf = &get_config();
my $conf = $bconf;
if ($zone->{'viewindex'} ne '') {
my $view = $conf->[$zone->{'viewindex'}];
my $view = $conf->[$zone->{'viewindex'}];
$conf = $view->{'members'};
$parent = $view;
}
@@ -2905,7 +2909,7 @@ foreach my $slave (@slaves) {
}
if ($config{'extra_slaves'}) {
push(@otherslaves,
grep { $_ ne '' }
grep { $_ ne '' }
map { &to_ipaddress($_) || &to_ip6address($_) }
split(/\s+/, $config{'extra_slaves'}));
}
@@ -3323,7 +3327,7 @@ return &has_command($config{'signzone'}) &&
}
# supports_dnssec_client()
# Returns 2 if this BIND can send and verify DNSSEC requests, 1 if the
# Returns 2 if this BIND can send and verify DNSSEC requests, 1 if the
# dnssec-validation directive is not supported, 0 otherwise
sub supports_dnssec_client
{
@@ -3348,13 +3352,15 @@ return $alg eq 'RSASHA256' ? ( 2048, 4096 ) :
$alg eq 'NSEC3DSA' ? ( 512, 1024, 64 ) :
$alg eq 'ECDSAP256SHA256' ? ( 128, 512 ) :
$alg eq 'ECDSAP384SHA384' ? ( 128, 512 ) :
$alg eq 'ED25519' ? ( 1, 512 ) :
$alg eq 'ED448' ? ( 1, 512 ) :
( );
}
sub list_dnssec_algorithms
{
return ("RSASHA1", "RSASHA256", "RSAMD5", "DSA", "DH", "HMAC-MD5",
"NSEC3RSASHA1", "NSEC3DSA", "ECDSAP256SHA256", "ECDSAP384SHA384");
"NSEC3RSASHA1", "NSEC3DSA", "ECDSAP256SHA256", "ECDSAP384SHA384", "ED25519", "ED448");
}
# get_keys_dir(&zone|&zone-name)
@@ -3641,7 +3647,7 @@ while($tries++ < 10) {
$out = &backquote_logged(
"cd ".quotemeta($dir)." && ".
"$config{'signzone'} -o ".quotemeta($dom).
($alg =~ /^(NSEC3|RSASHA256|RSASHA512|ECCGOST|ECDSAP256SHA256|ECDSAP384SHA384)/ ? " -3 - -u" : "").
($alg =~ /^(NSEC3|RSASHA256|RSASHA512|ECCGOST|ECDSAP256SHA256|ECDSAP384SHA384|ED25519|ED448)/ ? " -3 - -u" : "").
" -f ".quotemeta($signed)." ".
quotemeta($chrootfn)." 2>&1");
last if (!$?);
@@ -3713,11 +3719,11 @@ my ($z, $recs, $bump) = @_;
# Check if zones are managed by dnssec-tools
my $dom = $z->{'members'} ? $z->{'values'}->[0] : $z->{'name'};
# If zone is managed through dnssec-tools use zonesigner for resigning the zone
# If zone is managed through dnssec-tools use zonesigner for resigning the zone
if (&check_if_dnssec_tools_managed($dom)) {
# Do the signing
my $zonefile = &get_zone_file($z);
my $zonefile = &get_zone_file($z);
my $krfile = "$zonefile".".krf";
&lock_file(&make_chroot($zonefile));
@@ -3899,21 +3905,21 @@ return \%rv;
}
sub get_dnssectools_config
{
{
&lock_file($config{'dnssectools_conf'});
my $lref = &read_file_lines($config{'dnssectools_conf'});
my @rv;
my $lnum = 0;
my $lref = &read_file_lines($config{'dnssectools_conf'});
my @rv;
my $lnum = 0;
foreach my $line (@$lref) {
my ($n, $v) = split(/\s+/, $line, 2);
my ($n, $v) = split(/\s+/, $line, 2);
# Do basic sanity checking
$v =~ /(\S+)/;
$v = $1;
if ($n) {
push(@rv, { 'name' => $n, 'value' => $v, 'line' => $lnum });
}
}
$lnum++;
}
}
&flush_file_lines();
&unlock_file($config{'dnssectools_conf'});
return \@rv;
@@ -3928,7 +3934,7 @@ sub save_dnssectools_directive
&lock_file($config{'dnssectools_conf'});
my $lref = &read_file_lines($config{'dnssectools_conf'});
foreach my $n (keys %$nv) {
my $old = &find($n, $conf);
if ($old) {
@@ -3952,14 +3958,14 @@ sub list_dnssec_dne
}
# list_dnssec_dshash()
# return a list containing the different DS record hash types
# return a list containing the different DS record hash types
sub list_dnssec_dshash
{
return ("SHA1", "SHA256");
return ("SHA1", "SHA256");
}
# schedule_dnssec_cronjob()
# schedule a cron job to handle periodic resign operations
# schedule a cron job to handle periodic resign operations
sub schedule_dnssec_cronjob
{
my $job;
@@ -3992,7 +3998,7 @@ sub schedule_dnssec_cronjob
&unlock_file($module_config_file);
}
# dt_sign_zone(zone, nsec3)
# dt_sign_zone(zone, nsec3)
# Replaces a zone's file with one containing signed records.
sub dt_sign_zone
{
@@ -4031,9 +4037,9 @@ sub dt_sign_zone
$recs[$i]->{'type'} eq 'RRSIG' ||
$recs[$i]->{'type'} eq 'DNSKEY') {
&delete_record($z, $recs[$i]);
}
}
}
&copy_source_dest($z_chroot, $usz);
&copy_source_dest($z_chroot, $usz);
$cmd = "$zonesigner $nsec3param".
" -genkeys ".
@@ -4075,13 +4081,13 @@ sub dt_sign_zone
rollrec_unlock();
&unlock_file($z_chroot);
&dt_rollerd_restart();
&restart_bind();
return undef;
}
# dt_resign_zone(zone-name, zonefile, krfile, threshold)
# dt_resign_zone(zone-name, zonefile, krfile, threshold)
# Replaces a zone's file with one containing signed records.
sub dt_resign_zone
{
@@ -4102,7 +4108,7 @@ sub dt_resign_zone
rollrec_lock();
# Remove DNSSEC records and save the unsigned zone file
@recs = &read_zone_file($z, $d);
@recs = &read_zone_file($z, $d);
my $tools = &have_dnssec_tools_support();
for(my $i=$#recs; $i>=0; $i--) {
if ($recs[$i]->{'type'} eq 'NSEC' ||
@@ -4111,12 +4117,12 @@ sub dt_resign_zone
$recs[$i]->{'type'} eq 'RRSIG' ||
$recs[$i]->{'type'} eq 'DNSKEY') {
&delete_record($z, $recs[$i]);
}
}
}
&copy_source_dest($z_chroot, $usz);
&copy_source_dest($z_chroot, $usz);
if ($t > 0) {
$threshold = "-threshold ".quotemeta("-$t"."d"." ");
$threshold = "-threshold ".quotemeta("-$t"."d"." ");
}
$cmd = "$zonesigner -verbose -verbose".
@@ -4139,7 +4145,7 @@ sub dt_resign_zone
}
# dt_zskroll_zone(zone-name)
# Initiates a zsk rollover operation for the zone
# Initiates a zsk rollover operation for the zone
sub dt_zskroll_zone
{
my ($d) = @_;
@@ -4152,7 +4158,7 @@ sub dt_zskroll_zone
}
# dt_kskroll_zone(zone-name)
# Initiates a ksk rollover operation for the zone
# Initiates a ksk rollover operation for the zone
sub dt_kskroll_zone
{
my ($d) = @_;
@@ -4165,7 +4171,7 @@ sub dt_kskroll_zone
}
# dt_notify_parentzone(zone-name)
# Notifies rollerd that the new DS record has been published in the parent zone
# Notifies rollerd that the new DS record has been published in the parent zone
sub dt_notify_parentzone
{
my ($d) = @_;
@@ -4178,7 +4184,7 @@ sub dt_notify_parentzone
}
# dt_rollerd_restart()
# Restart the rollerd daemon
# Restart the rollerd daemon
sub dt_rollerd_restart
{
my $rollerd;
@@ -4190,7 +4196,7 @@ sub dt_rollerd_restart
return $text{'dt_zone_enocmd'};
}
rollmgr_halt();
$r = $config{"dnssectools_rollrec"};
$r = $config{"dnssectools_rollrec"};
$cmd = "$rollerd -rrfile ".quotemeta($r);
&execute_command($cmd);
return undef;
@@ -4218,9 +4224,9 @@ sub dt_genkrf
# Identify if this is a zsk or a ksk
$key->{$f} =~ /(K\Q$dom\E\.\+\d+\+\d+)/;
if ($key->{'ksk'}) {
$kskcur = $1;
$kskcur = $1;
} else {
$zskcur = $1;
$zskcur = $1;
}
&copy_source_dest($key->{$f}, $keydir);
&unlink_file($key->{$f});
@@ -4231,7 +4237,7 @@ sub dt_genkrf
return &text('dt_zone_enokey', $dom);
}
# Remove the older dsset file
# Remove the older dsset file
if ($oldkeydir) {
&unlink_file($oldkeydir."/"."dsset-".$dom.".");
}
@@ -4257,7 +4263,7 @@ sub dt_genkrf
# dt_delete_dnssec_state(&zone)
# Delete all DNSSEC-Tools meta-data for a given zone
# Delete all DNSSEC-Tools meta-data for a given zone
sub dt_delete_dnssec_state
{
my ($zone) = @_;
@@ -4307,14 +4313,14 @@ sub dt_delete_dnssec_state
$recs[$i]->{'type'} eq 'RRSIG' ||
$recs[$i]->{'type'} eq 'DNSKEY') {
&delete_record($z, $recs[$i]);
}
}
}
&bump_soa_record($z, \@recs);
&unlock_file($z_chroot);
rollrec_unlock();
&dt_rollerd_restart();
&dt_rollerd_restart();
&restart_bind();
} else {
# Just delete the dsset- file
@@ -4481,4 +4487,3 @@ return $r;
}
1;

View File

@@ -17,7 +17,6 @@ $access{'defaults'} || &error($text{'trusted_ecannot'});
my $conf = &get_config();
my $options = &find("options", $conf);
my $mems = $options->{'members'};
my @dlv = &find("dnssec-lookaside", $mems);
my $tkeys = &find("trusted-keys", $conf);
$tkeys ||= { 'members' => [ ] };
@@ -38,33 +37,6 @@ if (&supports_dnssec_client() == 2) {
$text{'default'}, undef);
}
# Trusted DLVs (obsolete)
if (@dlv) {
my @dtable = ( );
my $i = 0;
foreach my $d (@dlv, { 'values' => [ '.' ] }) {
my $dlv = $d->{'values'}->[0];
$dlv = "" if ($dlv eq ".");
push(@dtable, [
&ui_opt_textbox("anchor_$i", $d->{'values'}->[2],
30, $text{'trusted_none'}),
&ui_opt_textbox("dlv_$i", $dlv, 20,
$text{'trusted_root'}) ]);
$i++;
}
print &ui_table_row($text{'trusted_dlvs'},
&ui_radio("dlv_auto",
@dlv == 0 ? 2 :
@dlv == 1 && $dlv[0]->{'values'}->[0] eq 'auto' ? 1 : 0,
[ [ 1, $text{'trusted_dlvs1'} ],
[ 2, $text{'trusted_dlvs2'} ],
[ 0, $text{'trusted_dlvs0'} ] ])."<br>\n".
&ui_columns_table([ $text{'trusted_anchor'},
$text{'trusted_dlv'} ],
undef,
\@dtable), 3);
}
# Trusted keys
if (@{$tkeys->{'members'}}) {
my @ktable = ( );

View File

@@ -0,0 +1,50 @@
soa_style=1
named_path=/usr/sbin/named
named_conf=/etc/bind/named.conf
show_list=1
records_order=0
max_zones=50
rev_def=0
support_aaaa=1
allow_comments=0
allow_wild=1
allow_long=0
master_ttl=1
whois_cmd=whois
short_names=0
updserial_def=0
updserial_on=1
updserial_man=1
ndc_cmd=ndc
forwardzonefilename_format=ZONE.hosts
reversezonefilename_format=ZONE.rev
rev_must=0
ipv6_mode=1
allow_underscore=1
by_view=0
confirm_zone=1
confirm_rec=0
no_chroot=0
relative_paths=0
rndc_cmd=rndc
pid_file=/var/run/named/named.pid
zones_file=/etc/bind/named.conf.local
master_dir=/var/lib/bind
slave_dir=/var/lib/bind
no_pid_chroot=0
soa_start=0
rndc_conf=/etc/bind/rndc.conf
rndcconf_cmd=rndc-confgen
largezones=0
checkzone=named-checkzone
keygen=dnssec-keygen
signzone=dnssec-signzone
checkconf=named-checkconf
other_slaves=1
force_random=0
spf_record=0
dnssec_info=1
start_cmd=systemctl start named.service
stop_cmd=systemctl stop named.service
restart_cmd=systemctl reload named.service
dnssec_period=21

View File

@@ -0,0 +1,50 @@
soa_style=1
named_path=/usr/sbin/named
named_conf=/etc/bind/named.conf
show_list=1
records_order=0
max_zones=50
rev_def=0
support_aaaa=1
allow_comments=0
allow_wild=1
allow_long=0
master_ttl=1
whois_cmd=whois
short_names=0
updserial_def=0
updserial_on=1
updserial_man=1
ndc_cmd=ndc
forwardzonefilename_format=ZONE.hosts
reversezonefilename_format=ZONE.rev
rev_must=0
ipv6_mode=1
allow_underscore=1
by_view=0
confirm_zone=1
confirm_rec=0
no_chroot=0
relative_paths=0
rndc_cmd=rndc
pid_file=/var/run/named/named.pid
zones_file=/etc/bind/named.conf.local
master_dir=/var/lib/bind
slave_dir=/var/lib/bind
no_pid_chroot=0
soa_start=0
rndc_conf=/etc/bind/rndc.conf
rndcconf_cmd=rndc-confgen
largezones=0
checkzone=named-checkzone
keygen=dnssec-keygen
signzone=dnssec-signzone
checkconf=named-checkconf
other_slaves=1
force_random=0
spf_record=0
dnssec_info=1
start_cmd=systemctl start bind9.service
stop_cmd=systemctl stop bind9.service
restart_cmd=systemctl reload bind9.service
dnssec_period=21

View File

@@ -0,0 +1,50 @@
soa_style=1
named_path=/usr/sbin/named
named_conf=/etc/bind/named.conf
show_list=1
records_order=0
max_zones=50
rev_def=0
support_aaaa=1
allow_comments=0
allow_wild=1
allow_long=0
master_ttl=1
whois_cmd=whois
short_names=0
updserial_def=0
updserial_on=1
updserial_man=1
ndc_cmd=ndc
forwardzonefilename_format=ZONE.hosts
reversezonefilename_format=ZONE.rev
rev_must=0
ipv6_mode=1
allow_underscore=1
by_view=0
confirm_zone=1
confirm_rec=0
no_chroot=0
relative_paths=0
rndc_cmd=rndc
pid_file=/var/run/named/named.pid
zones_file=/etc/bind/named.conf.local
master_dir=/var/lib/bind
slave_dir=/var/lib/bind
no_pid_chroot=0
soa_start=0
rndc_conf=/etc/bind/rndc.conf
rndcconf_cmd=rndc-confgen
largezones=0
checkzone=named-checkzone
keygen=dnssec-keygen
signzone=dnssec-signzone
checkconf=named-checkconf
other_slaves=1
force_random=0
spf_record=0
dnssec_info=1
start_cmd=systemctl start named.service
stop_cmd=systemctl stop named.service
restart_cmd=systemctl reload named.service
dnssec_period=21

View File

@@ -40,6 +40,7 @@ if (@keyrecs) {
my $kt = $key->{'ksk'} ? 'ksk' : 'zone';
my ($keyrec) = grep { $_->{'values'}->[0] ==
($key->{'ksk'} ? 257 : 256) } @keyrecs;
next if (!$keyrec);
my $keyline = format_dnssec_public_key(
join(" ", $keyrec->{'name'}, $keyrec->{'class'},
$keyrec->{'type'}, @{$keyrec->{'values'}}));
@@ -67,8 +68,28 @@ if (@keyrecs) {
my $ds = &get_ds_record($zone);
if ($ds) {
print $text{'zonekey_ds'},"<br>\n";
print &ui_textarea("ds", join("\n".$desc, split(/$desc/, $ds)), 2, 80, "off", 0,
# Split DS records in string into a list
my @ds = split(/\s(?=\S+\.\s+\d+\s+IN\s+DS\s+\d+\s+
\d+\s+\d+\s+[0-9A-Fa-f]{16,})/x, $ds);
print &ui_textarea("ds", join("\n", @ds), 2, 80, "off", 0,
"readonly style='width:90%'"),"<br>\n";
print &ui_columns_start([
$text{'zonekey_ds_keytag'},
$text{'zonekey_ds_alg'},
$text{'zonekey_ds_type'},
$text{'zonekey_ds_digest'},
]);
foreach my $r (@ds) {
if ($r =~ /
\bDS\s+(?<key_tag>\d+)\s+(?<algorithm>\d+)\s+
(?<digest_type>\d+)\s+
(?<digest>[0-9A-Fa-f]+)\b/x) {
print &ui_columns_row([
$+{key_tag}, $+{algorithm},
$+{digest_type}, $+{digest}]);
}
}
print &ui_columns_end();
}
# Offer to disable

View File

@@ -68,7 +68,7 @@ my $chroot = &get_chroot() || "";
&restart_links().'<br>'.
&help_search_link("bind", "doc", "google"), undef, undef,
&text($chroot eq "/" || !$chroot ? 'index_version' : 'index_chroot',
$bind_version, "<tt>$chroot</tt>"));
&get_bind_version(), "<tt>$chroot</tt>"));
# If the named.conf file does not exist, offer to create it
if ($need_create) {

View File

@@ -1282,6 +1282,10 @@ zonekey_private=Private key details :
zonekey_privatefile=Private key file : $1
zonekey_algorithm=DNSSEC algorithm : $1
zonekey_ds=DS record for parent zone :
zonekey_ds_keytag=Key tag
zonekey_ds_alg=Algorithm
zonekey_ds_type=Digest type
zonekey_ds_digest=Digest string
zonekey_expandksk=Show public and private key-signing-key details ..
zonekey_expandzone=Show public and private zone-key details ..
zonekey_noprivate=However, Webmin could not find the private key associated with the zone, and so will not be able to re-sign it.

View File

@@ -24,46 +24,6 @@ if (&supports_dnssec_client() == 2) {
&save_choice("dnssec-validation", $options, 1);
}
# Save DLV zones
if (defined($in{'dlv_auto'})) {
my @dlvs = ( );
if ($in{'dlv_auto'} == 1) {
# Automatic mode
push(@dlvs, { 'name' => 'dnssec-lookaside',
'values' => [ 'auto' ] });
}
elsif ($in{'dlv_auto'} == 0) {
# Listed zones
my $dlv;
for(my $i=0; defined($in{"anchor_$i"}); $i++) {
if (!$in{"anchor_${i}_def"}) {
$in{"anchor_$i"} =~ /^[a-z0-9\.\-\_]+$/ ||
&error(&text('trusted_eanchor', $i+1));
$in{"anchor_$i"} .= "."
if ($in{"anchor_$i"} !~ /\.$/);
if ($in{"dlv_${i}_def"}) {
$dlv = ".";
}
else {
$in{"dlv_$i"} =~ /^[a-z0-9\.\-\_]+$/ ||
&error(&text('trusted_edlv', $i+1));
$dlv = $in{"dlv_$i"};
$dlv .= "." if ($dlv !~ /\.$/);
}
push(@dlvs, { 'name' => 'dnssec-lookaside',
'values' => [
$dlv, "trust-anchor",
$in{"anchor_$i"} ] });
}
}
}
elsif ($in{'dlv_auto'} == 2) {
# None
@dlvs = ( );
}
&save_directive($options, "dnssec-lookaside", \@dlvs, 1);
}
# Save trusted keys
if (defined($in{'zone_0'})) {
my @keys = ( );

View File

@@ -1,11 +1,23 @@
index_title=Перемінити мову і тему
index_title=Змінити мову і тему
index_dateformatglobal2=Глобальний формат дат .. $1
index_dateformatset=Особистий вибір..
index_lang=Мова
index_langglobal2=Глобальна мова .. $1 ($2)
index_langset=персональний вибір ..
index_themeglobal=Глобальна тема ($1)
index_themeset=Персональний вибір ..
index_locale=Локаль
index_locale2=Формат дат
index_localeglobal2=Глобальна локаль .. $1 ($2)
index_localeset=Особистий вибір..
index_overlay=Накладання теми
index_overlaydef=Немає - використовувати теми за замовчуванням
index_pass=Пароль облікового запису Webmin
index_passagain=Повторно введіть пароль
index_passleave=Не змінювати
index_passset=Установити в..
index_ok=Зберегти зміни
index_theme=Тема
index_themedef=Стара тема Webmin
index_desc2=Цей модуль може бути використаний для зміни $1, тільки для вашого облікового запису Webmin.
index_d3=1$, 2$ і 3$
@@ -15,13 +27,17 @@ index_dlang=мова, на якому відображаються модулі
index_dtheme=тема, що контролює зовнішній вигляд Webmin
index_dpass=пароль використовуваний для реєстрації
change_title=Змінюю настроювання
change_user=Змінюю настроювання облікового запису Webmin ..
change_title=Зміна налаштувань
change_user=Зміна налаштувань облікового запису Webmin ..
change_done=.. готово
change_restart=Перезапускаю Webmin ..
change_eoverlay=Ви не можете вибрати накладання теми, якщо також не вибрано тему інтерфейсу користувача
change_eoverlay2=Вибране накладання теми несумісне з вибраною темою інтерфейсу користувача
change_epass=Новий пароль недійсний: $1
change_epass2=Нові паролі не збігаються
change_redirect=Перехід у головне меню ..
change_ecolon=Ваш пароль не може містити символ :
acl_lang=Може змінювати мова?
acl_lang=Чи можна змінити мову?
acl_locale=Чи можна змінити локаль?
acl_theme=Може змінювати тему?
acl_pass=Може змінювати пароль (коли зазначений у Webmin)?
acl_pass=Чи можна змінити пароль (якщо встановлено в Webmin)?

View File

@@ -0,0 +1,3 @@
desc_uk=Зміна мови та теми
longdesc_uk=Дозволяє поточному користувачеві Webmin змінювати мову, тему та, можливо, пароль.
name_uk=Зміна мови та теми

View File

@@ -423,21 +423,26 @@ foreach my $k (keys %$in) {
return $rv;
}
# link_config_cparams(module, &in)
# link_config_cparams(module, &in, [add-cparam])
# Returns a URL to link to after the config is saved
sub link_config_cparams
{
my ($m, $in) = @_;
my $url = "/$m";
if ($in->{'_cscript'}) {
$url .= "/".$in->{'_cscript'};
}
my ($m, $in, $keep) = @_;
my $url = "/$m/";
my @w;
if ($in->{'_cscript'}) {
if ($keep) {
push(@w, "_cscript=".&urlize($in->{'_cscript'}));
}
else {
$url .= $in->{'_cscript'};
}
}
foreach my $k (keys %$in) {
if ($k =~ /^_cparam_(.*)$/) {
$n = $1;
foreach my $v (split(/\0/, $in{$k})) {
push(@w, &urlize($n)."=".&urlize($v));
push(@w, &urlize($keep ? $k : $n)."=".&urlize($v));
}
}
}

View File

@@ -1,5 +1,5 @@
line1=Параметри&#44; що настроюються,11
refresh_days=Період відновлення списку модулів CPAN (днів),0,5
line1=Параметри,11
refresh_days=Період оновлення списку модулів CPAN (днів),0,5
line2=Системні параметри,11
packages=Список модулів Perl CPAN,0
cpan=Базовий URL модулів CPAN,0

View File

@@ -21,7 +21,7 @@ if ($in{'source'} == 0) {
if (!$in{'local'})
{ &install_error($text{'download_elocal'}); }
if (!-r $in{'local'})
{ &install_error(&text('download_elocal2', $in{'local'})); }
{ &install_error(&text('download_elocal2', &html_escape($in{'local'}))); }
$source = $in{'local'};
@pfile = ( $in{'local'} );
$need_unlink = 0;
@@ -91,8 +91,9 @@ elsif ($in{'source'} == 3) {
$i = 0;
@fallback = ( );
foreach $yum (@cpanyum) {
print &text('download_yum', "<tt>$cpan[$i]</tt>",
"<tt>$yum->{'package'}</tt>"),"<br>\n";
print &text('download_yum',
"<tt>".&html_escape($cpan[$i])."</tt>",
"<tt>".&html_escape($yum->{'package'})."</tt>"),"<br>\n";
print "<ul>\n";
@got = &software::update_system_install(
$yum->{'package'});
@@ -154,7 +155,8 @@ elsif ($in{'source'} == 3) {
# Fail if any modules are missing from CPAN
for($i=0; $i<@cpan; $i++) {
push(@missing, "<tt>$cpan[$i]</tt>") if (!$source[$i]);
push(@missing, "<tt>".&html_escape($cpan[$i])."</tt>")
if (!$source[$i]);
}
if ($in{'missingok'}) {
@@ -167,11 +169,12 @@ elsif ($in{'source'} == 3) {
}
}
@cpan || &install_error(&text('download_ecpan',
join(" ", @missing)));
&html_escape(join(" ", @missing))));
}
elsif (@missing) {
# Fail due to missing modules
&install_error(&text('download_ecpan', join(" ", @missing)));
&install_error(&text('download_ecpan',
&html_escape(join(" ", @missing))));
}
$source = join("<br>", @source);
@@ -192,14 +195,16 @@ elsif ($in{'source'} == 3) {
&ftp_download($host, $file, $pfile, \$error,
\&progress_callback);
}
else { &install_error(&text('download_eurl', $m)); }
else {
&install_error(&text('download_eurl',&html_escape($m)));
}
&install_error($error) if ($error);
push(@pfile, $pfile);
}
$need_unlink = 1;
}
else {
&error("Unknown source mode $in{'source'}");
&error("Unknown source mode ".&html_escape($in{'source'}));
}
# Check if the file looks like a perl module
@@ -287,7 +292,7 @@ foreach $d (@dirs) {
close(MAKEFILE);
push(@allreqs, @prereqs);
}
system("rm -rf $mtemp");
&unlink_file($mtemp);
# Work out which pre-requesites are missing
@allreqs = &unique(@allreqs);

View File

@@ -5,16 +5,36 @@ index_version=Версія
index_desc=Опис
index_date=Дата установки
index_installmsg=Виберіть модуль Perl для зборки й установки на вашій системі.
index_allmods2=Відсутні модулі, які використовуються Webmin
index_cpan=З CPAN за назвою
index_refresh=Обновити список модулів CPAN
index_local=З локального файлу
index_uploaded=Із завантаженого файлу
index_delete=Видалення модулів
index_ezone=Схоже, що Perl використовується спільно з глобальною зоною, тому тут неможливо встановити модулі. Натомість вони повинні бути встановлені в глобальній зоні.
index_forcecpan=Завжди встановлюйте останню версію з сирцевих кодів
index_user=$1 (використовується $2)
index_wantmods=Модулі для встановлення
index_tabsuggest=Пропоновані модулі
index_ftp=По URL ftp чи http
index_installok=Установити
index_return=списку модулів
index_none=У вашій системі не знайдено встановлених модулів Perl.
index_pversion=Perl версії $1
index_recs=Наступні модулі Perl рекомендуються для встановлення Webmin:
index_recsgot=Встановлено всі наступні модулі Perl, рекомендовані Webmin: $1
index_recsok=Встановити вибрані модулі
index_tabinstall=Встановити модуль
index_tabmods=Існуючі модулі
delete_efile=Недійсний файл пакета!
download_act=Дії по установці
download_args=Аргументи <tt>Makefile.PL</tt>
download_cont=Продовжити установку
download_ebuild=Для створення одного або кількох модулів Perl потрібно $1, але цей модуль Perl не встановлено.
download_err=Не удалося установити модуль
download_ecpangz=URL-адреса $1 не є списком модулів CPAN. Перевірте конфігурацію модуля.
download_elocal=Не зазначений локальний файл
download_elocal2='$1' не існує
download_eupload=Ваш браузер не підтримує завантаження файлів
@@ -22,21 +42,26 @@ download_eurl=Незрозумілий URL '$1'
download_edir=Невірний каталог $1
download_etar=Не удалося розпакувати файл tar : $1
download_emod=Невірний модуль Perl
download_fallback=Деякі модулі не вдалося встановити з пакетів, натомість намагаються встановити з сирцевих кодів..
download_title=Установка модуля
download_header=Настроювання установки модуля Perl
download_mod=Назва модуля
download_ver=Версія
download_act=Дії по установці
download_args=Аргументи <tt>Makefile.PL</tt>
download_cont=Продовжити установку
download_yum=Встановлення модуля Perl $1 з пакета $2
download_src=Джерело
download_m=Тільки зібрати
download_mt=Зібрати і перевірити
download_mi=Зібрати й установити
download_missing=Відсутні модулі $1
download_missingok=У CPAN відсутні модулі
download_mods=Назви модулів
download_mti=Зібрати, перевірити й установити
download_cont=Продовжити установку
download_epackages=Невірний URL модулів CPAN
download_ecpan=Модуль $1 у списку модулів CPAN не виявлений
download_eisperl=Модуль $1 є частиною стандартного дистрибутива Perl
download_args=Аргументи <tt>Makefile.PL</tt>
download_envs=Перемінні оточення <tt>Makefile.PL</tt>
download_name=Ім'я
download_value=Значення
@@ -48,6 +73,7 @@ install_make=Зборка модуля
install_test=Перевірка модуля
install_install=Установка модуля
install_loop=У висновку виявлене можливе зациклення!
install_needunlink=Ви можете спробувати встановити знову, повернувшись на попередню сторінку та вибравши інші параметри. В іншому випадку <a href='$1'>клацніть тут, щоб видалити тимчасові файли пакунків</a>, щоб заощадити місце на диску.
install_done_0=Зборка $1 успішно довершена.
install_done_1=Зборка і перевірка $1 успішно довершена.
install_done_2=Зборка й установка $1 успішно довершена.
@@ -63,19 +89,33 @@ cpan_search=Знайти модулі з назвою
cpan_match=Модулі, що збігаються з $1 ..
cpan_none=Збігів не виявлено.
uninstall_debian=Модуль буде видалено шляхом видалення пакета $1 Debian.
edit_title=Інформація про модуль
edit_header=Інформація про модуль
edit_mod=Назва модуля
edit_debian=Пакет Debian $1
edit_desc=Опис
edit_date=Дата установки
edit_subs=Підмодулі
edit_header2=Документація модуля
edit_file=Файл модуля
edit_manual=Ручне встановлення модуля Perl
edit_method=Встановлено з
edit_none=Немає
edit_return=інформації про модуль
edit_rpm=Пакет RPM $1
edit_uninstall=Видалити модель і підмодулі
edit_upgrade=Модуль оновлення від CPAN
uninstall_title=Видалення модуля
uninstall_err=Не вдалося видалити модуль
uninstall_rpm=Модуль буде видалено шляхом видалення пакета $1 RPM.
uninstall_rusure=Видалити модуль Perl $1 ? Будуть вилучені наступні файли :
uninstall_rusure2=Видалити модуль Perl $1 і підмодулі $2 ?<br>Будуть вилучені наступні файли :
uninstall_ok=Видалити
uninstalls_emod=$1 не вдалося: $2
uninstalls_enone=Не вибрано
uninstalls_err=Не вдалося видалити модулі
uninstalls_rusure=Ви впевнені, що бажаєте видалити вибрані модулі $1? $2 підмодулі та $3 файли буде видалено.
uninstalls_title=Видалення модулів

View File

@@ -0,0 +1,5 @@
line1=Параметри,11
refresh_days=Період оновлення списку модулів CPAN (днів),0,5
line2=Системні параметри,11
packages=Список модулів Perl CPAN,0
cpan=Базовий URL модулів CPAN,0

View File

@@ -1567,28 +1567,31 @@ if (!$gconfig{'tempdelete_days'}) {
print STDERR "Temp file clearing is disabled\n";
return;
}
# Cleanup files in /tmp/.webmin
if ($gconfig{'tempdir'} && !$gconfig{'tempdirdelete'}) {
print STDERR "Temp file clearing is not done for the custom directory $gconfig{'tempdir'}\n";
return;
}
local $tempdir = &transname();
$tempdir =~ s/\/([^\/]+)$//;
if (!$tempdir || $tempdir eq "/") {
$tempdir = "/tmp/.webmin";
}
local $cutoff = time() - $gconfig{'tempdelete_days'}*24*60*60;
opendir(DIR, $tempdir);
foreach my $f (readdir(DIR)) {
next if ($f eq "." || $f eq "..");
local @st = lstat("$tempdir/$f");
if ($st[9] < $cutoff) {
&unlink_file("$tempdir/$f");
else {
local $tempdir = &transname();
$tempdir =~ s/\/([^\/]+)$//;
if (!$tempdir || $tempdir eq "/") {
$tempdir = "/tmp/.webmin";
}
}
closedir(DIR);
local $cutoff = time() - $gconfig{'tempdelete_days'}*24*60*60;
opendir(DIR, $tempdir);
foreach my $f (readdir(DIR)) {
next if ($f eq "." || $f eq "..");
local @st = lstat("$tempdir/$f");
if ($st[9] < $cutoff) {
&unlink_file("$tempdir/$f");
}
}
closedir(DIR);
}
# Delete stale lock files
my $lockdir = $var_directory."/locks";
opendir(DIR, $lockdir);
foreach my $f (readdir(DIR)) {
@@ -1600,6 +1603,11 @@ foreach my $f (readdir(DIR)) {
}
}
closedir(DIR);
# Cleanup old websockets
foreach (&get_miniserv_websockets_modules()) {
&cleanup_miniserv_websockets(undef, $_);
}
}
=head2 list_cron_files()

View File

@@ -8,7 +8,7 @@ lease_refresh=Seconds between refreshing lease list,3,Never
show_ip=Show IP addresses for hosts?,1,1-Yes,0-No
show_mac=Show MAC addresses for hosts?,1,1-Yes,0-No
group_name=Show group names as,1,1-<tt>domain&#45;name</tt> option,0-Name or member count,2-Description
desc_name=Show other object descriptions instead of names?,1,1-Yes,0-No
desc_name=Show descriptions instead of names?,1,1-Description only,0-Name only,2-Both name and description
display_max=Maximum number of subnets and hosts to display,3,Unlimited
add_file=Add new subnets&#44; hosts and groups to file,3,Main configuration file
line2=System configuration,11

View File

@@ -7,7 +7,6 @@ lease_refresh=Segons entre refrescs de la llista de préstecs,3,Mai
show_ip=Mostra les adreces IP dels hosts,1,1-Sí,0-No
show_mac=Mostra les adreces MAC dels hosts,1,1-Sí,0-No
group_name=Mostra els noms de grup com,1,1-Opció <tt>domini&#45;nom</tt>,0-Nom o recompte de membres,2-Descripció
desc_name=Mostra les descripcions dels altres objectes en lloc dels noms,1,1-Sí,0-No
display_max=Nombre màxim de subxarxes i hosts a mostrar,3,Il·limitat
add_file=Afegeix subxarxes noves&#44; hosts i grups al fitxer,3,Fitxer de configuració principal
line2=Configuració del sistema,11

View File

@@ -6,7 +6,6 @@ lease_tz=Zobrazit dobu pronájmu v,1,0-GMT,1-Lokálním čase
show_ip=Zobrazit IP adresy pro hosty?,1,1-ano,0-ne
show_mac=Zobrazit MAC adresy hostů?,1,1-Ano,0-Ne
group_name=Zobrazení jmen skupin jako,1,1-<tt>doménová jména</tt>,0-Jména nebo počtu členů,2-Popisu
desc_name=Ukázat popisy objektů místo jejich názvů?,1,1-Ano,0-Ne
display_max=Počet maximálně zobrazených podsítí a hostů,3,Bezomezení
line2=Konfigurace systému,11
dhcpd_conf=Konfigurační soubor DHCP serveru,0

View File

@@ -6,7 +6,6 @@ lease_tz=Vis lease tider i,1,0-GMT,1-Lokal tid
show_ip=Vis IP adresser for hosts?,1,1-Ja,0-Nej
show_mac=Vis MAC adresser for hosts?,1,1-Ja,0-Nej
group_name=Vis gruppenavne som,1,1-<tt>domæne&#45;navne</tt> indstilling,0-Navn eller medlemsantal,2-Beskrivelse
desc_name=Vis andre objektbeskrivelse istedet for navne?,1,1-Ja,0-Nej
display_max=Maksimalt antal hosts og subnet der skal vises,3,Ubegrænset
line2=Systemkonfiguration
dhcpd_conf=DHCP server config fil,0

View File

@@ -7,7 +7,6 @@ lease_refresh=Sekunden zwischen dem Aktualisieren der Leasing-Liste,3,Niemals
show_ip=Zeige IP-Adressen für Hosts?,1,1-Ja,0-Nein
show_mac=Zeige MAC-Adressen für Hosts?,1,1-Ja,0-Nein
group_name=Zeige Gruppennamen als,1,1-<tt>domain&#45;name</tt> Option,0-Name oder Mitglied,2-Beschreibung
desc_name=Zeige andere Objektbeschreibungen statt Namen?,1,1-Ja,0-Nein
display_max=Maximale Anzahl an Subnetzen und Hosts zum Anzeigen,3,Unbegrenzt
add_file=Füge neue Subnetze&#44; Hosts und Gruppen in einer Datei hinzu,3,Haupt-Konfigurationsdatei
line2=Systemkonfiguration,11

View File

@@ -6,7 +6,6 @@ lease_tz=نمايش زمان انتساب داده شده‌ها براساس,1,
show_ip=آيا نشانيهاي IP براي ميزبانها نشان داده شود؟,1,1-بله,0-خير
show_mac=آيا نشانيهاي MACبراي ميزبانها نشان داده شود؟,1,1-بله,0-خير
group_name=نشان‌دادن نامهاي گروه به‌صورت,1,1- گزينه<tt> دامنه/نام </tt>,0-نام يا تعداد اعضا,2-شرح
desc_name=آيا ساير شرحها به جاي نام نشان داده شود؟,1,1-بله,0-خير
display_max=حداکثر تعداد زيرشبکه‌ها و ميزبانها جهت نمايش,3,نامحدود
line2=پيکربندي سيستم,11
dhcpd_conf=پرونده پيکربندي کارساز DHCP,0

View File

@@ -6,7 +6,6 @@ lease_tz=Afficher les temps de bail en,1,0-GMT,1-Temps local
show_ip=Montrer les adresses IP des postes ?,1,1-Oui,0-Non
show_mac=Montrer les adresses MAC des postes ?,1,1-Oui,0-Non
group_name=Montrer les noms de groupe comme,1,1-Nom de domaine,0-Nom ou numero de membre
desc_name=Montrer les descriptions au lieu des noms ?,1,1-Oui,0-Non
display_max=Nombre maximum de sous-reseaux et de postes a afficher,3,Illimite
line2=Configuration du systeme,11
dhcpd_conf=Fichier de configuration du serveur DHCP,0

View File

@@ -6,7 +6,6 @@ lease_tz=リース時間の表示形式,1,0-GMT,1-ローカル時間
show_ip=ホストのIPアドレスを表示しますか?,1,1-はい,0-いいえ
show_mac=ホストのMACアドレスを表示しますか?,1,1-はい,0-いいえ
group_name=グループ名の表示方法,1,1-<tt>ドメイン&#45;名</tt> オプション,0-名前またはメンバー数
desc_name=名称の替わりにオブジェクトの説明を表示しますか?,1,1-はい,0-いいえ
display_max=サブネットとホストの表示する最大数,3,無制限
line2=システム設定,11
dhcpd_conf=DHCPサーバ 設定ファイル,0

View File

@@ -7,7 +7,6 @@ lease_refresh=Seconden tussen verversen van lease lijst,3,Nooit
show_ip=Laat IP adressen zien voor hosts?,1,1-Ja,0-Nee
show_mac=Laat MAC adressen zien voor hosts?,1,1-Ja,0-Nee
group_name=Laat groep namen zien als,1,1-<tt>domein&#45;naam</tt> optie,0-Naam of Lid van,2-Omschrijving
desc_name=Laat andere object omschrijvingen zien in plaats van namen?,1,1-Ja,0-Nee
display_max=Maximum aantal subnets en hosts om te laten zien,3,Ongelimiteerd
add_file=Toevoegen nieuwe subnetten&#44; host en groepen aan file,3,Hoofd configuratie file
line2=Systeem configuratie,11

View File

@@ -7,7 +7,6 @@ lease_refresh=Sekunder mellom oppfrisking av liste med leieavtaler,3,Aldri
show_ip=Vis IP adresser for verter?,1,1-Ja,0-Nei
show_mac=Vis MAC adresser for verter?,1,1-Ja,0-Nei
group_name=Vis gruppenavn som,1,1-<tt>domene&#45;navn</tt> alternativ,0-Navn eller antall medlemmer,2-Beskrivelse
desc_name=Vis andre objektbeskrivelser i stedet for navn,1,1-Ja,0-Nei
display_max=Maks antall subnett og verter som skal vises,3,Ubegrenset
add_file=Legg til nye subnett&#44; verter og grupper i filen,3,Hoved konfigurasjonsfil
line2=System konfigurasjon,11

View File

@@ -7,7 +7,6 @@ lease_refresh=Sekund pomiędzy odświeżaniem listy dzierżawy,3,Nigdy
show_ip=Wyświetlać adres IP hostów?,1,1-Tak,0-Nie
show_mac=Wyświetlać adres MAC hostów?,1,1-Tak,0-Nie
group_name=Wyświetl nazwy grupy jako,1,1-<tt>domain&#45;name</tt>,0-Ilość lub nazwa użytkowników,2-Opis
desc_name=Wyświetlać inne opisy obiektów zamiast nazw,1,1-Tak,0-Nie
display_max=Maksymalna liczba wyświetlanych podsieci i hostów,3,Nieograniczona
add_file=Dodaj nowe podsieci&#44; hosty i grupy do pliku,3,Główny plik konfiguracyjny
line2=Opcje systemowe,11

View File

@@ -6,7 +6,6 @@ lease_tz=Display leases times in,1,0-GMT,1-Local time
show_ip=Mostrar endereço IP para computadores?,1,1-Sim,0-Não
show_mac=Mostrar endereço MAC para computadores?,1,1-Sim,0-Não
group_name=Mostrar nomes de grupo como,1,1-<tt>nome de&#45;domínio</tt>,0-Nome ou membro
desc_name=Mostrar descrição de objetos ao invés de nomes?,1,1-Sim,0-Não
display_max=Número máximo de subredes e computadores a serem
add_file=Acrescentar novas subredes&#44; hosts e grupos para arquivo,3,Arquivo principal de configuração
line2=Configuração do sistema,11

View File

@@ -6,7 +6,6 @@ lease_tz=Zobraziť časy pridelených adries v,1,0-GMT,1-Lokálnom čase
show_ip=Zobraziť IP adresy pre počítače?,1,1-Áno,0-Nie
show_mac=Zobraziť MAC adresy pre počítače?,1,1-Áno,0-Nie
group_name=Zobraziť skupinové mená ako ,1,1-<tt>doménové mená</tt> ,0-Meno alebo počet členov,2-Popis
desc_name=Ukázať popisy objektov namiesto ich názvov?,1,1-Áno,0-Nie
display_max=Maximálny počet subnetov a hostiteľov pre zobrazenie,3,Bez limitu
line2=Systémové nastavenia,11
dhcpd_conf=Konfiguračný súbor DHCP servera,0

View File

@@ -211,14 +211,18 @@ foreach $u (@subn) {
push(@sicons, $i = "images/shared.gif");
push(@checkboxids, $u->{'index'});
}
if ($config{'desc_name'} && $u->{'comment'}) {
push(@utitles, $t = &html_escape($u->{'comment'}));
if ($config{'desc_name'} == 0) {
$t = $u->{'values'}->[0];
}
elsif ($config{'desc_name'} == 1) {
$t = $u->{'comment'} || $u->{'values'}->[0];
}
else {
push(@utitles, $t = &html_escape($u->{'values'}->[0]));
$t = $u->{'values'}->[0].($u->{'comment'} ? " ($u->{'comment'})" : "");
}
push(@utitles, &html_escape($t));
push(@uslinks, $l); # so that ordering is preserved
push(@ustitles, $t);
push(@ustitles, &html_escape($t));
push(@usicons, $i);
}
@checkboxes = map { &ui_checkbox("d", $_) } @checkboxids;
@@ -336,12 +340,16 @@ foreach $h (@host) {
(defined($subnet{$h}) ? "&uidx=$subnet{$h}" : "").
(defined($shared{$h}) ? "&sidx=$shared{$h}" : "") :
undef);
if ($config{'desc_name'} && $h->{'comment'}) {
push(@htitles, &html_escape($h->{'comment'}));
if ($config{'desc_name'} == 0) {
$t = $h->{'values'}->[0];
}
elsif ($config{'desc_name'} == 1) {
$t = $h->{'comment'} || $h->{'values'}->[0];
}
else {
push(@htitles, &html_escape($h->{'values'}->[0]));
$t = $h->{'values'}->[0].($h->{'comment'} ? " ($h->{'comment'})" : "");
}
push(@htitles, &html_escape($t));
if ($config{'show_ip'}) {
$fv = &fixedaddr($h);
$htitles[$#htitles] .= "<br>".$fv if ($fv);
@@ -589,7 +597,13 @@ sub host_table
{
local ($i, $h, $parent);
local @tds = ( "width=5" );
print &ui_columns_start([ "", $text{'index_hostgroup'},
my $hascmt;
for ($i = $_[1]; $i < $_[2]; $i++) {
$hascmt++ if ($_[4]->[$i] =~ /\(.*\)/);
}
print &ui_columns_start([ "",
$text{'index_hostgroup'},
$hascmt ? ( $text{'index_comment'} ) : ( ),
$text{'index_parent'}, $text{'index_hardware'},
$text{'index_nameip'} ], 100, 0, \@tds);
for ($i = $_[1]; $i < $_[2]; $i++) {
@@ -605,6 +619,10 @@ for ($i = $_[1]; $i < $_[2]; $i++) {
$firstcol .= $text{'index_group'}." ";
$sp = "\&nbsp;\&nbsp;";
}
my $cmt;
if ($_[4]->[$i] =~ s/\s+\((.*)\)//) {
$cmt = $1;
}
if ($_[3]->[$i]) {
$firstcol .= &ui_link($_[3]->[$i], $_[4]->[$i]);
}
@@ -612,6 +630,7 @@ for ($i = $_[1]; $i < $_[2]; $i++) {
$firstcol .= $_[4]->[$i];
}
push(@cols, $firstcol);
push(@cols, $cmt) if ($hascmt);
if ($par{$h}->{'name'} eq "group") {
$par_type = $text{'index_togroup'};
@@ -640,7 +659,14 @@ sub net_table
{
local ($i, $n);
local @tds = ( "width=5" );
print &ui_columns_start([ "", $text{'index_net'}, $text{'index_netmask'},
my $hascmt;
for ($i = $_[1]; $i < $_[2]; $i++) {
$hascmt++ if ($_[4]->[$i] =~ /\(.*\)/);
}
print &ui_columns_start([ "",
$text{'index_net'},
$hascmt ? ( $text{'index_comment'} ) : ( ),
$text{'index_netmask'},
$text{'index_desc'}, $text{'index_parent'} ], 100,
0, \@tds);
for ($i = $_[1]; $i < $_[2]; $i++) {
@@ -653,6 +679,10 @@ for ($i = $_[1]; $i < $_[2]; $i++) {
else {
$sp = "\&nbsp;\&nbsp;";
}
my $cmt;
if ($_[4]->[$i] =~ s/\s+\((.*)\)//) {
$cmt = $1;
}
if ($_[3]->[$i]) {
$first .= &ui_link($_[3]->[$i],$_[4]->[$i]);
}
@@ -660,6 +690,7 @@ for ($i = $_[1]; $i < $_[2]; $i++) {
$first .= $_[4]->[$i];
}
push(@cols, $first);
push(@cols, $cmt) if ($hascmt);
push(@cols, $_[3]->[$i] ? &netmask($n) : "");
push(@cols, $n->{'comment'});
push(@cols, $par{$n} ?

View File

@@ -14,6 +14,7 @@ index_memb=$1 members
index_hst=Hosts and Host Groups
index_nohst=No hosts or groups have been defined.
index_hostgroup=Host/Group
index_comment=Description
index_parent=Parent
index_hardware=Hardware Address
index_group=Group:

View File

@@ -4,7 +4,10 @@ BEGIN { push(@INC, ".."); };
use WebminCore;
&init_config();
@supported_auths = ( "anonymous", "plain", "digest-md5", "cram-md5", "apop" );
@supported_auths = ( "anonymous", "plain", "digest-md5", "cram-md5", "apop",
"scram-sha-1", "scram-sha-256", "ntlm", "gss-spnego",
"gssapi", "rpa", "otp", "skey", "external",
"oauthbearer", "xoauth2" );
@mail_envs = ( undef, "maildir:~/Maildir", "mbox:~/mail/:INBOX=/var/mail/%u",
"maildir:~/Maildir:mbox:~/mail/" );
@@ -92,7 +95,7 @@ foreach (@lines) {
}
}
elsif (/^(\s*)(#?)([a-z0-9\_]+)\s+=\s*(.*)/) {
# A directive inside a section
# A directive which may or may not be inside a section
local $dir = { 'name' => $3,
'value' => $4,
'enabled' => !$2,
@@ -373,9 +376,9 @@ else {
}
}
splice(@$lref, $section->{'line'}, 0, @newlines);
$section->{'eline'} = $section->{'line'} + scalar(@newlines) - 1;
&renumber($conf, $section->{'eline'}, $section->{'file'},
scalar(@newlines)-$oldlen);
$section->{'eline'} = $section->{'line'} + scalar(@newlines) - 1;
$section->{'file'} = $file;
my $i = 1;
foreach my $m (@{$section->{'members'}}) {
@@ -388,6 +391,17 @@ foreach my $m (@{$section->{'members'}}) {
}
}
# delete_section(&conf, &section)
# Remove a section and all it's members from the config file
sub delete_section
{
my ($conf, $section) = @_;
my $lref = &read_file_lines($section->{'file'});
my $len = $section->{'eline'} - $section->{'line'} + 1;
splice(@$lref, $section->{'line'}, $len);
&renumber($conf, $section->{'line'}, $section->{'file'}, -$len);
}
# renumber(&conf, line, file, offset)
sub renumber
{

View File

@@ -29,9 +29,9 @@ else {
"auth", "default"));
}
print &ui_table_row($text{'login_mechs'},
&ui_select("mechs", \@mechs,
[ map { [ $_, $text{'login_'.$_} ] } @supported_auths ],
4, 1, 1));
&ui_select("mechs", \@mechs,
[ map { [ $_, $text{'login_'.$_} || uc($_) ] } @supported_auths ],
4, 1, 1));
print &ui_table_hr();

View File

@@ -92,6 +92,11 @@ login_plain=Plain-text
login_digest-md5=Digest-MD5
login_cram-md5=Cram-MD5
login_apop=APOP
login_otp=One time password
login_skey=Security key
login_oauthbearer=OAuth2 bearer authentication
login_xoauth2=Google OAuth2 bearer authentication
login_external=External SASL authentication
login_userdb=Data source for users, homes and IDs
login_passwd=Standard Unix user database
login_passwdfile=Custom password file $1

View File

@@ -30,15 +30,15 @@ print &ui_hidden("new", $in{'new'});
print &ui_hidden("old", $in{'name'});
print &ui_table_start($text{'jail_header'}, undef, 2);
# Jail name
print &ui_table_row($text{'jail_name'},
&ui_textbox("name", $jail->{'name'}, 30));
# Enabled or disabled?
my $enabled = &find_value("enabled", $jail);
print &ui_table_row($text{'jail_enabled'},
&ui_yesno_radio("enabled", $enabled =~ /true|yes|1/i));
# Jail name
print &ui_table_row($text{'jail_name'},
&ui_textbox("name", $jail->{'name'}, 30));
# Filter to match
my @filters = &list_filters();
my $filter = &find_value("filter", $jail);
@@ -49,6 +49,22 @@ print &ui_table_row($text{'jail_filter'},
map { &filename_to_name($_->[0]->{'file'}) } @filters ],
1, 0, $filter ? 1 : 0));
# Backend
my $backend = &find_value("backend", $jail);
print &ui_table_row($text{'jail_backend'},
&ui_select("backend", $backend || "",
[ [ "", "" ],
[ "auto", $text{'jail_auto'} ],
[ "systemd", $text{'jail_systemd'} ],
[ "polling", $text{'jail_polling'} ],
[ "gamin", $text{'jail_gamin'} ],
[ "pyinotify", $text{'jail_pyinotify'} ] ]));
# Ports to monitor
my $port = &find_value("port", $jail);
print &ui_table_row($text{'jail_ports'},
&ui_textbox("port", $port, 35));
# Actions to run
my $actionlist = &find("action", $jail);
my @actions = &list_actions();

View File

@@ -87,6 +87,7 @@ jail_title1=Create Jail
jail_title2=Edit Jail
jail_header=Filter action jail details
jail_name=Jail name
jail_ports=Ports to block
jail_egone=Jail no longer exists!
jail_enabled=Currently enabled?
jail_filter=Filter to search log for
@@ -104,6 +105,8 @@ jail_ignoreip=IP addresses to never ban
jail_err=Failed to save jail
jail_eclash=A jail with the same name already exists
jail_ename=Missing or invalid jail name
jail_ebackend=Invalid backend name
jail_eports=Invalid port name, number or range; use a single port name, number or a range in the form <tt>start:end</tt>; to specify multiple ports, separate them with commas
jail_eaname=Invalid looking name parameter for action $1
jail_eport=Invalid port number for action $1
jail_eactions=No actions selected!

View File

@@ -37,8 +37,7 @@ foreach my $j (@jails) {
print &ui_checked_columns_row([
&ui_link("edit_jail.cgi?name=".&urlize($j->{'name'}),
$j->{'name'}),
$enabled =~ /true|yes|1/i ? $text{'yes'} :
"<font color=red>$text{'no'}</font>",
$enabled =~ /true|yes|1/i ? $text{'yes'} : $text{'no'},
&html_escape($filter),
$action,
], \@tds, "d", $j->{'name'});

View File

@@ -55,7 +55,7 @@ if (@jails) {
$col =~ s/\s/_/g;
if ($col !~ /journal_matches/ &&
$col !~ /file_list/) {
push(@head, "<div $tdc>".$text{"status_head_$col"}."</div>");
push(@head, "<span $tdc>".$text{"status_head_$col"}."</span>");
if ($col =~ /banned_ip_list/) {
$jips = $val;
my @ips = split(/\s+/, $val);

View File

@@ -44,6 +44,14 @@ else {
$clash && &error($text{'jail_eclash'});
}
# Validate backend
!$in{'backend'} || $in{'backend'} =~ /^(auto|systemd|polling|gamin|pyinotify)$/ ||
&error($text{'jail_ebackend'});
# Validate ports (1234 or 1234:1245 or 1234:1245,1250,http or 1238,http,https)
$in{'port'} =~ s/\s+//g if ($in{'port'});
!$in{'port'} || $in{'port'} =~ /^(?!$)(?:[a-zA-Z]+|\d{1,5})(?:(?::\d{1,5})?)(?:,(?:[a-zA-Z]+|\d{1,5})(?:(?::\d{1,5})?)?)*$/gmi || &error($text{'jail_eports'});
# Parse and validate actions
my @actions;
for(my $i=0; defined($in{"action_$i"}); $i++) {
@@ -116,6 +124,8 @@ else {
# Save directives within the section
&save_directive("enabled", $in{'enabled'} ? 'true' : 'false', $jail);
&save_directive("filter", $in{'filter'} || undef, $jail);
&save_directive("backend", $in{'backend'} || undef, $jail);
&save_directive("port", $in{'port'} || undef, $jail);
&save_directive("action", @actions ? join("\n", @actions)
: undef, $jail);
&save_directive("logpath", join("\n", @logpaths), $jail);

View File

@@ -349,6 +349,9 @@ if ($fh6) {
}
while(1) {
$$port++;
if ($$port < 0 || $$port > 65535) {
return "Failed to allocate a free port number: $$port";
}
$pack = pack_sockaddr_in($$port, INADDR_ANY);
next if (!bind($fh, $pack));
if ($fh6) {
@@ -363,4 +366,3 @@ if ($fh6) {
}
return undef;
}

3
filemin/config.info.uk Normal file
View File

@@ -0,0 +1,3 @@
max=Maximum size for uploaded files,3,Unlimited
config_portable_module_filemanager_editor_detect_encoding=Fix to prevent encoding detection if forbidden,1,true-Yes,false-No
config_portable_module_filemanager_show_dot_files=Show hidden files,1,true-Yes,false-No

View File

@@ -1,3 +1,3 @@
allowed_paths=$HOME
work_as_root=1
allowed_for_edit=application-x-php application-x-ruby application-xml application-xslt+xml application-javascript application-x-shellscript application-x-perl application-x-yaml application-json application-x-x509-ca-cert application-pkix-cert application-sql application-x-sql application-x-asp application-x-aspx application-xhtml+xml
allowed_for_edit=application-x-php application-x-ruby application-xml application-xslt+xml application-javascript application-x-shellscript application-x-perl application-x-yaml application-json application-x-x509-ca-cert application-pkix-cert application-x-sql application-x-asp application-x-aspx application-xhtml+xml

View File

@@ -169,6 +169,9 @@ sub print_interface {
local $upid = time().$$;
$bookmarks = get_bookmarks();
@allowed_for_edit = split(/\s+/, $access{'allowed_for_edit'});
# Some experimental MIME types are now recognized
push(@allowed_for_edit, map { (my $__ = $_) =~ s/-x-/-/;
$__ ne $_ ? $__ : () } @allowed_for_edit);
%allowed_for_edit = map { $_ => 1} @allowed_for_edit;
my %tinfo = &get_theme_info($current_theme);

179
filemin/lang/uk Normal file
View File

@@ -0,0 +1,179 @@
about_to_delete=Ви збираєтесь видалити такі елементи:
acl_allowed_for_edit=Mimetypes, дозволені для редагування вбудованим редактором
acl_allowed_paths=Дозволити доступ до каталогів
acl_allowed_paths_explain=Для користувача з привілеями root, якщо дозволено каталог встановлено лише в $HOME, це буде еквівалентно / (повний доступ до диска)
acl_bytes=байтів
acl_epath=Шлях $1 не існує
acl_euser=Вибраного користувача Unix не існує!
acl_max=Максимальний розмір для завантажених файлів
acl_root=Root (з обережністю надавайте недовіреним користувачам!)
acl_same=Те саме, що вхід у Webmin
acl_unlimited=Необмежений
acl_user=Конкретний користувач Unix
acl_work_as=Доступ до файлів від імені користувача Unix
acls=Список контролю доступу
acls_action=Дія
acls_applyto=Застосувати до
acls_error=Команду <tt>setfacl</tt> не знайдено у вашій системі
acls_group=Група
acls_label=Контрольний список для застосування
acls_manual=Ручні параметри
acls_mask=Маска
acls_other=Інший
acls_perms=Дозволи
acls_selected=Setfacl обрано
acls_user=Користувач
actions=Дії
archive_name=Назва архіву
are_you_sure=Ви впевнені?
attr_label=Атрибути, які потрібно застосувати
attr_label_error=Атрибути повинні бути вказані
attr_label_error_proc=Не вдалося змінити атрибути
attributes=Атрибути
bookmark_folder=Додати поточну теку в закладки
browse_for_upload=Огляд для завантаження
chattr_selected=Chattr обрано
chcon_selected=Chcon обрано
chmod_additional=Додатковий
chmod_all=Усі (рекурсивно)
chmod_apply_to=Застосувати до
chmod_dir_and_its_files=Обрані файли та каталоги та файли у обраних каталогах
chmod_dir_and_subs=Обрані каталоги та підкаталоги
chmod_dir_files_and_subs_files=Обрані файли та файли у обраних каталогах та підкаталогах
chmod_dir_only=Лише вибрані каталоги та файли
chmod_execute=Виконати
chmod_group=Групувати
chmod_others=Інші
chmod_owner=Власник
chmod_read=Читання
chmod_selected=Chmod обрано
chmod_setgid=Setgid
chmod_sticky=Клейкий біт
chmod_write=Запис
chown_selected=Chown обрано
compress_selected=Стиснення обраного
config_bookmarks=Закладки
config_columns_to_display=Стовпці для відображення
config_per_page=Елементи для відображення на сторінці
context_label=Контекст для застосування
context_label_error=Контекст безпеки не може бути порожнім
context_label_error_proc=Не вдалося змінити контекст безпеки
copy_selected=Копіювати обране
count_uploads=обрані файли для завантаження
create=Створити
create_file=Створити файл
create_folder=Створити каталог
cut_selected=Вирізати обране
delete=Видалити
dialog_cancel=Скасувати
dialog_change=Змінити
dialog_compress=Стискати
dialog_download=Завантажити
dialog_file_url=URL-адреса файлу для завантаження
dialog_ok=ОК
dialog_recursive=Рекурсивний
dialog_user_name=Ім'я користувача віддаленого сервера (за необхідності)
dialog_user_pass=Віддалений пароль сервера (за необхідності)
edit=Редагувати
edit_file=Редагувати файл
error_archive_type_not_supported=тип архіву ще не підтримується
error_chmod=Не вдалося змінити дозволи
error_chown=Не вдалося змінити власника
error_copy=помилка копіювання:
error_create=не вдалося створити:
error_creating_conf=Помилка створення каталогу конфігурації
error_cut=помилка переміщення:
error_delete=не вдалося видалити
error_exists=вже існує, пропускаючи
error_group_not_found=групи не існує в цій системі
error_invalid_uri=Помилка: не вказана дійсна URL-адреса!
error_load_template=Помилка завантаження файлу шаблону
error_numeric=повинні бути числовими!
error_opendir=Помилка відкриття каталогу
error_opening_file_for_writing=Не вдалося відкрити файл для запису:
error_pasting_nonsence=Вставляти в один і той же каталог немає сенсу
error_rename=Не вдалося перейменувати
error_saving_file=Помилка збереження файлу
error_title=Помилка!
error_upload_emax=Завантажений файл перевищує обмеження $1
error_user_not_found=Користувач не знайдений у цій системі
error_writing_file=Помилка написання файлу:
errors_occured=Наступні помилки сталися під час виконання операції
extract_archive=Розпакувати Архів
extract_cmd_not_avail=Не вдалося витягти файл $1, оскільки команда $2 відсутня
extract_etype=Непідтримуваний тип файлу архіву
extract_uploaded=Розпакувати стиснутий
file_already_exists=вже існує в
file_detect_encoding=Автоматично виявляти кодування файлів
file_showhiddenfiles=Показати приховані файли
files_ready_for_upload=Перегляд обраних файлів
get_from_url=Отримати URL-адресу
goto_folder=Перейти до каталогу, що містить
group_name=Назва групи
hint_chmod=Змінення дозволів для обраних файлів і каталогів
hint_chown=Зміна власника обраних файлів та каталогів
hint_compress=Стисніть обрані файли та каталоги до архіву tar.gz
hint_copy=Скопіюйте обрані файли та каталоги в буфер
hint_create_file=Створіть новий файл у поточному каталозі
hint_create_folder=Створіть новий каталог у поточному шляху
hint_cut=Виріжте обрані файли та каталоги в буфер
hint_from_url=Отримати файл із віддаленої URL-адреси
hint_paste=Вставте файли та каталоги з буфера
hint_remove=Видаллити обрані файли та каталоги
hint_upload=Завантажити файли в поточний каталог
http_done=Завантажено $1 до $2.
http_downloading=Завантаження
index=Покажчик
index_return=список файлів
info_total1=Всього: $1 файл і $2 каталог
info_total2=Всього: $1 файлів і $2 каталог
info_total3=Всього: $1 файл та $2 каталоги
info_total4=Всього: $1 файлів і $2 каталогів
invert_selection=Інвертувати вибір
last_mod_time=Змінено
menu_bookmarks=Закладки
menu_edit=Редагувати
menu_file=Файл
menu_tools=Інструменти
module_config=Конфігурація модуля
name=Ім'я
new_file_name=Нове ім'я файлу
new_folder_name=Нова назва каталогу
new_name=Нове ім’я
no_bookmarks=Ще немає закладок
notallowed=Вам не дозволено доступ до $1. Дозволені каталоги : $2
nothing_selected=Нічого не обрано
overwrite_existing=Перезаписати існуючий
owner_group=Група власників
owner_user=Власник
ownership=Власник
paste=Вставити
permissions=Режим
previous_page=Попередня сторінка
provide_file_name=Вкажіть ім'я файлу
provide_folder_name=Вкажіть назву каталогу
provide_group_name=Вкажіть назву групи
provide_new_file_name=Введіть нове ім'я файлу
provide_search_query=Надайте пошуковий запит
provide_url=Надайте URL-адресу віддаленого файлу
provide_user_name=Вкажіть ім’я користувача
refresh=Оновити
remove_selected=Видалити обране
rename=Перейменувати
save=Зберегти
save_close=Зберегти і закрити
save_file=Зберегти файл
search=Пошук
search_go=Знайти
search_insensitive=Пошук без врахування регістру
search_label=Пошуковий запит
search_results=Результати пошуку для
select_all=Вибрати все
selinux=Контекст безпеки
size=Розмір
type=Тип
upload_dirs=Завантаження каталогу
upload_files=Завантажити файли
uploading=Завантаження, зачекайте. ..
user_name=Ім'я користувача
warning_title=Увага!

View File

@@ -0,0 +1,6 @@
name_uk=Файловий менеджер
desc_uk=Файловий менеджер
longdesc_uk=Швидкий і легкий менеджер файлів, написаний на Perl.
name=Файловий менеджер
desc=Файловий менеджер
longdesc=Швидкий і легкий менеджер файлів, написаний на Perl.

View File

@@ -306,7 +306,7 @@
<form name="chmod" id="chmodForm">
<div class="form-group">
<label for="t_total">$text{'permissions'}:&nbsp; </label>
<input id="perms" type="text" name="t_total" value="0644" size="4" onKeyUp="octalchange()" class="form-group-item">
<input id="perms" type="text" oninput="if(this.value.length>4)this.value=this.value.slice(0,4)" name="t_total" value="0644" size="4" onKeyUp="octalchange()" class="form-group-item">
<input type="text" name="sym_total" value="" size="12" readonly="true" class="form-group-item">
</div>
<table class="table">

View File

@@ -173,7 +173,7 @@
<form name="chmod" id="chmodForm">
<div class="form-group">
<label for="t_total">$text{'permissions'}:&nbsp; </label><br>
<input id="perms" type="text" name="t_total" value="0644" size="4" onKeyUp="octalchange()" class="form-group-item">
<input id="perms" type="text" oninput="if(this.value.length>4)this.value=this.value.slice(0,4)" name="t_total" value="0644" size="4" onKeyUp="octalchange()" class="form-group-item">
<input type="text" name="sym_total" value="" size="12" readonly="true" class="form-group-item">
</div>
<table class="table">

33
firewalld/block_ip.cgi Executable file
View File

@@ -0,0 +1,33 @@
#!/usr/local/bin/perl
# Block given IP
use strict;
use warnings;
no warnings 'redefine';
no warnings 'uninitialized';
require './firewalld-lib.pl';
our (%in, %text);
&error_setup($text{'block_err'});
&ReadParse();
# Get the zone
my @zones = &list_firewalld_zones();
my ($zone) = grep { $_->{'name'} eq $in{'zone'} } @zones;
$zone || &error($text{'port_ezone'});
# Get the IP
my $ip = $in{'ip'};
$ip || &error($text{'block_eip'});
# Validate the IPv4 or IPv6 address/mask
my $mask = $ip =~ s/(\/\d+)$// ? $1 : "";
$ip =~ s/\Q$mask\E// if ($mask);
&check_ipaddress($ip) || &check_ip6address($ip) || &error($text{'block_eip'});
# Block the IP
my $perm = $in{'permanent'} ? 'perm' : '';
my $err = &block_ip("$ip$mask", $zone->{'name'}, $perm);
&error($err) if ($err);
&webmin_log("ip", "${perm}block", "$ip$mask");
&redirect("index.cgi?zone=".&urlize($zone->{'name'}));

View File

@@ -1,3 +1,4 @@
firewall_cmd=firewall-cmd
init_name=firewalld
config_dir=/etc/firewalld
packet_handling=drop

View File

@@ -1,3 +1,4 @@
firewall_cmd=Full path to firewall-cmd program,0
init_name=FirewallD init script name,0
config_dir=FirewallD configuration directory,0
packet_handling=Default packet handling action,1,0-<tt>drop</tt>,1-<tt>reject</tt>

View File

@@ -504,4 +504,21 @@ my $conf_dir = $config{'config_dir'} || '/etc/firewalld';
return (glob("$conf_dir/*.xml"), glob("$conf_dir/*/*.xml"));
}
# block_ip(ip, zone, [permanent])
# Block given IP address temporarily or permanently
sub block_ip
{
my ($ip, $zone, $permanent) = @_;
my $type = $permanent ? ' --permanent' : "";
my $family = $ip =~ /:/ ? 'ipv6' : 'ipv4';
my $handle_action = $config{'packet_handling'} eq '1' ? 'reject' : 'drop';
my $out = &backquote_logged(
"$config{'firewall_cmd'}$type --zone=".quotemeta($zone).
" --add-rich-rule=\"rule family=$family source address=".
quotemeta($ip)." $handle_action\" 2>&1");
my $rs = $? ? $out : undef;
&apply_firewalld() if ($permanent);
return $rs;
}
1;

View File

@@ -148,6 +148,17 @@ if ($ok) {
print &ui_form_end();
}
# Block given IP
my $blockip_placeholder =
&text('index_blockip_placeholder', '1.2.3.4', '2001:db8::1/64');
print "<br>".&ui_form_start("block_ip.cgi");
print &ui_hidden("zone", $zone->{'name'});
print &ui_submit($text{'index_blockip_go'}, "block"),
&ui_textbox("ip", undef, 21, undef, undef,
"placeholder='$blockip_placeholder'")."&nbsp;".
&ui_checkbox("permanent", 1,
$text{'index_blockip_permanent'}, 1);
print &ui_form_end();
print &ui_hr();
# Show start/apply buttons
@@ -162,7 +173,10 @@ if ($ok) {
print &ui_buttons_row("stop.cgi", $text{'index_stop'},
$text{'index_stopdesc'},
[ [ "zone", $zone->{'name'} ] ]);
}
}
else {
print &ui_alert_box($text{'index_downrules'}, 'warn');
}
# Show Start and disable/enabled at boot button
if (!$ok) {

View File

@@ -33,6 +33,12 @@ index_ifaces=Pas reëls toe op koppelvlakke:
index_ifaces_def=Alle koppelvlakke
index_ifaces_sel=Geselekteerde koppelvlakke:
index_ifaces_apply=Doen aansoek
ifaces_err=Kon nie koppelvlakke toepas nie
index_blockip_go=Blokkeer IP/CIDR
index_blockip_placeholder=$1 of $2
index_blockip_permanent=Permanente blok
block_err=Kon nie IP blokkeer nie
block_eip=Ongeldige IP-adres of CIDR-reeks
index_listrules=Lys FirewallD-reëls
index_restart_firewalld=Herlaai FirewallD
index_restart_firewallddesc=Herlaai die FirewallD-bediener en pas die reëls toe wat permanent geskep is.
@@ -142,6 +148,8 @@ log_delete_forward=Vorentoe $1 verwyder
log_update_forward=Opgedateer vorentoe $1
log_delete_rules=$1 toegelate hawens is verwyder
log_ifaces_zone=Opgedateerde koppelvlakke vir sone $1
log_ip_block=IP/CIDR $1 tydelik geblokkeer
log_ip_permblock=Permanent geblokkeer IP/CIDR $1
log_create_zone=Sone $1 geskep
log_delete_zone=Sone $1 is verwyder
log_default_zone=Sone $1 is standaard gemaak

View File

@@ -33,6 +33,12 @@ index_ifaces=تطبيق القواعد على الواجهات:
index_ifaces_def=جميع الواجهات
index_ifaces_sel=واجهات مختارة:
index_ifaces_apply=يتقدم
ifaces_err=فشل في تطبيق الواجهات
index_blockip_go=حظر IP/CIDR
index_blockip_placeholder=٪1 او 2
index_blockip_permanent=كتلة دائمة
block_err=فشل في حظر IP
block_eip=عنوان IP أو نطاق CIDR غير صالح
index_listrules=سرد قواعد جدار الحماية
index_restart_firewalld=إعادة تحميل جدار الحماية د
index_restart_firewallddesc=أعد تحميل خادم FirewallD وقم بتطبيق القواعد التي تم إنشاؤها بشكل دائم.
@@ -142,6 +148,8 @@ log_delete_forward=تمت إعادة التوجيه$1
log_update_forward=تم التحديث للأمام$1
log_delete_rules=تمت إزالة$1 من المنافذ المسموح بها
log_ifaces_zone=واجهات محدثة للمنطقة$1
log_ip_block=تم حظر IP/CIDR $1 مؤقتًا
log_ip_permblock=تم حظر IP/CIDR $1 بشكل دائم
log_create_zone=المنطقة التي تم إنشاؤها$1
log_delete_zone=المنطقة المحذوفة$1
log_default_zone=جعل المنطقة$1 هي الافتراضية

View File

@@ -33,6 +33,12 @@ index_ifaces=Прымяніць правілы да інтэрфейсаў:
index_ifaces_def=Усе інтэрфейсы
index_ifaces_sel=Выбраныя інтэрфейсы:
index_ifaces_apply=Ужыць
ifaces_err=Не ўдалося прымяніць інтэрфейсы
index_blockip_go=Блакіраваць IP/CIDR
index_blockip_placeholder=$1 або $2
index_blockip_permanent=Пастаянны блок
block_err=Не ўдалося заблакіраваць IP
block_eip=Няправільны IP-адрас або дыяпазон CIDR
index_listrules=Пералічыце правілы FirewallD
index_restart_firewalld=Перазагрузіце FirewallD
index_restart_firewallddesc=Перазагрузіце сервер FirewallD і прымяніце правілы, якія былі створаны пастаянна.
@@ -142,6 +148,8 @@ log_delete_forward=Выдалены наперад $1
log_update_forward=Абноўлены наперад $1
log_delete_rules=Выдалены $1 дазволены парты
log_ifaces_zone=Абноўлены інтэрфейс для зоны $1
log_ip_block=Часова заблакіраваны IP/CIDR $1
log_ip_permblock=Назаўжды заблакіраваны IP/CIDR $1
log_create_zone=Створана зона $1
log_delete_zone=Выдалена зона $1
log_default_zone=Зроблена зона $1 па змаўчанні

View File

@@ -33,6 +33,12 @@ index_ifaces=Прилагане на правила към интерфейси
index_ifaces_def=Всички интерфейси
index_ifaces_sel=Избрани интерфейси:
index_ifaces_apply=Приложи
ifaces_err=Неуспешно прилагане на интерфейси
index_blockip_go=Блокиране на IP/CIDR
index_blockip_placeholder=$1 или $2
index_blockip_permanent=Постоянен блок
block_err=Неуспешно блокиране на IP
block_eip=Невалиден IP адрес или CIDR диапазон
index_listrules=Избройте правилата на FirewallD
index_restart_firewalld=Презаредете FirewallD
index_restart_firewallddesc=Презаредете сървъра на FirewallD и приложете правилата, които са били създадени за постоянно.
@@ -142,6 +148,8 @@ log_delete_forward=Премахнат напред $1
log_update_forward=Актуализиран напред $1
log_delete_rules=Премахнати $1 разрешени портове
log_ifaces_zone=Актуализирани интерфейси за зона $1
log_ip_block=Временно блокиран IP/CIDR $1
log_ip_permblock=Постоянно блокиран IP/CIDR $1
log_create_zone=Създадена зона $1
log_delete_zone=Изтрита зона $1
log_default_zone=Направена зона $1 по подразбиране

View File

@@ -3,6 +3,12 @@ index_zoneadd=Afegeix una zona
index_ifaces_def=Totes les interfícies
index_ifaces_sel=Interfícies seleccionades:
index_ifaces_apply=Aplicar
ifaces_err=No s'han pogut aplicar les interfícies
index_blockip_go=Bloqueja IP/CIDR
index_blockip_placeholder=$1 o $2
index_blockip_permanent=Bloc permanent
block_err=No s'ha pogut bloquejar la IP
block_eip=L'adreça IP o l'interval CIDR no són vàlids
index_listrules=Llista les regles del tallafocD
index_restart_firewalld=Torneu a carregar FirewallD
index_restart_firewallddesc=Torneu a carregar el servidor FirewallD i apliqueu les regles que es van crear permanentment.
@@ -31,3 +37,6 @@ list_rules_action=Acció
list_rules_rule=Regla
list_rules_plus_more=+ $1 més
log_save_rules=Regles $1 suprimides
log_ip_block=IP/CIDR bloquejat temporalment $1
log_ip_permblock=IP/CIDR bloquejat permanentment $1

View File

@@ -33,6 +33,12 @@ index_ifaces=Použít pravidla na rozhraní:
index_ifaces_def=Všechna rozhraní
index_ifaces_sel=Vybraná rozhraní:
index_ifaces_apply=Aplikovat
ifaces_err=Nepodařilo se použít rozhraní
index_blockip_go=Blokovat IP/CIDR
index_blockip_placeholder=$1 nebo $2
index_blockip_permanent=Trvalý blok
block_err=Blokování IP se nezdařilo
block_eip=Neplatná adresa IP nebo rozsah CIDR
index_listrules=Seznam pravidel FirewallD
index_restart_firewalld=Znovu načtěte FirewallD
index_restart_firewallddesc=Znovu načtěte server FirewallD a použijte pravidla, která byla trvale vytvořena.
@@ -142,6 +148,8 @@ log_delete_forward=Odebráno dopředu $1
log_update_forward=Aktualizováno dopředu $1
log_delete_rules=Byly odebrány $1 povolené porty
log_ifaces_zone=Aktualizovaná rozhraní pro zónu $1
log_ip_block=Dočasně zablokovaná IP/CIDR $1
log_ip_permblock=Trvale blokovaná IP/CIDR $1
log_create_zone=Vytvořená zóna $1
log_delete_zone=Odstraněná zóna $1
log_default_zone=Výchozí byla zóna $1

View File

@@ -33,6 +33,12 @@ index_ifaces=Anvend regler på grænseflader:
index_ifaces_def=Alle grænseflader
index_ifaces_sel=Udvalgte grænseflader:
index_ifaces_apply=ansøge
ifaces_err=Kunne ikke anvende grænseflader
index_blockip_go=Bloker IP/CIDR
index_blockip_placeholder=$1 eller $2
index_blockip_permanent=Permanent blokering
block_err=Kunne ikke blokere IP
block_eip=Ugyldig IP-adresse eller CIDR-interval
index_listrules=Liste FirewallD-regler
index_restart_firewalld=Genindlæs FirewallD
index_restart_firewallddesc=Genindlæs FirewallD-serveren, og anvend de regler, der blev oprettet permanent.
@@ -142,6 +148,8 @@ log_delete_forward=Fjernet frem $1
log_update_forward=Opdateret fremad $1
log_delete_rules=Fjernet $1 tilladte porte
log_ifaces_zone=Opdaterede grænseflader for zone $1
log_ip_block=Midlertidigt blokeret IP/CIDR $1
log_ip_permblock=Permanent blokeret IP/CIDR $1
log_create_zone=Oprettet zone $1
log_delete_zone=Zonet $1 er slettet
log_default_zone=Oprettet zone $1 til standard

View File

@@ -3,6 +3,12 @@ index_zoneadd=Zone hinzufügen
index_ifaces_def=Alle Schnittstellen
index_ifaces_sel=Ausgewählte Schnittstellen:
index_ifaces_apply=Anwenden
ifaces_err=Schnittstellen konnten nicht angewendet werden
index_blockip_go=IP/CIDR blockieren
index_blockip_placeholder=$1 oder 2
index_blockip_permanent=Dauerhafte Sperre
block_err=IP konnte nicht blockiert werden
block_eip=Ungültige IP-Adresse oder ungültiger CIDR-Bereich
index_listrules=FirewallD-Regeln auflisten
index_restart_firewalld=Laden Sie FirewallD neu
index_restart_firewallddesc=Laden Sie den FirewallD-Server neu und wenden Sie die dauerhaft erstellten Regeln an.
@@ -35,3 +41,5 @@ log_save_rules=$1 Regeln gelöscht
log_create_forward=Vorwärts $1 hinzugefügt
log_delete_forward=Vorwärts $1 entfernt
log_update_forward=Vorwärts $1 aktualisiert
log_ip_block=Vorübergehend blockierte IP/CIDR $1
log_ip_permblock=Dauerhaft blockierte IP/CIDR $1

View File

@@ -33,6 +33,12 @@ index_ifaces=Εφαρμογή κανόνων σε διεπαφές:
index_ifaces_def=Όλες οι διεπαφές
index_ifaces_sel=Επιλεγμένες διεπαφές:
index_ifaces_apply=Ισχύουν
ifaces_err=Αποτυχία εφαρμογής διεπαφών
index_blockip_go=Αποκλεισμός IP/CIDR
index_blockip_placeholder=$1 ή $2
index_blockip_permanent=Μόνιμο μπλοκ
block_err=Αποτυχία αποκλεισμού IP
block_eip=Μη έγκυρη διεύθυνση IP ή εύρος CIDR
index_listrules=Λίστα Κανόνων FirewallD
index_restart_firewalld=Επανάληψη φόρτωσης FirewallD
index_restart_firewallddesc=Φορτώστε ξανά τον διακομιστή FirewallD και εφαρμόστε τους κανόνες που δημιουργήθηκαν μόνιμα.
@@ -142,6 +148,8 @@ log_delete_forward=Κατάργηση προς τα εμπρός $1
log_update_forward=Ενημερώθηκε προς τα εμπρός $1
log_delete_rules=Αφαιρέθηκαν $1 επιτρεπόμενες θύρες
log_ifaces_zone=Ενημερώθηκαν διεπαφές για τη ζώνη $1
log_ip_block=Προσωρινά αποκλεισμένη IP/CIDR $1
log_ip_permblock=Μόνιμα αποκλεισμένη IP/CIDR $1
log_create_zone=Δημιουργημένη ζώνη $1
log_delete_zone=Διαγραμμένη ζώνη $1
log_default_zone=Η ζώνη $1 είναι η προεπιλογή

View File

@@ -33,12 +33,19 @@ index_ifaces=Apply rules to
index_ifaces_def=All interfaces
index_ifaces_sel=Selected interfaces:
index_ifaces_apply=Apply
ifaces_err=Failed to apply interfaces
index_blockip_go=Block IP/CIDR
index_blockip_placeholder=$1 or $2
index_blockip_permanent=Permanent block
block_err=Failed to block IP
block_eip=Invalid IP address or CIDR range
index_listrules=List FirewallD Rules
index_restart_firewalld=Reload FirewallD
index_restart_firewallddesc=Reload the FirewallD server and apply the rules that were permanently created.
index_listrules_restartdesc=List details about existing rich and direct FirewallD rules in $1 zone.
index_dependent=Failed to restart $1 dependent service
index_manual=Edit Config Files.
index_downrules=FirewallD rules cannot be created or edited and are not enforced unless the server is running.
manual_title=Edit Config Files
manual_editsel=Edit FirewallD configuration file
@@ -143,6 +150,8 @@ log_delete_forward=Removed forward $1
log_update_forward=Updated forward $1
log_delete_rules=Removed $1 allowed ports
log_ifaces_zone=Updated interfaces for zone $1
log_ip_block=Temporarily blocked IP/CIDR $1
log_ip_permblock=Permanently blocked IP/CIDR $1
log_create_zone=Created zone $1
log_delete_zone=Deleted zone $1
log_default_zone=Made zone $1 the default

View File

@@ -33,6 +33,12 @@ index_ifaces=Aplicar reglas a las interfaces:
index_ifaces_def=Todas las interfaces
index_ifaces_sel=Interfaces seleccionadas:
index_ifaces_apply=Aplicar
ifaces_err=No se pudieron aplicar las interfaces
index_blockip_go=Bloquear IP/CIDR
index_blockip_placeholder=$1 o 2
index_blockip_permanent=Bloqueo permanente
block_err=No se pudo bloquear la IP
block_eip=Dirección IP o rango CIDR no válido
index_listrules=Lista de reglas de FirewallD
index_restart_firewalld=Recargar FirewallD
index_restart_firewallddesc=Vuelva a cargar el servidor FirewallD y aplique las reglas que se crearon de forma permanente.
@@ -142,6 +148,8 @@ log_delete_forward=Eliminado adelante $1
log_update_forward=Actualización adelantada $1
log_delete_rules=Se eliminaron $1 puertos permitidos
log_ifaces_zone=Interfaces actualizadas para la zona $1
log_ip_block=IP/CIDR $1 bloqueado temporalmente
log_ip_permblock=IP/CIDR $1 bloqueado permanentemente
log_create_zone=Zona creada $1
log_delete_zone=Zona eliminada $1
log_default_zone=Zona $1 predeterminada

View File

@@ -33,6 +33,12 @@ index_ifaces=Aplikatu arauak interfazeei:
index_ifaces_def=Interfaze guztiak
index_ifaces_sel=Hautatutako interfazeak:
index_ifaces_apply=Aplikatu
ifaces_err=Ezin izan dira aplikatu interfazeak
index_blockip_go=Blokeatu IP/CIDR
index_blockip_placeholder=$1 edo $2
index_blockip_permanent=Bloke iraunkorra
block_err=Ezin izan da IP blokeatu
block_eip=IP helbidea edo CIDR barruti baliogabea
index_listrules=Zerrendatu FirewallD Arauak
index_restart_firewalld=Berriz kargatu FirewallD
index_restart_firewallddesc=Berriz kargatu FirewallD zerbitzaria eta aplikatu betirako sortu ziren arauak.
@@ -142,6 +148,8 @@ log_delete_forward=$1 aurreratu da
log_update_forward=$1 aurrera eguneratu da
log_delete_rules=$1 baimendu dira portuak
log_ifaces_zone=$1 zonako interfaze eguneratuak
log_ip_block=IP/CIDR $1 aldi baterako blokeatuta
log_ip_permblock=$1 IP/CIDR behin betiko blokeatuta
log_create_zone=$1 zona sortua
log_delete_zone=$1 zona ezabatu da
log_default_zone=$1 gune lehenetsia

View File

@@ -33,6 +33,12 @@ index_ifaces=قوانین رابط رابط اعمال کنید:
index_ifaces_def=همه اینترفیس ها
index_ifaces_sel=رابط های انتخاب شده:
index_ifaces_apply=درخواست دادن
ifaces_err=واسط ها اعمال نشدند
index_blockip_go=مسدود کردن IP/CIDR
index_blockip_placeholder=$1 یا $2
index_blockip_permanent=بلوک دائمی
block_err=IP مسدود نشد
block_eip=آدرس IP یا محدوده CIDR نامعتبر است
index_listrules=قوانین FirewallD را فهرست کنید
index_restart_firewalld=فایروالD را دوباره بارگذاری کنید
index_restart_firewallddesc=سرور FirewallD را دوباره بارگیری کنید و قوانینی را که به طور دائم ایجاد شده اند اعمال کنید.
@@ -142,6 +148,8 @@ log_delete_forward=جلو$1 حذف شد
log_update_forward=به روز شده$1
log_delete_rules=$1 پورت مجاز حذف شد
log_ifaces_zone=رابط های منطقه $1 به روز شدند
log_ip_block=IP/CIDR $1 موقتاً مسدود شده است
log_ip_permblock=IP/CIDR $1 برای همیشه مسدود شده است
log_create_zone=منطقه ایجاد شده$1
log_delete_zone=منطقه$1 حذف شد
log_default_zone=منطقه$1 به طور پیش فرض ساخته شده است

View File

@@ -33,6 +33,12 @@ index_ifaces=Käytä sääntöjä rajapintoihin:
index_ifaces_def=Kaikki käyttöliittymät
index_ifaces_sel=Valitut käyttöliittymät:
index_ifaces_apply=Käytä
ifaces_err=Liitäntöjen käyttöönotto epäonnistui
index_blockip_go=Estä IP/CIDR
index_blockip_placeholder=$1 tai $2
index_blockip_permanent=Pysyvä lohko
block_err=IP:n estäminen epäonnistui
block_eip=Virheellinen IP-osoite tai CIDR-alue
index_listrules=Luettele FirewallD-säännöt
index_restart_firewalld=Lataa FirewallD uudelleen
index_restart_firewallddesc=Lataa FirewallD-palvelin uudelleen ja käytä pysyvästi luotuja sääntöjä.
@@ -142,6 +148,8 @@ log_delete_forward=Poistettu eteenpäin $1
log_update_forward=Päivitetty eteenpäin $1
log_delete_rules=Poistettu $1 sallitut portit
log_ifaces_zone=Päivitetyt rajapinnat vyöhykkeelle $1
log_ip_block=Tilapäisesti estetty IP/CIDR $1
log_ip_permblock=Pysyvästi estetty IP/CIDR $1
log_create_zone=Luotu alue 1
log_delete_zone=Poistettu vyöhyke $1
log_default_zone=Tehty vyöhyke $1 oletusarvoksi

View File

@@ -33,6 +33,12 @@ index_ifaces=Appliquer des règles aux interfaces:
index_ifaces_def=Toutes les interfaces
index_ifaces_sel=Interfaces sélectionnées :
index_ifaces_apply=Appliquer
ifaces_err=Échec de l'application des interfaces
index_blockip_go=Bloquer l'IP/CIDR
index_blockip_placeholder=$1 ou 2
index_blockip_permanent=Blocage permanent
block_err=Échec du blocage de l'adresse IP
block_eip=Adresse IP ou plage CIDR invalide
index_listrules=Répertorier les règles FirewallD
index_restart_firewalld=Recharger le pare-feuD
index_restart_firewallddesc=Rechargez le serveur FirewallD et appliquez les règles créées définitivement.
@@ -142,6 +148,8 @@ log_delete_forward=Supprimé vers l'avant $1
log_update_forward=Mise à jour vers l'avant $1
log_delete_rules=Suppression de $1 ports autorisés
log_ifaces_zone=Interfaces mises à jour pour la zone $1
log_ip_block=IP/CIDR $1 temporairement bloqué
log_ip_permblock=IP/CIDR $1 définitivement bloqué
log_create_zone=Zone créée $1
log_delete_zone=Zone supprimée $1
log_default_zone=A fait de la zone $1 la valeur par défaut

View File

@@ -33,6 +33,12 @@ index_ifaces=החלת כללים על ממשקים:
index_ifaces_def=כל הממשקים
index_ifaces_sel=ממשקים נבחרים:
index_ifaces_apply=להגיש מועמדות
ifaces_err=יישום הממשקים נכשל
index_blockip_go=חסום IP/CIDR
index_blockip_placeholder=$1 או 2
index_blockip_permanent=חסימה קבועה
block_err=חסימת ה-IP נכשלה
block_eip=כתובת IP או טווח CIDR לא חוקיים
index_listrules=רשום את חוקי FirewallD
index_restart_firewalld=טען מחדש את חומת האשD
index_restart_firewallddesc=טען מחדש את שרת FirewallD והחל את הכללים שנוצרו לצמיתות.
@@ -142,6 +148,8 @@ log_delete_forward=הוסר קדימה $1
log_update_forward=עדכון קדימה $1
log_delete_rules=הוסרו יציאות מותרות של $1
log_ifaces_zone=ממשקים מעודכנים לאזור $1
log_ip_block=IP/CIDR $1 חסום באופן זמני
log_ip_permblock=IP/CIDR $1 חסום לצמיתות
log_create_zone=נוצר אזור $1
log_delete_zone=אזור $1 נמחק
log_default_zone=הפך אזור $1 לברירת המחדל

View File

@@ -33,6 +33,12 @@ index_ifaces=Primjena pravila na sučelja:
index_ifaces_def=Sva sučelja
index_ifaces_sel=Odabrana sučelja:
index_ifaces_apply=Prijavite se
ifaces_err=Primjena sučelja nije uspjela
index_blockip_go=Blokiraj IP/CIDR
index_blockip_placeholder=$1 ili $2
index_blockip_permanent=Stalni blok
block_err=Blokiranje IP-a nije uspjelo
block_eip=Nevažeća IP adresa ili CIDR raspon
index_listrules=Navedite pravila FirewallD
index_restart_firewalld=Ponovno učitajte FirewallD
index_restart_firewallddesc=Ponovno učitajte FirewallD poslužitelj i primijenite pravila koja su trajno stvorena.
@@ -142,6 +148,8 @@ log_delete_forward=Uklonjeno naprijed $1
log_update_forward=Ažurirano naprijed $1
log_delete_rules=Uklonjeni su $1 dopušteni portovi
log_ifaces_zone=Ažurirano sučelje za zonu $1
log_ip_block=Privremeno blokiran IP/CIDR $1
log_ip_permblock=Trajno blokiran IP/CIDR $1
log_create_zone=Stvorena zona $1
log_delete_zone=Izbrisana zona $1
log_default_zone=Zadana je zona $1

View File

@@ -33,6 +33,12 @@ index_ifaces=Szabályok alkalmazása az interfészekre:
index_ifaces_def=Minden interfész
index_ifaces_sel=Kiválasztott interfészek:
index_ifaces_apply=Alkalmaz
ifaces_err=Nem sikerült az interfészek alkalmazása
index_blockip_go=Az IP/CIDR blokkolása
index_blockip_placeholder=$1 vagy $2
index_blockip_permanent=Állandó blokk
block_err=Nem sikerült blokkolni az IP-t
block_eip=Érvénytelen IP-cím vagy CIDR-tartomány
index_listrules=Sorolja fel a FirewallD szabályokat
index_restart_firewalld=Töltse újra a FirewallD-t
index_restart_firewallddesc=Töltse be újra a FirewallD-kiszolgálót, és alkalmazza a véglegesen létrehozott szabályokat.
@@ -142,6 +148,8 @@ log_delete_forward=Előzőleg eltávolítva: $1
log_update_forward=Előre frissítve $1
log_delete_rules=Eltávolítva a (z) $1 engedélyezett portok
log_ifaces_zone=Frissített interfészek a (z) $1 zónához
log_ip_block=Ideiglenesen blokkolt IP/CIDR $1
log_ip_permblock=Véglegesen blokkolva az IP/CIDR $1
log_create_zone=Létrehozta a (z) $1 zónát
log_delete_zone=$1 zóna törölve
log_default_zone=A (z) $1 zóna alapértelmezett lett

View File

@@ -33,6 +33,12 @@ index_ifaces=Applica regole alle interfacce:
index_ifaces_def=Tutte le interfacce
index_ifaces_sel=Interfacce selezionate:
index_ifaces_apply=Applicare
ifaces_err=Impossibile applicare le interfacce
index_blockip_go=Blocca IP/CIDR
index_blockip_placeholder=$1 o $2
index_blockip_permanent=Blocco permanente
block_err=Impossibile bloccare l'IP
block_eip=Indirizzo IP o intervallo CIDR non valido
index_listrules=Elenca le regole di FirewallD
index_restart_firewalld=Ricarica FirewallD
index_restart_firewallddesc=Ricaricare il server FirewallD e applicare le regole che sono state create in modo permanente.
@@ -142,6 +148,8 @@ log_delete_forward=Rimosso forward $1
log_update_forward=Aggiornato in avanti $1
log_delete_rules=Rimosse $1 porte consentite
log_ifaces_zone=Interfacce aggiornate per la zona $1
log_ip_block=IP/CIDR $1 temporaneamente bloccato
log_ip_permblock=IP/CIDR $1 bloccato in modo permanente
log_create_zone=Zona creata $1
log_delete_zone=Zona eliminata $1
log_default_zone=Ha reso la zona $1 predefinita

View File

@@ -33,6 +33,12 @@ index_ifaces=インターフェイスにルールを適用します。
index_ifaces_def=すべてのインターフェース
index_ifaces_sel=選択したインターフェース:
index_ifaces_apply=申し込み
ifaces_err=インターフェースの適用に失敗しました
index_blockip_go=IP/CIDR をブロック
index_blockip_placeholder=$1 または $2
index_blockip_permanent=永久ブロック
block_err=IPをブロックできませんでした
block_eip=無効な IP アドレスまたは CIDR 範囲
index_listrules=FirewallDルールを一覧表示
index_restart_firewalld=FirewallDをリロード
index_restart_firewallddesc=FirewallDサーバーをリロードし、永続的に作成されたルールを適用します。
@@ -142,6 +148,8 @@ log_delete_forward=前方 $1を削除しました
log_update_forward=フォワード $1を更新しました
log_delete_rules=$1個の許可されたポートを削除しました
log_ifaces_zone=ゾーン $1の更新されたインターフェイス
log_ip_block=一時的にブロックされた IP/CIDR $1
log_ip_permblock=永久にブロックされた IP/CIDR $1
log_create_zone=ゾーン $1を作成しました
log_delete_zone=ゾーン $1を削除しました
log_default_zone=ゾーン $1をデフォルトにしました

View File

@@ -33,6 +33,12 @@ index_ifaces=인터페이스에 규칙을 적용하십시오.
index_ifaces_def=모든 인터페이스
index_ifaces_sel=선택한 인터페이스:
index_ifaces_apply=적용하다
ifaces_err=인터페이스를 적용하지 못했습니다
index_blockip_go=IP/CIDR 차단
index_blockip_placeholder=$1또는$2
index_blockip_permanent=영구 차단
block_err=IP 차단 실패
block_eip=잘못된 IP 주소 또는 CIDR 범위
index_listrules=FirewallD 규칙 나열
index_restart_firewalld=방화벽 새로고침D
index_restart_firewallddesc=FirewallD 서버를 다시 로드하고 영구적으로 생성된 규칙을 적용합니다.
@@ -142,6 +148,8 @@ log_delete_forward=앞으로 $1 제거
log_update_forward=앞으로 $1 업데이트
log_delete_rules=허용 된 $1 포트를 제거했습니다.
log_ifaces_zone=영역 $1 에 대한 업데이트 된 인터페이스
log_ip_block=IP/CIDR $1 을(를)일시적으로 차단했습니다
log_ip_permblock=IP/CIDR $1이(가)영구적으로 차단되었습니다
log_create_zone=생성 된 영역 $1
log_delete_zone=삭제 된 영역 $1
log_default_zone=영역 $1 을 기본값으로 설정

View File

@@ -33,6 +33,12 @@ index_ifaces=Taikykite sąsajų taisykles:
index_ifaces_def=Visos sąsajos
index_ifaces_sel=Pasirinktos sąsajos:
index_ifaces_apply=Taikyti
ifaces_err=Nepavyko pritaikyti sąsajų
index_blockip_go=Blokuoti IP/CIDR
index_blockip_placeholder=$1 arba $2
index_blockip_permanent=Nuolatinis blokas
block_err=Nepavyko užblokuoti IP
block_eip=Netinkamas IP adresas arba CIDR diapazonas
index_listrules=Išvardykite FirewallD taisykles
index_restart_firewalld=Iš naujo įkelti FirewallD
index_restart_firewallddesc=Iš naujo įkelkite FirewallD serverį ir pritaikykite taisykles, kurios buvo sukurtos visam laikui.
@@ -142,6 +148,8 @@ log_delete_forward=Pašalinta į priekį $1
log_update_forward=Atnaujinta pirmyn $1
log_delete_rules=Pašalinti $1 leidžiami prievadai
log_ifaces_zone=Atnaujintos $1 zonos sąsajos
log_ip_block=Laikinai užblokuotas IP/CIDR $1
log_ip_permblock=Visam laikui užblokuotas IP/CIDR $1
log_create_zone=Sukurta zona $1
log_delete_zone=Ištrinta zona $1
log_default_zone=$1 zona padaryta numatytąja

View File

@@ -33,6 +33,12 @@ index_ifaces=Pielietojiet noteikumus saskarnēm:
index_ifaces_def=Visas saskarnes
index_ifaces_sel=Atlasītās saskarnes:
index_ifaces_apply=Pieteikties
ifaces_err=Neizdevās lietot saskarnes
index_blockip_go=Bloķēt IP/CIDR
index_blockip_placeholder=$1 vai $2
index_blockip_permanent=Pastāvīgs bloks
block_err=Neizdevās bloķēt IP
block_eip=Nederīga IP adrese vai CIDR diapazons
index_listrules=Uzskaitiet FirewallD noteikumus
index_restart_firewalld=Pārlādēt FirewallD
index_restart_firewallddesc=Atkārtoti ielādējiet FirewallD serveri un lietojiet neatgriezeniski izveidotos noteikumus.
@@ -142,6 +148,8 @@ log_delete_forward=Noņemts uz priekšu $1
log_update_forward=Atjaunināts uz priekšu $1
log_delete_rules=Noņemtas $1 atļautās ostas
log_ifaces_zone=Atjauninātās saskarnes zonai $1
log_ip_block=Īslaicīgi bloķēts IP/CIDR $1
log_ip_permblock=Pastāvīgi bloķēts IP/CIDR $1
log_create_zone=Izveidota zona $1
log_delete_zone=Dzēsta zona $1
log_default_zone=Zona $1 ir noklusējuma

View File

@@ -33,6 +33,12 @@ index_ifaces=Memohon peraturan untuk antara muka:
index_ifaces_def=Semua antara muka
index_ifaces_sel=Antara muka yang dipilih:
index_ifaces_apply=Mohon
ifaces_err=Gagal menggunakan antara muka
index_blockip_go=Sekat IP/CIDR
index_blockip_placeholder=$1 atau $2
index_blockip_permanent=Blok kekal
block_err=Gagal menyekat IP
block_eip=Alamat IP atau julat CIDR tidak sah
index_listrules=Senaraikan Peraturan FirewallD
index_restart_firewalld=Muat semula FirewallD
index_restart_firewallddesc=Muat semula pelayan FirewallD dan gunakan peraturan yang telah dibuat secara kekal.
@@ -142,6 +148,8 @@ log_delete_forward=Dikeluarkan ke hadapan $1
log_update_forward=Dikemaskini ke hadapan $1
log_delete_rules=Dikeluarkan $1 dibenarkan pelabuhan
log_ifaces_zone=Antara muka yang dikemas kini untuk zon $1
log_ip_block=IP/CIDR $1 disekat buat sementara waktu
log_ip_permblock=IP/CIDR $1 disekat secara kekal
log_create_zone=Zon yang dibuat $1
log_delete_zone=Zon dipadamkan $1
log_default_zone=Zon dibuat $1 default

View File

@@ -33,6 +33,12 @@ index_ifaces=Applika r-regoli għall-interfaces:
index_ifaces_def=L-interfaces kollha
index_ifaces_sel=Interfaces magħżula:
index_ifaces_apply=Applika
ifaces_err=Naqset milli tapplika l-interfaces
index_blockip_go=Blokk IP/CIDR
index_blockip_placeholder=$1 jew $2
index_blockip_permanent=Blokk permanenti
block_err=Naqas milli jimblokka l-IP
block_eip=Indirizz IP jew firxa CIDR invalida
index_listrules=Lista tar-regoli FirewallD
index_restart_firewalld=Reload FirewallD
index_restart_firewallddesc=Reload the FirewallD server u applika r-regoli li nħolqu b'mod permanenti.
@@ -142,6 +148,8 @@ log_delete_forward=Tneħħa 'l quddiem $1
log_update_forward=Aġġornat 'il quddiem $1
log_delete_rules=Tneħħew $1 portijiet permessi
log_ifaces_zone=Interfaces aġġornati għaż-żona $1
log_ip_block=IP/CIDR imblukkat temporanjament $1
log_ip_permblock=IP/CIDR imblukkat b'mod permanenti $1
log_create_zone=Żona maħluqa $1
log_delete_zone=Żona mħassra $1
log_default_zone=Għamel fiż-żona $1 id-default

View File

@@ -33,6 +33,12 @@ index_ifaces=Pas regels toe op interfaces:
index_ifaces_def=Alle interfaces
index_ifaces_sel=Geselecteerde interfaces:
index_ifaces_apply=Toepassen
ifaces_err=Kan interfaces niet toepassen
index_blockip_go=Blokkeer IP/CIDR
index_blockip_placeholder=$1 of 2
index_blockip_permanent=Permanente blokkering
block_err=Kan IP niet blokkeren
block_eip=Ongeldig IP-adres of CIDR-bereik
index_listrules=FirewallD-regels weergeven
index_restart_firewalld=Herlaad FirewallD
index_restart_firewallddesc=Laad de FirewallD-server opnieuw en pas de regels toe die permanent zijn gemaakt.
@@ -142,6 +148,8 @@ log_delete_forward=Vooruit $1 verwijderd
log_update_forward=Vooruit bijgewerkt $1
log_delete_rules=$1 toegestane poorten verwijderd
log_ifaces_zone=Bijgewerkte interfaces voor zone $1
log_ip_block=Tijdelijk geblokkeerd IP/CIDR $1
log_ip_permblock=Permanent geblokkeerd IP/CIDR $1
log_create_zone=Zone $1 gemaakt
log_delete_zone=Zone $1 verwijderd
log_default_zone=Zone $1 de standaard gemaakt

View File

@@ -3,6 +3,12 @@ index_zoneadd=Legg til sone
index_ifaces_def=Alle grensesnitt
index_ifaces_sel=Valgte grensesnitt:
index_ifaces_apply=Søke om
ifaces_err=Kunne ikke bruke grensesnitt
index_blockip_go=Blokker IP/CIDR
index_blockip_placeholder=$1 eller $2
index_blockip_permanent=Permanent blokk
block_err=Kunne ikke blokkere IP
block_eip=Ugyldig IP-adresse eller CIDR-område
index_listrules=Liste FirewallD-regler
index_restart_firewalld=Last inn FirewallD på nytt
index_restart_firewallddesc=Last inn FirewallD-serveren på nytt og bruk reglene som ble opprettet permanent.
@@ -31,3 +37,6 @@ list_rules_action=Handling
list_rules_rule=Regel
list_rules_plus_more=+ $1 til
log_save_rules=Slettet $1 regler
log_ip_block=Midlertidig blokkert IP/CIDR $1
log_ip_permblock=Permanent blokkert IP/CIDR $1

View File

@@ -5,6 +5,12 @@ index_fadd=Dodaj port do przodu.
index_ifaces_def=Wszystkie interfejsy
index_ifaces_sel=Wybrane interfejsy:
index_ifaces_apply=Stosować
ifaces_err=Nie udało się zastosować interfejsów
index_blockip_go=Zablokuj adres IP/CIDR
index_blockip_placeholder=$1 lub 2
index_blockip_permanent=Stała blokada
block_err=Nie udało się zablokować adresu IP
block_eip=Nieprawidłowy adres IP lub zakres CIDR
index_listrules=Wyświetlanie listy reguł FirewallD
index_restart_firewalld=Załaduj ponownie zaporę D
index_restart_firewallddesc=Załaduj ponownie serwer FirewallD i zastosuj reguły, które zostały utworzone na stałe.
@@ -51,3 +57,5 @@ log_save_rules=Usunięto $1 reguł
log_create_forward=Dodano do przodu $1
log_delete_forward=Usunięto do przodu $1
log_update_forward=Zaktualizowano do przodu $1
log_ip_block=Tymczasowo zablokowano adres IP/CIDR $1
log_ip_permblock=Trwale zablokowany adres IP/CIDR $1

View File

@@ -33,6 +33,12 @@ index_ifaces=Aplique regras às interfaces:
index_ifaces_def=Todas as interfaces
index_ifaces_sel=Interfaces selecionadas:
index_ifaces_apply=Aplicar
ifaces_err=Falha ao aplicar interfaces
index_blockip_go=Bloquear IP/CIDR
index_blockip_placeholder=$1 ou 2
index_blockip_permanent=Bloqueio permanente
block_err=Falha ao bloquear IP
block_eip=Endereço IP ou intervalo CIDR inválido
index_listrules=Listar regras do FirewallD
index_restart_firewalld=Recarregar FirewallD
index_restart_firewallddesc=Recarregue o servidor FirewallD e aplique as regras que foram criadas permanentemente.
@@ -142,6 +148,8 @@ log_delete_forward=Removido para a frente $1
log_update_forward=Atualizado para a frente $1
log_delete_rules=$1 portas permitidas removidas
log_ifaces_zone=Interfaces atualizadas para a zona $1
log_ip_block=IP/CIDR temporariamente bloqueado $1
log_ip_permblock=IP/CIDR bloqueado permanentemente $1
log_create_zone=Zona criada $1
log_delete_zone=Zona excluída $1
log_default_zone=Tornou a zona $1 o padrão

View File

@@ -33,6 +33,12 @@ index_ifaces=Aplique regras às interfaces:
index_ifaces_def=Todas as interfaces
index_ifaces_sel=Interfaces selecionadas:
index_ifaces_apply=Aplicar
ifaces_err=Falha ao aplicar interfaces
index_blockip_go=Bloquear IP/CIDR
index_blockip_placeholder=$1 ou 2
index_blockip_permanent=Bloqueio permanente
block_err=Falha ao bloquear IP
block_eip=Endereço IP ou intervalo CIDR inválido
index_listrules=Listar regras do FirewallD
index_restart_firewalld=Recarregar FirewallD
index_restart_firewallddesc=Recarregue o servidor FirewallD e aplique as regras que foram criadas permanentemente.
@@ -142,6 +148,8 @@ log_delete_forward=Removido para a frente $1
log_update_forward=Atualizado para a frente $1
log_delete_rules=$1 portas permitidas removidas
log_ifaces_zone=Interfaces atualizadas para a zona $1
log_ip_block=IP/CIDR temporariamente bloqueado $1
log_ip_permblock=IP/CIDR bloqueado permanentemente $1
log_create_zone=Zona criada $1
log_delete_zone=Zona excluída $1
log_default_zone=Tornou a zona $1 o padrão

View File

@@ -33,6 +33,12 @@ index_ifaces=Aplicați reguli interfețelor:
index_ifaces_def=Toate interfețele
index_ifaces_sel=Interfețe selectate:
index_ifaces_apply=aplica
ifaces_err=Nu s-au putut aplica interfețele
index_blockip_go=Blocați IP/CIDR
index_blockip_placeholder=$1 sau $2
index_blockip_permanent=Blocaj permanent
block_err=IP-ul nu a fost blocat
block_eip=Adresă IP sau interval CIDR nevalid
index_listrules=Listează regulile FirewallD
index_restart_firewalld=Reîncărcați FirewallD
index_restart_firewallddesc=Reîncărcați serverul FirewallD și aplicați regulile care au fost create permanent.
@@ -142,6 +148,8 @@ log_delete_forward=A fost eliminat $1 înainte
log_update_forward=Actualizat înainte $1
log_delete_rules=Șters $1 porturi permise
log_ifaces_zone=Interfețe actualizate pentru zona $1
log_ip_block=IP/CIDR blocat temporar $1
log_ip_permblock=IP/CIDR blocat permanent $1
log_create_zone=Zona creată $1
log_delete_zone=Zona ștersă $1
log_default_zone=Faceți zona $1 implicită

View File

@@ -33,6 +33,12 @@ index_ifaces=Примените правила к интерфейсам:
index_ifaces_def=Все интерфейсы
index_ifaces_sel=Выбранные интерфейсы:
index_ifaces_apply=Применять
ifaces_err=Не удалось применить интерфейсы
index_blockip_go=Блокировать IP/CIDR
index_blockip_placeholder=$1 или $2
index_blockip_permanent=Постоянный блок
block_err=Не удалось заблокировать IP
block_eip=Неверный IP-адрес или диапазон CIDR
index_listrules=Получение списка правил FirewallD
index_restart_firewalld=Перезагрузить брандмауэрD
index_restart_firewallddesc=Перезагрузите сервер FirewallD и примените правила, которые были созданы навсегда.
@@ -142,6 +148,8 @@ log_delete_forward=Удален вперед $1
log_update_forward=Обновлен форвард $1
log_delete_rules=Удалено $1 разрешенных портов
log_ifaces_zone=Обновлены интерфейсы для зоны $1
log_ip_block=Временно заблокирован IP/CIDR $1
log_ip_permblock=Постоянно заблокированный IP/CIDR $1
log_create_zone=Созданная зона $1
log_delete_zone=Удаленная зона $1
log_default_zone=Зона $1 сделана по умолчанию

View File

@@ -33,6 +33,12 @@ index_ifaces=Použiť pravidlá na rozhrania:
index_ifaces_def=Všetky rozhrania
index_ifaces_sel=Vybrané rozhrania:
index_ifaces_apply=Použiť
ifaces_err=Nepodarilo sa použiť rozhrania
index_blockip_go=Blokovať IP/CIDR
index_blockip_placeholder=$1 alebo $2
index_blockip_permanent=Trvalý blok
block_err=Nepodarilo sa zablokovať IP
block_eip=Neplatná adresa IP alebo rozsah CIDR
index_listrules=Zoznam pravidiel FirewallD
index_restart_firewalld=Znova načítajte FirewallD
index_restart_firewallddesc=Znova načítajte server FirewallD a použite pravidlá, ktoré boli natrvalo vytvorené.
@@ -142,6 +148,8 @@ log_delete_forward=Odstránené vpred $1
log_update_forward=Aktualizované vpred $1
log_delete_rules=Odstránené $1 povolené porty
log_ifaces_zone=Aktualizované rozhrania pre zónu $1
log_ip_block=Dočasne zablokovaná IP/CIDR $1
log_ip_permblock=Natrvalo zablokovaná IP/CIDR $1
log_create_zone=Vytvorená zóna $1
log_delete_zone=Vymazaná zóna $1
log_default_zone=Vyrobená zóna $1 je predvolená

View File

@@ -33,6 +33,12 @@ index_ifaces=Uporabi pravila za vmesnike:
index_ifaces_def=Vsi vmesniki
index_ifaces_sel=Izbrani vmesniki:
index_ifaces_apply=Prijavite se
ifaces_err=Vmesnikov ni bilo mogoče uporabiti
index_blockip_go=Blokiraj IP/CIDR
index_blockip_placeholder=$1 ali $2
index_blockip_permanent=Trajni blok
block_err=IP-ja ni bilo mogoče blokirati
block_eip=Neveljaven naslov IP ali obseg CIDR
index_listrules=Seznam pravil FirewallD
index_restart_firewalld=Ponovno naložite FirewallD
index_restart_firewallddesc=Ponovno naložite strežnik FirewallD in uporabite pravila, ki so bila trajno ustvarjena.
@@ -142,6 +148,8 @@ log_delete_forward=Odstranjeno naprej $1
log_update_forward=Posodobljeno naprej $1
log_delete_rules=Odstranjena so $1 dovoljena vrata
log_ifaces_zone=Posodobljeni vmesniki za cono $1
log_ip_block=Začasno blokiran IP/CIDR $1
log_ip_permblock=Trajno blokiran IP/CIDR $1
log_create_zone=Ustvarjeno območje $1
log_delete_zone=Izbrisana cona $1
log_default_zone=Območje $1 je privzeto

View File

@@ -33,6 +33,12 @@ index_ifaces=Tillämpa regler på gränssnitt:
index_ifaces_def=Alla gränssnitt
index_ifaces_sel=Valda gränssnitt:
index_ifaces_apply=Tillämpa
ifaces_err=Det gick inte att tillämpa gränssnitt
index_blockip_go=Blockera IP/CIDR
index_blockip_placeholder=$1 eller $2
index_blockip_permanent=Permanent block
block_err=Det gick inte att blockera IP
block_eip=Ogiltig IP-adress eller CIDR-intervall
index_listrules=Lista FirewallD-regler
index_restart_firewalld=Ladda om FirewallD
index_restart_firewallddesc=Ladda om FirewallD-servern och tillämpa reglerna som skapades permanent.
@@ -142,6 +148,8 @@ log_delete_forward=Borttagen framåt $1
log_update_forward=Uppdaterad framåt $1
log_delete_rules=Borttagna $1 tillåtna portar
log_ifaces_zone=Uppdaterade gränssnitt för zon $1
log_ip_block=Tillfälligt blockerad IP/CIDR $1
log_ip_permblock=Permanent blockerad IP/CIDR $1
log_create_zone=Skapad zon $1
log_delete_zone=Raderad zon $1
log_default_zone=Gjort zon $1 som standard

View File

@@ -33,6 +33,12 @@ index_ifaces=ใช้กฎกับอินเตอร์เฟส:
index_ifaces_def=อินเทอร์เฟซทั้งหมด
index_ifaces_sel=อินเทอร์เฟซที่เลือก:
index_ifaces_apply=นำมาใช้
ifaces_err=ล้มเหลวในการใช้อินเทอร์เฟซ
index_blockip_go=บล็อก IP/CIDR
index_blockip_placeholder=$1 หรือ $2
index_blockip_permanent=บล็อกถาวร
block_err=ไม่สามารถบล็อก IP
block_eip=ที่อยู่ IP หรือช่วง CIDR ไม่ถูกต้อง
index_listrules=แสดงรายการกฎ FirewallD
index_restart_firewalld=โหลดไฟร์วอลล์ใหม่D
index_restart_firewallddesc=โหลดเซิร์ฟเวอร์ FirewallD ใหม่และใช้กฎที่สร้างขึ้นอย่างถาวร
@@ -142,6 +148,8 @@ log_delete_forward=นำออกไปข้างหน้า $1
log_update_forward=อัปเดตไปข้างหน้า $1
log_delete_rules=ลบ $1 พอร์ตที่อนุญาต
log_ifaces_zone=อัพเดทอินเทอร์เฟซสำหรับโซน $1
log_ip_block=IP/CIDR $1 ที่ถูกบล็อกชั่วคราว
log_ip_permblock=IP/CIDR $1 ที่ถูกบล็อกอย่างถาวร
log_create_zone=สร้างโซน $1 แล้ว
log_delete_zone=ลบเขต $1 แล้ว
log_default_zone=ทำให้โซน $1 เป็นค่าเริ่มต้น

View File

@@ -33,6 +33,12 @@ index_ifaces=Arabirimlere kurallar uygulayın:
index_ifaces_def=Tüm arayüzler
index_ifaces_sel=Seçilen arayüzler:
index_ifaces_apply=Uygulamak
ifaces_err=Arayüzler uygulanamadı
index_blockip_go=IP/CIDR'yi engelle
index_blockip_placeholder=$1 yada 2
index_blockip_permanent=Kalıcı blok
block_err=IP engellenemedi
block_eip=Geçersiz IP adresi veya CIDR aralığı
index_listrules=FirewallD Kurallarını Listeleme
index_restart_firewalld=Güvenlik Duvarını Yeniden YükleD
index_restart_firewallddesc=FirewallD sunucusunu yeniden yükleyin ve kalıcı olarak oluşturulmuş kuralları uygulayın.
@@ -142,6 +148,8 @@ log_delete_forward=İleri $1 kaldırıldı
log_update_forward=İleri güncellenme $1
log_delete_rules=$1 izin verilen bağlantı noktası kaldırıldı
log_ifaces_zone=$1 bölgesi için güncellenmiş arabirimler
log_ip_block=Geçici olarak engellenen IP/CIDR $1
log_ip_permblock=Kalıcı olarak engellenen IP/CIDR $1
log_create_zone=$1 bölgesi oluşturuldu
log_delete_zone=$1 silinen bölge
log_default_zone=$1 bölgesi varsayılan hale getirildi

View File

@@ -33,6 +33,12 @@ index_ifaces=Застосувати правила до інтерфейсів:
index_ifaces_def=Усі інтерфейси
index_ifaces_sel=Вибрані інтерфейси:
index_ifaces_apply=Застосувати
ifaces_err=Не вдалося застосувати інтерфейси
index_blockip_go=Блокувати IP/CIDR
index_blockip_placeholder=$1 або $2
index_blockip_permanent=Постійний блок
block_err=Не вдалося заблокувати IP
block_eip=Недійсна IP-адреса або діапазон CIDR
index_listrules=Перелік правил FirewallD
index_restart_firewalld=Перезавантажте FirewallD
index_restart_firewallddesc=Перезавантажте сервер FirewallD і застосуйте правила, які були створені постійно.
@@ -142,6 +148,8 @@ log_delete_forward=Видалено вперед $1
log_update_forward=Оновлено вперед $1
log_delete_rules=Видалено $1 дозволені порти
log_ifaces_zone=Оновлені інтерфейси для зони $1
log_ip_block=Тимчасово заблоковано IP/CIDR $1
log_ip_permblock=Назавжди заблокований IP/CIDR $1
log_create_zone=Створена зона $1
log_delete_zone=Видалена зона $1
log_default_zone=Зона $1 за замовчуванням

View File

@@ -33,6 +33,12 @@ index_ifaces=انٹرفیس پر قواعد لگائیں:
index_ifaces_def=تمام انٹرفیس
index_ifaces_sel=منتخب انٹرفیس:
index_ifaces_apply=درخواست دیں
ifaces_err=انٹرفیس لاگو کرنے میں ناکام
index_blockip_go=بلاک IP/CIDR
index_blockip_placeholder=$1 یا $2
index_blockip_permanent=مستقل بلاک
block_err=IP بلاک کرنے میں ناکام
block_eip=غلط IP پتہ یا CIDR رینج
index_listrules=FirewallD کے قواعد کی فہرست بنائیں
index_restart_firewalld=فائر وال ڈی کو دوبارہ لوڈ کریں۔
index_restart_firewallddesc=FirewallD سرور کو دوبارہ لوڈ کریں اور ان قوانین کو لاگو کریں جو مستقل طور پر بنائے گئے تھے۔
@@ -142,6 +148,8 @@ log_delete_forward=آگے $1 ہٹا دیا گیا
log_update_forward=آگے بڑھا کر$1
log_delete_rules=$1 اجازت شدہ بندرگاہیں ہٹا دی گئیں
log_ifaces_zone=زون$1 کے لئے تازہ کاری شدہ انٹرفیس
log_ip_block=عارضی طور پر مسدود IP/CIDR $1
log_ip_permblock=مستقل طور پر مسدود IP/CIDR $1
log_create_zone=زون$1 تشکیل دیا گیا
log_delete_zone=حذف شدہ زون$1
log_default_zone=زون$1 کو پہلے سے طے شدہ بنایا

View File

@@ -33,6 +33,12 @@ index_ifaces=Áp dụng quy tắc cho giao diện:
index_ifaces_def=Tất cả các giao diện
index_ifaces_sel=Các giao diện đã chọn:
index_ifaces_apply=Nộp đơn
ifaces_err=Không thể áp dụng giao diện
index_blockip_go=Chặn IP/CIDR
index_blockip_placeholder=$1 hoặc 2
index_blockip_permanent=khối vĩnh viễn
block_err=Không chặn được IP
block_eip=Địa chỉ IP hoặc phạm vi CIDR không hợp lệ
index_listrules=Liệt kê các quy tắc FirewallD
index_restart_firewalld=Tải lại tường lửaD
index_restart_firewallddesc=Tải lại máy chủ FirewallD và áp dụng các quy tắc đã được tạo vĩnh viễn.
@@ -142,6 +148,8 @@ log_delete_forward=Đã xóa chuyển tiếp $1
log_update_forward=Cập nhật chuyển tiếp $1
log_delete_rules=Đã xóa $1 cổng được phép
log_ifaces_zone=Giao diện được cập nhật cho vùng $1
log_ip_block=IP/CIDR bị chặn tạm thời $1
log_ip_permblock=IP/CIDR bị chặn vĩnh viễn $1
log_create_zone=Đã tạo vùng $1
log_delete_zone=Đã xóa vùng $1
log_default_zone=Tạo vùng $1 làm mặc định

Some files were not shown because too many files have changed in this diff Show More