Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
I
ISPConfig 3
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
isp
ISPConfig 3
Commits
e28b0e91
Commit
e28b0e91
authored
13 years ago
by
latham
Browse files
Options
Downloads
Patches
Plain Diff
Microsoft Line endings make diff unhappy
parent
9a3a7819
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
install/autoupdate.php
+319
-319
319 additions, 319 deletions
install/autoupdate.php
with
319 additions
and
319 deletions
install/autoupdate.php
+
319
−
319
View file @
e28b0e91
<?php
<?php
/*
/*
Copyright (c) 2007-2010, Till Brehm, projektfarm Gmbh
Copyright (c) 2007-2010, Till Brehm, projektfarm Gmbh
All rights reserved.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
and/or other materials provided with the distribution.
* Neither the name of ISPConfig nor the names of its contributors
* Neither the name of ISPConfig nor the names of its contributors
may be used to endorse or promote products derived from this software without
may be used to endorse or promote products derived from this software without
specific prior written permission.
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
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
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
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
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
*/
/*
/*
ISPConfig 3 updater.
ISPConfig 3 updater.
*/
*/
error_reporting
(
E_ALL
|
E_STRICT
);
error_reporting
(
E_ALL
|
E_STRICT
);
/*
/*
* If the auto-updater flag is not on (the file does not exist) then cancel the auto-update!
* If the auto-updater flag is not on (the file does not exist) then cancel the auto-update!
*/
*/
if
(
!
file_exists
(
'autoupdate'
))
{
if
(
!
file_exists
(
'autoupdate'
))
{
//** The banner on the command line
//** The banner on the command line
echo
"
\n\n
"
.
str_repeat
(
'-'
,
80
)
.
"
\n
"
;
echo
"
\n\n
"
.
str_repeat
(
'-'
,
80
)
.
"
\n
"
;
echo
" _____ ___________ _____ __ _ ____
echo
" _____ ___________ _____ __ _ ____
|_ _/ ___| ___ \ / __ \ / _(_) /__ \
|_ _/ ___| ___ \ / __ \ / _(_) /__ \
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
_| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
_| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
\___/\____/\_| \____/\___/|_| |_|_| |_|\__, | \____/
\___/\____/\_| \____/\___/|_| |_|_| |_|\__, | \____/
__/ |
__/ |
|___/ "
;
|___/ "
;
echo
"
\n
"
.
str_repeat
(
'-'
,
80
)
.
"
\n
"
;
echo
"
\n
"
.
str_repeat
(
'-'
,
80
)
.
"
\n
"
;
echo
"
\n\n
>>This script is for internal use only! Please use update.php!
\n\n
"
;
echo
"
\n\n
>>This script is for internal use only! Please use update.php!
\n\n
"
;
exit
;
exit
;
}
}
//** Include the library with the basic installer functions
//** Include the library with the basic installer functions
require_once
(
'lib/install.lib.php'
);
require_once
(
'lib/install.lib.php'
);
//** Include the library with the basic updater functions
//** Include the library with the basic updater functions
require_once
(
'lib/update.lib.php'
);
require_once
(
'lib/update.lib.php'
);
//** Include the base class of the installer class
//** Include the base class of the installer class
require_once
(
'lib/installer_base.lib.php'
);
require_once
(
'lib/installer_base.lib.php'
);
//** Ensure that current working directory is install directory
//** Ensure that current working directory is install directory
$cur_dir
=
getcwd
();
$cur_dir
=
getcwd
();
if
(
realpath
(
dirname
(
__FILE__
))
!=
$cur_dir
)
die
(
"Please run installation/update from _inside_ the install directory!
\n
"
);
if
(
realpath
(
dirname
(
__FILE__
))
!=
$cur_dir
)
die
(
"Please run installation/update from _inside_ the install directory!
\n
"
);
//** Install logfile
//** Install logfile
define
(
'ISPC_LOG_FILE'
,
'/var/log/ispconfig_install.log'
);
define
(
'ISPC_LOG_FILE'
,
'/var/log/ispconfig_install.log'
);
define
(
'ISPC_INSTALL_ROOT'
,
realpath
(
dirname
(
__FILE__
)
.
'/../'
));
define
(
'ISPC_INSTALL_ROOT'
,
realpath
(
dirname
(
__FILE__
)
.
'/../'
));
//** Get distribution identifier
//** Get distribution identifier
$dist
=
get_distname
();
$dist
=
get_distname
();
include_once
(
"/usr/local/ispconfig/server/lib/config.inc.php"
);
include_once
(
"/usr/local/ispconfig/server/lib/config.inc.php"
);
$conf_old
=
$conf
;
$conf_old
=
$conf
;
unset
(
$conf
);
unset
(
$conf
);
if
(
$dist
[
'id'
]
==
''
)
die
(
'Linux distribution or version not recognized.'
);
if
(
$dist
[
'id'
]
==
''
)
die
(
'Linux distribution or version not recognized.'
);
//** Include the distribution-specific installer class library and configuration
//** Include the distribution-specific installer class library and configuration
if
(
is_file
(
'dist/lib/'
.
$dist
[
'baseid'
]
.
'.lib.php'
))
include_once
(
'dist/lib/'
.
$dist
[
'baseid'
]
.
'.lib.php'
);
if
(
is_file
(
'dist/lib/'
.
$dist
[
'baseid'
]
.
'.lib.php'
))
include_once
(
'dist/lib/'
.
$dist
[
'baseid'
]
.
'.lib.php'
);
include_once
(
'dist/lib/'
.
$dist
[
'id'
]
.
'.lib.php'
);
include_once
(
'dist/lib/'
.
$dist
[
'id'
]
.
'.lib.php'
);
include_once
(
'dist/conf/'
.
$dist
[
'id'
]
.
'.conf.php'
);
include_once
(
'dist/conf/'
.
$dist
[
'id'
]
.
'.conf.php'
);
//** Get hostname
//** Get hostname
exec
(
'hostname -f'
,
$tmp_out
);
exec
(
'hostname -f'
,
$tmp_out
);
$conf
[
'hostname'
]
=
$tmp_out
[
0
];
$conf
[
'hostname'
]
=
$tmp_out
[
0
];
unset
(
$tmp_out
);
unset
(
$tmp_out
);
//** Set the mysql login information
//** Set the mysql login information
$conf
[
"mysql"
][
"host"
]
=
$conf_old
[
"db_host"
];
$conf
[
"mysql"
][
"host"
]
=
$conf_old
[
"db_host"
];
$conf
[
"mysql"
][
"database"
]
=
$conf_old
[
"db_database"
];
$conf
[
"mysql"
][
"database"
]
=
$conf_old
[
"db_database"
];
$conf
[
'mysql'
][
'charset'
]
=
'utf8'
;
$conf
[
'mysql'
][
'charset'
]
=
'utf8'
;
$conf
[
"mysql"
][
"ispconfig_user"
]
=
$conf_old
[
"db_user"
];
$conf
[
"mysql"
][
"ispconfig_user"
]
=
$conf_old
[
"db_user"
];
$conf
[
"mysql"
][
"ispconfig_password"
]
=
$conf_old
[
"db_password"
];
$conf
[
"mysql"
][
"ispconfig_password"
]
=
$conf_old
[
"db_password"
];
$conf
[
'language'
]
=
$conf_old
[
'language'
];
$conf
[
'language'
]
=
$conf_old
[
'language'
];
if
(
$conf
[
'language'
]
==
'{language}'
)
$conf
[
'language'
]
=
'en'
;
if
(
$conf
[
'language'
]
==
'{language}'
)
$conf
[
'language'
]
=
'en'
;
if
(
isset
(
$conf_old
[
"dbmaster_host"
]))
$conf
[
"mysql"
][
"master_host"
]
=
$conf_old
[
"dbmaster_host"
];
if
(
isset
(
$conf_old
[
"dbmaster_host"
]))
$conf
[
"mysql"
][
"master_host"
]
=
$conf_old
[
"dbmaster_host"
];
if
(
isset
(
$conf_old
[
"dbmaster_database"
]))
$conf
[
"mysql"
][
"master_database"
]
=
$conf_old
[
"dbmaster_database"
];
if
(
isset
(
$conf_old
[
"dbmaster_database"
]))
$conf
[
"mysql"
][
"master_database"
]
=
$conf_old
[
"dbmaster_database"
];
if
(
isset
(
$conf_old
[
"dbmaster_user"
]))
$conf
[
"mysql"
][
"master_ispconfig_user"
]
=
$conf_old
[
"dbmaster_user"
];
if
(
isset
(
$conf_old
[
"dbmaster_user"
]))
$conf
[
"mysql"
][
"master_ispconfig_user"
]
=
$conf_old
[
"dbmaster_user"
];
if
(
isset
(
$conf_old
[
"dbmaster_password"
]))
$conf
[
"mysql"
][
"master_ispconfig_password"
]
=
$conf_old
[
"dbmaster_password"
];
if
(
isset
(
$conf_old
[
"dbmaster_password"
]))
$conf
[
"mysql"
][
"master_ispconfig_password"
]
=
$conf_old
[
"dbmaster_password"
];
//* Check if this is a master / slave setup
//* Check if this is a master / slave setup
$conf
[
'mysql'
][
'master_slave_setup'
]
=
'n'
;
$conf
[
'mysql'
][
'master_slave_setup'
]
=
'n'
;
if
(
$conf
[
"mysql"
][
"master_host"
]
!=
''
&&
$conf
[
"mysql"
][
"host"
]
!=
$conf
[
"mysql"
][
"master_host"
])
{
if
(
$conf
[
"mysql"
][
"master_host"
]
!=
''
&&
$conf
[
"mysql"
][
"host"
]
!=
$conf
[
"mysql"
][
"master_host"
])
{
$conf
[
'mysql'
][
'master_slave_setup'
]
=
'y'
;
$conf
[
'mysql'
][
'master_slave_setup'
]
=
'y'
;
}
}
// Resolve the IP address of the mysql hostname.
// Resolve the IP address of the mysql hostname.
if
(
!
$conf
[
'mysql'
][
'ip'
]
=
gethostbyname
(
$conf
[
'mysql'
][
'host'
]))
die
(
'Unable to resolve hostname'
.
$conf
[
'mysql'
][
'host'
]);
if
(
!
$conf
[
'mysql'
][
'ip'
]
=
gethostbyname
(
$conf
[
'mysql'
][
'host'
]))
die
(
'Unable to resolve hostname'
.
$conf
[
'mysql'
][
'host'
]);
$conf
[
'server_id'
]
=
intval
(
$conf_old
[
"server_id"
]);
$conf
[
'server_id'
]
=
intval
(
$conf_old
[
"server_id"
]);
$conf
[
'ispconfig_log_priority'
]
=
$conf_old
[
"log_priority"
];
$conf
[
'ispconfig_log_priority'
]
=
$conf_old
[
"log_priority"
];
$inst
=
new
installer
();
$inst
=
new
installer
();
$inst
->
is_update
=
true
;
$inst
->
is_update
=
true
;
//** Detect the installed applications
//** Detect the installed applications
$inst
->
find_installed_apps
();
$inst
->
find_installed_apps
();
//** Initialize the MySQL server connection
//** Initialize the MySQL server connection
include_once
(
'lib/mysql.lib.php'
);
include_once
(
'lib/mysql.lib.php'
);
//** Database update is a bit brute force and should be rebuild later ;)
//** Database update is a bit brute force and should be rebuild later ;)
/*
/*
* Try to read the DB-admin settings
* Try to read the DB-admin settings
*/
*/
$clientdb_host
=
''
;
$clientdb_host
=
''
;
$clientdb_user
=
''
;
$clientdb_user
=
''
;
$clientdb_password
=
''
;
$clientdb_password
=
''
;
include_once
(
"/usr/local/ispconfig/server/lib/mysql_clientdb.conf"
);
include_once
(
"/usr/local/ispconfig/server/lib/mysql_clientdb.conf"
);
$conf
[
"mysql"
][
"admin_user"
]
=
$clientdb_user
;
$conf
[
"mysql"
][
"admin_user"
]
=
$clientdb_user
;
$conf
[
"mysql"
][
"admin_password"
]
=
$clientdb_password
;
$conf
[
"mysql"
][
"admin_password"
]
=
$clientdb_password
;
$clientdb_host
=
''
;
$clientdb_host
=
''
;
$clientdb_user
=
''
;
$clientdb_user
=
''
;
$clientdb_password
=
''
;
$clientdb_password
=
''
;
//** There is a error if user for mysql admin_password if empty
//** There is a error if user for mysql admin_password if empty
if
(
empty
(
$conf
[
"mysql"
][
"admin_password"
])
)
{
if
(
empty
(
$conf
[
"mysql"
][
"admin_password"
])
)
{
die
(
"internal error - MYSQL-Root passord not known"
);
die
(
"internal error - MYSQL-Root passord not known"
);
}
}
/*
/*
* Check all tables
* Check all tables
*/
*/
checkDbHealth
();
checkDbHealth
();
/*
/*
* Prepare the dump of the database
* Prepare the dump of the database
*/
*/
prepareDBDump
();
prepareDBDump
();
//* initialize the database
//* initialize the database
$inst
->
db
=
new
db
();
$inst
->
db
=
new
db
();
/*
/*
* The next line is a bit tricky!
* The next line is a bit tricky!
* At the automated update we have no connection to the master-db (we don't need it, because
* At the automated update we have no connection to the master-db (we don't need it, because
* there are only TWO points, where this is needed)
* there are only TWO points, where this is needed)
* 1) update the rights --> the autoupdater sets the rights of all clients when the server is
* 1) update the rights --> the autoupdater sets the rights of all clients when the server is
* autoupdated)
* autoupdated)
* 2) update the server-settings (is web installed, is mail installed) --> the autoupdates
* 2) update the server-settings (is web installed, is mail installed) --> the autoupdates
* doesn't change any of this settings, so there ist no need to update this.
* doesn't change any of this settings, so there ist no need to update this.
* This means, the autoupdater did not need any connection to the master-db (only to the local bd
* This means, the autoupdater did not need any connection to the master-db (only to the local bd
* of the master-server). To avoid any problems, we set the master-db to the local one.
* of the master-server). To avoid any problems, we set the master-db to the local one.
*/
*/
$inst
->
dbmaster
=
$inst
->
db
;
$inst
->
dbmaster
=
$inst
->
db
;
/*
/*
* If it is NOT a master-slave - Setup then we are at the Master-DB. So set all rights
* If it is NOT a master-slave - Setup then we are at the Master-DB. So set all rights
*/
*/
if
(
$conf
[
'mysql'
][
'master_slave_setup'
]
!=
'y'
)
{
if
(
$conf
[
'mysql'
][
'master_slave_setup'
]
!=
'y'
)
{
$inst
->
grant_master_database_rights
(
true
);
$inst
->
grant_master_database_rights
(
true
);
}
}
/*
/*
* dump the new Database and reconfigure the server.ini
* dump the new Database and reconfigure the server.ini
*/
*/
updateDbAndIni
();
updateDbAndIni
();
/*
/*
* Reconfigure all Services
* Reconfigure all Services
*/
*/
if
(
$conf
[
'services'
][
'mail'
]
==
true
)
{
if
(
$conf
[
'services'
][
'mail'
]
==
true
)
{
//** Configure postfix
//** Configure postfix
swriteln
(
'Configuring Postfix'
);
swriteln
(
'Configuring Postfix'
);
$inst
->
configure_postfix
(
'dont-create-certs'
);
$inst
->
configure_postfix
(
'dont-create-certs'
);
//** Configure mailman
//** Configure mailman
swriteln
(
'Configuring Mailman'
);
swriteln
(
'Configuring Mailman'
);
$inst
->
configure_mailman
(
'update'
);
$inst
->
configure_mailman
(
'update'
);
//* Configure Jailkit
//* Configure Jailkit
swriteln
(
'Configuring Jailkit'
);
swriteln
(
'Configuring Jailkit'
);
$inst
->
configure_jailkit
();
$inst
->
configure_jailkit
();
if
(
$conf
[
'dovecot'
][
'installed'
]
==
true
)
{
if
(
$conf
[
'dovecot'
][
'installed'
]
==
true
)
{
//* Configure dovecot
//* Configure dovecot
swriteln
(
'Configuring Dovecot'
);
swriteln
(
'Configuring Dovecot'
);
$inst
->
configure_dovecot
();
$inst
->
configure_dovecot
();
}
else
{
}
else
{
//** Configure saslauthd
//** Configure saslauthd
swriteln
(
'Configuring SASL'
);
swriteln
(
'Configuring SASL'
);
$inst
->
configure_saslauthd
();
$inst
->
configure_saslauthd
();
//** Configure PAM
//** Configure PAM
swriteln
(
'Configuring PAM'
);
swriteln
(
'Configuring PAM'
);
$inst
->
configure_pam
();
$inst
->
configure_pam
();
//* Configure courier
//* Configure courier
swriteln
(
'Configuring Courier'
);
swriteln
(
'Configuring Courier'
);
$inst
->
configure_courier
();
$inst
->
configure_courier
();
}
}
//** Configure Spamasassin
//** Configure Spamasassin
swriteln
(
'Configuring Spamassassin'
);
swriteln
(
'Configuring Spamassassin'
);
$inst
->
configure_spamassassin
();
$inst
->
configure_spamassassin
();
//** Configure Amavis
//** Configure Amavis
swriteln
(
'Configuring Amavisd'
);
swriteln
(
'Configuring Amavisd'
);
$inst
->
configure_amavis
();
$inst
->
configure_amavis
();
//** Configure Getmail
//** Configure Getmail
swriteln
(
'Configuring Getmail'
);
swriteln
(
'Configuring Getmail'
);
$inst
->
configure_getmail
();
$inst
->
configure_getmail
();
}
}
if
(
$conf
[
'services'
][
'web'
]
==
true
)
{
if
(
$conf
[
'services'
][
'web'
]
==
true
)
{
//** Configure Pureftpd
//** Configure Pureftpd
swriteln
(
'Configuring Pureftpd'
);
swriteln
(
'Configuring Pureftpd'
);
$inst
->
configure_pureftpd
();
$inst
->
configure_pureftpd
();
}
}
if
(
$conf
[
'services'
][
'dns'
]
==
true
)
{
if
(
$conf
[
'services'
][
'dns'
]
==
true
)
{
//* Configure DNS
//* Configure DNS
if
(
$conf
[
'powerdns'
][
'installed'
]
==
true
)
{
if
(
$conf
[
'powerdns'
][
'installed'
]
==
true
)
{
swriteln
(
'Configuring PowerDNS'
);
swriteln
(
'Configuring PowerDNS'
);
$inst
->
configure_powerdns
();
$inst
->
configure_powerdns
();
}
elseif
(
$conf
[
'bind'
][
'installed'
]
==
true
)
{
}
elseif
(
$conf
[
'bind'
][
'installed'
]
==
true
)
{
swriteln
(
'Configuring BIND'
);
swriteln
(
'Configuring BIND'
);
$inst
->
configure_bind
();
$inst
->
configure_bind
();
}
else
{
}
else
{
swriteln
(
'Configuring MyDNS'
);
swriteln
(
'Configuring MyDNS'
);
$inst
->
configure_mydns
();
$inst
->
configure_mydns
();
}
}
}
}
if
(
$conf
[
'services'
][
'web'
]
==
true
)
{
if
(
$conf
[
'services'
][
'web'
]
==
true
)
{
//** Configure Apache
//** Configure Apache
swriteln
(
'Configuring Apache'
);
swriteln
(
'Configuring Apache'
);
$inst
->
configure_apache
();
$inst
->
configure_apache
();
//** Configure vlogger
//** Configure vlogger
swriteln
(
'Configuring vlogger'
);
swriteln
(
'Configuring vlogger'
);
$inst
->
configure_vlogger
();
$inst
->
configure_vlogger
();
//** Configure apps vhost
//** Configure apps vhost
swriteln
(
'Configuring Apps vhost'
);
swriteln
(
'Configuring Apps vhost'
);
$inst
->
configure_apps_vhost
();
$inst
->
configure_apps_vhost
();
}
}
//* Configure DBServer
//* Configure DBServer
swriteln
(
'Configuring Database'
);
swriteln
(
'Configuring Database'
);
$inst
->
configure_dbserver
();
$inst
->
configure_dbserver
();
//if(@is_dir('/etc/Bastille')) {
//if(@is_dir('/etc/Bastille')) {
//* Configure Firewall
//* Configure Firewall
swriteln
(
'Configuring Firewall'
);
swriteln
(
'Configuring Firewall'
);
$inst
->
configure_firewall
();
$inst
->
configure_firewall
();
//}
//}
//** Configure ISPConfig
//** Configure ISPConfig
swriteln
(
'Updating ISPConfig'
);
swriteln
(
'Updating ISPConfig'
);
//** Customise the port ISPConfig runs on
//** Customise the port ISPConfig runs on
$conf
[
'apache'
][
'vhost_port'
]
=
get_ispconfig_port_number
();
$conf
[
'apache'
][
'vhost_port'
]
=
get_ispconfig_port_number
();
$inst
->
install_ispconfig
();
$inst
->
install_ispconfig
();
//** Configure Crontab
//** Configure Crontab
swriteln
(
'Updating Crontab'
);
swriteln
(
'Updating Crontab'
);
$inst
->
install_crontab
();
$inst
->
install_crontab
();
//** Restart services:
//** Restart services:
swriteln
(
'Restarting services ...'
);
swriteln
(
'Restarting services ...'
);
if
(
$conf
[
'mysql'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mysql'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mysql'
][
'init_script'
]
.
' reload'
);
if
(
$conf
[
'mysql'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mysql'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mysql'
][
'init_script'
]
.
' reload'
);
if
(
$conf
[
'services'
][
'mail'
])
{
if
(
$conf
[
'services'
][
'mail'
])
{
if
(
$conf
[
'postfix'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'postfix'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'postfix'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'postfix'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'postfix'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'postfix'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'saslauthd'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'saslauthd'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'saslauthd'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'saslauthd'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'saslauthd'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'saslauthd'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'amavis'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'amavis'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'amavis'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'amavis'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'amavis'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'amavis'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'clamav'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'clamav'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'clamav'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'clamav'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'clamav'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'clamav'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'courier'
][
'courier-authdaemon'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-authdaemon'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-authdaemon'
]
.
' restart'
);
if
(
$conf
[
'courier'
][
'courier-authdaemon'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-authdaemon'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-authdaemon'
]
.
' restart'
);
if
(
$conf
[
'courier'
][
'courier-imap'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-imap'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-imap'
]
.
' restart'
);
if
(
$conf
[
'courier'
][
'courier-imap'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-imap'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-imap'
]
.
' restart'
);
if
(
$conf
[
'courier'
][
'courier-imap-ssl'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-imap-ssl'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-imap-ssl'
]
.
' restart'
);
if
(
$conf
[
'courier'
][
'courier-imap-ssl'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-imap-ssl'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-imap-ssl'
]
.
' restart'
);
if
(
$conf
[
'courier'
][
'courier-pop'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-pop'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-pop'
]
.
' restart'
);
if
(
$conf
[
'courier'
][
'courier-pop'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-pop'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-pop'
]
.
' restart'
);
if
(
$conf
[
'courier'
][
'courier-pop-ssl'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-pop-ssl'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-pop-ssl'
]
.
' restart'
);
if
(
$conf
[
'courier'
][
'courier-pop-ssl'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-pop-ssl'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'courier'
][
'courier-pop-ssl'
]
.
' restart'
);
if
(
$conf
[
'dovecot'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'dovecot'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'dovecot'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'dovecot'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'dovecot'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'dovecot'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'mailman'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mailman'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mailman'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'mailman'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mailman'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mailman'
][
'init_script'
]
.
' restart'
);
}
}
if
(
$conf
[
'services'
][
'web'
])
{
if
(
$conf
[
'services'
][
'web'
])
{
if
(
$conf
[
'apache'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'apache'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'apache'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'apache'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'apache'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'apache'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'pureftpd'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'pureftpd'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'pureftpd'
][
'init_script'
]
.
' restart'
);
if
(
$conf
[
'pureftpd'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'pureftpd'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'pureftpd'
][
'init_script'
]
.
' restart'
);
}
}
if
(
$conf
[
'services'
][
'dns'
])
{
if
(
$conf
[
'services'
][
'dns'
])
{
if
(
$conf
[
'mydns'
][
'installed'
]
==
true
&&
$conf
[
'mydns'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mydns'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mydns'
][
'init_script'
]
.
' restart &> /dev/null'
);
if
(
$conf
[
'mydns'
][
'installed'
]
==
true
&&
$conf
[
'mydns'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mydns'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'mydns'
][
'init_script'
]
.
' restart &> /dev/null'
);
if
(
$conf
[
'powerdns'
][
'installed'
]
==
true
&&
$conf
[
'powerdns'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'powerdns'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'powerdns'
][
'init_script'
]
.
' restart &> /dev/null'
);
if
(
$conf
[
'powerdns'
][
'installed'
]
==
true
&&
$conf
[
'powerdns'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'powerdns'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'powerdns'
][
'init_script'
]
.
' restart &> /dev/null'
);
if
(
$conf
[
'bind'
][
'installed'
]
==
true
&&
$conf
[
'bind'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'bind'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'bind'
][
'init_script'
]
.
' restart &> /dev/null'
);
if
(
$conf
[
'bind'
][
'installed'
]
==
true
&&
$conf
[
'bind'
][
'init_script'
]
!=
''
&&
is_executable
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'bind'
][
'init_script'
]))
system
(
$conf
[
'init_scripts'
]
.
'/'
.
$conf
[
'bind'
][
'init_script'
]
.
' restart &> /dev/null'
);
}
}
echo
"Update finished.
\n
"
;
echo
"Update finished.
\n
"
;
?>
?>
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment