
15th March 2011, 10:38
|
|
Super Moderator
|
|
Join Date: Apr 2005
Location: Lüneburg, Germany
Posts: 31,888
Thanks: 693
Thanked 4,188 Times in 3,205 Posts
|
|
ISPConfig 3.0.3.3-RC1 available for testing
The first release candidate (RC1) version of the upcoming ISPConfig 3.0.3.3 is available for download. RC versions are released for testing purposes, it is not recommended to use them on production systems.
This release is a bugfix release for ISPConfig 3.0.3.2
Changelog
http://bugtracker.ispconfig.org/inde...&status[]=
Download
http://www.ispconfig.org/downloads/I...3.3-rc1.tar.gz
Update instructions
Code:
cd /tmp
rm -rf /tmp/ispconfig3_install
wget http://www.ispconfig.org/downloads/ISPConfig-3.0.3.3-rc1.tar.gz
tar xvfz ISPConfig-3.0.3.3-rc1.tar.gz
cd ispconfig3_install/install
php -q update.php
|
|
The Following 4 Users Say Thank You to till For This Useful Post:
|
edge (15th March 2011),
holykim (20th March 2011),
itanium (17th March 2011),
xaver (17th March 2011)
|

27th March 2011, 01:11
|
|
Member
|
|
Join Date: May 2009
Posts: 77
Thanks: 10
Thanked 23 Times in 14 Posts
|
|
2 Problems with API
-> addclient password dose not work (updateClient work)
Problem is remoting_lib.inc.php
PHP Code:
Line 695 $password = crypt(stripslashes($password),$salt);
This is normal md5 pw and if you comment out this line it work
-> Delete a User Domain stays. Not sites i mean module Domain
-> updateclient template_master not included
Lines
PHP Code:
if(isset($params['template_master']) and $params['template_master'] > 0) { $template=$app->db->queryOneRecord("SELECT * FROM client_template WHERE template_id=".intval($params['template_master'])); $params=array_merge($params,$template); }
-> My own function in remoting.inc.php for getting next webID without SQL in my API.
PHP Code:
/* Get next AutoIncrement for sites_web_domain_add */
public function sites_web_domain_nextID($session_id) { global $app; if(!$this->checkPerm($session_id, 'sites_web_domain_get')) { $this->server->fault('permission_denied', 'You do not have the permissions to access this function.'); return false; } $table_info = $app->db->queryOneRecord("SHOW TABLE STATUS LIKE 'web_domain'"); return $table_info["Auto_increment"]; }
Last edited by xaver; 27th March 2011 at 15:14.
|
|
The Following User Says Thank You to xaver For This Useful Post:
|
falko (27th March 2011)
|

27th March 2011, 20:33
|
|
Super Moderator
|
|
Join Date: Apr 2005
Location: Lüneburg, Germany
Posts: 41,665
Thanks: 1,896
Thanked 2,593 Times in 2,444 Posts
|
|
I've added this to our bugtracker, so we will check that.
|

27th March 2011, 22:29
|
|
Super Moderator
|
|
Join Date: Apr 2005
Location: Lüneburg, Germany
Posts: 31,888
Thanks: 693
Thanked 4,188 Times in 3,205 Posts
|
|
Quote:
|
This is normal md5 pw and if you comment out this line it work
|
The password encryption mechanism used in current ispconfig versions is crypt and not md5.
|

27th March 2011, 23:07
|
|
Member
|
|
Join Date: May 2009
Posts: 77
Thanks: 10
Thanked 23 Times in 14 Posts
|
|
If you use API and dont comment it out, password wont work.
In next lines are the insert with md5('.$password.') in the query.
UPDATE in remoting_lib.inc.php -> NO crypt -> after a update the account work perfect:
PHP Code:
function ispconfig_sysuser_update($params,$client_id){
global $app;
$username = $app->db->quote($params["username"]);
$password = $app->db->quote($params["password"]);
$client_id = intval($client_id);
$sql = "UPDATE sys_user set username = '$username', passwort = md5('$password') WHERE client_id = $client_id";
$app->db->query($sql);
}
ADD in remoting_lib.inc.php -> crypt -> login with API created account wont work:
PHP Code:
$salt="$1$";
$base64_alphabet='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
for ($n=0;$n<8;$n++) {
$salt.=$base64_alphabet[mt_rand(0,63)];
}
$salt.="$";
$password = crypt(stripslashes($password),$salt);
$sql1 = "INSERT INTO sys_user (username,passwort,modules,startmodule,app_theme,typ,active,language,groups,default_group,client_id)
VALUES ('$username',md5('$password'),'$modules','$startmodule','$usertheme','$type','$active','$language',$groups,$groupid,$insert_id)";
Add a normal account in ispconfig and look into the database in sys_user table -> its md5.
client table is crypt.
Last edited by xaver; 27th March 2011 at 23:13.
|

27th March 2011, 23:17
|
|
Super Moderator
|
|
Join Date: Apr 2005
Location: Lüneburg, Germany
Posts: 31,888
Thanks: 693
Thanked 4,188 Times in 3,205 Posts
|
|
[I checked the file. The crypt line is correct. The bug was in line 697 which has to be:
Code:
VALUES ('$username','$password','$modules','$startmodule','$usertheme','$type','$active','$language',$groups,$groupid,$insert_id)";
Thanks for reporting the bug. I fixed the sql statement in svn.
|
|
The Following User Says Thank You to till For This Useful Post:
|
xaver (28th March 2011)
|

27th March 2011, 23:54
|
|
Member
|
|
Join Date: May 2009
Posts: 77
Thanks: 10
Thanked 23 Times in 14 Posts
|
|
Ok this way work too
i hope you give Domain Module and client_update with templates a look too 
getNextID, maybe next version -> The Idear was for a post in forum. The post used mysql connection...
I have still another problem and found no solution.
I wrote 3 versions for API use.
1. version i changed a lot in remote.inc.php for add a website and it worked
2. version never in use on my system..
3. on dev server no problem, on productive server wont work.
if i setup a account with api, it work but client is always client0 -> but variable isset....
if i setup with interface, document root, system group .. everything is same as i send with API.
PHP Code:
public function addWebsite($traffic,$webspace){ $this->web_id = $this->sites_web_domain_nextID(); $documentroot = "/var/www/clients/client".$this->client_id."/web".$this->web_id; $system_user = "web".$this->web_id; $system_group = 'client'.$this->client_id; $php_open_basedir="/var/www/clients/client".$this->client_id."/web".$this->web_id."/web:/var/www/clients/client".$this->client_id."/web".$this->web_id."/tmp:/var/www/".$this->domain."/web:/usr/share/php5:/tmp"; try { $params = array('server_id' => $this->serverid, 'ip_address' => '*', 'domain' => $this->domain, 'type' => 'vhost', 'parent_domain_id' =>'', 'vhost_type' =>'name', 'hd_quota' => $webspace, 'traffic_quota' => $traffic, 'cgi' =>'n', 'ssi' =>'n', 'suexec' =>'n', 'errordocs' =>'1', 'subdomain' =>'www', 'ssl' =>'n', 'php' =>'mod', 'active' => 'y', 'redirect_type' =>'', 'redirect_path' =>'', 'ssl_state' =>'', 'ssl_locality' =>'', 'ssl_organisation' =>'', 'ssl_organisation_unit' =>'', 'ssl_country' =>'', 'ssl_domain' =>'', 'ssl_request' =>'', 'ssl_cert' =>'', 'ssl_bundle' =>'', 'ssl_action' =>'', 'stats_type' => 'webalizer', 'stats_password' =>'', 'document_root' => $documentroot, 'system_user' =>$system_user, 'system_group' =>$system_group, 'allow_override' =>'Indexes AuthConfig FileInfo', 'php_open_basedir' => $php_open_basedir, 'apache_directives' =>'', 'backup_interval' => 'none', 'custom_php_ini' => NULL, 'backup_copies' => 1, ); $this->web_id = $this->session->sites_web_domain_add($this->session_id, $this->client_id, $params); } catch (SoapFault $e) { die('SOAP Error: '.$e->getMessage()); } }
i hope its understandable.
xaver
|

28th March 2011, 00:15
|
|
Super Moderator
|
|
Join Date: Apr 2005
Location: Lüneburg, Germany
Posts: 31,888
Thanks: 693
Thanked 4,188 Times in 3,205 Posts
|
|
In the $params array, the parameter "client_group_id" is missing and the paramaters:
'document_root' => $documentroot,
'system_user' =>$system_user,
'system_group' =>$system_group,
'php_open_basedir' => $php_open_basedir,
are obsolete as they are set by ispconfig now automatically. client_group_id is the sys_groupid of the website or in other words, the groupid of the client or reseller that owns the website.
A function to get the next webID is then not needed anymore I guess as all variables relating to the webID are now set by ispconfig.
|
|
The Following User Says Thank You to till For This Useful Post:
|
xaver (28th March 2011)
|

28th March 2011, 01:27
|
|
Member
|
|
Join Date: May 2009
Posts: 77
Thanks: 10
Thanked 23 Times in 14 Posts
|
|
cool thx, i will try it tomorrow
|

28th March 2011, 11:26
|
|
HowtoForge Supporter
|
|
Join Date: Feb 2011
Posts: 4
Thanks: 0
Thanked 2 Times in 1 Post
|
|
I get this problem without this params:
SOAP Error: documentroot_error_empty
sysuser_error_empty
sysgroup_error_empty
php_open_basedir_error_empty
Wont work without this params
Last edited by conceptnet; 28th March 2011 at 16:53.
|
| Thread Tools |
|
|
| Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT +2. The time now is 22:22.
|
Recent comments
19 hours 59 min ago
1 day 57 min ago
1 day 2 hours ago
1 day 3 hours ago
1 day 5 hours ago
1 day 9 hours ago
1 day 10 hours ago
1 day 12 hours ago
2 days 1 hour ago
2 days 3 hours ago