Compare commits

..

628 Commits
1.900 ... 1.941

Author SHA1 Message Date
Jamie Cameron
d5227e85af version bump 2020-01-14 14:32:28 -08:00
Ilia Rostovtsev
af2219d128 Add Go label to work with updated symlinked view_table.cgi 2020-01-14 14:35:50 +03:00
Ilia Rostovtsev
1a8d138a38 Use Go label for button 2020-01-14 01:21:31 +03:00
Ilia Rostovtsev
dcb3a602f2 Don't wrap HTML elements (select, input, button) into <b> tag 2020-01-13 23:49:14 +03:00
Jamie Cameron
9239327440 Add SQL view refresh button 2020-01-12 22:22:37 -08:00
Jamie Cameron
a9bd221f94 ui-lib conversion 2020-01-12 22:15:00 -08:00
Jamie Cameron
a10c475218 In non-interactive mode, a flag is needed to accept the TOS 2020-01-12 18:38:21 -08:00
Jamie Cameron
7733dc758e Fix perl warnings https://sourceforge.net/p/webadmin/bugs/5349/ 2020-01-11 23:02:34 -08:00
Jamie Cameron
90a331fb33 Fix perl warnings https://sourceforge.net/p/webadmin/bugs/5349/ 2020-01-11 22:57:08 -08:00
Jamie Cameron
b6dfa03e3c Merge branch 'master' of github.com:webmin/webmin 2020-01-10 09:54:45 -08:00
Jamie Cameron
12ab7cc722 Force non-interactive mode, as we can't prompt for questions 2020-01-10 09:53:19 -08:00
Jamie Cameron
6382bc8f7e Wildcard cert paths contain a * 2020-01-09 17:00:13 -08:00
Jamie Cameron
6a86fb1e3f Add support for noserverino option https://github.com/webmin/webmin/issues/1174 2020-01-08 23:10:18 -08:00
Jamie Cameron
cc2bcd3894 Merge branch 'master' of github.com:webmin/webmin 2020-01-08 22:55:16 -08:00
Jamie Cameron
9367695b64 Also allow time-based prefixes https://sourceforge.net/p/webadmin/bugs/5345/ 2020-01-08 22:55:06 -08:00
Ilia Rostovtsev
579d31935f Add missing strings script; update German - PR #1173 from gnadelwartz
Add missing strings to german translation (and start translation)
2020-01-09 01:20:44 +03:00
Kay Marquardt (Gnadelwartz)
824cfd0488 translate status 2020-01-08 16:42:08 +01:00
Kay Marquardt (Gnadelwartz)
6bfc7e4a2a acl translation 2020-01-08 15:58:04 +01:00
Kay Marquardt (Gnadelwartz)
a950ad1a5b german translations, NO log_* messages translation by default 2020-01-08 15:46:41 +01:00
Kay Marquardt (Gnadelwartz)
c52ff9184c add missing de translation strings 2020-01-08 14:41:52 +01:00
Jamie Cameron
04086f4304 TLS 1.3 is only supported in Apache 2.4.37+ https://virtualmin.com/node/68219 2020-01-07 21:55:49 -08:00
Jamie Cameron
e2525d7299 Delay times can be fractional https://sourceforge.net/p/webadmin/bugs/5345/ 2020-01-07 21:49:36 -08:00
Jamie Cameron
2759ca72e5 Update comment to reflect what really happens 2020-01-07 11:22:57 -08:00
Jamie Cameron
921121be60 The ubuntu sub-version isn't really a version 2020-01-05 19:00:43 -08:00
Jamie Cameron
4b1a2d5eb4 // operator isn't supported in some perl versions 2020-01-05 18:15:45 -08:00
Jamie Cameron
d7592cede9 Header values can have spaces https://github.com/webmin/webmin/issues/1026 2020-01-05 16:19:33 -08:00
Jamie Cameron
ba38d23c6b Ensure auth_param is before any acl lines that might refer to it https://sourceforge.net/p/webadmin/bugs/5340/ 2020-01-05 15:48:32 -08:00
Jamie Cameron
cbcae848df Merge branch 'master' of github.com:webmin/webmin 2020-01-05 12:33:19 -08:00
Jamie Cameron
6dc5f419c9 Upper case table names need quotes https://sourceforge.net/p/webadmin/bugs/5342/ 2020-01-05 12:17:14 -08:00
Ilia Rostovtsev
f254a8ca33 Put Let's Encrypt configuration under separate accordion 2020-01-04 17:28:33 +03:00
Ilia Rostovtsev
fdde4f23a2 Fix to emphasize command name 2020-01-04 13:01:31 +03:00
Jamie Cameron
5e9321336d Merge branch 'master' of github.com:webmin/webmin 2020-01-03 18:43:23 -08:00
Jamie Cameron
161fa33de3 Deal with URL characters in filenames, and long filenames 2020-01-03 18:43:14 -08:00
Ilia Rostovtsev
943df27553 Fix to pass correct selected date value, without leading zero https://forum.virtualmin.com/t/system-time-says-date-3-hw-time-says-date-1/104016 2020-01-03 16:17:00 +03:00
Jamie Cameron
54365d56d1 Syslog host can end with :port https://sourceforge.net/p/webadmin/bugs/5341/ 2020-01-02 21:27:35 -08:00
Jamie Cameron
e1e84b498b Get and use release number when upgrading 2020-01-01 20:35:03 -08:00
Jamie Cameron
082acf915e Use release number when downloading upgrade 2020-01-01 20:28:24 -08:00
Jamie Cameron
aa010454a5 Recommends option doesn't work, despite the docs 2020-01-01 20:18:22 -08:00
Jamie Cameron
33356c95d5 Special case hack to enabled epel repo if installing certbot 2020-01-01 20:16:01 -08:00
Jamie Cameron
fa94a90216 Return release number if there is one 2020-01-01 20:13:15 -08:00
Jamie Cameron
15c0e96acb Bring back built-in let's encrypt client 2020-01-01 20:12:02 -08:00
Jamie Cameron
fd3ad0c8f4 F2FS is a local filesystem type https://www.virtualmin.com/node/68186 2020-01-01 09:47:42 -08:00
Ilia Rostovtsev
49e94bc897 Fix to display bytes properly 2019-12-31 19:25:26 +03:00
Ilia Rostovtsev
9c351640d5 Fix unroll previous, as with 1024 for second param, returned size should be 1kiB, and not 0kiB 2019-12-31 18:43:20 +03:00
Ilia Rostovtsev
03044aae9f Fix to display mail size under 1kiB as it is (in bytes) 2019-12-31 18:33:25 +03:00
Ilia Rostovtsev
333d8cf6f1 Fix nice_size subroutine logic 2019-12-31 14:56:49 +03:00
Jamie Cameron
65e40fc4ca Force use of english in uptime command output https://sourceforge.net/p/webadmin/bugs/5337/ 2019-12-30 10:02:03 -08:00
Jamie Cameron
a589ea9799 Merge branch 'master' of github.com:webmin/webmin 2019-12-27 09:53:39 -08:00
Jamie Cameron
781722c168 Recommend certbot for new installs 2019-12-27 09:52:00 -08:00
Ilia Rostovtsev
c383ac2f39 Display user set ciphers as set, even though they equal system ones 2019-12-27 17:18:51 +03:00
Jamie Cameron
2c8a828259 Remove useless redirects, and handle case where config file is missing: 2019-12-26 21:23:47 -08:00
Ilia Rostovtsev
35e3f001ea Load theme UI lib to print table as expect 2019-12-26 13:43:23 +03:00
Jamie Cameron
0f2e469c09 Fix perl warning 2019-12-25 10:43:01 -08:00
Jamie Cameron
deb752f734 If custom ini path is a directory, look for php.ini inside it 2019-12-25 10:15:00 -08:00
Jamie Cameron
3fc70e2fea Merge pull request #1165 from gnadelwartz/iconv
fix iconv transcoding for wrong characters in files
2019-12-24 10:01:07 -08:00
Kay Marquardt (Gnadelwartz)
ce38e064ca fix aborted iconv transcoding 2019-12-23 11:59:12 +01:00
Ilia Rostovtsev
844ffa5c04 Add missing webprefix 2019-12-23 13:01:50 +03:00
Jamie Cameron
48df0aaab3 de-dupe errors 2019-12-22 21:37:09 -08:00
Jamie Cameron
2fb8433684 Fix check for -z flag 2019-12-22 21:28:24 -08:00
Jamie Cameron
1d270ee1b8 Why is this file here 2019-12-22 21:04:37 -08:00
Jamie Cameron
b5ceeb4515 Show search box for too many map file entries 2019-12-22 19:45:41 -08:00
Jamie Cameron
ff87ba9c8c Merge branch 'master' of github.com:webmin/webmin 2019-12-22 19:44:45 -08:00
Jamie Cameron
72db1df466 Show search box for too many map file entries: 2019-12-22 19:44:36 -08:00
Jamie Cameron
54a5fc9907 Merge pull request #1161 from gnadelwartz/patch-1
Usermin: transcoding of  ulang files missed
2019-12-22 09:41:29 -08:00
Jamie Cameron
7ba8e6ac92 Merge pull request #1162 from gnadelwartz/patch-2
3 small german translation fixes
2019-12-22 09:31:57 -08:00
Kay Marquardt (Gnadelwartz)
a822a34d1f some small german fixes 2019-12-22 18:29:07 +01:00
Jamie Cameron
30c5428b9b Merge pull request #1160 from gnadelwartz/master
Update german translation to mailboxes module
2019-12-22 09:26:57 -08:00
Jamie Cameron
6fc0cedcc4 Clean zone if journal files are out of sync https://github.com/virtualmin/virtualmin-gpl/issues/130 2019-12-22 09:21:48 -08:00
Kay Marquardt
bffb79fba4 translate usermin ulang files if exist 2019-12-22 16:38:25 +01:00
Kay Marquardt (Gnadelwartz)
28d3962d1c some adjustments to fit better, plus mail always mean e-mail in german 2019-12-22 15:24:37 +01:00
Kay Marquardt (Gnadelwartz)
a357ee9941 add missing german mailbox translation 2019-12-22 14:52:41 +01:00
Jamie Cameron
1ad74d9573 versiom bump 2019-12-20 20:58:48 -08:00
Jamie Cameron
10e89b1fe1 Remove duplicate string 2019-12-20 20:56:04 -08:00
Jamie Cameron
958eb32639 Fix missing brace 2019-12-20 20:53:53 -08:00
Jamie Cameron
8eb9b8f0a4 ui-lib conversion 2019-12-20 20:37:46 -08:00
Jamie Cameron
2d71cdfd34 Merge branch 'master' of github.com:webmin/webmin 2019-12-20 20:25:54 -08:00
Jamie Cameron
a381969d4b changelog for safe-mode users 2019-12-20 20:24:53 -08:00
Ilia Rostovtsev
19bda9c5b4 HTML escape unsafe filenames 2019-12-19 23:10:35 +03:00
Jamie Cameron
2e3303aba3 Merge branch 'master' of github.com:webmin/webmin 2019-12-19 08:11:02 -08:00
Jamie Cameron
d467ac443f Escape error message 2019-12-19 08:10:53 -08:00
Jamie Cameron
ee91c93526 Merge pull request #1157 from gnadelwartz/patch-1
Windows: manual and semi automatic installation working again
2019-12-19 07:18:28 -08:00
Kay Marquardt
78a988a014 better perl download link 2019-12-19 09:42:41 +01:00
Kay Marquardt
40ab4e24c2 add newline to last message 2019-12-17 17:45:53 +01:00
Kay Marquardt
7e703715de remove comment 2019-12-17 16:43:38 +01:00
Kay Marquardt
32be084c0d fix windows detection on unix/linux 2019-12-17 16:28:49 +01:00
Kay Marquardt
2942b6ec14 fix non windows detection on unix/linux 2019-12-17 16:26:34 +01:00
Kay Marquardt
9c77028942 sc.exe is optional ... 2019-12-17 12:56:50 +01:00
Kay Marquardt
46c117ce24 output message if only installed but not started 2019-12-16 18:28:40 +01:00
Kay Marquardt
ee3ae0195e do not start on windows by default 2019-12-16 18:26:40 +01:00
Kay Marquardt
3878388b37 fix initial comment 2019-12-16 17:49:41 +01:00
Kay Marquardt
8375804861 fix copy/paste error 2019-12-16 17:48:12 +01:00
Kay Marquardt
95c473d91f fix module detection on windows 2019-12-16 17:18:39 +01:00
Kay Marquardt
f2fb64c2b0 modern windows has tar command also 2019-12-16 17:14:46 +01:00
Kay Marquardt
9c6f59c1bc fix windows detection 2019-12-16 16:53:18 +01:00
Kay Marquardt
a7c905c815 do not run linux autodetect command on Windows 2019-12-16 16:49:29 +01:00
Ilia Rostovtsev
06e6756c90 Fix to print columns consistently 2019-12-16 16:04:40 +03:00
Ilia Rostovtsev
fecb78c333 Fix typos leading to fatal error 2019-12-16 15:48:38 +03:00
Ilia Rostovtsev
46ae2feaf6 Fix missing : to prevent fatal error 2019-12-16 15:45:19 +03:00
Ilia Rostovtsev
029455ce00 Fix to avoid fatal error, and import global in strict mode 2019-12-16 15:16:08 +03:00
Ilia Rostovtsev
7076897b3e Fix version number for new feature 2019-12-16 14:56:06 +03:00
Kay Marquardt
74e8c79aee update dl link, can we remove old dependency? 2019-12-16 11:32:16 +01:00
Kay Marquardt
6fd2720736 mention windows not officially supported 2019-12-16 11:07:51 +01:00
Jamie Cameron
ae77e7a50d Uploading to home dir is safe 2019-12-15 09:55:51 -08:00
Jamie Cameron
43862866c9 ui-lib conversion 2019-12-15 09:53:19 -08:00
Jamie Cameron
3e20e3c9f8 Add function for selecting multiple users 2019-12-15 09:51:43 -08:00
Jamie Cameron
f943290a72 No need to show no-config ACL 2019-12-15 08:24:43 -08:00
Jamie Cameron
12c693eddc Allow modules to request not having a no-config ACL 2019-12-15 08:24:15 -08:00
Jamie Cameron
2c41fcee8e looking at status is safe 2019-12-15 07:37:05 -08:00
Jamie Cameron
07626caf03 ui-lib conversion 2019-12-15 07:36:36 -08:00
Jamie Cameron
51c8379638 Own access to command shell is safe 2019-12-15 07:24:52 -08:00
Jamie Cameron
04b95f4dc8 Safe mode is for Unix users only 2019-12-15 07:17:15 -08:00
Kay Marquardt
63dddcb481 Make output of setup.bat more explixit
because of a rant in https://sourceforge.net/p/webadmin/bugs/5332/ I updated the messages of setup,bat:

- the script is unoffical and try to guide unexperienced users
- offical information about setup is found at https://sourceforge.net/p/webadmin/bugs/5332/

