Compare commits

...

19 Commits
0.9.7 ... 0.9.8

Author SHA1 Message Date
Michael Kaufmann (d00p)
0cf721bd49 tagging 0.9.8 2010-05-31 09:02:09 +00:00
Michael Kaufmann (d00p)
f3719d339e - set version to 0.9.8 2010-05-31 09:01:29 +00:00
Michael Kaufmann (d00p)
efc353256d - only check for colon if document-root is not a domain-name (redirect), fixes #253 2010-05-31 08:28:12 +00:00
Michael Kaufmann (d00p)
f4026c1df5 - catch exception if update.log can't be opened in /tmp/ (which should never happen) 2010-05-31 06:04:51 +00:00
Michael Kaufmann (d00p)
eed7776e86 - use better english 2010-05-30 09:31:11 +00:00
Robert Foerster (Dessa)
aface6b425 fix some typos in preconfig, thanks to tomreyn 2010-05-29 22:03:26 +00:00
Florian Aders (EleRas)
b0fb3a31f7 correczing functionname makeCorrectPath to makeCorrectDir, fixes #252 2010-05-29 18:53:16 +00:00
Florian Aders (EleRas)
b01d37d085 Updated italian languagefile, thx to Emilien :) 2010-05-27 21:10:40 +00:00
Michael Kaufmann (d00p)
72e6e2af24 - change minimum value for dns-TTL to 1 hour instead of 1 day, refs #166 2010-05-27 20:34:49 +00:00
Michael Kaufmann (d00p)
0db11bf0f8 - same with 05_froxlor_default_errorhandler.conf 2010-05-27 10:20:37 +00:00
Michael Kaufmann (d00p)
07e388c554 - secure path to 05_froxlor_dirfix_nofcgid.conf apache config file 2010-05-27 10:18:57 +00:00
Robert Foerster (Dessa)
84c9ac7e82 tweak dovecot configuration for lucid to work, fixes 248 2010-05-25 22:19:29 +00:00
Michael Kaufmann (d00p)
e572c072a9 - corrected 'last password change' calculation in libnss-configurations, fixes #244 2010-05-21 05:24:18 +00:00
Florian Aders (EleRas)
f6f7b2e4be Fixing it on the right place, d00p was correct, i apologize -.- 2010-05-19 12:29:32 +00:00
Michael Kaufmann (d00p)
5a0973dfa3 - respect lighttpd user and don't put "DocumentRoot" into the ip-specialsettings 2010-05-19 10:59:01 +00:00
Michael Kaufmann (d00p)
268f3b0a24 bugfix template 2010-05-19 10:46:42 +00:00
Michael Kaufmann (d00p)
348de6da35 - simplify awstats configuration, fixes #241 2010-05-19 06:07:02 +00:00
Michael Kaufmann (d00p)
82958cd8c2 - check for disabled accounts in libnss-configurations, fixes #237 2010-05-19 05:54:13 +00:00
Michael Kaufmann (d00p)
264bc50451 - respect admins open_basedir path settings (if more than one path), fixes #238 2010-05-18 11:48:58 +00:00
43 changed files with 1129 additions and 160 deletions

View File

@@ -65,7 +65,7 @@ return array(
'varname' => 'defaultttl',
'type' => 'int',
'default' => 604800, /* 1 week */
'int_min' => 86400, /* 1 day */
'int_min' => 3600, /* 1 hour */
'int_max' => 2147483647, /* integer max */
'save_method' => 'storeSettingField',
),

View File