As I don't know if Jamie supports and test Windows Installation or it's a "may work or not feature" we should also highligth the Windows support status an the offical page.
2019-12-15 10:50:27 +01:00
Jamie Cameron
b17a218841 Fix accidentally mis-encoded file 2019-12-14 12:22:00 -08:00
Jamie Cameron
82edaee5fd Remove another mis-placed string 2019-12-14 12:13:18 -08:00
Jamie Cameron
c55c5729bf Extract some translations to their own files 2019-12-14 12:12:23 -08:00
Jamie Cameron
e6c34329ce Forcing encodings seems to do more harm than good 2019-12-14 12:02:08 -08:00
Jamie Cameron
bbda7ba5f9 Test removing Big5 entirely 2019-12-14 11:53:54 -08:00
Jamie Cameron
45af5d9205 Test removing git-encoding for Big5 2019-12-14 11:50:16 -08:00
Jamie Cameron
92e68dfc65 Reading own mail is safe 2019-12-14 08:09:14 -08:00
Jamie Cameron
32cc1b058d Don't encode GIF files 2019-12-14 08:07:58 -08:00
Jamie Cameron
e48e8f2d29 Fix some incorrect config file names 2019-12-13 23:04:54 -08:00
Jamie Cameron
46174c0743 Revert to original config 2019-12-13 22:44:13 -08:00
Jamie Cameron
ed44531bf7 Another attempt to fix GIFs 2019-12-13 20:08:58 -08:00
Jamie Cameron
e3c9501173 PNGs are binary 2019-12-13 18:55:41 -08:00
Jamie Cameron
b29b821305 GIFs are binary 2019-12-13 18:54:17 -08:00
Jamie Cameron
e3a4158f23 Add all encoding types 2019-12-13 18:51:53 -08:00
Jamie Cameron
d3faa589a8 Finalized redirect URL feature 2019-12-13 15:54:06 -08:00
Jamie Cameron
b95e63a5b4 Refactor code that builds redirect URLs, and make it customizable 2019-12-13 13:43:42 -08:00
Jamie Cameron
f947f4cd1d respect miniserv config for hostname and port in redirects 2019-12-13 13:17:58 -08:00
Jamie Cameron
1e3d5ba450 Add missing webprefix 2019-12-10 09:42:24 -08:00
Ilia Rostovtsev
0acc6ca542 Encoding test 2019-12-10 17:57:32 +01:00
Jamie Cameron
5933cc98ad use formal params 2019-12-08 08:35:27 -08:00
Jamie Cameron
4d0202fd67 Viewing logs is pretty safe 2019-12-08 08:30:40 -08:00
Jamie Cameron
192b3504ce Safe mode users cannot edit configs 2019-12-08 08:29:36 -08:00
Jamie Cameron
9f409d725d Fix nesting tables in other modules 2019-12-08 07:57:49 -08:00
Jamie Cameron
ef91a50639 Remove old risk-level checks 2019-12-08 07:21:00 -08:00
Jamie Cameron
6e97ba1219 Add support for ACL to prevent editing of allowed search types 2019-12-08 07:19:15 -08:00
Jamie Cameron
c1c9daa212 Fix perl warnings and add option to exit safe mode 2019-12-08 02:54:14 -08:00
Jamie Cameron
b60a74a4ad Editing own cron jobs is safe 2019-12-07 13:16:59 -08:00
Jamie Cameron
c98a42d36c Fix escaping on google search 2019-12-07 13:14:46 -08:00
Jamie Cameron
a7cf237836 bump dev version 2019-12-07 09:47:01 -08:00
Jamie Cameron
18cc0d16ad Use x to mean this user, for consistency 2019-12-07 09:28:56 -08:00
Jamie Cameron
11b7cbc929 Allow safe user of proc module 2019-12-07 09:23:57 -08:00
Jamie Cameron
4d37f20e22 use ui-lib and formal params 2019-12-07 09:20:53 -08:00
Jamie Cameron
b72e71f599 Safeacl is now a required file 2019-12-07 08:04:23 -08:00
Jamie Cameron
2075fffe70 Work on safe-mode user creation 2019-12-07 08:03:34 -08:00
Jamie Cameron
2e8156060c Add ACL option for own logs only 2019-12-07 08:03:10 -08:00
Jamie Cameron
f6b554a247 Add ACL option for own logs only 2019-12-07 07:56:10 -08:00
Jamie Cameron
ef37f01d6b ui-lib conversion 2019-12-07 07:30:42 -08:00
Jamie Cameron
cd80bcae09 Fall back to nobody if user to browse files as doesn't exist 2019-12-07 07:13:53 -08:00
Jamie Cameron
dd54463213 Remove obsolete code for module risk levels 2019-12-05 13:12:52 -08:00
Jamie Cameron
bd2d50441f Use formal params 2019-12-05 12:54:42 -08:00
Ilia Rostovtsev
1c15d42fdc Fix html escape to quote escape for path 2019-12-05 22:18:00 +03:00
Jamie Cameron
5cfbbcf32a Don't throw a perl warning 2019-12-05 10:00:54 -08:00
Jamie Cameron
4ba881400e quote_escaped is better for HTML tags 2019-12-05 09:14:32 -08:00
Jamie Cameron
b55b3fdd0a No need to escape path 2019-12-05 01:13:54 -08:00
Jamie Cameron
3b28c79e34 Deal with paths that are double-escaped or not 2019-12-04 14:34:56 -08:00
Jamie Cameron
9e7997cf8f Use html escaped path in inputs 2019-12-04 14:12:09 -08:00
Jamie Cameron
c7f2733666 Merge branch 'master' of github.com:webmin/webmin 2019-12-04 07:20:40 -08:00
Jamie Cameron
68facdd18f Add missing urlize 2019-12-04 07:17:42 -08:00
Ilia Rostovtsev
683e42225e Fix styles 2019-12-04 17:50:14 +03:00
Ilia Rostovtsev
4d5a2ab87b Remove invalid comments 2019-12-04 16:43:45 +03:00
Ilia Rostovtsev
9f09904749 Keep + in file/directory names 2019-12-03 16:25:12 +03:00
Jamie Cameron
32d49e99ef Merge branch 'master' of github.com:webmin/webmin 2019-12-03 00:19:30 -08:00
Jamie Cameron
98dd2c0a11 Don't record old passwords which are locks 2019-12-03 00:19:24 -08:00
Jamie Cameron
3b49dc2ee0 Merge pull request #1151 from seabres/group_rename_acl
Make acl grename editable
2019-12-02 12:34:20 -08:00
BRESTAN Rainer
4c0c3a4a5f Make acl grename editable 2019-12-02 20:17:12 +01:00
Jamie Cameron
00561c3ac2 Add Oracle Linux support https://sourceforge.net/p/webadmin/bugs/5328/ 2019-12-02 09:50:43 -08:00
Jamie Cameron
6f4cc0d508 Merge branch 'master' of github.com:webmin/webmin 2019-12-01 18:51:20 -08:00
Jamie Cameron
e5dbd8e46c Don't assume that datname is column 0 https://sourceforge.net/p/webadmin/bugs/5322/?page=1&limit=25#2ac7 2019-12-01 18:50:38 -08:00
Ilia Rostovtsev
585f8db549 Add to support data/time conversions consistently 2019-11-30 19:16:30 +03:00
Ilia Rostovtsev
0548c8d752 Add possibility to avoid using theme lib to make dates 2019-11-30 16:13:37 +03:00
Ilia Rostovtsev
1e5029baa0 Fix HTML issues (fix broken forms, improve overall UI) 2019-11-29 16:32:45 +03:00
Jamie Cameron
81b7cb0609 Stop using acme_tiny in favor of certbot 2019-11-27 22:38:27 -08:00
Jamie Cameron
8de9921320 Fix display and date subs in prefix field https://sourceforge.net/p/webadmin/bugs/5325/ 2019-11-27 13:12:11 -08:00
Jamie Cameron
50d8b18e31 Add support for beta alerts 2019-11-26 22:56:51 -08:00
Jamie Cameron
c107838ed8 Show nicer message for installing software 2019-11-25 23:31:08 -08:00
Jamie Cameron
a85efb80fe YUM uses globs 2019-11-25 16:49:05 -08:00
Jamie Cameron
e3465d36d3 Merge branch 'master' of github.com:webmin/webmin 2019-11-24 22:06:22 -08:00
Jamie Cameron
894a3093a8 Show the actual MySQL version 2019-11-24 21:55:34 -08:00
Jamie Cameron
7aeb518a89 Merge pull request #1145 from seabres/add_ldap_sha512
Add SHA512 to ldap-useradmin
2019-11-23 14:03:10 -08:00
BRESTAN Rainer
9cdd5349d4 Add SHA512 to ldap-useradmin 2019-11-21 11:08:38 +01:00
Ilia Rostovtsev
1bf72b035d Add data label 2019-11-17 15:10:12 +03:00
Jamie Cameron
d6af912e6b Merge pull request #1138 from seabres/yum_multiline_patch
Correct yum check-update multiline output
2019-11-16 22:24:34 -08:00
Jamie Cameron
9d7c88bf0f Merge pull request #1139 from seabres/search_date_sort
Search date sort
2019-11-15 22:28:24 -08:00
BRESTAN Rainer
49fdd7342b Change interpreter to riginal 2019-11-14 15:51:02 +01:00
BRESTAN Rainer
dbb888b9e4 Create sorted dates 2019-11-14 15:48:30 +01:00
BRESTAN Rainer
cdfb0e8843 Correct yum check-update multiline output 2019-11-14 12:35:26 +01:00
Jamie Cameron
959530af7f use the proper API 2019-11-03 14:03:51 -08:00
Jamie Cameron
17daad6c89 Add support for CAA records 2019-11-03 14:03:29 -08:00
Jamie Cameron
b8b7e2aad8 Merge branch 'master' of github.com:webmin/webmin 2019-11-03 11:37:54 -08:00
Jamie Cameron
eead9a5a88 Sometimes ubuntu versions start with ubuntu, but it doesn't mean anything https://www.virtualmin.com/node/67361 2019-11-03 11:26:19 -08:00
Ilia Rostovtsev
8d1a3e50ad Fix always use binary based units f3bcbd4743 2019-11-03 19:04:54 +03:00
Jamie Cameron
01c6694fb0 Merge branch 'master' of github.com:webmin/webmin 2019-11-02 17:47:32 -07:00
Jamie Cameron
3c97d71574 TLS 1.3 exists https://github.com/virtualmin/virtualmin-gpl/issues/90 2019-11-02 17:34:12 -07:00
Jamie Cameron
277db70498 Merge pull request #1133 from Ismael034/master
Improved Spanish Translations
2019-11-02 15:46:07 -07:00
Jamie Cameron
7d9334c03f Fix use of return link 2019-11-02 15:35:04 -07:00
Ismael
7be6ca734a Translated_system-status 2019-11-02 14:11:11 +01:00
Ismael
c7fb9c9b8d Translated_system-status 2019-11-02 14:07:20 +01:00
Ismael
4813ee1fb5 Translated_system-status 2019-11-02 14:03:54 +01:00
Ismael
df0fe63adb Translated 2019-11-02 13:40:44 +01:00
Ismael
dcb64db053 Change 2019-10-31 22:06:12 +01:00
Ismael
8efedabeea Added strings left and improved structure for future translations 2019-10-31 21:48:32 +01:00
Ismael
d392852b8d Improved Spanish Translations 2019-10-31 19:43:25 +01:00
Jamie Cameron
5affc13406 Also fix DMARC order in swebmin https://github.com/virtualmin/virtualmin-gpl/issues/117 2019-10-27 10:09:09 -07:00
Jamie Cameron
2f71de2522 Also hold packages selected by apt-mark https://www.virtualmin.com/node/67577 2019-10-26 19:48:05 -07:00
Jamie Cameron
b5302d6451 Also use hostnamectl command if available https://www.virtualmin.com/node/66983 2019-10-26 19:43:25 -07:00
Jamie Cameron
f8b96e3ccc API to reload an action 2019-10-25 20:36:24 -07:00
Jamie Cameron
1c1f6b4ffb Handle invalid day numbers https://sourceforge.net/p/webadmin/bugs/5311/ 2019-10-25 18:33:14 -07:00
Jamie Cameron
2d4ae90954 domain also needs to be set in interface config files https://www.virtualmin.com/node/66983 2019-10-24 20:06:25 -07:00
Jamie Cameron
3fed9e95f2 Merge branch 'master' of github.com:webmin/webmin 2019-10-24 19:41:22 -07:00
Jamie Cameron
e975c8bd37 Handle unexpected ps time format 00~https://sourceforge.net/p/webadmin/bugs/5311/01~ 2019-10-24 19:40:58 -07:00
Ilia Rostovtsev
ef85abd9f6 Check for defined, as zero also a value 2019-10-24 14:47:49 +03:00
Ilia Rostovtsev
b89d50bea6 Add Usermin option if config files should be sorted on save 2019-10-22 15:38:19 +03:00
Ilia Rostovtsev
7b2a873998 Add an option if config files should be sorted on save 2019-10-22 14:57:05 +03:00
Ilia Rostovtsev
c284a78214 Fix to use configurable option instead 2019-10-22 14:46:37 +03:00
Ilia Rostovtsev
1bf4b1e8ce Add an option to choose between KiB, MiB, GiB and KB, MB, GB units 2019-10-22 14:02:46 +03:00
Ilia Rostovtsev
eb412a1084 Fix to only order by key config files not other files 8a81277731 2019-10-22 12:46:30 +03:00
Jamie Cameron
6701e9f756 Fix some perl warnings https://github.com/webmin/webmin/issues/1131 2019-10-21 18:13:57 -07:00
Jamie Cameron
5866463772 Add check for non-existent module https://sourceforge.net/p/webadmin/usermin-bugs/479/ 2019-10-21 13:12:44 -07:00
Jamie Cameron
7078bed4c2 Merge branch 'master' of github.com:webmin/webmin 2019-10-21 12:51:48 -07:00
Jamie Cameron
771be1a754 Functions are in the BIND module https://www.virtualmin.com/node/67555 2019-10-21 12:51:37 -07:00
Ilia Rostovtsev
33c04bdbcd Fix one more missing default option 2019-10-19 00:39:31 +03:00
Ilia Rostovtsev
fca5f936b6 Fix missing setting default config option #1419 2019-10-19 00:33:47 +03:00
Ilia Rostovtsev
8a81277731 Sort saved keys https://github.com/virtualmin/virtualmin-gpl/issues/99#issuecomment-543613442 2019-10-18 16:02:03 +03:00
Ilia Rostovtsev
acdf5c4519 Keep it consistent - word Dashboard is in use 2019-10-18 14:03:40 +03:00
Jamie Cameron
091359746b Master name is needed 2019-10-17 22:09:01 -07:00
Jamie Cameron
d4cb26a5a5 Merge branch 'master' of github.com:webmin/webmin 2019-10-17 21:27:49 -07:00
Jamie Cameron
62b079358d new version bump 2019-10-17 21:27:38 -07:00
Ilia Rostovtsev
c40001880c Keep names consistent 2019-10-16 14:17:58 +03:00
Ilia Rostovtsev
2e948ad2a1 Fix conversion for sizes 2019-10-16 14:14:46 +03:00
Ilia Rostovtsev
62ee59efe6 Fix for older Perl versions, which don't support branch reset groups 2019-10-16 01:53:36 +03:00
Ilia Rostovtsev
fbcbcd0525 Merge branch 'master' of github.com:webmin/webmin 2019-10-14 13:03:53 +03:00
Ilia Rostovtsev
e122629c02 Don't escape safe symbols in packages names, in particular dashes and dots https://github.com/authentic-theme/authentic-theme/issues/1411 2019-10-14 13:03:27 +03:00
Jamie Cameron
37db318b92 my.cnf has moved on Ubuntu 18 https://sourceforge.net/p/webadmin/bugs/5316/ 2019-10-13 22:37:25 -07:00
Jamie Cameron
86a2e3a240 Fix invalid regexp 2019-10-13 13:11:44 -07:00
Jamie Cameron
8e9d0b3d88 Really fix duplicate header check 2019-10-12 22:17:06 -07:00
Jamie Cameron
6b62d7be44 Set password at creation time if available https://sourceforge.net/p/webadmin/bugs/5314 2019-10-12 12:14:57 -07:00
Jamie Cameron
e4d4ed51de Don't send default headers if overridden by caller 2019-10-06 22:25:34 -07:00
Jamie Cameron
a1c9fa94fc Protect against malicious existing .webminorig link 2019-10-05 23:02:24 -07:00
Jamie Cameron
79433069fe Always read files with limited permissions 2019-10-05 23:00:35 -07:00
Jamie Cameron
8faabd6d22 Properly escape where clause 2019-10-05 22:40:29 -07:00
Jamie Cameron
bb133c06c7 Add missing ACL check 2019-10-04 22:37:01 -07:00
Jamie Cameron
d8bf92b6ae Merge branch 'master' of github.com:webmin/webmin 2019-10-04 22:36:12 -07:00
Jamie Cameron
4810b7a02b Protect against invalid values 2019-10-04 22:35:39 -07:00
Ilia Rostovtsev
f0ab457cc5 Field names must correspond
https://sourceforge.net/p/webadmin/discussion/600155/thread/c1d9134da6/
2019-10-02 15:51:51 +03:00
Ilia Rostovtsev
daa12e4677 Fix to fetch attributes for NVME drives
https://sourceforge.net/p/webadmin/discussion/55377
2019-10-01 22:02:45 +03:00
Jamie Cameron
d38bb8ed8a Fail gracefully if time isn't in the expected format https://github.com/webmin/webmin/issues/1119 2019-09-29 13:40:36 -07:00
Jamie Cameron
8d04bd2b3f Get CPU model from /proc/device-tree https://sourceforge.net/p/webadmin/bugs/5308/ 2019-09-22 22:48:58 -07:00
Jamie Cameron
9ffb6a51eb Detect RHEL 8 properly https://sourceforge.net/p/webadmin/bugs/5309/ 2019-09-22 14:35:08 -07:00
Jamie Cameron
162e2c55f6 Use formal params 2019-09-21 08:56:55 -07:00
Jamie Cameron
03d77c5703 Make sure temp files created for diffing aren't work-readable 2019-09-19 08:49:25 -07:00
Jamie Cameron
57daa0c1d8 Handle tables with extra clauses 2019-09-18 23:30:55 -07:00
Jamie Cameron
bb07dcd060 What if tempdir contains a space? 2019-09-16 23:11:13 -07:00
Jamie Cameron
0c693e43f4 Make DNS wait time configurable https://www.virtualmin.com/node/67156 2019-09-16 23:06:04 -07:00
Jamie Cameron
94fe1805c0 Merge branch 'master' of github.com:webmin/webmin 2019-09-15 22:26:33 -07:00
Jamie Cameron
6196880718 Re-sign DNSSEC zones hourly instead of daily https://github.com/webmin/webmin/issues/1113 2019-09-15 20:37:10 -07:00
Jamie Cameron
0024d3d5a0 Merge pull request #1111 from iam-TJ/issue_1110_NSEC3PARAM
bind8: DNSSEC fix NSEC3PARAM RR do not include salt length
2019-09-12 20:40:03 -07:00
Tj
506155090b bind8: DNSSEC fix NSEC3PARAM RR do not include salt length 2019-09-12 19:24:15 +01:00
Jamie Cameron
68bb6bc9f5 Refactor arg parsing for func to get rules 2019-09-11 22:48:54 -07:00
Jamie Cameron
3bacac8880 Merge branch 'master' of github.com:webmin/webmin 2019-09-11 21:47:34 -07:00
Jamie Cameron
82759475c2 Just reload the one zone 2019-09-11 21:46:45 -07:00
Jamie Cameron
03b5106a7d Merge pull request #1101 from mzglinski/master
Fix renewal error
2019-09-08 13:39:15 -07:00
Jamie Cameron
64d60374ad Properly escape input 2019-09-07 23:23:03 -07:00
Jamie Cameron
053a2189f9 New dev version bump 2019-09-07 22:32:16 -07:00
Ilia Rostovtsev
eb5c9038cf Use request URI as ReadParse not run 2019-09-06 20:20:14 +03:00
Ilia Rostovtsev
160e6f3612 Merge pull request #1108 from daiki-sato/patch-1
Update lang/ja_JP with some new translations
2019-09-06 15:26:02 +03:00
mzglinski
e71c17ced7 Change --keep-until-expiring to --force-renewal 2019-09-06 11:35:57 +02:00
Jamie Cameron
b31758739a Merge pull request #1103 from vsc55/master
fix error the donot detect interfac vlan (ethx.x).
2019-09-05 20:41:42 -07:00
daiki-sato
ccffcb55f7 Update Japanese Translation about 'uptracker' adnd 2019-09-06 10:22:47 +09:00
daiki-sato
0aff791cb9 Update Japanese Translations about header statusmsg 2019-09-06 10:17:22 +09:00
daiki-sato
a4c6d0752a Japanese translations update about 'ui' 2019-09-06 10:16:08 +09:00
daiki-sato
726247cc4d Japanese Translation update about 'password' 2019-09-06 10:11:00 +09:00
daiki-sato
4f8c0449f6 Japanese translations update about 'readparse' 2019-09-06 09:57:23 +09:00
daiki-sato
4654e37492 update Japanese translations about 'progress' 2019-09-06 09:55:23 +09:00
daiki-sato
9da1f5ac99 update Japanese translation about 'feedback' 2019-09-06 09:52:16 +09:00
daiki-sato
6066a3f6b7 update for Japanese translation with "OK" 2019-09-06 09:36:56 +09:00
Javier Pastor
a6d69ee7a9 Merge pull request #1 from vsc55/fix_net_active_interfaces_vlan
Fix net active interfaces vlan
2019-09-05 17:17:25 +02:00
Javier Pastor
6fbec6c4ac only show active interface. 2019-09-05 17:05:20 +02:00
Javier Pastor
423120a721 fix: "active_interfaces" not detect interface vlan. 2019-09-05 16:52:00 +02:00
Jamie Cameron
1563915e68 Merge pull request #1106 from Minty-He/master
Update password_change.cgi
2019-09-04 21:02:07 -07:00
Minty-He
99de0dcfe4 Update password_change.cgi
check if $wuser exist before touch it.
2019-09-05 11:16:44 +08:00
Javier Pastor
8199f3212e fix error the donot detect interfac vlan (ethx.x). 2019-09-04 01:16:37 +02:00
mzglinski
5691042e1a Fix renewal error 2019-09-03 10:58:02 +02:00
Jamie Cameron
2148cb9588 Don't bother trying to parse the config file if needed module is missing https://www.virtualmin.com/node/67051 2019-08-31 19:11:05 -07:00
Jamie Cameron
fd3b2efa3d Don't unserialize until we know the user is allowed to make calls 2019-08-28 11:31:15 -07:00
Jamie Cameron
33f1b66d8d MariaDB 10.x still uses password() 2019-08-25 21:33:14 -07:00
Jamie Cameron
cae4b45d2a Debian 10 has moved to MaraiDB 2019-08-25 21:06:43 -07:00
Jamie Cameron
7bac622a2b Various fixes for Debian 10 2019-08-25 16:20:39 -07:00
Jamie Cameron
b66fe4daa6 Update error checking 2019-08-25 15:12:43 -07:00
Jamie Cameron
2d2c4ee08d Add some more error checking 2019-08-25 15:08:07 -07:00
Jamie Cameron
44f587f973 Build script for russian encoding conversion 2019-08-25 15:06:51 -07:00
Jamie Cameron
5e2f906766 Use files in same directory 2019-08-25 15:04:26 -07:00
Jamie Cameron
740d836499 Retire the potenially unsafe <exec> help file tag https://github.com/webmin/webmin/issues/1095 2019-08-22 23:10:48 -07:00
Jamie Cameron
cdfd3f16ea Merge branch 'master' of github.com:webmin/webmin 2019-08-21 13:21:39 -07:00
Jamie Cameron
a5933e3056 Check in forgotten file 2019-08-21 10:50:38 -07:00
Ilia Rostovtsev
1f5600967f Convert path to its original content, as expected
https://sourceforge.net/p/webadmin/discussion/600155/thread/abe25698b1/?limit=25#8d9e
2019-08-20 12:55:40 +03:00
Jamie Cameron
129933a8e1 no need to check in a todo list file 2019-08-19 09:38:46 -07:00
Jamie Cameron
d425e02302 Merge branch 'master' of github.com:webmin/webmin 2019-08-19 09:38:10 -07:00
Jamie Cameron
84fce2f4d0 no need to check in a notes file 2019-08-19 09:38:03 -07:00
Ilia Rostovtsev
8fc9ad32c9 Fix paddings 2019-08-19 17:21:44 +03:00
Jamie Cameron
10989a5c63 length doesn't get the length of an array 2019-08-18 18:28:54 -07:00
Jamie Cameron
2c2c035c38 Generate is always an array ref 2019-08-18 17:57:37 -07:00
Jamie Cameron
d6ff157597 Detect all SuSE versions https://sourceforge.net/p/webadmin/bugs/5295/ 2019-08-18 17:00:11 -07:00
Jamie Cameron
4853a46dee Better deal with the case where a new webmin version has dependencies 2019-08-18 16:18:52 -07:00
Jamie Cameron
b58ff873ce Merge branch 'master' of github.com:webmin/webmin 2019-08-18 12:23:46 -07:00
Jamie Cameron
b33a07acac Who burns CDs anymore? 2019-08-18 12:23:39 -07:00
Ilia Rostovtsev
9fab2604f1 1.930 2019-08-18 13:29:56 +03:00
Jamie Cameron
9a0f3c0f73 Fix readme file path 2019-08-17 17:21:31 -07:00
Jamie Cameron
e89ffcfa69 This script is in the root directory 2019-08-17 16:44:54 -07:00
Jamie Cameron
c98d49b198 New version bump 2019-08-17 15:39:17 -07:00
Jamie Cameron
eaf74d1385 Merge pull request #1087 from chrisstaite/master
Freeze and thaw zone when re-signing.
2019-08-11 22:41:02 -07:00
Jamie Cameron
57cfc150dd Merge branch 'master' of github.com:webmin/webmin 2019-08-11 16:10:17 -07:00
Jamie Cameron
ab0c84eed5 Support noprefixroute option https://www.virtualmin.com/node/66738 2019-08-11 16:09:40 -07:00
Ilia Rostovtsev
d3d1cc1737 Fix typo 2019-08-11 17:15:16 +03:00
Ilia Rostovtsev
2a0fe13317 Prevent reflected XSS by escaping path (coming from user) 2019-08-11 17:12:05 +03:00
Jamie Cameron
1e2545b06e Call footer after referer error 2019-08-10 16:27:27 -07:00
Jamie Cameron
3ef0e979d6 Never use theme for referrer check error, to limit the attack surface 2019-08-10 16:26:02 -07:00
Jamie Cameron
1feaa18d99 Prevent a malicious request from including an XSS in the x-forwarded-for header 2019-08-10 16:16:01 -07:00
Jamie Cameron
882c8152e5 Merge branch 'master' of github.com:webmin/webmin 2019-08-10 16:13:59 -07:00
Jamie Cameron
6230f9e9fc Just in case IP contains special characters 2019-08-10 16:12:55 -07:00
Ilia Rostovtsev
55cfbd140c Fix HTML to avoid undesirable nested forms in output 2019-08-10 22:33:51 +03:00
Chris
47a1013472 Freeze and thaw zone when re-signing. 2019-08-06 23:03:23 +01:00
Jamie Cameron
1eecef7ab9 MySQL vars like tmpdir need quoting 2019-08-04 15:09:28 -07:00
Jamie Cameron
771a4a413c Fix double-slashes 2019-08-04 15:05:51 -07:00
Jamie Cameron
cdac858567 Add unzip as a dependency f0a190276c 2019-08-04 12:23:21 -07:00
Jamie Cameron
332d71dcd6 Fix spaces in public key 2019-08-04 12:18:06 -07:00
Jamie Cameron
df8a43fb4b Object names cannot contact special characters 2019-08-03 22:41:37 -07:00
Jamie Cameron
8cf71f5b3a Only hide SSL option for sites definitely on port 80 https://github.com/webmin/webmin/issues/1085 2019-08-03 21:11:14 -07:00
Jamie Cameron
0da2af51c6 Reject null bytes early https://github.com/webmin/webmin/issues/945 2019-08-03 11:15:17 -07:00
Jamie Cameron
f0a190276c Add debs used by file manager 2019-08-03 10:54:21 -07:00
Jamie Cameron
e581097113 Show start time nicely formatted https://github.com/authentic-theme/authentic-theme/issues/1387 2019-07-30 23:05:07 -07:00
Jamie Cameron
c6dedff679 Translation updates 2019-07-28 18:00:54 -07:00
Jamie Cameron
8b4b053222 Fix version bump 2019-07-23 23:01:22 -07:00
Jamie Cameron
9635f6a744 New version bump 2019-07-23 22:54:48 -07:00
Jamie Cameron
fd265242d1 Records with ; need to be quoted https://www.virtualmin.com/node/66527 2019-07-21 22:51:45 -07:00
Jamie Cameron
8d874344a1 Use a consistent certificate name https://www.virtualmin.com/node/65664 2019-07-15 18:54:45 -07:00
Ilia Rostovtsev
cbe670e664 Fix to properly test if reboot is required
Current version of 'needs-restarting' command only has '-r' switch on CentOS 7 distros. What is worse, for latest RHEL versions (like Fedora), this command dropped '-r' switch, which makes impossible making it easy to determine if reboot is required. Any version of this command on CentOS 6 or Fedora Server, would return false positive output. The only way to test, if new kernel was installed, is to compare currently running kernel, with latest installed (excluding custom) kernel, along with latest reboot time and latest kernel install time.

https://sourceforge.net/p/webadmin/bugs/5280/
https://github.com/authentic-theme/authentic-theme/issues/1381
2019-07-12 18:50:51 +03:00
Ilia Rostovtsev
090ed9f1d8 Update CHANGELOG.md 2019-07-06 19:39:32 +03:00
Jamie Cameron
b1349bfc27 New version bump 2019-07-03 02:06:55 -07:00
Jamie Cameron
1b1579ad1b Allow commenting out of hosts file entries 2019-07-03 01:35:33 -07:00
Jamie Cameron
9d54424523 Add missing string 2019-07-01 01:51:10 -07:00
Jamie Cameron
aac36ae5fc New feature log 2019-06-30 19:43:05 -07:00
Jamie Cameron
6aca4b6fd3 Monitor type for init scripts 2019-06-30 18:35:07 -07:00
Jamie Cameron
031aded040 API for listing action names generically 2019-06-30 18:33:36 -07:00
Jamie Cameron
3f73bd8f1c Use single command to get status 2019-06-30 17:22:10 -07:00
Jamie Cameron
ef4213df55 Handle case where some paths are listed twice https://github.com/Real-Gecko/Filemin/issues/144 2019-06-30 16:04:46 -07:00
Jamie Cameron
e0c2b84913 Merge branch 'master' of github.com:webmin/webmin 2019-06-23 18:02:53 -07:00
Ilia Rostovtsev
b79d78a9ba Don't perform such redirects
It not only breaks Authentic Theme (and would break any SPA theme) but also doesn't let user to see output after reporting spam/ham.
2019-06-21 21:06:48 +03:00
Jamie Cameron
bf3e179429 run-parts only runs executable alpha-numeric files https://github.com/authentic-theme/authentic-theme/issues/1339 2019-06-16 18:35:55 -07:00
Jamie Cameron
3efa74f29a Properly escape packages to update 2019-06-11 11:33:12 -07:00
Jamie Cameron
ffc08b399a Merge branch 'master' of github.com:webmin/webmin 2019-06-08 16:18:27 -07:00
Jamie Cameron
7b958daef9 Don't show low disk space on CDs 2019-06-08 16:17:54 -07:00
Ilia Rostovtsev
9dc50476ba Update LICENCE 2019-06-04 19:02:06 +03:00
Ilia Rostovtsev
0df56f2896 Delete LICENSE 2019-06-04 19:01:47 +03:00
Ilia Rostovtsev
9a4d7c400a Create LICENSE 2019-06-04 19:00:50 +03:00
Ilia Rostovtsev
382d8d1033 Update README.md 2019-06-04 18:57:07 +03:00
Ilia Rostovtsev
017972b8e7 Update LICENCE 2019-06-04 18:56:48 +03:00
Ilia Rostovtsev
49e5e7ef43 Create CHANGELOG.md 2019-06-04 18:49:08 +03:00
Ilia Rostovtsev
4655b89dd2 Rename README to README.md 2019-06-04 18:48:06 +03:00
Ilia Rostovtsev
cf86d9794f Update README 2019-06-04 18:47:27 +03:00
Jamie Cameron
6ed15902f1 Catalan update 2019-06-02 23:22:28 -07:00
Jamie Cameron
c8bc89976d Catalan update 2019-06-02 23:19:24 -07:00
Jamie Cameron
a2d31aa7a4 Fix locking function 2019-06-01 18:24:05 -07:00
Jamie Cameron
7b4be20934 Break out of infinite loop in malformed procmail config https://sourceforge.net/p/webadmin/usermin-bugs/473/ 2019-06-01 17:14:21 -07:00
Ilia Rostovtsev
a7cc1f1d90 Fix to check if element exists 2019-05-31 12:07:08 +03:00
Ilia Rostovtsev
0cb86127e8 Print buttons consistently 2019-05-28 13:01:06 +03:00
Ilia Rostovtsev
f293c3199e Print buttons consistently 2019-05-28 12:37:51 +03:00
Jamie Cameron
d52b4a440f Dev version bump 2019-05-27 21:37:33 -07:00
Jamie Cameron
cd9c15b996 Fix encoding 2019-05-27 19:18:39 -07:00
Jamie Cameron
85803b5778 Merge branch 'master' of github.com:webmin/webmin 2019-05-27 19:15:54 -07:00
Jamie Cameron
5414422319 Fix encoding 2019-05-27 19:15:46 -07:00
Ilia Rostovtsev
8e11dfccfb Add pointer 2019-05-27 16:09:26 +03:00
Jamie Cameron
13939b4475 Sometimes -P is a valid flag, but not the flag we want 2019-05-26 16:59:58 -07:00
Jamie Cameron
7249e646e8 Allow en* interface names https://github.com/webmin/webmin/issues/930 2019-05-26 09:37:02 -07:00
Jamie Cameron
e2a2334611 Merge branch 'master' of github.com:webmin/webmin 2019-05-25 12:53:19 -07:00
Jamie Cameron
f71a66e60b Fix config option to use custom ipv6 save file https://github.com/webmin/webmin/issues/1062 2019-05-25 12:53:13 -07:00
Ilia Rostovtsev
a60ffc8372 Don't use monospace font for SELinux attrs 2019-05-23 13:40:50 +03:00
Jamie Cameron
e0ae7426cf German translation updates from Raymont Vetter 2019-05-19 18:26:41 -07:00
Jamie Cameron
de24b412d0 Fix webprefix removal to take / into account https://github.com/webmin/webmin/issues/1051 2019-05-19 18:14:09 -07:00
Jamie Cameron
909cb57bf2 Use needs-restarting command to check if a reboot is needed 2019-05-19 17:45:07 -07:00
Jamie Cameron
76de50edf5 Merge branch 'master' of github.com:webmin/webmin 2019-05-19 17:28:53 -07:00
Jamie Cameron
8f851e5cc6 Handle case where YAML already contains network: block https://github.com/webmin/webmin/issues/930 2019-05-19 17:28:33 -07:00
Ilia Rostovtsev
accbcfd4d4 Fix typo 2019-05-19 13:01:06 +03:00
Jamie Cameron
2ab5ff1b7e Small fix to previous patch 2019-05-18 18:00:37 -07:00
Jamie Cameron
81f9d1239b Handle another ip addr output line https://www.virtualmin.com/node/65844 2019-05-18 17:57:55 -07:00
Jamie Cameron
017fdeb690 Function to list themes that can be used 2019-05-18 17:30:47 -07:00
Jamie Cameron
d109e256c8 Permission fix 2019-05-18 17:29:50 -07:00
Jamie Cameron
c3275fd05a Respect show next run time 2019-05-18 11:00:09 -07:00
Ilia Rostovtsev
aaeab928b0 Print number of cols to prevent breaking layout 2019-05-16 16:10:10 +03:00
Ilia Rostovtsev
7dc35af03b Fix to print less information while extracting 2019-05-15 14:09:21 +03:00
Ilia Rostovtsev
0f3521b995 Check for -UU option explicitly 2019-05-15 14:02:21 +03:00
Ilia Rostovtsev
64e797ea2e Non GNU unzip don't have -UU switch 2019-05-15 12:29:40 +03:00
Ilia Rostovtsev
9a57de5d1c Fix extracting with correct bytes in file names
6aa3d5306a
2019-05-14 22:56:32 +03:00
Jamie Cameron
828fd37c82 Gracefully handle case where firewalld isn't running or active rules can't be fetched https://www.virtualmin.com/node/65795 2019-05-13 20:12:29 -07:00
Jamie Cameron
a88a9de113 Merge branch 'master' of github.com:webmin/webmin 2019-05-12 16:33:51 -07:00
Jamie Cameron
90b759e644 Handle a zero-sized step https://github.com/authentic-theme/authentic-theme/issues/1339 2019-05-12 16:33:05 -07:00
Jamie Cameron
5b8a3fb3bf Merge pull request #1055 from t-offline/patch-1
Update update_sched.cgi
2019-05-12 13:33:55 -07:00
Jamie Cameron
5794174f05 Handle word 'dynamic' in ip addr output https://www.virtualmin.com/node/65844 2019-05-12 11:42:28 -07:00
Jamie Cameron
baabbfd4ab Fix perl warning https://sourceforge.net/p/webadmin/bugs/5259/ 2019-05-12 11:27:03 -07:00
Christian Pacher
4565a3ff4d Update update_sched.cgi
Fix for:
Failed to update modules : You must enter an email address if only showing what would be updated.
Usermin Configuration ->Upgrade Usermin -> Scheduled update
2019-05-10 17:34:01 +02:00
Jamie Cameron
805ae75c20 Merge branch 'master' of github.com:webmin/webmin 2019-05-08 20:42:52 -07:00
Jamie Cameron
794dab045a Don't try to compute time for a reboot job https://github.com/authentic-theme/authentic-theme/issues/13390 2019-05-08 20:40:48 -07:00
Ilia Rostovtsev
f6c2f11dc3 Fix Illegal division by zero error 2019-05-07 00:09:12 +03:00
Jamie Cameron
6c29748bf9 Merge branch 'master' of github.com:webmin/webmin 2019-05-03 16:34:09 -07:00
Jamie Cameron
81bf5426ae Fix bug in regexp 2019-05-03 16:34:03 -07:00
Jamie Cameron
3d28fd96f6 Deal better with empty string real names 2019-05-03 12:42:39 -07:00
Jamie Cameron
ad2410b86a Major version bump 2019-04-28 13:26:47 -07:00
Jamie Cameron
e9cdebcffe Fix turning off other category 2019-04-28 13:23:46 -07:00
Jamie Cameron
1bacadd3b4 Empty hash keys don't always work 2019-04-28 13:14:15 -07:00
Jamie Cameron
b10340a5a3 changelog for repo feature 2019-04-27 23:08:47 -07:00
Jamie Cameron
5fbaa665f9 APT repo creation support 2019-04-27 23:07:44 -07:00
Jamie Cameron
badb06c134 Fix up repo log message 2019-04-27 18:57:25 -07:00
Jamie Cameron
66683b0e3f Add param to skip errors 2019-04-27 17:55:34 -07:00
Jamie Cameron
1ca47da261 Merge branch 'master' of github.com:webmin/webmin 2019-04-27 12:01:16 -07:00
Jamie Cameron
3a84169fbe Only new debian versions support vlan-raw-device 2019-04-27 11:59:15 -07:00
Ilia Rostovtsev
8eb8c815c1 Merge branch 'master' of github.com:webmin/webmin 2019-04-27 12:58:21 +03:00
Ilia Rostovtsev
a171aa47c0 Don't print it two times, it's very confusing 2019-04-27 12:57:41 +03:00
Ilia Rostovtsev
6853582e72 Fix previously false logic for redirects 2019-04-26 14:16:09 +03:00
Ilia Rostovtsev
4b709fd473 Write follow URL only once 2019-04-25 16:22:44 +03:00
Ilia Rostovtsev
94234a5d43 Fix missing webprefix 2019-04-25 11:06:53 +03:00
Ilia Rostovtsev
203a307b5a Fix comment 2019-04-23 16:48:26 +03:00
Ilia Rostovtsev
9e43813df8 Fix indentations 2019-04-23 16:47:16 +03:00
Ilia Rostovtsev
c86e29470a Fix to store redirects more reliably 2019-04-23 16:45:29 +03:00
Jamie Cameron
06f74a28cb Nicer messages for updating a single repo 2019-04-21 18:10:14 -07:00
Jamie Cameron
dc1e9fa77e Make disable/enable/deletion work 2019-04-21 17:59:58 -07:00
Jamie Cameron
494bccece3 Show Debian APT repos 2019-04-21 17:48:50 -07:00
Jamie Cameron
b1048601c8 Fix version detection url 2019-04-21 16:54:21 -07:00
Jamie Cameron
046efee6e8 Work on actually creating repos 2019-04-21 16:53:41 -07:00
Jamie Cameron
ca0e907fcd Handle case of no zone files better 2019-04-21 14:36:45 -07:00
Jamie Cameron
60321ac83e Get domain name from DNS config if possible 2019-04-21 14:11:18 -07:00
Jamie Cameron
64a344d98f Add missing vlan-raw-device field https://github.com/webmin/webmin/issues/1047 2019-04-20 21:58:48 -07:00
Jamie Cameron
6d0120604a Merge branch 'master' of github.com:webmin/webmin 2019-04-20 12:08:46 -07:00
Jamie Cameron
52a93bb9d0 Fix display of last scheduled check 2019-04-20 12:08:31 -07:00
Ilia Rostovtsev
f82d4c3f53 Display error text message and not allowed directories in backticks 2019-04-20 12:31:25 +03:00
Ilia Rostovtsev
84ef192307 Fix indent and formatting 2019-04-20 00:56:18 +03:00
Ilia Rostovtsev
1e2b0dfad9 Add sub to get GPG version 2019-04-19 23:34:17 +03:00
Ilia Rostovtsev
6825658a5c Add support for recent gpg command output 2019-04-19 19:59:27 +03:00
Jamie Cameron
f3762aec93 Add support for user-supplied prefix flag https://github.com/webmin/webmin/pull/1043 2019-04-16 23:13:58 -07:00
Jamie Cameron
a777dd9614 Merge branch 'master' of github.com:webmin/webmin 2019-04-16 23:11:47 -07:00
Jamie Cameron
b1dff57ef3 Re-enable referrer checking for safety 2019-04-16 21:49:37 -07:00
Jamie Cameron
694599a2d3 Handle vlan interfaces properly https://github.com/webmin/webmin/issues/1045 2019-04-14 22:29:21 -07:00
Jamie Cameron
c0ae367a05 Explain why lockijng failed https://www.virtualmin.com/node/65417 2019-04-12 16:41:29 -07:00
Jamie Cameron
04603f1604 Handle DB prefix properly https://github.com/webmin/webmin/issues/1044 2019-04-12 16:27:57 -07:00
Jamie Cameron
77b3471442 Add support for a DB prefix https://github.com/webmin/webmin/issues/1044 2019-04-12 16:10:46 -07:00
Ilia Rostovtsev
0c68b28259 UTF-8 files are auto-generated 2019-04-10 20:53:34 +03:00
Ilia Rostovtsev
97b34b3b91 UTF-8 files are auto-generated 2019-04-09 17:52:12 +03:00
jcameron@webmin.com
5666ae3962 UTF-8 module.info files are auto-generated 2019-04-08 11:16:40 -07:00
Ilia Rostovtsev
e30b793c3d Don't print hidden opener table if no content in it
Previously, when you chosen Google Authenticator, empty extra row was inserted in UI, making it look if something goes wrong.
2019-04-08 12:51:14 +03:00
Jamie Cameron
a5a4af7410 Fix another perl warning 2019-04-07 21:59:07 -07:00
Jamie Cameron
3aef6058e0 Fix some perl warnings 2019-04-07 21:57:44 -07:00
Jamie Cameron
b77a782f0b Merge branch 'master' of github.com:webmin/webmin 2019-04-07 21:51:12 -07:00
Jamie Cameron
5324d6e8fd Fix command to re-read logs 2019-04-07 21:20:09 -07:00
Ilia Rostovtsev
6b4b2c728b Add missing webprefix 2019-04-07 11:23:20 +03:00
Ilia Rostovtsev
34c6acdeb2 As proxy used, redirect properly upon initial load or page reload
Now, it redirects to the domain root.
2019-04-07 11:14:35 +03:00
Jamie Cameron
8662a30432 Broadcast can be missing https://github.com/webmin/webmin/issues/1040 2019-04-06 20:23:33 -07:00
Ilia Rostovtsev
4d4a79bdc2 Shorten columns names for better UX 2019-04-04 14:40:54 +03:00
Jamie Cameron
4c77446b2f Newer CentOS versions use /etc/hostname 2019-04-03 22:49:05 -07:00
Jamie Cameron
ddbbcdc0c1 Data::Dumper is needed to cache packages 2019-04-03 22:31:20 -07:00
Jamie Cameron
dc9fc349aa Sometimes map paths have subs in them https://www.virtualmin.com/node/65254 2019-03-30 12:51:01 -07:00
Jamie Cameron
4aa0ae9e06 Merge branch 'master' of github.com:webmin/webmin 2019-03-29 20:01:56 -07:00
Jamie Cameron
65bf61271d Special case for when getpw* list doesn't return all users https://github.com/virtualmin/virtualmin-gpl/issues/84 2019-03-29 20:01:04 -07:00
Jamie Cameron
542dba4cd4 Merge pull request #1037 from amishmm/option-n
squid module: support for -n option for ACL
2019-03-29 19:47:06 -07:00
Jamie Cameron
57bb58051c Merge branch 'master' of github.com:webmin/webmin 2019-03-27 22:58:12 -07:00
Jamie Cameron
ad7dde0591 Strip off proxy: prefix when parsing map file types https://www.virtualmin.com/node/65254 2019-03-27 22:55:54 -07:00
Ilia Rostovtsev
533a99fcc4 Fix free space logic reversed 2019-03-27 23:34:39 +03:00
Amish
42ba3cc5be Support for -n option for ACL 2019-03-27 18:12:58 +05:30
Jamie Cameron
596069cc65 German translation from Raymond Vetter 2019-03-24 17:45:16 -07:00
Jamie Cameron
6b3c5152b8 German translation from Raymond Vetter 2019-03-24 17:45:05 -07:00
Ilia Rostovtsev
2c37a2149e Number of items in directory to initiate server pagination 2019-03-22 20:59:29 +03:00
Jamie Cameron
4a886c4178 Merge branch 'master' of github.com:webmin/webmin 2019-03-19 23:17:12 -07:00
Jamie Cameron
b1fabfc3d5 re-compute LDAP CRC32 checksums https://github.com/webmin/webmin/issues/961 2019-03-19 23:17:06 -07:00
Ilia Rostovtsev
60cc26ffbd Increase buffer size (support for 1Gbps networks) 2019-03-19 11:16:18 +03:00
Ilia Rostovtsev
a7eee18a58 Prevent double redirect 2019-03-18 16:57:17 +03:00
Jamie Cameron
4cb9dd81c5 Fix detection of online players 2019-03-17 22:14:06 -07:00
Jamie Cameron
c336b3d443 Show total play time 2019-03-17 20:37:33 -07:00
Jamie Cameron
ce196d6b8b Extra protection against creating a user called 'webmin' https://www.virtualmin.com/node/65058 2019-03-17 18:39:49 -07:00
Jamie Cameron
989bb25c7d Merge branch 'master' of github.com:webmin/webmin 2019-03-17 13:36:38 -07:00
Jamie Cameron
63f3d51871 Parse YUM repo form 2019-03-17 13:36:26 -07:00
Ilia Rostovtsev
f695820b4b Fix missing semicolon 2019-03-16 12:55:39 +03:00
Ilia Rostovtsev
f2630b366c Fix to use HTML entity for left/right 2019-03-16 12:54:18 +03:00
Jamie Cameron
a9e5cef675 Fix incorrect function name 2019-03-10 18:11:48 -07:00
Jamie Cameron
52f819fa57 Log messages for repo actions 2019-03-10 18:09:25 -07:00
Jamie Cameron
c1dd7b985b Add config option to log scheduled functions 2019-03-10 17:56:47 -07:00
Jamie Cameron
0fea5b9078 Work on repo management 2019-03-09 23:14:30 -08:00
Jamie Cameron
364426e542 Merge branch 'master' of github.com:webmin/webmin 2019-03-09 10:53:10 -08:00
Jamie Cameron
e13846f98e Make module package descriptions simpler 2019-03-09 10:53:03 -08:00
Ilia Rostovtsev
19d705cc4f Combine blocks 2019-03-09 18:26:15 +03:00
Ilia Rostovtsev
5aec699707 Add text color based on free space and auto-open panel on too little 2019-03-09 18:10:31 +03:00
Ilia Rostovtsev
d40e53315b Add UI lib for adding text color 2019-03-09 18:08:39 +03:00
Ilia Rostovtsev
f2cbf0f001 Add support for displaying disk info on Dashboard 2019-03-09 00:04:31 +03:00
Ilia Rostovtsev
e875c791fc Redirect back to Sending Email page for better UX 2019-03-07 23:18:27 +03:00
Ilia Rostovtsev
5d3bb8c1bf Redirect back to Sending Email page for better UX 2019-03-07 23:14:44 +03:00
Jamie Cameron
8110570f68 No more reset button 2019-03-03 22:17:33 -08:00
Jamie Cameron
6f8f23c4a5 Merge branch 'master' of github.com:webmin/webmin 2019-03-03 22:17:02 -08:00
Jamie Cameron
f2c7e4b697 Show page of available repositories 2019-03-03 22:15:12 -08:00
Ilia Rostovtsev
4dd741a2a5 Create module.info.pt_BR 2019-03-02 20:57:14 +03:00
Jamie Cameron
c8cdf69680 Merge pull request #1031 from zeroheure/patch-1
Fix encoding and some typos in french translation
2019-03-02 09:48:56 -08:00
Ilia Rostovtsev
5efbda5ab7 Delete module.info.pt.UTF-8 2019-03-02 20:39:29 +03:00
Xavier Brochard
bfd273a72b Fix encoding and some typos 2019-03-02 17:45:58 +01:00
Ilia Rostovtsev
118a4c0046 Add missing suffix 2019-03-01 22:34:40 +03:00
Ilia Rostovtsev
14788d37ad Add UTF-8 file for Portuguese (Brazilian)
https://www.virtualmin.com/comment/809319#comment-809319
2019-03-01 22:19:16 +03:00
Jamie Cameron
f0eae14f81 Merge branch 'master' of github.com:webmin/webmin 2019-02-28 22:13:39 -08:00
Jamie Cameron
6acc8f0bfe Fix creation of module.info.XX.UTF-8 for languages using the default charset https://github.com/authentic-theme/authentic-theme/issues/1302 2019-02-28 21:40:58 -08:00
Ilia Rostovtsev
6922ab89f5 Fix HTML to use correct nesting
https://github.com/authentic-theme/authentic-theme/issues/1306
2019-02-28 12:04:21 +03:00
Jamie Cameron
2bf41b2709 Use modern UI functions properly 2019-02-24 20:33:29 -08:00
Jamie Cameron
4204be4dd7 Fix search to use correct directory https://github.com/webmin/webmin/issues/1029 2019-02-24 20:27:16 -08:00
Jamie Cameron
1dbfe23ed3 Sometimes version doesn't have -mariadb 2019-02-23 16:58:17 -08:00
Jamie Cameron
6ff2889bc8 Not sure if using last inside an eval is strictly kosher, as it generates a warning 2019-02-23 11:25:00 -08:00
Jamie Cameron
775ba8441f dev version bump 2019-02-23 11:20:18 -08:00
Jamie Cameron
14fc240771 Properly check mysql variant when making version decisions 2019-02-23 11:20:01 -08:00
Jamie Cameron
b483a00b64 Use gnu tar command 2019-02-18 18:11:12 -08:00
Jamie Cameron
938b244849 Make field smaller 2019-02-18 18:10:30 -08:00
Jamie Cameron
a19395f238 Make comment reflect read cases 2019-02-18 18:10:14 -08:00
Jamie Cameron
9ecb8b578d Domain might not be found 2019-02-18 18:09:49 -08:00
Jamie Cameron
2713b41292 Merge branch 'master' of github.com:webmin/webmin 2019-02-18 18:08:50 -08:00
Jamie Cameron
eededaf844 Include full version in msql_version, and actually do version comparisons properly 2019-02-18 16:44:21 -08:00
Ilia Rostovtsev
b46fcab007 Add data attr with link
Prevent initial load issues, when returned data used from file-manager core.

https://github.com/authentic-theme/authentic-theme/issues/1300
2019-02-18 14:08:46 +03:00
Jamie Cameron
dfeff32343 Merge branch 'master' of github.com:webmin/webmin 2019-02-16 22:08:32 -08:00
Jamie Cameron
d9f0b016c2 Allow custom HTTP headers https://github.com/webmin/webmin/issues/1026 2019-02-16 17:18:06 -08:00
Jamie Cameron
a86e5f5f8d Theme library may not be loaded 200. 2019-02-15 10:58:24 -08:00
Ilia Rostovtsev
df0caae5a0 Fix favicon 2019-02-15 13:29:24 +03:00
Ilia Rostovtsev
5363301d3c Update default favicon 2019-02-15 12:04:03 +03:00
Jamie Cameron
661c962443 Exclude old java file manager from new releases 2019-02-11 08:44:15 -08:00
Jamie Cameron
d8898a4d89 Turns out that an unbuffered read actually is necessary when reading from a pipe 2019-02-10 21:03:48 -08:00
Jamie Cameron
3e9e0dfd3d Add a small delay after calling rndc, to allow BIND time to react 2019-02-10 15:18:08 -08:00
Jamie Cameron
017da0b204 Allow theme override 2019-02-07 20:00:16 -08:00
Jamie Cameron
4a300d9257 ui-lib conversion and fix popup https://github.com/webmin/webmin/issues/1021 2019-02-07 19:59:27 -08:00
Jamie Cameron
7992218829 Merge branch 'master' of github.com:webmin/webmin 2019-02-07 19:41:55 -08:00
Jamie Cameron
7a35a59792 Don't include HTML in monitor messages 2019-02-07 19:41:09 -08:00
Ilia Rostovtsev
5a92fe8365 Add XHTML subset 2019-02-07 22:11:01 +03:00
Ilia Rostovtsev
f17a068075 Shorten column size 2019-02-06 14:12:31 +03:00
Ilia Rostovtsev
9ce6bfd308 Shorten column size 2019-02-06 14:11:57 +03:00
Jamie Cameron
85c9233298 Webmin-servers should also include webprefix 2019-02-04 11:25:25 -08:00
Jamie Cameron
132803dbcb Include webprefix in webmin paths 2019-02-04 11:11:07 -08:00
Jamie Cameron
3e5fcb3b10 Support mysql 8 password suntax 2019-02-03 18:14:46 -08:00
Jamie Cameron
453323cce3 Don't show a stack trace when an exception is being caught 2019-02-03 17:18:12 -08:00
Jamie Cameron
3ff670abe1 Pass original webmin URL in via complete-webmin-path header 2019-02-03 14:13:59 -08:00
Jamie Cameron
cede115fb5 Value of a masters block is not a nameserver IP https://github.com/webmin/webmin/issues/1016 2019-01-29 21:50:37 -08:00
Jamie Cameron
544c2b5fa7 Other 40x codes exist 2019-01-27 21:18:07 -08:00
Jamie Cameron
437e123a78 Also update postfix hostname in myhostname https://www.virtualmin.com/node/53972 2019-01-24 22:30:33 -08:00
Jamie Cameron
808ac0cc75 Increase buffer size for reading files 2019-01-23 08:53:34 -08:00
Jamie Cameron
ccf6048c13 Fix back link 2019-01-22 18:29:20 -08:00
Jamie Cameron
797039fb80 Handle case where eth0 has no IP but eth0:1 exists https://github.com/webmin/webmin/issues/1009 2019-01-21 18:45:12 -08:00
Jamie Cameron
32440f642f Remove debug message 2019-01-20 16:59:15 -08:00
Jamie Cameron
ffb017565b Normalize allowed paths with a . in them https://www.virtualmin.com/node/60401 2019-01-16 19:38:55 -08:00
Jamie Cameron
0633772bea Suppress stderr messages https://sourceforge.net/p/webadmin/bugs/5228/ 2019-01-16 19:03:00 -08:00
Jamie Cameron
c2c2d5b2c6 No point trying to read a directory 2019-01-14 23:23:13 -08:00
Jamie Cameron
216a906aea Fail fast if dest file cannot be opened 2019-01-14 20:26:04 -08:00
Jamie Cameron
d61bee0dec Fix perl warning https://www.virtualmin.com/node/60170 2019-01-09 19:19:20 -08:00
Jamie Cameron
a6e4dc21ad Bridging on bonded interfaces is also possible https://www.virtualmin.com/node/60118 2019-01-05 11:13:21 -08:00
Jamie Cameron
a014b136b1 Fix invalid use of text hash https://github.com/webmin/webmin/issues/1006 2019-01-03 23:21:35 -08:00
Jamie Cameron
1cc2f47640 Fix IMAP body search 2019-01-03 21:02:03 -08:00
Jamie Cameron
5344bacaec Show RAM used for caching on the system information page 2018-12-30 19:08:54 -08:00
Jamie Cameron
94fb368317 Don't crash out if there is a PIPE error writing to ispell https://www.virtualmin.com/node/59738 2018-12-29 22:51:20 -08:00
Jamie Cameron
e781b17db1 Merge branch 'master' of github.com:webmin/webmin 2018-12-28 16:45:49 -08:00
Jamie Cameron
3c2be83ea0 Also exclude leases that have replacements https://sourceforge.net/p/webadmin/bugs/5225/ 2018-12-28 16:45:41 -08:00
Jamie Cameron
21b1777e93 Merge pull request #1004 from swelljoe/native-is-certbot
Call it certbot rather than native client
2018-12-26 20:44:28 -08:00
Joe Cooper
a7cb3d2eda call it certbot rather than native client 2018-12-26 21:03:17 -06:00
Jamie Cameron
f0046765a4 New dev version 2018-12-25 10:14:49 -08:00
Jamie Cameron
e37b56f8ee Don't show option that can't be used 2018-12-24 12:48:03 -08:00
Jamie Cameron
04b36157d9 Add check for file permissions 2018-12-22 21:21:06 -08:00
Jamie Cameron
b1a580cd57 Some missed Catalan translation files 2018-12-22 13:11:55 -08:00
Jamie Cameron
9a5e015153 File owner check support 2018-12-22 13:10:20 -08:00
Jamie Cameron
ca1dcfabaf Catalan update from Jaume Badiella 2018-12-22 11:32:42 -08:00
Jamie Cameron
f2992f08c6 Catalan update from Jaume Badiella 2018-12-22 11:32:16 -08:00
Jamie Cameron
9b97ad593e Merge branch 'master' of github.com:webmin/webmin 2018-12-22 09:27:14 -08:00
Jamie Cameron
80a633d722 Crons that run only at boot are valid 2018-12-21 23:34:52 -08:00
Ilia Rostovtsev
728f5a0dd8 Don't nest editor 2018-12-20 15:51:05 +03:00
Jamie Cameron
bb6aa0e6cc Show next cron run time 2018-12-16 22:13:14 -08:00
Jamie Cameron
480876fe32 Merge branch 'master' of github.com:webmin/webmin 2018-12-16 11:15:00 -08:00
Jamie Cameron
9839ea9b7c Force use of english for all install operations https://www.virtualmin.com/node/59733 2018-12-15 13:54:20 -08:00
Jamie Cameron
351b514b61 Merge pull request #1000 from dremerb/master
Fixed bug in parent column in DHCP list view
2018-12-13 21:44:30 -08:00
Daniel Bremer
61b0cafcb5 Change some lang files to allow empty subnets 2018-12-13 14:42:43 +01:00
Jamie Cameron
41d9bf7e77 Fix command field https://sourceforge.net/p/webadmin/bugs/5223/ 2018-12-12 20:09:49 -08:00
Jamie Cameron
e91b8bd929 Fix invalid file descriptor when generating keys https://www.virtualmin.com/node/40349 2018-12-10 23:27:13 -08:00
thecorkscrew
7611df68a1 Resetting parent of hosts
Reset the parent variable when reading the host list. Like this, hosts that are in no subnet will not "inherit" the last known subnet.
2018-12-10 13:22:34 +01:00
Jamie Cameron
6ba8fa73af Amazon Linux 2 detection fix https://sourceforge.net/p/webadmin/bugs/5192/ 2018-12-05 23:09:43 -08:00
Jamie Cameron
c0a037b06b Fix display of new package version https://www.virtualmin.com/node/59670 2018-12-05 21:15:51 -08:00
Jamie Cameron
d7d2942706 Support parameterized two-part actions https://github.com/webmin/webmin/issues/996 2018-12-01 17:19:19 -08:00
Jamie Cameron
8605180c05 Allow parameterized names and ports 2018-12-01 17:09:16 -08:00
Jamie Cameron
aa0db14dd9 >> doesn't update mtime 2018-11-29 21:23:38 -08:00
Jamie Cameron
07c83691d0 Handle another smartctl output format https://sourceforge.net/p/webadmin/bugs/5120 2018-11-28 20:43:51 -08:00
Jamie Cameron
8f5e734c9c Special case for NVME to assume SMART is supported https://sourceforge.net/p/webadmin/bugs/5120/ 2018-11-26 20:12:02 -08:00
Jamie Cameron
8021c36859 Ignore sessions that no longer really exist 2018-11-25 18:02:30 -08:00
Jamie Cameron
0b2c65561b Use proper function to read a line of input 2018-11-25 17:52:22 -08:00
Jamie Cameron
99d6684972 Remove small icons that are never used 2018-11-25 17:16:12 -08:00
Jamie Cameron
363d7234f5 Make makerpm consistent with makemodulerpm 2018-11-25 17:15:32 -08:00
Jamie Cameron
209549b5bd Check in forgotten changelog entry 2018-11-25 17:14:53 -08:00
Jamie Cameron
7369ab0d04 Use correct name in return to index page links 2018-11-25 17:12:15 -08:00
Jamie Cameron
43a715f7d9 Don't show size twice 2018-11-25 17:10:11 -08:00
Jamie Cameron
6cdf4c1175 Add raspberry pi as server type 2018-11-24 15:36:01 -08:00
Jamie Cameron
11cf2f408c Add support for editing innodb_lock_wait_timeout 2018-11-24 12:44:54 -08:00
Jamie Cameron
81aa3052d9 Fix perl warning if out is undefined https://sourceforge.net/p/webadmin/bugs/5218/ 2018-11-24 12:20:32 -08:00
Jamie Cameron
5d0bd909f0 Fix multiple package install https://github.com/webmin/webmin/issues/992 2018-11-22 13:49:27 -08:00
Jamie Cameron
fe3cf26889 Try underlying NVME device first 2018-11-21 19:09:53 -08:00
Jamie Cameron
2e6020d28e Don't recognize flag that's not valid https://github.com/webmin/webmin/issues/948 2018-11-19 15:01:31 -08:00
Jamie Cameron
b3e55c7dc4 Merge branch 'master' of github.com:webmin/webmin 2018-11-19 14:51:50 -08:00
Jamie Cameron
664802ac56 Fix unicode char for left/right 2018-11-19 14:51:37 -08:00
Jamie Cameron
fbb1f03be9 Merge branch 'master' of github.com:webmin/webmin 2018-11-17 10:33:16 -08:00
Jamie Cameron
02ad765408 Since the boot-time interface config is now copied from the old config, fix the way attributes are set 2018-11-17 10:26:55 -08:00
Jamie Cameron
d3aeac48bd Merge pull request #987 from swelljoe/cli
Webmin CLI
2018-11-17 18:54:03 +01:00
Jamie Cameron
66ce36fb01 dev version bump for theme fix 2018-11-17 09:39:09 -08:00
Jamie Cameron
81256bd6e7 ftp and http are acronyms 2018-11-17 16:18:55 +01:00
Jamie Cameron
17685f2c20 Use apache defaut document root by default 2018-11-17 16:09:53 +01:00
Joe Cooper
d2d3a912cd Dead code 2018-11-17 04:17:34 -06:00
Joe Cooper
0d8f5b1907 Oops, remove dead code 2018-11-17 04:15:34 -06:00
Joe Cooper
11bafbf540 Make --help work either before or after subcommand 2018-11-16 20:55:25 -06:00
Joe Cooper
72ba5e3c51 Merge remote-tracking branch 'upstream/master' into cli 2018-11-16 20:19:42 -06:00
Joe Cooper
f42e860a97 Pager on --man 2018-11-16 20:13:54 -06:00
Joe Cooper
3709c33834 Move disable-twofactor back to base dir 2018-11-16 17:08:23 -06:00
Joe Cooper
12a8683be3 Add disable-twofactor, which probably works 2018-11-15 22:41:07 -06:00
Joe Cooper
587acc2ac4 Added --man option for manpage 2018-11-15 20:32:49 -06:00
Joe Cooper
1a6cd46975 typo 2018-11-15 03:31:33 -06:00
Joe Cooper
72df582043 disable-proxy and typo 2018-11-15 03:22:28 -06:00
Joe Cooper
7f5e7fb753 disable-proxy added 2018-11-15 02:46:28 -06:00
Joe Cooper
3a20762df1 POD updates 2018-11-15 01:45:17 -06:00
Joe Cooper
f733f93c58 enable-proxy command, fix missing =back in pods 2018-11-15 01:39:02 -06:00
Joe Cooper
004bda9992 Don't include webmin in list-commands 2018-11-14 22:15:14 -06:00
Joe Cooper
b8ba96ca94 List commands with describe option added 2018-11-14 21:36:10 -06:00
Joe Cooper
0314af1d72 Add --describe option for displaying config.info description 2018-11-14 18:02:34 -06:00
Joe Cooper
ba1838eff7 Validate module config options 2018-11-14 17:05:32 -06:00
Joe Cooper
a6be4107be Add set-config and list-config commands 2018-11-14 02:44:24 -06:00
Joe Cooper
d65db8a283 Accept either .pl or no extension 2018-11-13 03:01:30 -06:00
Joe Cooper
ad5a6c6901 Strip module name from command before run 2018-11-12 23:14:15 -06:00
Joe Cooper
63f81b5485 Remove debug messages 2018-11-12 22:46:30 -06:00
Joe Cooper
40b12569a0 It's alive! 2018-11-12 22:45:37 -06:00
Joe Cooper
2e9bba958a Initial commit with some options parsing and POD 2018-11-12 06:49:12 -06:00
1508 changed files with 8061 additions and 7490 deletions