@@ -369,7 +369,14 @@ if($page == 'domains'
if(!preg_match('/^https?\:\/\//', $documentroot))
{
$documentroot = makeCorrectDir($documentroot);
if(strstr($documentroot, ":") !== FALSE)
{
standard_error('pathmaynotcontaincolon');
}
else
{
$documentroot = makeCorrectDir($documentroot);
}
}
$domain_check = $db->query_first("SELECT `id`, `domain` FROM `" . TABLE_PANEL_DOMAINS . "` WHERE `domain` = '" . $db->escape(strtolower($domain)) . "'");
@@ -451,10 +458,6 @@ if($page == 'domains'
{
standard_error(array('stringisempty', 'mydocumentroot'));
}
elseif(strstr($documentroot, ":") !== FALSE)
{
standard_error('pathmaynotcontaincolon');
}
elseif($customerid == 0)
{
standard_error('adduserfirst');
@@ -749,8 +752,9 @@ if($page == 'domains'
$documentroot = $customer['documentroot'];
}
if(strstr($documentroot, ":") !== FALSE)
{
if(!preg_match('/^https?\:\/\//', $documentroot)
&& strstr($documentroot, ":") !== FALSE
) {
standard_error('pathmaynotcontaincolon');
}
}

View File

@@ -451,7 +451,7 @@ INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) V
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (18, 'system', 'vmail_homedir', '/var/customers/mail/');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (19, 'system', 'bindconf_directory', '/etc/bind/');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (20, 'system', 'bindreload_command', '/etc/init.d/bind9 reload');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (22, 'panel', 'version', '0.9.7');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (22, 'panel', 'version', '0.9.8');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (23, 'system', 'hostname', 'SERVERNAME');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (24, 'login', 'maxloginattempts', '3');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (25, 'login', 'deactivatetime', '900');

View File

@@ -637,6 +637,7 @@ if(isset($_POST['installstep'])
$db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `value` = '/etc/lighttpd/froxlor-htpasswd/' WHERE `settinggroup` = 'system' AND `varname` = 'apacheconf_htpasswddir'");
$db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `value` = '/etc/init.d/lighttpd reload' WHERE `settinggroup` = 'system' AND `varname` = 'apachereload_command'");
$db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `value` = '/etc/lighttpd/lighttpd.pem' WHERE `settinggroup` = 'system' AND `varname` = 'ssl_cert_file'");
$ssettings = '';
}
// insert the lastcronrun to be the installation date
@@ -659,8 +660,7 @@ if(isset($_POST['installstep'])
`port` = '80',
`namevirtualhost_statement` = '1',
`vhostcontainer` = '1',
`vhostcontainer_servername_statement` = '1',
`specialsettings` = 'DocumentRoot \"".$db->escape(dirname(dirname(__FILE__))) . "\"'";
`vhostcontainer_servername_statement` = '1'";
$db->query($query);
$defaultip = $db->insert_id();

View File

@@ -768,4 +768,11 @@ if(isFroxlorVersion('0.9.7-svn3'))
updateToVersion('0.9.7');
}
if(isFroxlorVersion('0.9.7'))
{
showUpdateStep("Updating from 0.9.7 to 0.9.8 final");
lastStepStatus(0);
updateToVersion('0.9.8');
}
?>

View File

@@ -33,7 +33,7 @@ function getPreConfig($current_version)
include_once makeCorrectFile(dirname(__FILE__).'/preconfig/0.9/preconfig_0.9.inc.php');
parseAndOutputPreconfig($has_preconfig, $return, $current_version);
$return .= '<br /><br />'.makecheckbox('update_changesagreed', '<strong>I have read the update notifications and I am aware of the changes made to my system.</strong>', '1', true, '0', true);
$return .= '<br /><br />'.makecheckbox('update_changesagreed', '<strong>I have read the update notifications above and I am aware of the changes made to my system.</strong>', '1', true, '0', true);
$return .= '</div>';
$return .= '<input type="hidden" name="update_preconfig" value="1" />';

View File

@@ -83,8 +83,8 @@ function parseAndOutputPreconfig(&$has_preconfig, &$return, $current_version)
if(versionInUpdate($current_version, '0.9.6-svn5'))
{
$has_preconfig = true;
$description = 'If you have more than one PHP-configurations defined in Froxlor you can know set a default one which will be used for every domain.';
$question = '<strong>Select default PHP-configuration:</strong>&nbsp;';
$description = 'If you have more than one PHP configurations defined in Froxlor you can now set a default one which will be used for every domain.';
$question = '<strong>Select default PHP configuration:</strong>&nbsp;';
$question .= '<select name="update_defsys_phpconfig">';
$configs_array = getPhpConfigs();
$configs = '';

View File

@@ -22,7 +22,14 @@ $updatelog = FroxlorLogger::getInstanceOf(array('loginname' => 'updater'), $db,
$updatelogfile = validateUpdateLogFile(makeCorrectFile(dirname(__FILE__).'/update.log'));
$filelog = FileLogger::getInstanceOf(array('loginname' => 'updater'), $settings);
$filelog->setLogFile($updatelogfile);
$filelog->logAction(ADM_ACTION, LOG_WARNING, '-------------- START LOG --------------');
// if first writing does not work we'll stop, tell the user to fix it
// and then let him try again.
try {
$filelog->logAction(ADM_ACTION, LOG_WARNING, '-------------- START LOG --------------');
} catch(Exception $e) {
standard_error('exception', $e->getMessage());
}
/*
* since froxlor, we have to check if there's still someone

View File

@@ -273,10 +273,8 @@ return Array(
'commands' => Array(
'apt-get install awstats',
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
),
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf'),
'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
),
),
'libnss' => Array(

View File

@@ -198,10 +198,13 @@ return Array(
'commands' => Array(
'cd /usr/ports/www/awstats/',
'make install clean',
'cp /usr/local/www/awstats/cgi-bin/awstats.model.conf '.makeCorrectDir($settings['system']['awstats_conf'])
),
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'cp /usr/local/www/awstats/cgi-bin/awstats.model.conf '.makeCorrectDir($settings['system']['awstats_conf']),
'sed -i.bak \'s/^LogFile/# LogFile/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf'),
'sed -i.bak \'s/^LogType/# LogType/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf'),
'sed -i.bak \'s/^LogFormat/# LogFormat/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf'),
'sed -i.bak \'s/^LogSeparator/# LogSeparator/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf'),
'sed -i.bak \'s/^SiteDomain/# SiteDomain/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf'),
'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf')
)
),
'libnss' => Array(

View File

@@ -320,10 +320,8 @@ milter_default_action = accept" >> /etc/postfix/main.cf'
'label' => 'Awstats',
'commands' => Array(
'emerge awstats',
'awstats_configure.pl'
),
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'awstats_configure.pl',
'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
),
),
'libnss' => Array(

View File

@@ -298,10 +298,8 @@ return Array(
'commands' => Array(
'apt-get install awstats',
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
),
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf'),
'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
),
),
'libnss' => Array(

View File

@@ -306,10 +306,8 @@ return Array(
'commands' => Array(
'apt-get install awstats',
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
),
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf'),
'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
),
),
'libnss' => Array(

View File

@@ -230,7 +230,7 @@ return Array(
'files' => Array(
'etc_dovecot_auth.d_01-dovecot-postfix.auth' => '/etc/dovecot/auth.d/01-dovecot-postfix.auth',
'etc_dovecot_conf.d_01-dovecot-postfix.conf' => '/etc/dovecot/conf.d/01-dovecot-postfix.conf',
'etc_dovecot_conf.d_02-dovecot-sql.conf' => '/etc/dovecot/conf.d/02-dovecot-sql.conf'
'etc_dovecot_dovecot-sql.conf' => '/etc/dovecot/dovecot-sql.conf'
),
'restart' => Array(
'/etc/init.d/dovecot restart'
@@ -307,10 +307,8 @@ return Array(
'commands' => Array(
'apt-get install awstats',
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
),
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf'),
'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
),
),
'libnss' => Array(

View File

@@ -154,10 +154,8 @@ return Array(
'label' => 'Awstats',
'commands' => Array(
'awstats_configure.pl',
makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
),
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf'),
'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
)
)
)

View File

@@ -72,7 +72,7 @@ define('PACKAGE_ENABLED', 2);
// VERSION INFO
$version = '0.9.7';
$version = '0.9.8';
$dbversion = '2';
$branding = '';

View File

@@ -1420,4 +1420,7 @@ $lng['redirect_desc']['rc_found'] = 'found';
$lng['redirect_desc']['rc_seeother'] = 'see other';
$lng['redirect_desc']['rc_tempred'] = 'temporary redirect';
// ADDED UN FROXLOR 0.9.8
$lng['error']['exception'] = '%s';
?>

File diff suppressed because it is too large Load Diff

View File

@@ -67,7 +67,14 @@ class apache
*/
private function _createStandardDirectoryEntry()
{
$vhosts_filename = makeCorrectFile($this->settings['system']['apacheconf_vhost'] . '/05_froxlor_dirfix_nofcgid.conf');
$vhosts_folder = '';
if(is_dir($this->settings['system']['apacheconf_vhost']))
{
$vhosts_folder = makeCorrectDir($this->settings['system']['apacheconf_vhost']);
} else {
$vhosts_folder = makeCorrectDir(dirname($this->settings['system']['apacheconf_vhost']));
}
$vhosts_filename = makeCorrectFile($vhosts_folder . '/05_froxlor_dirfix_nofcgid.conf');
if($this->settings['system']['mod_fcgid'] == '1')
{
@@ -104,7 +111,15 @@ class apache
|| $this->settings['defaultwebsrverrhandler']['err404'] != ''
|| $this->settings['defaultwebsrverrhandler']['err500'] != '')
) {
$vhosts_filename = makeCorrectFile($this->settings['system']['apacheconf_vhost'] . '/05_froxlor_default_errorhandler.conf');
$vhosts_folder = '';
if(is_dir($this->settings['system']['apacheconf_vhost']))
{
$vhosts_folder = makeCorrectDir($this->settings['system']['apacheconf_vhost']);
} else {
$vhosts_folder = makeCorrectDir(dirname($this->settings['system']['apacheconf_vhost']));
}
$vhosts_filename = makeCorrectFile($vhosts_folder . '/05_froxlor_default_errorhandler.conf');
if(!isset($this->virtualhosts_data[$vhosts_filename]))
{
@@ -177,7 +192,7 @@ class apache
/**
* add 'real'-vhost content here, like doc-root :)
*/
$mypath = makeCorrectDir(dirname(dirname(dirname(__FILE__))));
$mypath = makeCorrectDir(dirname(dirname(dirname(dirname(__FILE__)))));
$this->virtualhosts_data[$vhosts_filename].= 'DocumentRoot "'.$mypath.'"'."\n";
if($row_ipsandports['vhostcontainer_servername_statement'] == '1')
@@ -278,8 +293,13 @@ class apache
{
$_phpappendopenbasedir = appendOpenBasedirPath($domain['documentroot'], true);
}
$_phpappendopenbasedir .= appendOpenBasedirPath($this->settings['system']['phpappendopenbasedir']);
$_custom_openbasedir = explode(':', $this->settings['system']['phpappendopenbasedir']);
foreach($_custom_openbasedir as $cobd)
{
$_phpappendopenbasedir .= appendOpenBasedirPath($cobd);
}
$php_options_text.= ' php_admin_value open_basedir "' . $_phpappendopenbasedir . '"'."\n";
}

View File

@@ -166,9 +166,20 @@ class apache_fcgid extends apache
if($domain['openbasedir'] == '1')
{
$openbasedirc = '';
$_phpappendopenbasedir = appendOpenBasedirPath($this->settings['system']['mod_fcgid_peardir']);
$_phpappendopenbasedir .= appendOpenBasedirPath($this->settings['system']['phpappendopenbasedir']);
$_phpappendopenbasedir = '';
$_custom_openbasedir = explode(':', $this->settings['system']['mod_fcgid_peardir']);
foreach($_custom_openbasedir as $cobd)
{
$_phpappendopenbasedir .= appendOpenBasedirPath($cobd);
}
$_custom_openbasedir = explode(':', $this->settings['system']['phpappendopenbasedir']);
foreach($_custom_openbasedir as $cobd)
{
$_phpappendopenbasedir .= appendOpenBasedirPath($cobd);
}
if($domain['openbasedir_path'] == '0' && strstr($domain['documentroot'], ":") === false)
{
$openbasedir = appendOpenBasedirPath($domain['documentroot'], true);

View File

@@ -107,7 +107,7 @@ class lighttpd
$this->lighttpd_data[$vhost_filename].= '# Froxlor default vhost' . "\n";
$this->lighttpd_data[$vhost_filename].= '$HTTP["host"] =~ "^(?:www\.|)' . $myhost . '$" {' . "\n";
$mypath = makeCorrectDir(dirname(dirname(dirname(__FILE__))));
$mypath = makeCorrectDir(dirname(dirname(dirname(dirname(__FILE__)))));
$this->lighttpd_data[$vhost_filename].= ' server.document-root = "'.$mypath.'"'."\n";
/**

View File

@@ -190,8 +190,19 @@ class lighttpd_fcgid extends lighttpd
if($domain['openbasedir'] == '1')
{
$openbasedirc = '';
$_phpappendopenbasedir = appendOpenBasedirPath($this->settings['system']['mod_fcgid_peardir']);
$_phpappendopenbasedir .= appendOpenBasedirPath($this->settings['system']['phpappendopenbasedir']);
$_phpappendopenbasedir = '';
$_custom_openbasedir = explode(':', $this->settings['system']['mod_fcgid_peardir']);
foreach($_custom_openbasedir as $cobd)
{
$_phpappendopenbasedir .= appendOpenBasedirPath($cobd);
}
$_custom_openbasedir = explode(':', $this->settings['system']['phpappendopenbasedir']);
foreach($_custom_openbasedir as $cobd)
{
$_phpappendopenbasedir .= appendOpenBasedirPath($cobd);
}
if($domain['openbasedir_path'] == '0' && strstr($domain['documentroot'], ":") === false)
{

View File

@@ -19,7 +19,7 @@ $header
<tr>
<td class="main_field_confirm" colspan="2"><input type="hidden" name="send" value="send" /><input type="submit" class="bottom" value="{$lng['emails']['emails_add']}" /></td>
</tr>
<else
<else>
<tr>
<td class="main_field_name" colspan="2">{$lng['emails']['noemaildomainaddedyet']}</td>
</tr>

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -8,9 +8,9 @@ shadow.where_clause = ;
shadow.userid_column = u.id;
shadow.user_column = u.username;
shadow.password_column = u.password;
shadow.lastchange_column = UNIX_TIMESTAMP()-10;
shadow.min_column = 1;
shadow.max_column = 2;
shadow.lastchange_column = FLOOR(UNIX_TIMESTAMP()/86400-1);
shadow.min_column = 0;
shadow.max_column = 99999;
shadow.warn_column = 7;
shadow.inact_column = -1;
shadow.expire_column = -1;

View File

@@ -4,7 +4,7 @@ users.database = <SQL_DB>;
users.db_user = <SQL_UNPRIVILEGED_USER>;
users.db_password = <SQL_UNPRIVILEGED_PASSWORD>;
users.table = ftp_users u;
users.where_clause =;
users.where_clause = u.login_enabled = 'Y';
users.user_column = u.username;
users.password_column = u.password;
users.userid_column = u.id;

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -8,9 +8,9 @@ shadow.where_clause = ;
shadow.userid_column = u.id;
shadow.user_column = u.username;
shadow.password_column = u.password;
shadow.lastchange_column = UNIX_TIMESTAMP()-10;
shadow.min_column = 1;
shadow.max_column = 2;
shadow.lastchange_column = FLOOR(UNIX_TIMESTAMP()/86400-1);
shadow.min_column = 0;
shadow.max_column = 99999;
shadow.warn_column = 7;
shadow.inact_column = -1;
shadow.expire_column = -1;

View File

@@ -4,7 +4,7 @@ users.database = <SQL_DB>;
users.db_user = <SQL_UNPRIVILEGED_USER>;
users.db_password = <SQL_UNPRIVILEGED_PASSWORD>;
users.table = ftp_users u;
users.where_clause =;
users.where_clause = u.login_enabled = 'Y';
users.user_column = u.username;
users.password_column = u.password;
users.userid_column = u.id;

View File

@@ -1,19 +0,0 @@
# for Froxlor and AWStats to work together
# you have to comment out the following
# variables
# look for
LogFile=""
LogType=""
LogFormat=""
LogSeparator=""
SiteDomain=""
DirData="/some/folder/"
# and comment this out with a hash (#)
#LogFile=""
#LogType=""
#LogFormat=""
#LogSeparator=""
#SiteDomain=""
#DirData="/some/folder/"

View File

@@ -1,6 +1,6 @@
getpwnam SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users WHERE username='%1$s' LIMIT 1
getpwuid SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users WHERE uid='%1$u' LIMIT 1
getpwent SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users
getpwnam SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users WHERE username='%1$s' AND login_enabled = 'Y' LIMIT 1
getpwuid SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users WHERE uid='%1$u' AND login_enabled = 'Y' LIMIT 1
getpwent SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users
getspnam SELECT username, password, '12345', '0', '99999', '7', '', '', '' FROM ftp_users WHERE username='%1$s' LIMIT 1
getspent SELECT username, password, '12345', '0', '99999', '7', '', '', '' FROM ftp_users
getgrnam SELECT groupname, '', gid FROM ftp_groups WHERE groupname='%1$s' LIMIT 1

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -1,18 +1,21 @@
getpwnam SELECT username,'x',uid,gid,'MySQL User',homedir,shell \
FROM ftp_users \
WHERE username='%1$s' \
AND login_enabled = 'Y' \
LIMIT 1
getpwuid SELECT username,'x',uid,gid,'MySQL User',homedir,shell \
FROM ftp_users \
WHERE uid='%1$u' \
AND login_enabled = 'Y' \
LIMIT 1
getspnam SELECT username,password,UNIX_TIMESTAMP()-10,'1','2','7','-1','-1','0' \
getspnam SELECT username,password,FLOOR(UNIX_TIMESTAMP()/86400-1),'1','99999','7','-1','-1','0' \
FROM ftp_users \
WHERE username='%1$s' \
AND login_enabled = 'Y' \
LIMIT 1
getpwent SELECT username,'x',uid,gid,'MySQL User',homedir,shell \
FROM ftp_users
getspent SELECT username,password,UNIX_TIMESTAMP()-10,'1','2','7','-1','-1','0' \
getspent SELECT username,password,FLOOR(UNIX_TIMESTAMP()/86400-1),'1','99999','7','-1','-1','0' \
FROM ftp_users
getgrnam SELECT groupname,'x',gid \
FROM ftp_groups \

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -8,9 +8,9 @@ shadow.where_clause = ;
shadow.userid_column = u.id;
shadow.user_column = u.username;
shadow.password_column = u.password;
shadow.lastchange_column = UNIX_TIMESTAMP()-10;
shadow.min_column = 1;
shadow.max_column = 2;
shadow.lastchange_column = FLOOR(UNIX_TIMESTAMP()/86400-1);
shadow.min_column = 0;
shadow.max_column = 99999;
shadow.warn_column = 7;
shadow.inact_column = -1;
shadow.expire_column = -1;

View File

@@ -4,7 +4,7 @@ users.database = <SQL_DB>;
users.db_user = <SQL_UNPRIVILEGED_USER>;
users.db_password = <SQL_UNPRIVILEGED_PASSWORD>;
users.table = ftp_users u;
users.where_clause =;
users.where_clause = u.login_enabled = 'Y';
users.user_column = u.username;
users.password_column = u.password;
users.userid_column = u.id;

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -13,3 +13,16 @@ socket listen {
group = vmail
}
}
passdb sql {
args = /etc/dovecot/dovecot-sql.conf
}
userdb prefetch {
}
userdb sql {
args = /etc/dovecot/dovecot-sql.conf
}
user = vmail

View File

@@ -35,21 +35,6 @@ protocol lda {
rejection_reason = Your message to <%t> was automatically rejected:%n%r
}
auth default {
passdb sql {
args = /etc/dovecot/dovecot-sql.conf
}
userdb prefetch {
}
userdb sql {
args = /etc/dovecot/dovecot-sql.conf
}
user = vmail
}
# Plugins configuration
plugin {
quota = maildir

View File

@@ -8,9 +8,9 @@ shadow.where_clause = ;
shadow.userid_column = u.id;
shadow.user_column = u.username;
shadow.password_column = u.password;
shadow.lastchange_column = UNIX_TIMESTAMP()-10;
shadow.min_column = 1;
shadow.max_column = 2;
shadow.lastchange_column = FLOOR(UNIX_TIMESTAMP()/86400-1);
shadow.min_column = 0;
shadow.max_column = 99999;
shadow.warn_column = 7;
shadow.inact_column = -1;
shadow.expire_column = -1;

View File

@@ -4,7 +4,7 @@ users.database = <SQL_DB>;
users.db_user = <SQL_UNPRIVILEGED_USER>;
users.db_password = <SQL_UNPRIVILEGED_PASSWORD>;
users.table = ftp_users u;
users.where_clause =;
users.where_clause = u.login_enabled = 'Y';
users.user_column = u.username;
users.password_column = u.password;
users.userid_column = u.id;