49
.gitattributes vendored
View File

@@ -2,57 +2,8 @@
# webmin .gitattribues file
# help git / github to know the encoding of webmin (lang) files
# set default encoding to iso-8859-1 aka ASCII
* working-tree-encoding=iso8859-1 git-encoding=iso8859-1
# force module.info to iso-8859-1 even it contains other encodings
*/module.info working-tree-encoding=iso8859-1 git-encoding=iso8859-1
# set all .UTF-8 to UTF-8
*.UTF-8 working-tree-encoding=UTF-8 git-encoding=UTF-8
# set all non iso8859-1 lang files to correct encoding
**/lang/ru_SU working-tree-encoding=koi8-r git-encoding=koi8-r
**/lang/ru_RU working-tree-encoding=windows-1251 git-encoding=windows-1251
**/lang/zh_TW.Big5 working-tree-encoding=Big5 git-encoding=Big5
**/lang/zh_CN working-tree-encoding=GB2312 git-encoding=GB2312
**/lang/hu working-tree-encoding=iso-8859-2 git-encoding=iso-8859-2
**/lang/he working-tree-encoding=iso-8859-8-I git-encoding=iso-8859-8-I
**/lang/tr working-tree-encoding=iso-8859-9 git-encoding=iso-8859-9
**/lang/pl working-tree-encoding=iso-8859-2 git-encoding=iso-8859-2
**/lang/ja_JP.euc working-tree-encoding=EUC-JP git-encoding=EUC-JP
**/lang/si working-tree-encoding=iso-8859-2 git-encoding=iso-8859-2
**/lang/ko_KR.euc working-tree-encoding=EUC-KR git-encoding=EUC-KR
**/lang/cz working-tree-encoding=iso-8859-2 git-encoding=iso-8859-2
**/lang/th working-tree-encoding=tis-620 git-encoding=tis-620
**/lang/no working-tree-encoding=iso-8859-15 git-encoding=iso-8859-15
**/lang/sk working-tree-encoding=iso-8859-2 git-encoding=iso-8859-2
**/lang/lt working-tree-encoding=windows-1257 git-encoding=windows-1257
**/lang/bg working-tree-encoding=windows-1251 git-encoding=windows-1251
**/lang/el working-tree-encoding=iso-8859-7 git-encoding=iso-8859-7
**/lang/uk_UA working-tree-encoding=windows-1251 git-encoding=windows-1251
**/lang/ar working-tree-encoding=iso-8859-6-I git-encoding=iso-8859-6-I
**/lang/fa working-tree-encoding=UTF-8 git-encoding=UTF-8
# set all non iso8859-1 config.info files to correct encoding
*/config.info.ru_SU working-tree-encoding=koi8-r git-encoding=koi8-r
*/lconfig.info.ru_RU working-tree-encoding=windows-1251 git-encoding=windows-1251
*/config.info.zh_TW.Big5 working-tree-encoding=Big5 git-encoding=Big5
*/config.info.zh_CN working-tree-encoding=GB2312 git-encoding=GB2312
*/lconfig.info.hu working-tree-encoding=iso-8859-2 git-encoding=iso-8859-2
*/config.info.he working-tree-encoding=iso-8859-8-I git-encoding=iso-8859-8-I
*/config.info.tr working-tree-encoding=iso-8859-9 git-encoding=iso-8859-9
*/config.info.pl working-tree-encoding=iso-8859-2 git-encoding=iso-8859-2
*/config.info.ja_JP.euc working-tree-encoding=EUC-JP git-encoding=EUC-JP
*/config.info.si working-tree-encoding=iso-8859-2 git-encoding=iso-8859-2
*/config.info.ko_KR.euc working-tree-encoding=EUC-KR git-encoding=EUC-KR
*/lconfig.info.cz working-tree-encoding=iso-8859-2 git-encoding=iso-8859-2
*/lconfig.info.th working-tree-encoding=tis-620 git-encoding=tis-620
*/config.info.no working-tree-encoding=iso-8859-15 git-encoding=iso-8859-15
*/config.info.sk working-tree-encoding=iso-8859-2 git-encoding=iso-8859-2
*/config.info.lt working-tree-encoding=windows-1257 git-encoding=windows-1257
*/lconfig.info.bg working-tree-encoding=windows-1251 git-encoding=windows-1251
*/config.info.el working-tree-encoding=iso-8859-7 git-encoding=iso-8859-7
*/config.info.uk_UA working-tree-encoding=windows-1251 git-encoding=windows-1251
*/config.info.ar working-tree-encoding=iso-8859-6-I git-encoding=iso-8859-6-I
*/config.info.fa working-tree-encoding=UTF-8 git-encoding=UTF-8

40
CHANGELOG.md Normal file
View File

@@ -0,0 +1,40 @@
## Changelog
#### Version 1.930 (August 18, 2019)
These updates fix a [security vulnerability](http://webmin.com/security.html) and should be installed IMMEDIATELY by all users. Although it is not exploitable in a Webmin install with the default configuration, upgrading is strongly recommended.
#### Version 1.920 (July 04, 2019)
This update includes the latest theme version, translation updates, the ability to disable hosts file entries, easier monitoring of bootup actions, and a bunch of bugfixes.
#### Version 1.910 (May 09, 2019)
This release includes theme and translation updates, a page for editing package repositories, cron and status module improvements, and a bunch of other bugfixes and small improvements.
#### Version 1.900 (November 19, 2018)
This version includes wildcard Let's Encrypt SSL cert support, theme and translation updates, support for announcements to Webmin users, and a bunch of other bugfixes and small improvements.
#### Version 1.890 (July 19, 2018)
This version includes Ubuntu 18 network config support, translation updates, multiple theme and file manager updates, BIND freeze/thaw support, support for more Linux distributuions, and a bunch of other bugfixes and small improvements.
#### Version 1.880 (March 16, 2018)
This version includes German, Catalan and Bulgarian translation updates, a new version of the Authentic Theme, support for directly editing the MySQL and PostgreSQL config files, Let's Encrypt bugfixes, more control over system status email notifications, and more.
#### Version 1.870 (December 08, 2018)
This release includes many translation updates, fixes for Let's Encrypt support, UI cleanups, and most importantly a new major version of the Authentic Theme.
#### Version 1.860 (October 10, 2017)
This release includes Let's Encrypt DNS fixes, Majordomo module improvements, XSS security bugfixes, translation updates, a new version of the theme, and more.
#### Version 1.850 (June 28, 2017)
This release includes Let's Encrypt fixes, Majordomo module improvements, FirewallD forwarding support, translation updates, an update to the Authentic theme, and a bunch of other bugfixes.
#### Version 1.840 (May 08, 2017)
This major release includes a large theme update, XSS security fixes, per-domain SSL cert support, thin-provisioned LVM support, Let's Encrypt improvements, translation updates, and the usual gang of bugfixes. Also available is Usermin 1.710, which contains many of the same updates.
#### Version 1.830 (December 29, 2016)
This is mainly a bugfix release, but also contains some translation updates, the latest version of the Authentic Theme, fixes related to Let's Encrypt and LDAP client support, and SElinux and file attribute support in the file manager.
#### Version 1.820 (October 3, 2016)
This updated includes a bunch of bugfixes (particularly in the BIND module), translation updates, the ability to download a MySQL backup, Let's Encrypt improvements, and more.
#### Version 1.810 (August 8, 2016)
This updated includes the latest Authentic Theme, a new IPv6 Firewall module for Linux, Webmin actions logging improvements, Let's Encrypt API fixes and a bunch of other small updates and bugfixes.

29
IDEAS
View File

@@ -1,29 +0,0 @@
- DHCP class support
- Jump to page support in sendmail mailq and other mailqs
- Common functionality between sendmail, qmail and postfix?
- Clean up mailq code in sendmail module!
- Update all code which uses remote_ functions to pass in server object
- Function to open a file in read mode, which checks for < or > characters
- Ties into common callback for modifying file, based on file and module
- Foreign_require should allow a different package name to be specified,
for zone clones with different behaviour
- Change all open() calls to use new API, and mention in module docs
- Bandwidth modules should use some kind of logging socket instead of
syslog, which writes to a daemon.
- reset session timeout every time a key is pressed, to prevent timeouts
when composing mail. Do on all pages.
- covert more modules to readonly support (init first)
- perhaps need untranslate_file function? call in software/*-lib.pl
- writes to temp files should be allowed
- all firewall modules need ability to setup port redirection
- for calling from squid and frox modules, polymorphically
- better support for includes in samba module
- need to expand inline
- keep track of file and line for each directive
- allow copying from view_mail.cgi in mailboxes module (for subs too)
- Support IPFW tables
- integrate venu's file manager
- clone user in useradmin / ldap-useradmin
- improved NFS export support on OSX
- Use CPAN to install Perl modules
- FS#5583

53
LICENCE
View File

@@ -1,29 +1,30 @@
---------------------------------------------------------
Copyright (c) Jamie Cameron
All rights reserved.
BSD 3-Clause License
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the developer nor the names of contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
Copyright (c) Jamie Cameron
THIS SOFTWARE IS PROVIDED BY THE DEVELOPER ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE DEVELOPER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
---------------------------------------------------------
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

56
README
View File

@@ -1,56 +0,0 @@
Webmin Version 1.900
--------------------
Webmin is a web-based interface for system administration for Unix.
Using any browser that supports tables and forms, you can setup user
accounts, Apache, internet services, DNS, file sharing and so on.
Webmin consists of a simple web server, and a number of CGI programs
which directly update system files like /etc/inetd.conf and /etc/passwd.
The web server and all CGI programs are written in Perl version 5, and use
only the standard perl modules.
Webmin can be installed in two different ways :
1) By just running the setup.sh script in the same directory as this README
file, with no arguments. You will be asked a series of questions such as
the configuration directory, your chosen login name and password, and
possibly your operating system. For questions where a default is shown
in square brackets, you can just hit enter to accept the default (which
is usually correct).
If the configuration directory you enter is the same as that used by
a previous install of Webmin, it will be automatically upgraded with all
configurable settings preserved.
This will set up Webmin to run directly from this directory. After running
setup.sh, do not delete the directory as it contains all the scripts and
programs that will be used by Webmin when it is running. Unlike in the second
installation method, the Webmin scripts do not get copied to another
location when installing.
2) By running the setup.sh script in this directory, but with a command-line
argument such as /usr/local/webmin . When a directory like this is provided,
Webmin's scripts will be copied to the chosen directory and it will be
configured to run from that location.
The exact same questions will be asked by setup.sh when it is run with
a directory argument, and upgrading will work in the same way. If you
are upgrading an old install, you should enter the same directory argument
so that the new files overwrite the old in order to save disk space.
After Webmin has been installed to a specific directory using this method,
the directory extracted from the tar.gz file can be safely deleted.
If you are installing Webmin on a Windows system, you must run the command
perl setup.pl instead, as shell scripts will not typically run on a Windows
system. The Windows version depends on several programs and modules that may
not be part of the standard distribution. You will need the process.exe
commmand, the sc.exe command and the Win32::Daemon Perl module.
For more information, see http://www.webmin.com/
For documentation, see http://doxfer.webmin.com/
Jamie Cameron
jcameron@webmin.com

53
README.md Normal file
View File

@@ -0,0 +1,53 @@
## Contents
* [Changelog](https://github.com/webmin/webmin/blob/master/CHANGELOG.md)
* [About](#about)
* [Installation](#installation)[<img src="https://github.com/webmin-devel/webmin/blob/master/media/download-23x14-stable.png?raw=true" title="Stable Versions">](http://webmin.com/download.html)[<img src="https://github.com/webmin-devel/webmin/blob/master/media/download-23x14-devel.png?raw=true" title="Development Versions">](http://webmin.com/devel.html)
* [Documentation](#documentation)
* [Development](#development)
* [License](#license)
## About
**Webmin** is a web-based system administration tool for Unix-like servers, and services with over _1,000,000_ installations worldwide. Using it, it is possible to configure operating system internals, such as users, disk quotas, services or configuration files, as well as modify, and control open-source apps, such as BIND DNS Server, Apache HTTP Server, PHP, MySQL, and [many more](https://doxfer.webmin.com/Webmin/Introduction).
![](https://github.com/webmin-devel/webmin/blob/master/media/webmin-demo-basic.gif?raw=true)
Usability can be expanded by installing modules, which can be custom made. Aside from this, there are two other major projects that extend its functionality:
* [Virtualmin](https://www.virtualmin.com) is a powerful, flexible, most popular, and most comprehensive web-hosting control panel for Linux, and BSD systems, with over _100,000_ installations worldwide. It is available in an open-source community-supported version, and a more feature-filled version with premium support;
* [Usermin](https://github.com/webmin/usermin) presents and controls a subset of user-centred features, rather than administrator-level tasks.
Webmin includes _116_ [standard modules](https://doxfer.webmin.com/Webmin/Webmin_Modules), and there are at least as many third-party modules.
### Requirements
Perl 5.10 or higher.
## Installation
Webmin can be installed in two different ways:
1. By downloading a pre-built package, available for different distributions (CentOS, Fedora, SuSE, Mandriva, Debian, Ubuntu, Solaris and [other](http://www.webmin.com/support.html)) from our [download page](http://webmin.com/download.html);
<kbd>Note: It is highly recommended to [add repository](https://doxfer.webmin.com/Webmin/Installation) to your system for having automatic updates.</kbd>
2. By downloading, extracting [source file](https://prdownloads.sourceforge.net/webadmin/webmin-1.941.tar.gz), and running [_setup.sh_](http://www.webmin.com/tgz.html) script, with no arguments, which will setup to run it directly from this directory, or with a command-line argument, such as targeted directory.
<kbd>Note: If you are installing Webmin [on Windows](http://www.webmin.com/windows.html) system, you must run the command `perl setup.pl` instead. The Windows version depends on several programs, and modules that may not be part of the standard distribution. You will need _process.exe_ commmand, _sc.exe_ command, and _Win32::Daemon_ Perl module.</kbd>
## Documentation
Complete set of documentation for Webmin and all of its modules can be found at out [Wiki page](https://doxfer.webmin.com/Webmin/Main_Page).
## Development
### Lead developer
* [Jamie Cameron](http://www.webmin.com/about.html) [![](https://github.com/webmin-devel/webmin/blob/master/media/linkedin-15x15.png?raw=true)](https://www.linkedin.com/in/jamiecameron2)
### Contributors
* [Joe Cooper](https://github.com/swelljoe)
* [Ilia Rostovtsev](https://github.com/rostovtsev)
* [Kay Marquardt](https://github.com/gnadelwartz)
* [Nawawi Jamili](https://github.com/nawawi) + [57 more..](https://github.com/webmin/webmin/graphs/contributors)
## License
Webmin is released under the [BSD License](https://github.com/webmin/webmin/blob/master/LICENCE).

104
RELEASE
View File

@@ -1,104 +0,0 @@
Release Checklist
-----------------
x Check all .cgi and .pl files for syntax errors!
find . -name "*.cgi" | grep -v shellinabox.cgi | grep -v thirdparty-cgi-scripts | grep -v ipweb | grep -v ipcache | grep -v thejax-theme | xargs -l1 perl -c |& grep -v OK
find . -name "*.pl" | grep -v config.info | grep -v makemodulerpm.pl | grep -v ipcache | grep -v swell-tsunami-theme | grep -v Authen-SolarisRBAC-0.1 | grep -v virtualmin-nuvola | grep -v win32.pl | grep -v asterisk | grep -v server-manager | grep -v thejax-theme | grep -v exim | grep -v Webmin-API-1.0 | xargs -l1 perl -c |& grep -v OK
x Make sure all cgi programs are executable
find . -name "*.cgi" | xargs chmod +x
x Make sure all files are world-readable, but not world-writable
find . -type f | grep -v shellinabox | grep -v asterisk | xargs chmod +r
find . -type f | grep -v shellinabox | grep -v asterisk | xargs chmod o-w
find . -type d | grep -v shellinabox | grep -v asterisk | xargs chmod +rx
find . -type d | grep -v shellinabox | grep -v asterisk | xargs chmod o-w
x Delete all ~, .rej and .orig files
find . -name "*~" -o -name "*.rej" -o -name "*.orig" -o -name ".*.swp" | xargs rm
x Create and check in UTF-8 translations
./chinese-to-utf8.pl
find . -name '*.UTF-8*' | grep -v sccb- | xargs -l1 git add
git commit ; git push
x Check language files for clashes
langcheck.pl lang/en */lang/en | grep -v asterisk/lang | grep -v rae-mpp/lang
x Update README and version files
x Run Virtualmin tests
x fudu
x lentor
x xencentos
x Build .tar.gz, minimal.tar.gz and Solaris, RPM and Debian packages
x Install on test system
vm2 create-system --type kvm --host webmintest --kvm-host fudu.home --ssh-pass smeg --image kvm-centos5.4-base --desc "Webmin install test" --kvm-memory 256
vm2 upload-file --host webmintest.home --source /usr/local/webadmin/rpm/webmin-$ver-1.noarch.rpm --dest /tmp/webmin.rpm
vm2 run-command --host webmintest.home "/etc/init.d/iptables stop ; chkconfig iptables off"
vm2 run-command --host webmintest.home "rpm -U /tmp/webmin.rpm"
vm2 refresh-systems --host webmintest.home
vm2 reboot-system --host webmintest.home
vm2 refresh-systems --host webmintest.home
vm2 run-command --host webmintest.home "rpm -U --force /tmp/webmin.rpm"
vm2 refresh-systems --host webmintest.home
vm2 delete-system --host webmintest.home
x Upload files to sourceforge
/usr/local/webadmin/copy-devels.sh
Create new dir at https://sourceforge.net/projects/webadmin/files/webmin/
scp /tmp/devel/*/*$ver* jcameron,webadmin@frs.sourceforge.net:/home/frs/project/w/we/webadmin/webmin/$ver/
Set default downloads for files at https://sourceforge.net/projects/webadmin/files/webmin/
x Upload signatures to sourceforge (with copy-sigs.sh)
x Update .htaccess redirects in download directory on sourceforge
scp .htaccess web.sourceforge.net:htdocs/.htaccess
x Copy module .wbm files to sourceforge (with modules-release.sh)
x Upload Debian files to site, with :
scp deb/webmin_*.dsc deb/webmin_*.diff webadmin@download.webmin.com:domains/download.webmin.com/public_html/download/deb/
x Generate MD5 checksums with :
cd ~/webmin.com ; ./make-md5.pl $ver >md5.html
x Update and upload website HTML, including lang.html, support.html
and standard.html
Need to run makestandard.pl, makesupport.pl and lang_table.pl
x Update freshmeat.net entry
x Send to mailing list
x Add new modules to thirdpartymodules.com
x Update versions on thirdpartymodules.com at https://mysql-w.sourceforge.net/
- w30065admin / 1diamond
- update webminmodules set version = XXX where standard = 'Y'
x Add version to bug tracker
- https://sourceforge.net/tracker/admin/?group_id=17457
x Add new modules to bug tracker
n Notify mirror site owners at webmin-mirrors@webmin.com
x Copy APT repository with commands (on lentor)
/usr/local/download/deb/repository/make-repo.sh
rsync -rv --rsh=ssh --delete /usr/local/download/deb/repository webadmin@download.webmin.com:domains/download.webmin.com/public_html/download
x Create YUM repository with commands
/usr/local/download/rpm/yum/make-repo.sh
rsync -rv --rsh=ssh /usr/local/download/rpm/yum webadmin@download.webmin.com:domains/download.webmin.com/public_html/download
- Tell Joe
x Facebook
x Update Cloudmin repos
x RPM
x .wbm
x Debian

File diff suppressed because one or more lines are too long

View File

@@ -64,3 +64,5 @@ Converted all pages to use the common Webmin UI library for a more consistent in
Made all code Perl strict and warnings compliant.
---- Changes since 1.670 ----
Added a button for adding multiple Webmin users to a group.
---- Changes since 1.930 ----
Added support for creating "safe-mode" Webmin users who have access only to modules and permissions that don't grant root access.

View File

@@ -362,6 +362,7 @@ sub create_user
my ($user, $clone) = @_;
my %miniserv;
my @mods = &list_modules();
$user->{'name'} eq "webmin" && &error("Invalid username webmin for new user");
&get_miniserv_config(\%miniserv);
@@ -530,6 +531,8 @@ sub modify_user
my ($username, $user) = @_;
my (%miniserv, @pwfile, @acl, @mods, $m);
&get_miniserv_config(\%miniserv);
$user->{'name'} eq "webmin" &&
&error("Invalid username webmin for modified user");
if ($user->{'proto'}) {
# In users and groups DB
@@ -752,9 +755,9 @@ my ($user, $oldpass, $miniserv) = @_;
if ($oldpass ne $user->{'pass'} &&
"!".$oldpass ne $user->{'pass'} &&
$oldpass ne "!".$user->{'pass'} &&
$user->{'pass'} ne 'x' &&
$user->{'pass'} ne 'e' &&
$user->{'pass'} ne '*LK*') {
$oldpass ne 'x' &&
$oldpass ne 'e' &&
$oldpass ne '*LK*') {
# Password change detected .. update change time
# and save the old one
my $nolock = $oldpass;
@@ -2164,5 +2167,16 @@ foreach $a (split(/\s+/, $miniserv{'anonymous'})) {
return @rv;
}
# get_safe_acl(module)
# Returns the safe ACL hash ref for a module, if there is one, or undef
sub get_safe_acl
{
my ($m) = @_;
my $mdir = &module_root_directory($m);
my %rv;
&read_file_cached("$mdir/safeacl", \%rv) || return undef;
return \%rv;
}
1;

View File

@@ -1,5 +0,0 @@
order=Trier les utilisateurs et les groupes par,1,0-Ordre dans le fichier,1-Nom
line1=Options configurables,11
ssleay=Chemin d'acc&#232;s au programme openssl ou ssleay,3,Automatique
line2=Configuration du syst&#232;me,11
display=Mode d'affichage des utilisateurs et des groupes,1,1-Noms seulement,0-Noms et modules

View File

@@ -54,17 +54,26 @@ if ($in{'mod'} && $in{'user'} && &supports_rbac($in{'mod'}) &&
[ 0, $text{'no'} ] ]), 3);
}
if ($in{'mod'}) {
# Load custom ACL library
my $mdir = &module_root_directory($in{'mod'});
if (-r "$mdir/acl_security.pl") {
&foreign_require($in{'mod'}, "acl_security.pl");
}
my $shown_config = 0;
if ($in{'mod'} && -r "$mdir/config.info" &&
(!&foreign_defined($in{'mod'}, "acl_security_noconfig") ||
!&foreign_call($in{'mod'}, "acl_security_noconfig"))) {
# Show module config editing option
print &ui_table_row($text{'acl_config'},
&ui_radio("noconfig", $maccess{'noconfig'} ? 1 : 0,
[ [ 0, $text{'yes'} ], [ 1, $text{'no'} ] ]), 3);
$shown_config = 1;
}
my $mdir = &module_root_directory($in{'mod'});
# Show custom ACL form
if (-r "$mdir/acl_security.pl") {
print &ui_table_hr() if ($in{'mod'});
&foreign_require($in{'mod'}, "acl_security.pl");
print &ui_table_hr() if ($shown_config);
&foreign_call($in{'mod'}, "load_theme_library");
&foreign_call($in{'mod'}, "acl_security_form", \%maccess);
}

View File

@@ -9,7 +9,7 @@ our (%in, %text, %config, %access, $config_directory, $base_remote_user);
&foreign_require("webmin", "webmin-lib.pl");
&ReadParse();
my ($u, %user);
my ($u, %user, $safe);
if ($in{'user'}) {
# Editing an existing user
&can_edit_user($in{'user'}) || &error($text{'edit_euser'});
@@ -17,20 +17,27 @@ if ($in{'user'}) {
$u = &get_user($in{'user'});
$u || &error($text{'edit_egone'});
%user = %$u;
my %gacl = &get_module_acl($in{'user'}, '');
$safe = $gacl{'_safe'};
}
else {
# Creating a new user
$access{'create'} || &error($text{'edit_ecreate'});
&ui_print_header(undef, $text{'edit_title2'}, "");
if ($in{'clone'}) {
# Initial settings come from clone
$u = &get_user($in{'clone'});
%user = %$u;
delete($user{'name'});
my %gacl = &get_module_acl($in{'clone'}, '');
$safe = $gacl{'_safe'};
}
else {
# User starts out empty
%user = ( );
$safe = $in{'safe'};
}
&ui_print_header(undef, $safe ? $text{'edit_title3'}
: $text{'edit_title2'}, "");
}
my $me = &get_user($base_remote_user);
@@ -51,6 +58,7 @@ if ($in{'user'}) {
if ($in{'clone'}) {
print &ui_hidden("clone", $in{'clone'});
}
print &ui_hidden("safe", $safe);
print &ui_hidden_table_start($text{'edit_rights'}, "width=100%", 2, "rights",
1, [ "width=30%" ]);
@@ -155,6 +163,17 @@ if ($in{'user'}) {
$text{'edit_proto_'.($user{'proto'} || '')});
}
# Safe or not?
my $smsg;
if ($in{'user'} && $safe) {
$smsg = &ui_radio("unsafe", 0, [ [ 0, $text{'edit_safe1'} ],
[ 1, $text{'edit_safe0'} ] ]);
}
else {
$smsg = $safe ? $text{'edit_safe1'} : $text{'edit_safe0'};
}
print &ui_table_row($text{'edit_safe'}, $smsg);
print &ui_hidden_table_end("rights");
# Start of UI options section
@@ -332,9 +351,16 @@ my @groups = &list_groups();
print &ui_hidden_table_start(@groups ? $text{'edit_modsg'} : $text{'edit_mods'},
"width=100%", 2, "mods");
# Build list of modules, based on safe mode
my @allmods = &list_module_infos();
if ($safe) {
@allmods = grep { $has{$_->{'dir'}} ||
&get_safe_acl($_->{'dir'}) } @allmods;
}
# Show available modules, under categories
my @mlist = grep { $access{'others'} || $has{$_->{'dir'}} ||
$mcan{$_->{'dir'}} } &list_module_infos();
$mcan{$_->{'dir'}} } @allmods;
my @links = ( &select_all_link("mod", 0, $text{'edit_selall'}),
&select_invert_link("mod", 0, $text{'edit_invert'}) );
my @cats = &unique(map { $_->{'category'} || '' } @mlist);
@@ -359,7 +385,7 @@ foreach my $c (sort { $b cmp $a } @cats) {
}
elsif ($mcan{$md}) {
my $label;
if ($access{'acl'} && $in{'user'}) {
if ($access{'acl'} && $in{'user'} && !$safe) {
# Show link for editing ACL
$label = ui_link("edit_acl.cgi?" .
"mod=" . urlize($m->{'dir'}) .
@@ -387,7 +413,7 @@ print &ui_hidden_table_end("mods");
# Add global ACL section, but only if not set from the group
my $groupglobal = $memg && -r "$config_directory/$memg->{'name'}.acl";
if ($access{'acl'} && !$groupglobal && $in{'user'}) {
if ($access{'acl'} && !$groupglobal && $in{'user'} && !$safe) {
print &ui_hidden_table_start($text{'edit_global'}, "width=100%", 2,
"global", 0, [ "width=30%" ]);
my %uaccess;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -54,7 +54,10 @@ if (!@canulist) {
print &ui_subheading($text{'index_users'})
if (!$config{'display'});
print "<b>$text{'index_nousers'}</b><p>\n";
print ui_link("edit_user.cgi", $text{'index_create'}) . "\n";
print &ui_links_row([
&ui_link("edit_user.cgi", $text{'index_create'}),
&ui_link("edit_user.cgi?ssfe=1", $text{'index_screate'})
]);
$shown_users = 1;
}
}
@@ -64,7 +67,8 @@ elsif ($config{'display'}) {
print &ui_form_start("delete_users.cgi", "post");
&show_name_table(\@canulist, "edit_user.cgi",
$access{'create'} ? $text{'index_create'} : undef,
$text{'index_users'}, "user");
$text{'index_users'}, "user",
$access{'create'} ? $text{'index_screate'} : undef);
print &ui_form_end([ [ "delete", $text{'index_delete'} ],
@gbut ]);
$shown_users = 1;
@@ -77,7 +81,8 @@ else {
print &ui_form_start("delete_users.cgi", "post");
push(@rowlinks, &select_all_link("d", $form),
&select_invert_link("d", $form));
push(@rowlinks, ui_link("edit_user.cgi", $text{'index_create'}))
push(@rowlinks, ui_link("edit_user.cgi", $text{'index_create'}),
ui_link("edit_user.cgi?safe=1", $text{'index_screate'}))
if ($access{'create'});
print &ui_links_row(\@rowlinks);
@@ -251,20 +256,24 @@ $rv .= &ui_grid_table(\@grid, 3, 100,
return $rv;
}
# show_name_table(&users|&groups, cgi, create-text, header-text, param)
# show_name_table(&users|&groups, cgi, create-text, header-text, param,
# safe-text)
sub show_name_table
{
my ($users, $cgi, $ctext, $htext, $param, $stext) = @_;
# Show table of users, and maybe create links
my @rowlinks = ( &select_all_link("d", $form),
&select_invert_link("d", $form) );
push(@rowlinks, ui_link("$_[1]", $_[2])) if ($_[2]);
push(@rowlinks, ui_link($cgi, $ctext)) if ($ctext);
push(@rowlinks, ui_link($cgi."?safe=1", $stext)) if ($stext);
print &ui_links_row(\@rowlinks);
my @links;
for(my $i=0; $i<@{$_[0]}; $i++) {
push(@links, &user_link($_[0]->[$i], $_[1], $_[4]));
for(my $i=0; $i<@$users; $i++) {
push(@links, &user_link($users->[$i], $cgi, $param));
}
print &ui_grid_table(\@links, 4, 100,
[ "width=25%", "width=25%", "width=25%", "width=25%" ], undef, $_[3]);
[ "width=25%", "width=25%", "width=25%", "width=25%" ], undef, $htext);
print &ui_links_row(\@rowlinks);
}

View File

@@ -30,7 +30,7 @@ index_eglist=No s'han pogut llistar els grups: $1
edit_title=Edició d'Usuari Webmin
edit_title2=Creació d'Usuari Webmin
edit_readonly=Aquest usuari Webmin no s'hauria d'editar, per tal com es troba gestionat pel mòdul $1. <a href='$2'>Fés clic aquí</a> per ignorar aquest avís i editar l'usuari - però tingues en compte que els canvis manuals poden ser reescrits!
edit_readonly=Aquest usuari Webmin no s'hauria d'editar, per tal com es troba gestionat pel mòdul $1. <a href='$2'>Fes clic aquí</a> per ignorar aquest avís i editar l'usuari - però tingues en compte que els canvis manuals poden ser reescrits!
edit_rights=Drets d'accés de l'usuari Webmin
edit_user=Usuari
edit_cloneof=Clonació de l'usuari Webmin
@@ -56,7 +56,7 @@ edit_twofactorcancel=Elimina el requeriment d'autenticaci
edit_twofactornone=Encara no n'hi ha cap de configurada
edit_twofactoradd=Activa Dos Factors Per a l'Usuari
edit_lang=Idioma
edit_notabs=Categorització de mòduls
edit_notabs=Categoritza els mòduls
edit_logout=Temps d'expulsió per inactivitat
edit_mins=minuts
edit_chars=lletres
@@ -151,7 +151,7 @@ delete_eanonuser=Aquest usuari s'est
cert_title=Petició de Certificat
cert_issue=Emissió de Certificat
cert_header=Detalls del nou certificat
cert_msg=Aquest formulari permet demanar un cerfificat client SSL que s'utilitzarà en el futur per concedir-te l'accés a Webmin, en lloc del teu nom d'usuari i contrasenya. Això és més segur, però com que l'autenticació és automàtica, no podràs canviar a un usuari diferent utilitzant el certificat.
cert_msg=Aquest formulari permet demanar un certificat client SSL que s'utilitzarà en el futur per concedir-te l'accés a Webmin, en lloc del teu nom d'usuari i contrasenya. Això és més segur, però com que l'autenticació és automàtica, no podràs canviar a un usuari diferent utilitzant el certificat.
cert_ebrowser=Webmin no sap com generar certificats client per al teu navegador ($1)
cert_cn=El teu nom
cert_email=La teva adreça e-mail
@@ -188,7 +188,7 @@ acl_own=Nom
acl_sel=Mòduls seleccionats...
acl_create=Pot crear usuaris nous
acl_delete=Pot suprimir usuaris
acl_rename=Pot renomenar usuaris
acl_rename=Pot reanomenar usuaris
acl_acl=Pot editar el control d'accés al mòdul
acl_lang=Pot canviar l'idioma
acl_chcert=Pot canviar el nom del certificat SSL
@@ -344,7 +344,7 @@ sessions_login=Darrera activitat a
sessions_host=Adreça IP
sessions_lview=Visualitza els registres...
sessions_actions=Accions...
sessions_logouts=Mostra també les sessións desconnectades...
sessions_logouts=Mostra també les sessions desconnectades...
sessions_state=Estat
sessions_this=Aquesta entrada
sessions_in=Connectat
@@ -366,7 +366,7 @@ switch_eold=No s'ha trobat la sessi
rbac_title=Configuració de RBAC
rbac_desc=La integració de Webmin amb RBAC proporciona una forma de determinar els permisos d'ACL i mòduls d'usuari des d'una base de dades RBAC (Role Based Access Control), en lloc d'utilitzar els fitxers propis de configuració de Webmin. Un cop s'ha activat el suport RBAC, tot usuari per al qual s'hagi seleccionat l'opció <b>RBAC controla totes les ACLs i mòduls</b> tindrà les seves capacitats determinades per RBAC en lloc de la configuració de control d'accés de Webmin.
rbac_esolaris=De moment, RBAC només està suportat per Solaris, així que no es pot utilitzar en aquest sistema $1.
rbac_eperl=El mòdul Perl $1 necessari per a la integració amb RBAC no està instal·lat. Fés clic <a href='$2'>aquí</a> per instal·lar-lo ara.
rbac_eperl=El mòdul Perl $1 necessari per a la integració amb RBAC no està instal·lat. Fes clic <a href='$2'>aquí</a> per instal·lar-lo ara.
rbac_ecpan=No tens accés a la pàgina de Mòduls Perl de Webmin per tal d'instal·lar el mòdul $1 necessari per a la integració amb RBAC.
rbac_ok=La integració amb RBAC està disponible en aquest sistema, i es pot activar en base a cada usuari a la pàgina d'Edició d'Usuaris Webmin.
@@ -408,7 +408,7 @@ pass_emaxdays=Hi falta el nombre de dies abans del canvi de contrasenya o b
pass_elockdays=Hi falta el nombre de dies abans del bloqueig de compte o bé és invàlid
pass_eoldblock=Hi falta el nombre de contrasenyes antigues a rebutjar o bé és invàlid
cpass_minsize=Ha de ternir almenys $1 lletres de llarg
cpass_minsize=Ha de tenir almenys $1 lletres de llarg
cpass_notre=Coincideix amb un patró rebutjat
cpass_re=No coincideix amb el patró demanat
cpass_name=Conté el nom d'usuari
@@ -451,7 +451,7 @@ sql_eprefix=Hi falta el DN base o b
sql_eprefix2=El DN base sembla invàlid - ha de ser una cosa com ara <tt>dc=elmeudomini,dc=com</tt>
sql_title2=Creació de les Taules que Falten
sql_tableerr=Els paràmetres de la base de dades d'usuaris i grups són vàlids, però hi falten algunes taules que Webmin necessita: $1
sql_tableerr2=Fes clic al botó <b>Crea les Taules</b> de sota per fer que es creïn automàticamebnt, o bé executa manualment el SQL d'aquí sota.
sql_tableerr2=Fes clic al botó <b>Crea les Taules</b> de sota per fer que es creïn automàticament, o bé executa manualment el SQL d'aquí sota.
sql_make=Crea les Taules
sql_title3=Creació del DN que Falta
sql_dnerr=Els paràmetres de la base de dades d'usuaris i grups són vàlids, però hi falta el DN LDAP que Webmin necessita: $1

View File

@@ -466,3 +466,10 @@ unix_to=Als Webminbenutzer
unix_user=Unixbenutzer ..
unix_utable=Erlaubte Unix Benutzer
unix_who=Benutzer oder Gruppe
index_screate=Erzeuge neuen sicheren Benutzer.
edit_title3=Erzeuge sicheren Webmin Benutzer
edit_safe=Privileg Stufe
edit_safe0=Unbeschr&#228;nkt
edit_safe1=Nur Sichere Module
edit_unsafe=Zur&#252;cksetzen auf unbeschr&#228;nkt
save_eunixname='$1' ist kein System Benuter und kann daher nicht im sicheren Modus genutzt werden

View File

@@ -1,8 +1,8 @@
index_title=Webmin Users
index_user=User
index_modules=Modules
index_create=Create a new Webmin user.
index_rcreate=Create a new risk-level user.
index_create=Create a new privileged user.
index_screate=Create a new safe user.
index_convert=Convert Unix To Webmin Users
index_cert=Request an SSL Certificate
index_twofactor=Two-Factor Authentication
@@ -30,6 +30,7 @@ index_eglist=Failed to list groups : $1
edit_title=Edit Webmin User
edit_title2=Create Webmin User
edit_title3=Create Safe Webmin User
edit_readonly=This Webmin user should not be edited as it is managed by the $1 module. <a href='$2'>Click here</a> to bypass this warning and edit the user anyway - but beware that any manual changes may be over-written!
edit_rights=Webmin user access rights
edit_user=Username
@@ -111,9 +112,14 @@ edit_proto_mysql=MySQL database
edit_proto_postgresql=PostgreSQL database
edit_proto_ldap=LDAP server
edit_proto_=Local files
edit_safe=Privilege level
edit_safe0=Unrestricted
edit_safe1=Safe modules only
edit_unsafe=Reset to unrestricted
save_err=Failed to save user
save_ename='$1' is not a valid username
save_eunixname=The username '$1' is not a Unix user, and so cannot be used in safe mode
save_enamewebmin=The username 'webmin' is reserved for internal use
save_edup=The username '$1' is already in use
save_eoverlay=A theme overlay cannot be selected unless a theme is

View File

@@ -1,358 +0,0 @@
acl_acl=Peut modifier le contrôle d'accès au module ?
acl_all=Tous les modules
acl_cats=Peut changer de catégorie ?
acl_cert=Peut demander un certificat ?
acl_chcert=Peut changer le nom du certificat SSL ?
acl_config=Peut modifier la configuration du module ?
acl_create=Peut créer de nouveaux utilisateurs ?
acl_delete=Peut supprimer des utilisateurs ?
acl_egroup=Vous n'êtes pas autorisé à modifier les ACL des groupes
acl_emod=Vous n'êtes pas autorisé à modifier le contrôle d'accès de ce module
acl_err=Impossible d'enregistrer les contrôles d'accès
acl_euser=Vous n'êtes pas autorisé à modifier le contrôle d'accès pour cet utilisateur
acl_gall=Tous les groupes
acl_gassign=Peut affecter des utilisateurs à des groupes
acl_gnone=Aucun
acl_gr=Membres de $1
acl_groups=Peut modifier des groupes ?
acl_gsel=Sélectionnés...
acl_ips=Peut changer le contrôle d'accès IP ?
acl_lang=Peut changer de langue ?
acl_mods=Peut accorder un accès ?
acl_options=Options du contrôle d'accès du module $1
acl_others=Peut voir les modules inaccessibles ?
acl_own=Seulement ses propres modules
acl_pass=Peut modifier les restrictions du mot de passe ?
acl_perms=Les utilisateurs récemment créés obtiennent
acl_perms_0=Contrôle d'accès au module par défaut (sans restriction)
acl_perms_1=Même contrôle d'accès au module que le créateur
acl_rbac=Récupérer les paramètres de contrôle d'accès depuis RBAS ?
acl_rbacyes=Oui (remplace les paramètres ci-dessous)
acl_rename=Peut renommer des utilisateurs ?
acl_reset=Réinitialiser en mode plein accès
acl_sel=Modules sélectionnés...
acl_sessions=Peut afficher et annuler des sessions de connexion ?
acl_sql=peut configurer la base de donnée du groupe et de l'utilisateur ?
acl_switch=Peut basculer vers d'autres utilisateurs ?
acl_sync=Peut configurer la synchronisation des utilisateurs ?
acl_theme=Peut changer le thème personnel ?
acl_times=Peut changer les heures de connexion autorisées ?
acl_title=Contrôle d'accès du module
acl_title2=$2 pour l'utilisateur $1
acl_title3=du groupe $2 pour l'utilisateur $1
acl_uall=Tous les utilisateurs
acl_unix=Peut configurer l'authentification Unix ?
acl_usel=Utilisateurs sélectionnés...
acl_users=Utilisateurs pouvant être modifiés
acl_uthis=Cet utilisateur
cert_already=<b>Avertissement</<b> : vous utilisez déjà le certificat $1.
cert_c=Code du pays
cert_cn=Votre nom
cert_done=Votre certificat pour $1 a été généré avec succès.
cert_ebrowser=Webmin ne sait pas comment émettre des certificats client pour votre navigateur ( $1 )
cert_eca=Impossible de configurer l'Autorité de Certification : $1
cert_ekey=Une nouvelle clé SSL n'a pas été soumise par votre navigateur : peut-être ne gère-t-il pas les certificats client SSL.
cert_email=Adresse électronique
cert_header=Détails du nouveau certificat
cert_install=Installez votre certificat dans le navigateur
cert_issue=Émettre un certificat
cert_key=Taille de la clé
cert_msg=Ce formulaire vous permet de demander un certificat SSL client qui servira ensuite à vous accorder l'accès à Webmin au lieu de vos nom d'utilisateur et mot de passe. Cette méthode est plus sûre, mais comme l'authentification est automatique, vous ne pourrez plus changer d'utilisateur quand vous ferez appel au certificat.
cert_o=Organisation
cert_ou=Département
cert_pickup=<a href='$1'>Cliquez ici pour sélectionner votre certificat et l'installer dans votre navigateur</a>
cert_sp=État
cert_title=Demande de certificat
convert_0=Tous les utilisateurs
convert_1=Seulement les utilisateurs
convert_2=Tous sauf les utilisateurs
convert_3=Utilisateurs du groupe
convert_4=Utilisateurs dont l'UID est dans l'intervalle
convert_added=$1 est ajouté
convert_desc=Ce formulaire vous permet de convertir des utilisateurs Unix existants en utilisateurs Webmin. Les droits d'accès de chaque nouvel utilisateur Webmin seront déterminés par le groupe sélectionné ci-dessous.
convert_ecannot=Vous n'êtes pas autorisé à convertir un utilisateur Unix
convert_egroup=Le groupe Unix n'existe pas
convert_emax=UID maximal invalide
convert_emin=UID minimal invalide
convert_err=Impossible de convertir les utilisateurs
convert_eusers=Aucun utilisateur à convertir saisi
convert_ewgroup=Pas de groupe Webmin de ce type
convert_ewgroup2=Vous n'^étes pas autorisé à affecter de nouveaux utilisateurs à ce groupe
convert_exists=$1 existe déjà
convert_group=Affecter de nouveaux utilisateurs au groupe Webmin
convert_invalid=$1 n'est pas un nom d'utilisateur Webmin valide
convert_msg=Conversion des utilisateurs Unix en cours...
convert_nogroups=Aucun groupe Webmin n'a été défini sur votre système. Vous devez créer au moins un groupe avant d'effectuer la conversion, afin de définir des droits d'accès pour les utilisateurs convertis.
convert_ok=Convertir maintenant
convert_skip=$1 est ignoré
convert_sync=Utiliser à l'avenir le même mot de passe que l'utilisateur Unix ?
convert_title=Conversion des utilisateurs
cpass_dict=est un mot du dictionnaire
cpass_minsize=Doit avoir $1 lettre de long au minimum
cpass_name=Contient le nom de l'utilisateur
cpass_notre=Corresponds à un modèle non permis
cpass_old=Les vieux mots de passes ne peuvent pas être réutilisés
cpass_re=Ne correspond pas au modèle requis
cpass_spellcmd=Ni les commandes $1 ni $2 requises pour vérifier les mots du dictionnaires ne sont installées
delete_ecannot=Vous n'êtes pas autorisé à supprimer des utilisateurs
delete_err=Impossible de supprimer cet utilisateur
delete_eself=Vous ne pouvez pas vous supprimer vous-même
delete_euser=Vous n'êtes pas autorisé à supprimer cet utilisateur
edit_all=Autoriser à partir de toutes les adresses
edit_alldays=Tous les jours
edit_allhours=Tout le temps
edit_allow=Autoriser uniquement à partir des adresses répertoriées
edit_cert=Nom du certificat SSL
edit_chars=Lettres
edit_clone=Cloner
edit_cloneof=Clôner l'utilisateur Webmin
edit_days=Jours autorisés dans la semaine
edit_deny=Interdire à partir des adresses répertoriées
edit_dont=Inchangé
edit_ecreate=Vous n'êtes pas autorisé à créer des utilisateurs
edit_egone=L'utilisateur sélectionné n'existe plus !
edit_euser=Vous n'êtes pas autorisé à modifier cet utilisateur
edit_extauth=Programme d'authentification externe
edit_global=Permissions pour tout les modules
edit_group=Membre du groupe
edit_groupmods=(en plus des modules du groupe)
edit_hide=Masquer si inutilisé
edit_hours=Heures autorisées dans la journée
edit_invert=Inverser la sélection
edit_ipdesc=Le contrôle d'accès IP utilisateur fonctionne de la même manière que le contrôle d'accès IP global du module de configuration de
edit_ips=Contrôle d'accès IP
edit_lang=Langue
edit_lock=Aucun mot de passe accepté
edit_log=Voir les journaux
edit_logout=Durée d'inactivité avant déconnexion
edit_mins=minutes
edit_minsize=Langueur minimum du mot de passe
edit_mods=Les modules Webmin disponibles
edit_modsg=Les modules Webmin disponibles (en y ajoutant ceux du groupe)
edit_modules=Modules
edit_none=Aucun
edit_notabs=Classer les modules par catégories ?
edit_overlayglobal=Aucun - utiliser les thème par défaut
edit_pam=Authentification PAM
edit_pass=Mot de passe
edit_passlocked=le mot de passe n'a pas été modifier depuis $1 jours - le compte est verrouillé !
edit_passmax=le mot de passe n'a pas été modifier depuis $1 jours -il doit etre modifier à la prochaine connexion.
edit_proto_ldap=Le serveur LDAP
edit_proto_mysql=La base de donnée MySQL
edit_proto_postgresql=La base de donnée PostgreSQL
edit_rbacdeny=Mode d'accès RBAC
edit_rbacdeny0=RBAC ne contrôle que le module ACLs sélectionné
edit_rbacdeny1=RBAC contrôle tous les modules et les ACLs
edit_readonly=Cet utilisateur Webmin ne doit pas être édité car il est géré directement par le module $1. <a href='$2'>Cliquez ici</a> pour ignorer cet avertissement et éditer tout de même cet utilisateur, mais attention car tous les changements manuels peuvent être redéfinis !
edit_real=Nom réel
edit_return=à l'utilisateur Webmin
edit_return2=Groupe Webmin
edit_rights=Droits d'accès de l'utilisateur Webmin
edit_risk=Niveau de risque
edit_risk_high=Super-utilisateur
edit_risk_low=Utilisateur normal
edit_risk_medium=Utilisateur administrateur
edit_same=Identique au mot de passe Unix
edit_selall=Tout sélectionner
edit_seldays=Uniquement les jours sélectionnés
edit_selhours=De $1:$2 à $3:$4
edit_set=Remplacer par
edit_skill=Niveau de compétence
edit_switch=Changer d'utilisateur
edit_templock=Verrouillé temporairement
edit_theme=Thème personnel
edit_themedef=Ancien thème Webmin
edit_themeglobal=à partir de la configuration Webmin
edit_title=Modification d'un utilisateur Webmin
edit_title2=Création d'un utilisateur Webmin
edit_ui=les option de l'interface utilisateur
edit_unix=Authentification Unix
edit_user=Nom d'utilisateur
gdelete_desc=Voulez-vous vraiment supprimer le groupe $1 et les utilisateurs qui en sont membres : $2 ?
gdelete_ecannot=Vous n'êtes pas autorisé à supprimer des groupes
gdelete_err=Impossible de supprimer le groupe
gdelete_esub=Les groupes comportant des sous-groupes ne peuvent pas être supprimés
gdelete_euser=Vous ne pouvez pas supprimer votre propre groupe
gdelete_ok=Supprimer le groupe
gdelete_title=Suppression d'un groupe
gdeletes_err=Echec de suppression des groupes
gdeletes_ok=Effacer les groupes
gdeletes_rusure=Etes-vous sur de vouloir effacer les $1 groupes sélectionnés, et les $2 utilisateurs qu'ils contiennent ? Tous leurs paramètres de contrôle d'accès et leurs personnalisations seront perdus.
gdeletes_title=Effacer les groupes
gdeletes_users=Groupes sélectionnés : $1
gedit_desc=Description du Groupe
gedit_ecannot=Vous n'êtes pas autorisé à modifier des groupes
gedit_egone=Le Groupe sélectionné n'existe plus !
gedit_group=Nom du groupe
gedit_members=Membre des utilisateurs et des groupes
gedit_modules=Modules des membres
gedit_rights=Droits d'accèês du groupe Webmin
gedit_title=Modification d'un groupe Webmin
gedit_title2=Création d'un groupe Webmin
gsave_edesc=Description Invalide - le caractère : n'est pas permis
gsave_edup=Ce nom de groupe est déjà utilisé
gsave_ename=Nom du groupe manquant ou invalide
gsave_enamewebmin=Le nom de groupe 'webmin' est réservé pour une utilisation interne
gsave_err=Impossible d'enregistrer le groupe
hide_clone=(Cloner $1)
hide_desc=Les modules suivants seront supprimés de la liste d'accès des modules pour $1 car leurs serveurs correspondants ne sont pas installés sur votre système...
hide_desc2=Soyez conscient que ces modules ne réapparaîotront pas automatiquement si les serveurs correspondants sont installés. Vous devrez accorder l'accès manuellement à l'aide de ce module.
hide_none=Rien à masquer - $1 n'a accès à aucun module dont les serveurs correspondants ne sont pas installés sur votre système.
hide_ok=Masquer les modules maintenant
hide_title=Masquage des modules inutilisés
index_cert=Demander un certificat SSL
index_certmsg=Cliquez sur ce bouton pour demander un certificat SSL qui vous permettra de vous connecter à Webmin de manière sûre sans avoir besoin de saisir un nom d'utilisateur et un mot de passe.
index_convert=Convertir des utilisateurs Unix en utilisateurs Webmin
index_create=Créer un nouvel utilisateur Webmin
index_delete=Effacer la sélection
index_edit=Modifier l'ACL du module :
index_gcreate=Créer un nouveau groupe d'utilisateurs
index_global=ACL globale
index_group=Groupe
index_groups=Groupes Webmin
index_members=Membres
index_modgroups=Modules du groupe $1
index_modules=Modules
index_nogroups=Aucun groupe Webmin modifiable n'est défini
index_none=Aucun
index_nousers=Aucun utilisateur Webmin modifiable n'est défini
index_rbac=Configuration RBAC
index_rcreate=Créer un nouvel utilisateur à niveau de risque
index_return=à la liste des utilisateurs
index_sessions=Afficher les sessions de connexion
index_sync=Configurer la synchronisation des utilisateurs Unix
index_title=Utilisateurs Webmin
index_unix=Configurer l'authentification des utilisateurs Unix
index_user=Utilisateur
index_users=Utilisateurs Webmin
log_acl=Mis à jour l'accès de l'$1 pour l'utilisateur $2
log_cert=émis un certificat pour l'utilisateur $1
log_clone=Cloné l'utilisateur Webmin $1 en $2
log_create=Créé l'utilisateur Webmin $1
log_create_g=Créé le groupe Webmin $1
log_delete=Supprimé l'utilisateur Webmin $1
log_delete_g=Supprimé le groupe Webmin $1
log_delete_groups=$1 est effacé des groupes Webmin
log_delete_users=$1 est effacé des utilisateurs Webmin
log_modify=Modifié l'utilisateur Webmin $1
log_modify_g=Modifié le groupe Webmin $1
log_rename=Renommé l'utilisateur Webmin $1 en $2
log_rename_g=Renommé le groupe Webmin $1 en $2
log_reset=Réinitialiser l'accès de l'$1 pour l'utilisateur $2
log_switch=Basculé vers l'utilisateur Webmin $1
make_done=... accompli
make_err=l'opération de création des tables pour l'utilisateur et le groupe a échoué.
make_failed=... échec de la création : $1
make_still=Quelques problèmes ont étés rencontrés même après la création de la table : $1
make_title=création des Tables de Utilisateur et des Groupes
makedn_done=... accompli
makedn_title=Création de LDAP DN
pass_days=jours
pass_ecannot=Vous n'êtes pas autorisé à éditer les restrictions des mots de passes
pass_nooldblock=Réutilisation illimitée du mot de passe
pass_pass=mots de passe
pass_title=Restrictions de mot de passe
rbac_desc=L'intégration RBAC dans Webmin offre la possibilité pour un module utilisateur de déterminer les permissions ACL depuis une base de données RBAC (Role Based Access Control), plutôt que depuis les fichiers de configuration de Webmin. Une fois que le support RBAC est activé, tout utilisateur pour qui <b>$edit_rbacdeny1</b> l'option est sélectionnée verra ses possibilités déterminée par RBAC plutôt que par les paramètres de contôle d'accès de Webmin.
rbac_ecpan=Vous n'avez pas accès à la page de modules Perl de Webmin pour installer le module $1 nécessaire pour l'intégration de RBAC.
rbac_eperl=Le module Perl $1 nécessaire pour l'intégration RBAC n'est pas installé. <a href='$2'>Cliquez ici</a> pour l'installer maintenant.
rbac_esolaris=RBAC n'est supporté actuellement que sur Solaris, et ne peut pas être utilisé sur ce système $1.
rbac_ok=L'intégration de RBAC est disponible sur ce sytème et peut être activée pour les utilisateurs en éditant la page "Utilisateur Webmin".
rbac_title=Configuration RBAC
save_ecolon=Les mots de passe ne peuvent pas contenir le caractère " : "
save_ecreate=Vous n'êtes pas autoris" à créer des utilisateurs
save_edays=Pas de jours autorisés sélectionnés
save_edeny=Vous ne pouvez pas vous interdire d'avoir accès au module de configuration des utilisateurs Webmin
save_edup=L'utilisateur '$1' existe déjà
save_egroup=Vous n'êtes pas autorisé à affecter quoi que ce soit à ce groupe
save_ehost=Impossible de trouver une adresse IP pour '$1'
save_ehours=Heures autorisées manquantes ou incorrectes
save_ehours2=L'heure de début de l'autorisation doit être avant l'heure de fin
save_eip='$1' n'est pas une adresse IP ou une adresse réseau complète
save_elogouttime=Temporisation de déconnexion manquante ou non numérique
save_emask='$1' n'est pas un masque réseau valide
save_emd5=Il n'est pas possible de cocher l'option <b>Mot de passe identique au mot de passe UNIX</b> avec le chiffrement MD5
save_emod=Vous ne pouvez pas accorder d'accès au module '$1'
save_ename='$1' n'est pas un nom d'utilisateur valide
save_enamewebmin=Le nom d'utilisateur 'webmin' est réservé pour une utilisation interne
save_enet='$1' n'est pas une adresse réseau valide
save_enone=Pas d'adresse saisie
save_eos=Votre système d'exploitation ne gère pas l'option <b>Mot de passe identique au mot de passe Unix</b>.
save_epam=L'authentification PAM n'est pas disponible car le module Perl <tt>Authen::PAM</tt> n'est pas installé ou ne fonctionne pas correctement.
save_epam2=Vous pouvez utiliser le module <b>Modules Perl</b> de Webmin pour <a href='$1'>télécharger et installer Authen::PAM</a> maintenant.
save_epass=Mot de passes incorrecte : $1
save_err=Impossible d'enregistrer l'utilisateur
save_eself=Votre adresse IP actuelle ($1) serait interdite
save_eunix=L'utilisateur Unix $1 n'existe pas
save_euser=Vous n'êtes pas autorisé à modifier cet utilisateur
schema_title=Télécharger un schéma LDAP
sessions_desc=Les noms de connexion de la session Webmin actuelle sont répertoriés ci-dessous. Pour annuler une session existante et forcer l'utilisateur à se connecter à nouveau, cliquez sur son identifiant de session.
sessions_title=Sessions de connexion actuelles
sessions_id=ID de session
sessions_user=Utilisateur Webmin
sessions_login=Connecté le
sessions_host=Adresse IP
sessions_lview=Voir les journaux...
sessions_actions=Actions...
sessions_logouts=Montrer aussi les sessions de déconnexion...
sessions_state=État
sessions_this=Cette connexion
sessions_in=Connexion
sessions_out=Déconnexion
sessions_kill=Déconnecté...
logins_title=Récentes connexions à Webmin
sql_db=Nom de la base de donnée
sql_host=Nom d'hôte
sql_make=Création des Tables
sql_makedn=Création DN
sql_pass=Mot de passe
sql_ssl0=Aucun
sql_ssl1=SSL
sql_ssl2=TLS
sql_user=Nom d'utilisateur
switch_eold=Session existante non trouvée !
switch_euser=Vous n'êtes pas autorisé à basculer vers cet utilisateur
sync_create=Créer un utilisateur Webmin quand un utilisateur Webmin est créé
sync_delete=Supprimer l'utilisateur Webmin correspondant quand un utilisateur Unix est supprimé
sync_desc=Ce formulaire vous permet de configurer la synchronisation automatique des utilisateurs Unix créés à l'aide de Webmin et des utilisateurs de ce module.
sync_ecannot=Vous n'êtes pas autorisé à configurer la synchronisation des utilisateurs
sync_group=Affecter de nouveaux utilisateurs à un groupe Webmin
sync_nogroups=Aucun groupe Webmin n'a étédéfini sur votre système. Vous devez créer au moins un groupe pour définir l'accès concernant les utilisateurs créés.
sync_title=Synchronisation des utilisateurs Unix
sync_unix=Définir un mot de passe pour de nouveaux utilisateurs pour l'authentification Unix
sync_update=Mettre à jour l'utilisateur Webmin correspondant quand un utilisateur Unix est mis à jour
udeletes_enone=Aucune sélection
udeletes_ereadonly=Un des utilisateurs sélectionnés est marqué comme non éditable
udeletes_err=Echec de suppression des utilisateurs
udeletes_ok=Efface les utilisateurs
udeletes_rusure=Etes-vous sur de vouloir effacer les $1 utilisateurs sélectionnés ? Tous leurs paramètres de contrôle d'accès et leurs personnalisations seront perdus.
udeletes_title=Efface les utilisateurs
udeletes_users=Utilisateurs sélectionnés : $1
unix_all=Autoriser tous les utilisateurs Unix répertoriés
unix_allow=Autoriser uniquement les utilisateurs Unix répertoriés
unix_def=Autoriser uniquement les utilisateurs Webmin à se connecter
unix_deny=Interdire les utilisateurs Unix répertoriés
unix_desc=Cette page vous permet de configurer Webmin pour valider les tentatives de connexion par rapport à la liste des utilisateurs système et de PAM. Ce comportement peut être utile si vous avez un grand nombre d'utilisateurs Unix existants auxquels vous souhaitez donner accès à Webmin.
unix_ecannot=Vous n'êtes pas autorisé à configurer l'authentification des utilisateurs Unix
unix_egroup='$1' n'est pas un nom de groupe valide
unix_enone=Pas d'utilisateurs ou de groupes Unix à autoriser indiqués
unix_epam=L'authentification Unix n'est pas disponible car le module Perl <tt>Authen::PAM</tt> n'est pas installé ou ne fonctionne pas correctement.
unix_eshells=Fichier d'interpréteurs de commande manquant ou non existant
unix_euser='$1' n'est pas un nom d'utilisateur valide
unix_ewhogroup=Pas de groupe à autoriser dans la ligne $1
unix_ewhouser=Pas d'utilisateur à autoriser en rangée $1
unix_group=Membres du groupe..
unix_mall=Tous les utilisateurs
unix_mode=Autorise
unix_none=Aucun utilisateur saisi
unix_pamany=Traiter les connexions validés uniquement par PAM comme $1
unix_restrict=Les restrictions additionnelles suivantes seront appliquées aux utilisateurs Unix sélectionnés ci-dessus.
unix_same=&lt;Comme utilisateur ou groupe&gt;
unix_sel=Autoriser les utilisateurs Unix listés ci-dessous à se connecter ..
unix_shells=Interdire les utilisateurs Unix dont les interpréteurs de commandes ne sont pas dans un fichier
unix_sudo=Autoriser les utilisateurs pouvant lancer des commandes via <tt>sudo</tt> à se connecter en tant que <tt>root</tt>
unix_title=Authentification des utilisateurs Unix
unix_to=Comme utilisateur Webmin
unix_user=Autoriser n'importe quel utilisateur Unix à se connecter avec les droits d'accès d'utilisateur
unix_who=Utilisateur ou Groupe

View File

@@ -1,4 +1,3 @@
risk=high
name=AdminUsers
category=webmin
desc=Webmin Users

View File

@@ -1 +0,0 @@
desc_cz.UTF-8=Uživatelé Webminu

View File

@@ -1 +0,0 @@
desc_fr.UTF-8=Utilisateurs Webmin

View File

@@ -1 +0,0 @@
desc_hu.UTF-8=Webmin felhasználók

View File

@@ -1 +0,0 @@
desc_ja_JP.UTF-8=Webmin ユーザ

View File

@@ -1 +0,0 @@
desc_ko_KR.UTF-8=Webmin 사용자

View File

@@ -1 +0,0 @@
desc_pl.UTF-8=Użytkownicy Webmina

View File

@@ -1 +0,0 @@
desc_ru.UTF-8=Пользователи Webmin

View File

@@ -1 +0,0 @@
desc_sk.UTF-8=Užívatelia Webminu

View File

@@ -1 +0,0 @@
desc_zh_CN.UTF-8=Webmin 用户管理

View File

@@ -1 +0,0 @@
desc_zh_TW.UTF-8=Webmin 使用者

View File

@@ -49,7 +49,9 @@ else {
# Validate and store ACL settings
&error_setup($text{'acl_err'});
my %maccess;
$maccess{'noconfig'} = $in{'noconfig'};
if (defined($in{'noconfig'})) {
$maccess{'noconfig'} = $in{'noconfig'};
}
if ($in{'rbac'}) {
# RBAC overrides everything
$maccess{'rbac'} = 1;

View File

@@ -62,6 +62,10 @@ if (!$in{'old'} || $in{'old'} ne $in{'name'}) {
$in{'logouttime'} =~ /^\d+$/ || &error($text{'save_elogouttime'});
!$access{'minsize'} || $in{'minsize_def'} ||
$in{'minsize'} =~ /^\d+$/ || &error($text{'save_eminsize'});
if ($in{'safe'} && !$in{'unsafe'}) {
getpwnam($in{'name'}) ||
&error(&text('save_eunixname', &html_escape($in{'name'})));
}
# Validate password
if ($in{'pass_def'} == 0) {
@@ -359,18 +363,41 @@ else {
}
}
if ($in{'old'} && $in{'acl_security_form'} && !$newgroup) {
my $aclfile = "$config_directory/$in{'name'}.acl";
if ($in{'old'} && $in{'acl_security_form'} && !$newgroup && !$in{'safe'}) {
# Update user's global ACL
&foreign_require("", "acl_security.pl");
my %uaccess;
&foreign_call("", "acl_security_save", \%uaccess, \%in);
my $aclfile = "$config_directory/$in{'name'}.acl";
&lock_file($aclfile);
&save_module_acl(\%uaccess, $in{'name'}, "", 1);
&set_ownership_permissions(undef, undef, 0640, $aclfile);
&unlock_file($aclfile);
}
# Clear safe setting
if ($in{'unsafe'}) {
&lock_file($aclfile);
my %uaccess = &get_module_acl($in{'name'}, "", 1, 1);
delete($uaccess{'_safe'});
&save_module_acl(\%uaccess, $in{'name'}, "", 1);
&unlock_file($aclfile);
}
# If the user is in safe mode, set ACLs on all new modules
if ($in{'safe'}) {
foreach my $m ("", @mods) {
my %macl = &get_module_acl($in{'name'}, $m, 0, 1);
my $safe = &get_safe_acl($m);
if (!%macl && $safe) {
%macl = %$safe;
$macl{'_safe'} = 1;
$macl{'noconfig'} = 1;
&save_module_acl(\%macl, $in{'name'}, $m);
}
}
}
# Log the event
delete($in{'pass'});
delete($in{'oldpass'});

View File

@@ -46,6 +46,7 @@ if (@logins) {
$state = "<font color=orange>$state</font>";
}
}
$main::theme_allow_make_date = 1;
$html .= &ui_columns_row([ $l->[2],
&make_date($l->[1]),
$state ]);

View File

@@ -1,4 +1,4 @@
<header>Connexio sota petició</header>
<header>Connexió sota petició</header>
Quan se selecciona No, la connexió ADSL només s'activarà quan es demani
explícitament. Però si es tria Sí, s'activarà quan calgui, i es mantindrà

View File

@@ -1,9 +1,9 @@
<header>En connectar-se, activa el tallafocs</header>
<header>En connectar-se, activa el tallafoc</header>
Aquest camp es pot utilitzar per fer que un tallafocs IPchains s'executi
Aquest camp es pot utilitzar per fer que un tallafoc IPchains s'executi
automàticament quan s'estableix la connexió ADSL. No obstant, es pot
utilitzar en lloc seu el mòdul Tallafocs Linux de Webmin per crear i
adaptar un tallafocs al teu gust. <p>
utilitzar en lloc seu el mòdul Tallafoc Linux de Webmin per crear i
adaptar un tallafoc al teu gust. <p>
<hr>

View File

@@ -6,7 +6,7 @@ ADSL connectat a Ethernet que suporti el protocol PPPoE (PPP sobre
Ethernet). No funcionarà amb mòdems ADSL connectats a USB ni amb aquells
en mode pont. <p>
Abans de poder-lo utilitzar, has de tenir un compte amb un proveidor de
Abans de poder-lo utilitzar, has de tenir un compte amb un proveïdor de
serveis ADSL, i el teu mòdem ha d'estar connectat a una interfície Ethernet
sense utilitzar del teu Linux. Aquesta interfície ha de ser visible al
nucli, però no ha de tenir cap adreça IP assignada. <p>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -21,7 +21,7 @@ index_header=Opcions de la configuraci
index_desc=Els valors de sota s'apliquen a qualsevol nova connexió ADSL activada pel sistema. Si els canvies, la connexió s'ha de desactivar i reactivar per tal que les modificacions tinguin efecte.
index_eth=Interfície Ethernet
index_other=Altres...
index_demand=Connexio sota petició
index_demand=Connexió sota petició
index_timeout=Sí, amb un temps límit de
index_secs=segons
index_user=Identifica't com l'usuari
@@ -31,7 +31,7 @@ index_save=Desa la configuraci
index_mss=Limita la mida dels paquets
index_psize=Sí, a
index_bytes=bytes
index_fw=En connectar-se, activa el tallafocs
index_fw=En connectar-se, activa el tallafoc
index_fw_none=Cap
index_fw_standalone=Per a un sol host
index_fw_masquerade=Per al portal NAT

View File

@@ -1 +0,0 @@
desc_cz.UTF-8=Klient ADSL

View File

@@ -1 +0,0 @@
desc_ja_JP.UTF-8=ADSL クライアント

View File

@@ -1 +0,0 @@
desc_pl.UTF-8=Klient ADSL

View File

@@ -1 +0,0 @@
desc_zh_TW.UTF-8=ADSL客戶端

Binary file not shown.

Before

Width:  |  Height:  |  Size: 223 B

View File

@@ -5,10 +5,7 @@ use warnings;
BEGIN { push(@INC, ".."); };
use WebminCore;
# Since this script is run on every keypress, init_config is intentionally
# not called to reduce startup time.
#&init_config();
&init_config();
# Parse out port
$ENV{'PATH_INFO'} =~ /^\/(\d+)(.*)$/ ||

View File

@@ -879,7 +879,7 @@ foreach $e (@{$_[0]}) {
$names = " (";
foreach $ed (split(/\s+/, $e->{'name'})) {
# nodo50 v0.1 - Change 000004 - Open new window for Help in Apache module and mod_apachessl Help from http://www.apache-ssl.org and
# nodo50 v0.1 - Change 000004 - Abre nueva ventana para Ayuda del módulo Apache y para mod_apachessl busca la Ayuda en http://www.apache-ssl.org and
# nodo50 v0.1 - Change 000004 - Abre nueva ventana para Ayuda del módulo Apache y para mod_apachessl busca la Ayuda en http://www.apache-ssl.org and
$names .= "<tt>".&ui_link( ($e->{'module'} eq 'mod_apachessl' ? 'http://www.apache-ssl.org/docs.html#'.$ed : $apache_docbase."/".$e->{'module'}.".html#".lc($ed)), $ed )."</tt>&nbsp;";
#$names .= "<tt><a href='".$apache_docbase."/".$e->{'module'}.".html#".lc($ed)."'>".$ed."</a></tt> ";
# nodo50 v0.1 - Change 000004 - End
@@ -942,6 +942,7 @@ sub parse_opt
{
local($i, $re);
local $v = $in{$_[0]};
$v =~ /\r|\n|\0/ && &error($text{'enewline'});
if ($in{"$_[0]_def"}) { return ( [ ] ); }
for($i=1; $i<@_; $i+=2) {
$re = $_[$i];
@@ -979,8 +980,13 @@ return $rv;
# parse_choice(name, default)
sub parse_choice
{
if (lc($in{$_[0]}) eq lc($_[1])) { return ( [ ] ); }
else { return ( [ $in{$_[0]} ] ); }
if (lc($in{$_[0]}) eq lc($_[1])) {
return ( [ ] );
}
else {
$in{$_[0]} =~ /\r|\n|\0/ && &error($text{'enewline'});
return ( [ $in{$_[0]} ] );
}
}
# select_input(value, name, default, [choice]+)
@@ -1027,8 +1033,13 @@ return &ui_select($_[1], undef, \@sel, 1);
# parse_handler(name)
sub parse_handler
{
if ($in{$_[0]} eq "") { return ( [ ] ); }
else { return ( [ $in{$_[0]} ] ); }
if ($in{$_[0]} eq "") {
return ( [ ] );
}
else {
$in{$_[0]} =~ /\r|\n|\0/ && &error($text{'enewline'});
return ( [ $in{$_[0]} ] );
}
}
# filters_input(&values, name)
@@ -1054,6 +1065,7 @@ return $rv;
# parse_filters(name)
sub parse_filters
{
$in{$_[0]} =~ /\r|\n|\0/ && &error($text{'enewline'});
local @f = split(/\0/, $in{$_[0]});
return @f ? ( [ join(";", @f) ] ) : ( [ ] );
}
@@ -1155,7 +1167,7 @@ print "<p>\n";
sub restart_button
{
local $rv;
$args = "redir=".&urlize(&this_url());
$args = "redir=".&urlize($gconfig{'webprefix'} . &this_url());
local @rv;
if (&is_apache_running()) {
if ($access{'apply'}) {

View File

@@ -7,7 +7,7 @@ virt_name=Patr
link_dir=Directori per crear-hi enllaços per als nous servidors virtuals,3,Cap
test_config=Comprova el fitxer de configuració abans d'aplicar els canvis,1,1-Sí,0-No
test_manual=Comprova el fitxer de configuració després de fer canvis manuals,1,1-Sí,0-No
test_always=Comprova el fitxer de configuraciço després d'altres canvis,1,1-Sí,0-No
test_always=Comprova el fitxer de configuració després d'altres canvis,1,1-Sí,0-No
test_apachectl=Prova la configuració amb l'ordre,1,1-<tt>apachectl configtest</tt>,0-<tt>httpd</tt> amb l'opció <tt>-D</tt>
show_names=Mostra els noms de directives Apache,1,1-Sí,0-No
apache_docbase=Directori base de la documentació d'Apache,3,Web d'Apache
@@ -16,11 +16,11 @@ allow_virtualmin=Permet l'edici
line2=Configuració del sistema,11
httpd_dir=Directori arrel del servidor Apache,0
httpd_path=Camí de l'executable httpd,0
httpd_version=Versió Apache,3,Detécta-la automàticament
httpd_version=Versió Apache,3,Detecta-la automàticament
apachectl_path=Camí de l'ordre apachectl,3,Cap
start_cmd=Ordre per iniciar Apache,3,Utilitza apachectl o inicia manualment
stop_cmd=Ordre per aturar Apache,3,Utilitza apachectl o mata el procés
apply_cmd=Ordre per aplicar la configuració,10,-Utilitza apachectl o senyal HUP,restart-Executa els ordres d'inici i aturada
apply_cmd=Ordre per aplicar la configuració,10,-Utilitza apachectl o senyal HUP,restart-Executa les ordres d'inici i aturada
graceful_cmd=Ordre per rellegir la configuració,3,La mateixa que per aplicar-la
httpd_conf=Camí de httpd.conf o apache2.conf,3,Automàtic
srm_conf=Camí de srm.conf,3,Automàtic
@@ -28,6 +28,6 @@ access_conf=Cam
mime_types=Camí de mime.types,3,Automàtic
pid_file=Camí del fitxer de PID d'Apache,3,Determina'l automàticament
line3=Variables d'Apache,11
defines_file=Fitxer d'entorn que defineix les variabbles d'Apache,3,Cap
defines_file=Fitxer d'entorn que defineix les variables d'Apache,3,Cap
defines_name=Nom de la variable d'entorn al fitxer anterior,0
defines_mods=Directoris que contenen els mòduls per a les variables HAVE_,9,40,3,\t

Binary file not shown.

Before

Width:  |  Height:  |  Size: 606 B

View File

@@ -9,7 +9,7 @@ index_tablist=Hosts virtuals existents
index_tabcreate=Crea host virtual
index_descglobal=Les opcions accedides fent clic sobre aquestes icones s'apliquen a tot el servidor Apache, incloent-hi tots els hosts virtuals.
index_desclist=La llista de sota mostra tots els hosts virtuals Apache actualment definits, per als quals tens accés. L'entrada <b>Servidor per Defecte</b> defineix valors que s'apliquen a tots els altres hosts virtuals, a menys que s'obviïn.
index_desccreate=Aquest formulari es pot utilitzar per afegir un nou host virtual Apache, que serveix el contingut d'un directori determinat en resposta a paticions per una adreça IP o nom de host particular.
index_desccreate=Aquest formulari es pot utilitzar per afegir un nou host virtual Apache, que serveix el contingut d'un directori determinat en resposta a peticions per una adreça IP o nom de host particular.
index_defserv=Servidor per Defecte
index_defdesc1=Defineix els valors per defecte de tots els altres servidors virtuals, i processa qualsevol petició no gestionada.
index_any=Qualsevol
@@ -67,7 +67,7 @@ cvirt_ename='$1' no
cvirt_eroot1=Has d'introduir l'arrel dels documents
cvirt_eroot2=No s'ha pogut crear el directori '$1': $2
cvirt_eroot3=No tens permís per utilitzar el directori arrel '$1'
cvirt_eroot4=No hi ha cap usuari definit a la configuracio d'Apache
cvirt_eroot4=No hi ha cap usuari definit a la configuració d'Apache
cvirt_etaken=Ja existeix un servidor virtual amb el mateix nom i el mateix port
cvirt_efile=No s'ha pogut escriure a $1: $2
cvirt_emissing=S'ha afegit el nou servidor virtual a $1, però Apache no està utilitzant aquest fitxer. Comprova la <a href='$2'>configuració del mòdul</a> i assegura't que el 'Fitxer o directori on s'afegeixen els servidors virtuals' és correcte.
@@ -190,7 +190,7 @@ type_9=Miscel
type_10=Àlies i Redireccions
type_11=Programes CGI
type_12=Indexació de Directoris
type_13=Proxies
type_13=Proxys
type_14=Opcions SSL
type_15=Perl
type_16=PHP
@@ -241,7 +241,7 @@ htfile_header2=$1 de $2
reconfig_title=Reconfiguració de Mòduls Coneguts
reconfig_ecannot=No tens permís per reconfigurar l'Apache
reconfig_ever=No s'ha pogut esbrinar la versió de l'executable servidor d'Apache $1. Comprova la <a href='$2'>configuració del mòdul</a> per assegurar que aquest és el camí correcte.
reconfig_desc1=La configuració d'Apache ha canviat, o bé Webmin encara no l'ha examinat. A sota hi ha una llista de mòduls Apache suportats per Webmin amb els mòduls instal·lats seleccionats. Pots seleccionar o deseleccionar mòduls si la llista no és correcta.
reconfig_desc1=La configuració d'Apache ha canviat, o bé Webmin encara no l'ha examinat. A sota hi ha una llista de mòduls Apache suportats per Webmin amb els mòduls instal·lats seleccionats. Pots seleccionar o desseleccionar mòduls si la llista no és correcta.
reconfig_desc2=A sota hi ha una llista de mòduls Apache suportats per Webmin tal que tots aquells mòduls instal·lats estan seleccionats. Si estàs utilitzant mòduls carregats dinàmicament, llavors pot ser que hagis de seleccionar aquells que es carreguen dinàmicament.
reconfig_desc3=Si no estàs segur/a de quins mòduls estan suportats per Apache, configura-ho de totes maneres, Webmin normalment pot determinar automàticament quins són els mòduls suportats.
reconfig_ok=Configura
@@ -459,7 +459,7 @@ core_eline=Mida de l
core_epid=Fitxer de PID invàlid
core_escore=Fitxer de puntuació invàlid
core_sroot=Arrel del servidor
core_group=Nom del group
core_group=Nom del grup
core_gid=ID del grup
core_user=Nom de l'usuari
core_uid=ID de l'usuari
@@ -1091,7 +1091,7 @@ mod_band_client=Per als clients
mod_band_all=Tots
mod_band_ent=IP o domini
mod_band_bandwidth=Límits d'amplada de banda del client
mod_band_ebw='$1'no és un límit d'amplada de banda vàlid
mod_band_ebw='$1' no és un límit d'amplada de banda vàlid
mod_band_eclient=Hi falta la IP, xarxa o domini client per la límit '$1' d'amplada de banda o bé és invàlida
mod_band_size=Mida mínima de fitxer
mod_band_sizelimit=Límits d'amplada de banda de mides de fitxers

View File

@@ -1068,3 +1068,4 @@ worker_ethreads=Anzahl der Threads pro Kindprozess muss eine Ganzzahl sein
worker_maxspare=Maximale spare Threads
worker_minspare=Minimale spare Threads
worker_threads=Threads pro Kindprozess
enewline=Ungueltiges Zeichen in der Eingabe

View File

@@ -81,6 +81,7 @@ auth_return=access control
default_serv=default server
bytes=bytes
eafter=Configuration verification failed : $1 Changes have not been saved.
enewline=Invalid character in value
global_ecannot=You are not allowed to edit global options
global_mime=Global MIME types list

File diff suppressed because it is too large Load Diff

View File

@@ -40,6 +40,9 @@ my @sslprotos = ("SSLv2", "SSLv3", "TLSv1" );
if ($httpd_modules{'core'} >= 2.215) {
push(@sslprotos, "TLSv1.1", "TLSv1.2");
}
if ($httpd_modules{'core'} >= 2.437) {
push(@sslprotos, "TLSv1.3");
}
return @sslprotos;
}

View File

@@ -1,4 +1,3 @@
risk=low medium high
name=Apache
category=servers
os_support=solaris *-linux aix hpux freebsd osf1 irix unixware openserver macos openbsd netbsd windows

View File

@@ -1 +0,0 @@
desc_cz.UTF-8=Apache WWW server

View File

@@ -1 +0,0 @@
desc_hu.UTF-8=Apache Webkiszolgáló

View File

@@ -1 +0,0 @@
desc_ja_JP.UTF-8=Apache Webサーバ

View File

@@ -1 +0,0 @@
desc_ko_KR.UTF-8=Apache webServer

View File

@@ -1 +0,0 @@
desc_pl.UTF-8=Serwer WWW Apache

View File

@@ -1 +0,0 @@
desc_ru.UTF-8=Веб сервер Apache

View File

@@ -1 +0,0 @@
desc_zh_CN.UTF-8=Apache 服务器

View File

@@ -1 +0,0 @@
desc_zh_TW.UTF-8=Apache 網頁伺服器

View File

@@ -5,6 +5,7 @@
require './apache-lib.pl';
&ReadParse();
($conf, $v) = &get_virtual_config($in{'virt'});
&can_edit_virt($v) || &error($text{'virt_ecannot'});
$desc = &text('virt_header', &virtual_name($v));
&ui_print_header($desc, $text{'show_title'}, "");

View File

@@ -18,7 +18,7 @@ if ($in{'virt'} && $access{'types'} eq '*') {
"name" => $text{'virt_edit'},
"link" => "manual_form.cgi?virt=$in{'virt'}" };
}
if ($v->{'value'} =~ /:80/ && $v->{'value'} !~ /:443/) {
if ($v->{'value'} =~ /:80$/ || $v->{'value'} !~ /:/) {
# Hide SSL icon for non-SSL sites
$access_types{14} = 0;
}

View File

@@ -1,4 +1,4 @@
at_style=Tipus de sistema <tt>at</tt>,1,linux-Linux,solaris-Solaris,freebsd-FreeBSD,irix-Irix,macos-MacOS X,openserver-OpenServer
at_dir=Directori de treballs <tt>at</tt>,0
allow_file=Fitxer d'usuaris At permesos,3,Cap
deny_file=DItxer d'usuaris At denegats,3,Cap
deny_file=Fitxer d'usuaris At denegats,3,Cap

Binary file not shown.

Before

Width:  |  Height:  |  Size: 573 B

View File

@@ -1 +0,0 @@
desc_cz.UTF-8=Plánované příkazy

View File

@@ -1 +0,0 @@
desc_hu.UTF-8=Ütemezett feladatok

View File

@@ -1 +0,0 @@
desc_pl.UTF-8=Zaplanowane polecenia

View File

@@ -1 +0,0 @@
desc_ru.UTF-8=Расписание заданий

View File

@@ -1 +0,0 @@
desc_sk.UTF-8=Plánované príkazy

View File

@@ -1 +0,0 @@
desc_zh_TW.UTF-8=指令排程

View File

@@ -1,4 +1,4 @@
<header>Fés la substitució strftime de les destinacions de còpia</header>
<header>Fes la substitució strftime de les destinacions de còpia</header>
Si es posa aquesta opció a <b></b>, es poden utilitzar els codis com ara
%d, %m, %Y i %u en el nom de fitxer de destinació de la còpia. Aquests se
@@ -35,7 +35,7 @@ Alguns altres codis que es poden utilitzar s
avall.
%G L'any ISO 8601 amb el segle com un número decimal.
L'any de 4 dígits corresponent al númro de setmana ISO
L'any de 4 dígits corresponent al número de setmana ISO
(vegeu %V). Això té el mateix format i valor que %y,
excepte que si el número de setmana ISO pertany a
l'any següent o l'anterior, s'utilitza aquest any.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -75,8 +75,8 @@ backup_epath=Hi falta el cam
backup_epath2=Hi falta el camí absolut del servidor SSH o bé és invàlid
backup_euser=Caràcters invàlids en l'usuari del servidor FTP
backup_epass=Caràcters invàlids en la contrasenya del servidor FTP
backup_eport=Hi falta el port FTP del seridor o bé és invàlid
backup_esport=Hi falta el port SSH del seridor o bé és invàlid
backup_eport=Hi falta el port FTP del servidor o bé és invàlid
backup_esport=Hi falta el port SSH del servidor o bé és invàlid
backup_emods=No has seleccionat cap mòdul
backup_title=Configuració de Còpia
backup_doing=S'està començant la còpia dels fitxers de configuració de mòduls a $1...
@@ -111,7 +111,7 @@ run_doing=S'est
run_ok=...la còpia s'ha completat correctament.
run_failed=...la còpia ha fallat! Vegeu el missatge d'error per saber-ne el motiu.
email_mods=La còpia delss mòduls
email_mods=La còpia dels mòduls
email_failed=a $1 ha fallat:
email_ok=a $1 ha reeixit.
email_sfailed=La còpia de la configuració a $1 ha fallat

View File

@@ -1 +0,0 @@
desc_cz.UTF-8=Záloha konfiguračních souborů

View File

@@ -1 +0,0 @@
desc_hu.UTF-8=Konfigurációs file -ok mentése

View File

@@ -1 +0,0 @@
desc_ja_JP.UTF-8=設定ファイルのバックアップ

View File

@@ -1 +0,0 @@
desc_ko_KR.UTF-8=백업 설정 파일

View File

@@ -1 +0,0 @@
desc_pl.UTF-8=Kopia plików konfiguracyjnych

View File

@@ -1 +0,0 @@
desc_ru.UTF-8=Резервное копирование конфигурационных файлов

View File

@@ -1 +0,0 @@
desc_sk.UTF-8=Záloha konfiguračných súborov

View File

@@ -3,7 +3,7 @@
Pots utilitzar aquest formulari per ajustar la configuració del dimoni de
fitxers de Bacula en execució al sistema. Els valor per defecte són típicament
correctes, tot i que pots retocar el nom del dimoni i el nombre de treballs
concorrents. Si el teu sistema Bacula suporta seguretat TLS, pots utilitzar
concurrents. Si el teu sistema Bacula suporta seguretat TLS, pots utilitzar
les opcions de TLS d'aquesta pàgina per assegurar la comunicació entre el
dimoni de fitxers, el director i els dimonis d'emmagatzematge. <p>

View File

@@ -3,7 +3,7 @@
Pots utilitzar aquest formulari per ajustar la configuració del dimoni
d'emmagatzematge de Bacula en execució al sistema. Els valor per defecte són
típicament correctes, tot i que pots retocar el nom del dimoni i el nombre
de treballs concorrents. Si el teu sistema Bacula suporta seguretat TLS,
de treballs concurrents. Si el teu sistema Bacula suporta seguretat TLS,
pots utilitzar les opcions de TLS d'aquesta pàgina per assegurar la comunicació
entre els dimonis d'emmagatzematge i els de fitxers. <p>

View File

@@ -1,7 +1,7 @@
<header>Estat del Dimoni d'Emmagatzematge</header>
Aquesta pàgina mostra els treballs de còpia actualment en execució i els
10 executats més recentment en un sistema de dimoni d'emmagazematge Bacula
10 executats més recentment en un sistema de dimoni d'emmagatzematge Bacula
seleccionat. Aquells que s'estan executant en un altre sistema no es mostraran.
<p>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -260,7 +260,7 @@ storage_port=Port SD de Bacula
storage_pass=Contrasenya SD de Bacula
storage_device=Nom del dispositiu d'emmagatzematge
storage_media=Nom del tipus de mitjà
storage_maxjobs=Nombre màxim de treballs concorrents
storage_maxjobs=Nombre màxim de treballs concurrents
storage_other=Altres...
storage_err=No s'ha pogut desar el dimoni d'emmagatzematge
storage_ename=Hi falta el nom del dimoni d'emmagatzematge
@@ -270,7 +270,7 @@ storage_eaddress=Hi falta el nom de host o adre
storage_eport=Hi falta el port SD o bé és invàlid
storage_edevice=Hi falta el nom del dispositiu d'emmagatzematge
storage_emedia=Hi falta el nom del tipus de mitjà
storage_emaxjobs=Hi falta el nombre màxim de treballs concorrents
storage_emaxjobs=Hi falta el nombre màxim de treballs concurrents
storage_echild=No es pot suprimir aquest client, ja que $1 l'est+a utilitzant
storage_status=Mostra l'Estat
@@ -503,14 +503,14 @@ director_title=Configuraci
director_header=Opcions globals del director de Bacula
director_name=Nom del director
director_port=Escolta el port
director_jobs=Nombre màxim de treballs concorrents
director_jobs=Nombre màxim de treballs concurrents
director_messages=Destinació dels missatges
director_enone=No s'ha trobat cap configuració de director!
director_dir=Directori de treball de Bacula
director_err=No s'ha pogut desar la configuració del director
director_ename=Hi falta el nom del director o bé és invàlid
director_eport=Hi falta el número de port o bé és invàlid
director_ejobs=Hi falta el nombre de treballs concorrents o bé és invàlid
director_ejobs=Hi falta el nombre de treballs concurrents o bé és invàlid
director_edir=Hi falta el directori de treball o bé no existeix
tls_enable=Activa el Xifratge TLS
@@ -529,13 +529,13 @@ file_title=Configuraci
file_header=Opcions del dimoni de fitxers de Bacula
file_name=Nom del dimoni de fitxers
file_port=Escolta el port
file_jobs=Nombre màxim de treballs concorrents
file_jobs=Nombre màxim de treballs concurrents
file_dir=Directori de treball de Bacula
file_enone=No s'ha trobat cap configuració de dimoni de fitxers!
file_err=No s'ha pogut desar la configuració del dimoni de fitxers
file_ename=Hi falta el nom del dimoni de fitxers o bé és invàlid
file_eport=Hi falta el número de port o bé és invàlid
file_ejobs=Hi falta el nombre de treballs concorrents o bé és invàlid
file_ejobs=Hi falta el nombre de treballs concurrents o bé és invàlid
file_edir=Hi falta el directori de treball o bé no existeix
fdirectors_title=Directors de Dimonis de Fitxers
@@ -584,13 +584,13 @@ storagec_title=Configuraci
storagec_header=Opcions del dimoni d'emmagatzematge de Bacula
storagec_name=Nom del dimoni
storagec_port=Escolta el port
storagec_jobs=Nombre màxim de treballs concorrents
storagec_jobs=Nombre màxim de treballs concurrents
storagec_enone=No s'ha trobat cap configuració de dimoni d'emmagatzematge!
storagec_dir=Directori de treball de Bacula
storagec_err=No s'ha pogut desar la configuració del dimoni d'emmagatzematge
storagec_ename=Hi falta el nom del dimoni d'emmagatzematge o bé és invàlid
storagec_eport=Hi falta el número de port o bé és invàlid
storagec_ejobs=Hi falta el nombre de treballs concorrents o bé és invàlid
storagec_ejobs=Hi falta el nombre de treballs concurrents o bé és invàlid
storagec_edir=Hi falta el directori de treball o bé no existeix
chooser_title=Selecció de Planificació
@@ -635,7 +635,7 @@ restore_storage=Restaura-la del dispositiu d'emmagatzematge
restore_where=Restaura al directori
restore_where2=Un altre directori arrel
restore_ewhere=Hi falta el directori de restauració
restore_ok=Restura-la Ara
restore_ok=Restaura-la Ara
restore_err=No s'ha pogut restaurar la còpia
restore_efiles=No has introduït cap fitxer
restore_ejob=ID de treball invàlid
@@ -646,7 +646,7 @@ restore_eok=...el treball no s'ha pogut iniciar
restore_running=...la restauració s'està executant. Quan es completi, es mostraran els resultats a sota...
restore_running2=...s'ha iniciat la restauració en segon pla.
restore_done=...restauració completa.
restore_failed=...la restauració no s'ha completat correctament. Compriva el missatge d'error de sobre per saber el perquè.
restore_failed=...la restauració no s'ha completat correctament. Comprova el missatge d'error de sobre per saber el perquè.
restore_clist=--Clients--
restore_glist=--Grups Bacula--
restore_eclient=No has seleccionat cap client ni cap grup Bacula

View File

@@ -1 +0,0 @@
desc_pl.UTF-8=System kopii zapasowej Bacula

View File

@@ -1,3 +1,3 @@
firewall_system=Tipus de tallafocs,4,firewall-IPtables,ipfw-IPFW,ipfilter-IPFilter,shorewall-Shorewall,-Detecta'l automàticament
bandwidth_log=Fitxer de registre a crear per als missatges del tallafocs,0
firewall_system=Tipus de tallafoc,4,firewall-IPtables,ipfw-IPFW,ipfilter-IPFilter,shorewall-Shorewall,-Detecta'l automàticament
bandwidth_log=Fitxer de registre a crear per als missatges del tallafoc,0
bandwidth_dir=Directori de dades de <i>bandwidth</i>,3,Defecte (/etc/webmin/bandwidth/hours)

View File

@@ -6,23 +6,23 @@ o reenviat a trav
per aquells que actuen de portal (possiblement amb NAT) d'una xarxa. <p>
Abans de poder-lo utilitzar, el mòdul ha de configurar algunes regles del
tallafocs i una entrada de syslog per capturar el trànsit enviat i rebut
tallafoc i una entrada de syslog per capturar el trànsit enviat i rebut
a través del sistema. En el moment de configurar-lo, has de seleccionar
la interfície de xarxa externa del sistema sobre la qual es monitoritzarà
el trànsit. Això serà habitualment la interfície PPP utilitzada pel
trucador o la connexió ADSL, o la interfície Ethernet connectada al mòdem
de cable o encaminador. <p>
Un cop s'ha capturat almenys un ahora de trànsit, el mòdul es pot utilitzar
Un cop s'ha capturat almenys una hora de trànsit, el mòdul es pot utilitzar
per generar informes resumint el trànsit per una de les categories següents:
<li><b>Hora</b><br>
La data i hora en què s'han rebut les dades.
<li><b>Dia</b><br>
La data en què s'han rebut les dades.
<li><b>Host</b><br>
El host de la xarxa interna o host tallafocs que ha enviat o rebut les dades.
El host de la xarxa interna o host tallafoc que ha enviat o rebut les dades.
<li><b>Port intern</b><br>
El port del host intern o tallafocs al qual s'han enviat les dades.
El port del host intern o tallafoc al qual s'han enviat les dades.
Aquest mode és útil per determinar quant trànsit s'ha generat per
connexions a cadascun dels servidors.
<li><b>Port extern</b><br>
@@ -30,7 +30,7 @@ per generar informes resumint el tr
Això es pot utilitzar per determinar a quins serveis estan accedint
els usuaris de la xarxa.
<li><b>Port</b><br>
Ambdós ports, intern i extern. Útil per comparar tot lús de la xarxa
Ambdós ports, intern i extern. Útil per comparar tot l'ús de la xarxa
per tipus de servei.
</ul>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 752 B

View File

@@ -1,16 +1,16 @@
index_title=Monitorització d'Amplada de Banda
index_efiresys=No s'ha detectat al sistema cap dels tallafocs suportats (IPtables, IPFW, IPFilter o Shorewall). Comprova els mòduls apropiats per assegurar que estan configurats.
index_efiresys2=No s'ha trobat al sistema el tallafocs $1 configurat. Ajusta la <a href='$2'>configuració del mòdul</a> per utilitzar el tallafocs correcte.
index_efiresys=No s'ha detectat al sistema cap dels tallafoc suportats (IPtables, IPFW, IPFilter o Shorewall). Comprova els mòduls apropiats per assegurar que estan configurats.
index_efiresys2=No s'ha trobat al sistema el tallafoc $1 configurat. Ajusta la <a href='$2'>configuració del mòdul</a> per utilitzar el tallafoc correcte.
index_elog=El fitxer $1 utilitzat per al registre d'amplada de banda és de fet un directori del sistema. Ajusta la <a href='$2'>configuració del mòdul</a> per utilitzar un camí diferent.
index_edir=El directori per emmagatzemar les dades $1 de bandwidth no existeix, o no és un directori. Ajusta la <a href='$2'>configuració del mòdul</a> per utilitzar un camí diferent.
index_emod=El mòdul $1 de Webmin no es troba instal·lat al sistema, o bé no està suportat pel SO. El mòdul de Monitorització d'Amplada de Banda no pot operar sense ell.
index_esyslog=No hi ha cap mòdul de Registres del Sistema instal·lat ni suportat pel sistema. El mòdul de Monitorització d'Amplada de Banda no pot operar sense un d'ells.
index_firesys=S'està utilitzant el tallafocs $1 i $2
index_firesys=S'està utilitzant el tallafoc $1 i $2
index_setupcannot=De totes maneres, tu no tens permís per configurar-lo.
index_setupdesc=Abans que aquest mòdul pugui informar de l'ús de la xarxa al sistema, cal configurar-lo per monitoritzar el trànsit en la interfície de xarxa externa seleccionada.
index_setupdesc2=<b>Atenció - aquest mòdule registrarà TOT el transit de xarxa enviat o rebut sobre la interfície seleccionada. Això consumirà molt espai al disc dur i molt temps de CPU en una connexió de xraxa ràpida.</b>
index_missing3=S'han d'afegir algunes regles del tallafocs, i crear una entrada de configuració de syslog.
index_missing2=S'han d'afegir algunes regles del tallafocs.
index_setupdesc2=<b>Atenció - aquest mòdul registrarà TOT el transit de xarxa enviat o rebut sobre la interfície seleccionada. Això consumirà molt espai al disc dur i molt temps de CPU en una connexió de xarxa ràpida.</b>
index_missing3=S'han d'afegir algunes regles del tallafoc, i crear una entrada de configuració de syslog.
index_missing2=S'han d'afegir algunes regles del tallafoc.
index_missing1=S'ha de crear una entrada de configuració de syslog.
index_iface=Interfície de xarxa externa
index_other=Altres...
@@ -52,10 +52,10 @@ index_low=Nom
index_resolv=Resol els noms de host
index_nomatch=No hi ha trànsit que coincideixi amb els criteris seleccionats.
index_turnoff=Desactiva la Monitorització
index_turnoffdesc=Fes clic sobre aquest botó per eliminar les regles del tallafocs, la configuració syslog i el treball cron utilitzats per a la monitorització de l'amplada de banda. Totes les dades recollides existents es mantindran intactes.
index_turnoffdesc=Fes clic sobre aquest botó per eliminar les regles del tallafoc, la configuració syslog i el treball cron utilitzats per a la monitorització de l'amplada de banda. Totes les dades recollides existents es mantindran intactes.
index_rotate=Actualitza les Estadístiques
index_rotatedesc=Fes clic sobre aquest botó per processar tot el trànsit de xarxa registrat fins ara, fent-lo immediatament disponible per a l'informe.
index_eiptables=Atenció - La teva configuració d'IPtables té un error: $1. Establir la monitorització d'amplada de banda esborrarà totes les regles del tallafocs.
index_eiptables=Atenció - La teva configuració d'IPtables té un error: $1. Establir la monitorització d'amplada de banda esborrarà totes les regles del tallafoc.
index_return=al formulari d'informe
log_setup=S'ha configurat la monitorització de l'amplada de banda sobre la interfície $1

View File

@@ -7,7 +7,7 @@ index_efiresys=Keine der unterst&#252;tzen Firewalls (IPtables, IPFW, IPFilter o
index_efiresys2=Das konfigurierte Firewall-System $1 wurde auf Ihrem System nicht gefunden. &#220;berpr&#252;fen Sie die <a href='$2'>Modulkonfiguration</a> um die richtige Firewall einzustellen.
index_efrom=Ung&#252;ltige(s) Startdatum und -zeit
index_ehost=Fehlender oder ung&#252;ltiger Host
index_ehour=Ung&#252;ltige Zeitangabe - Format JJJJ-MM-DD SS:MM
index_ehour=Ung&#252;ltige Zeitangabe - Format JJJJ-MM-TT SS:MM
index_eiptables=Warnung - Ihre IPtables-Konfiguration hat einen Fehler : $1. Das Einrichten der &#220;berwachung wird alle vorhandenen Regeln l&#246;schen!
index_elog=Die Datei $1 wird f&#252;r die Bandbreitenmessung benutzt und loggt derzeit Daten auf Ihrem Dateisystem. Benutzen Sie die <a href='$2'>Modulkonfiguration</a> um einen anderen Pfad einzustellen.
index_emod=Das Webminmodul $1 ist nicht installiert oder wird auf diesem System nicht unterst&#252;tzt. Ohne jenes Modul kann dieses Modul nicht arbeiten.

View File

@@ -1 +0,0 @@
desc_cz.UTF-8=Bandwidth Monitoring

View File

@@ -1 +0,0 @@
desc_hu.UTF-8=Forgalmi monitor

View File

@@ -1 +0,0 @@
desc_pl.UTF-8=Monitorowanie pasma

159
bin/disable-proxy Executable file
View File

@@ -0,0 +1,159 @@
#!/usr/bin/env perl
# disable-proxy - Reverse/remove the configuration options set by enable-proxy.
use strict;
use warnings;
BEGIN { $Pod::Usage::Formatter = 'Pod::Text::Color'; }
use 5.010; # Version in CentOS 6
use Getopt::Long qw(:config permute pass_through);
use Pod::Usage;
use Term::ANSIColor qw(:constants);
use Fcntl qw( :flock );
use Sys::Hostname;
sub main {
my %opt;
GetOptions(
'help|h' => \$opt{'help'},
'config|c=s' => \$opt{'config'},
);
pod2usage(0) if ( $opt{'help'} );
$opt{'config'} ||= "/etc/webmin";
enable_proxy( \%opt );
return 0;
}
exit main( \@ARGV ) if !caller(0);
sub enable_proxy {
my ($optref) = @_;
my @config_lines;
my $file = "$optref->{'config'}/config";
my $referer;
if ($optref->{'referer'}) {
$referer = $optref->{'referer'};
} else {
$referer = hostname;
}
# Setup Webmin
if ($optref->{'prefix'}) {
# Set'em up for proxying on https://domain.tld/prefix
set_config('webprefix', '', $file);
set_config('webprefix_noredir', '', $file);
set_config('ssl_redirect', '1', "$optref->{'config'}/miniserv.conf");
set_config('ssl', '1', "$optref->{'config'}/miniserv.conf");
} else {
# No prefix, just proxying at the root level: https://domain.tld/
set_config('ssl_redirect', '1', "$optref->{'config'}/miniserv.conf");
set_config('ssl', '1', "$optref->{'config'}/miniserv.conf");
}
# Setup the local web server?
# Restart Webmin
say "Restarting Webmin to apply changes...";
system("$optref->{'config'}/restart");
exit 0;
}
sub set_config {
my ($key, $value, $file, $module, $force) = @_;
$key or die RED, "An --option must be specified", RESET;
my @config_lines;
open my $fh, '+<', $file
or die RED, "Unable to open $file", RESET;
flock($fh, LOCK_EX) or die RED, "Unable to lock $file", RESET;
chomp(@config_lines = <$fh>);
# Change'em
my $found = 0;
my $exit_code = 0;
# Validate it against the config.info if this is a module and
if ($module && !$force) {
validate_config_option($key, $value, $module);
}
for (@config_lines) {
if (/^${key}=(.*)/) {
s/^${key}=(.*)/${key}=${value}/;
$found++;
}
}
unless ($found > 0) {
push(@config_lines, "$key=$value");
$exit_code++;
}
# Write'em
seek($fh, 0, 0);
print $fh qq|$_\n| for @config_lines;
close $fh;
}
sub root {
my ($config) = @_;
open(my $CONF, "<", "$config/miniserv.conf") || die RED,
"Failed to open $config/miniserv.conf", RESET;
my $root;
while (<$CONF>) {
if (/^root=(.*)/) {
$root = $1;
}
}
close($CONF);
# Does the Webmin root exist?
if ( $root ) {
die "$root is not a directory. Is --config correct?" unless (-d $root);
} else {
# Try to guess where Webmin lives, since config file didn't know.
die "Unable to determine Webmin installation directory from $ENV{'WEBMIN_CONFIG'}";
}
return $root;
}
1;
=pod
=head1 NAME
disable-proxy
=head1 DESCRIPTION
Disable proxy-related features in Webmin.
=head1 SYNOPSIS
disable-proxy [options]
=head1 OPTIONS
=over
=item --help, -h
Print this usage summary and exit.
=item --config, -c
Specify the full path to the Webmin configuration directory. Defaults to
C</etc/webmin>
=back
=head1 EXIT CODES
0 on success
non-0 on error
=head1 LICENSE AND COPYRIGHT
Copyright 2018 Jamie Cameron <jcameron@webmin.com>, Joe Cooper
<joe@virtualmin.com>.

121
bin/disable-twofactor Executable file
View File

@@ -0,0 +1,121 @@
#!/usr/bin/env perl
# disable-twofactor - Disable two-factor authentication for a user.
use strict;
use warnings;
BEGIN { $Pod::Usage::Formatter = 'Pod::Text::Color'; }
use 5.010; # Version in CentOS 6
use Getopt::Long;
use Pod::Usage;
use Term::ANSIColor qw(:constants);
sub main {
my %opt;
GetOptions(
'help|h' => \$opt{'help'},
'config|c=s' => \$opt{'config'},
'user|u=s' => \$opt{'user'}
);
pod2usage(0) if ( $opt{'help'} );
$opt{'config'} ||= "/etc/webmin";
# Boilerplate, boilerplate, boilerplate...
$ENV{'WEBMIN_CONFIG'} = $opt{'config'};
$ENV{'WEBMIN_VAR'} ||= "/var/webmin";
$ENV{'MINISERV_CONFIG'} = $ENV{'WEBMIN_CONFIG'} . "/miniserv.conf";
my $root = root($opt{'config'});
chdir($root);
$0 = "$root/bin/webmin";
push(@INC, $root);
eval 'use WebminCore'; ## no critic
init_config();
foreign_require('acl', 'acl-lib.pl');
our (%config);
# Get the user
my @users = acl::list_users();
my $user;
($user) = grep { $_->{'name'} eq $opt{'user'} } @users;
# Cancel twofactor authentication
$user->{'twofactor_provider'} = undef;
$user->{'twofactor_id'} = undef;
$user->{'twofactor_apikey'} = undef;
acl::modify_user($user->{'name'}, $user);
reload_miniserv();
webmin_log("onefactor", "user", $user->{'name'});
exit 0;
}
exit main( \@ARGV ) if !caller(0);
sub root {
my ($config) = @_;
open(my $CONF, "<", "$config/miniserv.conf") || die RED,
"Failed to open $config/miniserv.conf", RESET;
my $root;
while (<$CONF>) {
if (/^root=(.*)/) {
$root = $1;
}
}
close($CONF);
# Does the Webmin root exist?
if ( $root ) {
die "$root is not a directory. Is --config correct?" unless (-d $root);
} else {
die "Unable to determine Webmin installation directory from $ENV{'WEBMIN_CONFIG'}";
}
return $root;
}
1;
=pod
=head1 NAME
disable-twofactor
=head1 DESCRIPTION
Disable two factor authentication for a given user. Useful in cases where the
second factor (e.g. phone or USB key) has been lost.
=head1 SYNOPSIS
disable-twofactor --user username
=head1 OPTIONS
=over
=item --help, -h
Print this usage summary and exit.
=item --config, -c
Specify the full path to the Webmin configuration directory. Defaults to
C</etc/webmin>
=item --user, -u
Name of the user to disable two-factor authentication for.
=back
=head1 EXIT CODES
0 on successfully replacing configuration options
non-0 on error
=head1 LICENSE AND COPYRIGHT
Copyright 2018 Jamie Cameron <jcameron@webmin.com>, Joe Cooper
<joe@virtualmin.com>.

174
bin/enable-proxy Executable file
View File

@@ -0,0 +1,174 @@
#!/usr/bin/env perl
# enable-proxy - Set Webmin configuration options to support being served
# through a proxy.
use strict;
use warnings;
BEGIN { $Pod::Usage::Formatter = 'Pod::Text::Color'; }
use 5.010; # Version in CentOS 6
use Getopt::Long qw(:config permute pass_through);
use Pod::Usage;
use Term::ANSIColor qw(:constants);
use Fcntl qw( :flock );
use Sys::Hostname;
sub main {
my %opt;
GetOptions(
'help|h' => \$opt{'help'},
'config|c=s' => \$opt{'config'},
'prefix|p=s' => \$opt{'prefix'},
'referer|r=s' => \$opt{'referer'}
);
pod2usage(0) if ( $opt{'help'} );
$opt{'config'} ||= "/etc/webmin";
enable_proxy( \%opt );
return 0;
}
exit main( \@ARGV ) if !caller(0);
sub enable_proxy {
my ($optref) = @_;
my @config_lines;
my $file = "$optref->{'config'}/config";
my $referer;
if ($optref->{'referer'}) {
$referer = $optref->{'referer'};
} else {
$referer = hostname;
}
# Setup Webmin
if ($optref->{'prefix'}) {
# Set'em up for proxying on https://domain.tld/prefix
set_config('webprefix', $optref->{'prefix'}, $file);
set_config('webprefix_noredir', '1', $file);
set_config('referer', $referer, $file);
set_config('ssl_redirect', '0', "$optref->{'config'}/miniserv.conf");
set_config('ssl', '0', "$optref->{'config'}/miniserv.conf");
} else {
# No prefix, just proxying at the root level: https://domain.tld/
set_config('referer', $referer, $file);
set_config('ssl_redirect', '0', "$optref->{'config'}/miniserv.conf");
set_config('ssl', '0', "$optref->{'config'}/miniserv.conf");
}
# Setup the local web server?
# Restart Webmin
say "Restarting Webmin to apply changes...";
system("$optref->{'config'}/restart");
exit 0;
}
sub set_config {
my ($key, $value, $file, $module, $force) = @_;
$key or die RED, "An --option must be specified", RESET;
my @config_lines;
open my $fh, '+<', $file
or die RED, "Unable to open $file", RESET;
flock($fh, LOCK_EX) or die RED, "Unable to lock $file", RESET;
chomp(@config_lines = <$fh>);
# Change'em
my $found = 0;
my $exit_code = 0;
# Validate it against the config.info if this is a module and
if ($module && !$force) {
validate_config_option($key, $value, $module);
}
for (@config_lines) {
if (/^${key}=(.*)/) {
s/^${key}=(.*)/${key}=${value}/;
$found++;
}
}
unless ($found > 0) {
push(@config_lines, "$key=$value");
$exit_code++;
}
# Write'em
seek($fh, 0, 0);
print $fh qq|$_\n| for @config_lines;
close $fh;
}
sub root {
my ($config) = @_;
open(my $CONF, "<", "$config/miniserv.conf") || die RED,
"Failed to open $config/miniserv.conf", RESET;
my $root;
while (<$CONF>) {
if (/^root=(.*)/) {
$root = $1;
}
}
close($CONF);
# Does the Webmin root exist?
if ( $root ) {
die "$root is not a directory. Is --config correct?" unless (-d $root);
} else {
# Try to guess where Webmin lives, since config file didn't know.
die "Unable to determine Webmin installation directory from $ENV{'WEBMIN_CONFIG'}";
}
return $root;
}
1;
=pod
=head1 NAME
enable-proxy
=head1 DESCRIPTION
Configure the Webmin web server to be proxied through another web server, like Apache or nginx. This is not usually recommended, and disables some security features, but can help traverse a firewall.
=head1 SYNOPSIS
enable-proxy [options]
=head1 OPTIONS
=over
=item --help, -h
Print this usage summary and exit.
=item --config, -c
Specify the full path to the Webmin configuration directory. Defaults to
C</etc/webmin>
=item --prefix, -p
To use a directory prefix for URLs (e.g. https://domain.tld/webmin) provide
it using this option.
=item --referer, -r
The hostname you'll be using in your browser to contact the server. (e.g.
domain.tld)
=back
=head1 EXIT CODES
0 on success
non-0 on error
=head1 LICENSE AND COPYRIGHT
Copyright 2018 Jamie Cameron <jcameron@webmin.com>, Joe Cooper
<joe@virtualmin.com>.

207
bin/list-config Executable file
View File

@@ -0,0 +1,207 @@
#!/usr/bin/env perl
# list-config - List one or all config directives for Webmin or a specific
# module.
use strict;
use warnings;
BEGIN { $Pod::Usage::Formatter = 'Pod::Text::Color'; }
use 5.010; # Version in CentOS 6
use Getopt::Long qw(:config permute pass_through);
use Pod::Usage;
use Term::ANSIColor qw(:constants);
sub main {
my %opt;
GetOptions(
'help|h' => \$opt{'help'},
'config|c=s' => \$opt{'config'},
'module|m=s' => \$opt{'module'},
'option|o=s' => \$opt{'option'},
'describe|d' => \$opt{'describe'}
);
pod2usage(0) if ( $opt{'help'} );
$opt{'config'} ||= "/etc/webmin";
list_config( \%opt );
return 0;
}
exit main( \@ARGV ) if !caller(0);
sub list_config {
my ($optref) = @_;
my @config_lines;
# Module or root-level config?
if ($optref->{'module'}) {
# Read the module config file
@config_lines = load_config($optref->{'config'}, "$optref->{'module'}/config");
} else {
@config_lines = load_config($optref->{'config'}, "miniserv.conf");
}
# Display either a single item or the whole thing
if ($optref->{'option'}) {
# Show one item
my $value;
if ($optref->{'module'} and $optref->{'describe'}) {
$value = get_description($optref);
} else {
$value = get_config_value($optref->{'option'}, \@config_lines)
|| die RED, "Unable to retrieve value of $optref->{'option'}", RESET;
}
say $value;
} else {
# Show all
if ($optref->{'module'} and $optref->{'describe'}) {
@config_lines = get_description($optref);
} elsif ($optref->{'describe'}) {
die RED, "--describe only available for modules", RESET;
}
say for @config_lines;
}
}
sub load_config {
my ($config_dir, $file_path) = @_;
my @config_lines;
if (-e "$config_dir/$file_path") {
open my $fh, '<', "$config_dir/$file_path"
|| die RED, "Unable to open $config_dir/$file_path", RESET;
chomp(@config_lines = <$fh>);
close $fh;
} else {
die RED, "Unable to open $config_dir/$file_path.", RESET;
}
return @config_lines;
}
# get_config_var
# Read the file at $config and return the value of key
sub get_config_value {
my ($key, $config_lines_ref) = @_;
my $value;
foreach my $line (@$config_lines_ref) {
if ($line =~ /^${key}=(.*)/) {
$value = $1;
}
}
return $value;
}
# get_description
# Return a description of one or more options from config.info
sub get_description {
my ($optref) = @_;
my $root = root($optref->{'config'});
my $config_info = "$root/$optref->{'module'}/config.info";
my $key = $optref->{'option'};
open my $fh, '<', $config_info
or die RED, "Unable to open $config_info", RESET;
if ($optref->{'option'}) {
my $found = 0;
# return one description
while (<$fh>) {
if (/^${key}=([^,]*)/) {
$found++;
return "$key - $1";
}
}
$found or die RED, "Unrecognized option $key", RESET;
} else {
my $found;
# return all descriptions
my @lines;
while (<$fh>) {
if (/^(.*)=([^,]*)/) {
push (@lines, "$1 - $2");
$found++;
}
}
$found or die RED, "No options found for module $optref->{'module'}";
return @lines;
}
}
sub root {
my ($config) = @_;
open(my $CONF, "<", "$config/miniserv.conf") || die RED,
"Failed to open $config/miniserv.conf", RESET;
my $root;
while (<$CONF>) {
if (/^root=(.*)/) {
$root = $1;
}
}
close($CONF);
# Does the Webmin root exist?
if ( $root ) {
die "$root is not a directory. Is --config correct?" unless (-d $root);
} else {
# Try to guess where Webmin lives, since config file didn't know.
die "Unable to determine Webmin installation directory from $ENV{'WEBMIN_CONFIG'}";
}
return $root;
}
1;
=pod
=head1 NAME
list-config
=head1 DESCRIPTION
List one or all configuration directives for C<miniserv.conf> or a module C<config> file.
=head1 SYNOPSIS
list-config [options]
=head1 OPTIONS
=over
=item --help, -h
Print this usage summary and exit.
=item --config, -c
Specify the full path to the Webmin configuration directory. Defaults to
C</etc/webmin>
=item --module, -m
Specify which module configuration to display. If none given, configuration will be assumed to be the Webmin core configuration (/etc/webmin/miniserv.conf).
=item --option, -o
Specify a single option to display. By default, the entire configuration file will be displayed. If this option is given, only the option specified will be shown.
=item --describe, -d
Display the description of the option from the module C<config.info> file, instead of it's current value. This option is only available for modules, as miniserv.conf does not have a config.info.
=back
=head1 EXIT CODES
0 on success
non-0 on error
=head1 LICENSE AND COPYRIGHT
Copyright 2018 Jamie Cameron <jcameron@webmin.com>, Joe Cooper
<joe@virtualmin.com>.

185
bin/set-config Executable file
View File

@@ -0,0 +1,185 @@
#!/usr/bin/env perl
# set-config - Set a Webmin configuration option to the value provided and
# restart Webmin to apply the change.
use strict;
use warnings;
BEGIN { $Pod::Usage::Formatter = 'Pod::Text::Color'; }
use 5.010; # Version in CentOS 6
use Getopt::Long qw(:config permute pass_through);
use Pod::Usage;
use Term::ANSIColor qw(:constants);
use Fcntl qw( :flock );
sub main {
my %opt;
GetOptions(
'help|h' => \$opt{'help'},
'config|c=s' => \$opt{'config'},
'module|m=s' => \$opt{'module'},
'option|o=s' => \$opt{'option'},
'value|v=s' => \$opt{'value'},
'force|f' => \$opt{'force'}
);
pod2usage(0) if ( $opt{'help'} );
$opt{'config'} ||= "/etc/webmin";
set_config( \%opt );
return 0;
}
exit main( \@ARGV ) if !caller(0);
sub set_config {
my ($optref) = @_;
my $key = $optref->{'option'};
my $value = $optref->{'value'};
$key or die RED, "An --option must be specified", RESET;
my @config_lines;
# Module or root-level config?
my $config_file;
if ($optref->{'module'}) {
$config_file = "$optref->{'config'}/$optref->{'module'}/config";
} else {
$config_file = "$optref->{'config'}/miniserv.conf";
}
# Read'em
open my $fh, '+<', $config_file
or die RED, "Unable to open $config_file", RESET;
flock($fh, LOCK_EX) or die RED, "Unable to lock $config_file", RESET;
chomp(@config_lines = <$fh>);
# Change'em
my $found = 0;
my $exit_code = 0;
# Validate it against the config.info if this is a module and
if ($optref->{'module'} && !($optref->{'force'})) {
validate_config_option($optref);
}
for (@config_lines) {
if (/^${key}=(.*)/) {
s/^${key}=(.*)/${key}=${value}/;
$found++;
}
}
unless ($found > 0) {
push(@config_lines, "$key=$value");
$exit_code++;
}
# Write'em
seek($fh, 0, 0);
print $fh qq|$_\n| for @config_lines;
close $fh;
# Restart Webmin if editing miniserv.conf
unless ($optref->{'module'}) {
say "Restarting Webmin to apply miniserv.conf changes...";
system("$optref->{'config'}/restart");
}
exit $exit_code;
}
sub validate_config_option {
my ($optref) = @_;
my $root = root($optref->{'config'});
my $key = $optref->{'option'};
# Load the config.info
open my $fh, '<', "$root/$optref->{'module'}/config.info";
# Does this key exist?
my $found;
while (<$fh>) {
if (/^${key}=(.*)/) {
$found++;
}
}
close $fh;
$found or
die RED, "Option '$key' is unknown in module $optref->{'module'}", RESET;
return 1;
}
sub root {
my ($config) = @_;
open(my $CONF, "<", "$config/miniserv.conf") || die RED,
"Failed to open $config/miniserv.conf", RESET;
my $root;
while (<$CONF>) {
if (/^root=(.*)/) {
$root = $1;
}
}
close($CONF);
# Does the Webmin root exist?
if ( $root ) {
die "$root is not a directory. Is --config correct?" unless (-d $root);
} else {
die "Unable to determine Webmin installation directory from $ENV{'WEBMIN_CONFIG'}";
}
return $root;
}
1;
=pod
=head1 NAME
set-config
=head1 DESCRIPTION
Set a configuration directive in either C<miniserv.conf> (the core Webmin config) or in the specified module C<config>.
=head1 SYNOPSIS
set-config [options] [--module] --option <option-name> --value <value>
=head1 OPTIONS
=over
=item --help, -h
Print this usage summary and exit.
=item --config, -c
Specify the full path to the Webmin configuration directory. Defaults to
C</etc/webmin>
=item --module, -m
Specify which module configuration to modify. If none given, configuration will be assumed to be the Webmin core configuration (/etc/webmin/miniserv.conf).
=item --option, -o
Specify the option to change.
=item --value, -o
The value to change the option to.
=item --force, -f
Skip validation of the option name. Allows modifying hidden options, and adding unknown options.
=back
=head1 EXIT CODES
0 on successfully replacing a config variable
1 on successfully adding a new config variable (the specified option did not
already exist in the file, and was added)
>1 on error
=head1 LICENSE AND COPYRIGHT
Copyright 2018 Jamie Cameron <jcameron@webmin.com>, Joe Cooper
<joe@virtualmin.com>.

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