kloxo-mr安装脚本

cd /tmp
yum update -y
yum install yum-utils yum-priorities vim-minimal subversion curl zip unzip telnet wget -y
setenforce 0 >> /dev/null 2>&1
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
wget https://github.com/mustafaramadhan/kloxo/raw/release/kloxo-mr.repo --no-check-certificate  -O /etc/yum.repos.d/kloxo-mr.repo
yum clean all
yum install kloxomr7 -y
sh /usr/local/lxlabs/kloxo/install/setup.sh
sh /script/upcp
wget -c http://down.kvm.la/kloxo/kloxo_cn.tar.gz
tar zxf kloxo_cn.tar.gz -C /usr/local/lxlabs/kloxo/httpdocs/lang
sh /script/update --class=sp_specialplay --name=client-admin --subaction=skin --v-specialplay_b_s_language=cn

Kloxo dns UDP发包攻击解决办法

最近发现DNS的53端口UDP攻击投诉特别多共同特点都是kloxo系统,

逐在google上搜索上发现了如下解决办法

rm -f /home/kloxo/httpd/default/*.php
sed -i 's/recursion yes/recursion no/g' /etc/named.conf
cat>> /var/named/chroot/etc/named.conf<<EOF
options {          
      recursion no;
};
EOF
/etc/init.d/named restart
/script/upcp

网上贴的解决办法需要动手几步,为了更懒更快解决就完善写成一次性复制粘贴搞定。

新安装Kloxo面板pureftp不启动解决办法

安装完Kloxo后有时候会发现ftp无法连接,检查安装包是安装上了的。

# rpm -qa|grep ftp
pure-ftpd-1.0.36-1.lxcenter

运行命令ps aux|grep ftp看不到ftp进程,如果FTP正常运行会看到如下类似的返回

阅读剩余部分...

hostbill下kloxo接口模块源码

<?php

class Kloxo extends HostingModule {

   //Version

   protected $version ='1.00';

   //Description

   protected $description='Kloxo provisioning module';

   //Enable AJAX

   protected $ajaxLoadValues=true;

   //End INIT

                                                       

   //Translations

   protected $lang=array(

       'english'=>array(

           'acc-type'=>'Account Type',

           'resource-plan'=>'Plan Name',

           'dns-template'=>'DNS Template',

       ),

       'german'=>array(

           'acc-type'=>'Account-Typ',

           'resource-plan'=>'Plannamen',

           'dns-template'=>'DNS Schablone',

       )

   );

   //End Translations

//Server Settings APPprotected $options = array(

               'option1' =>array (

                       'name'=> 'acc-type',

                       'value' =>false,

                       'type'=> 'select',

                       'default'=> array("customer","reseller"),

               ),

               'option2' =>array (

                       'name'=> 'resource-plan',

                       'value' => false,

                       'type'=> 'input',

                       'default'=>false,

               ),

               'option3' =>array (

                       'name'=> 'dns-template',

                       'value' => false,

                       'type'=> 'input',

                       'default'=>false,

               ),

       );

       //account specific stuff below

       protected $details = array(

                                                       

                                                       

               'option6' =>array (

                       'name'=> 'domain',

                       'value' => false,

                       'type'=> 'input',

                       'default'=>false

               ),

               'option1' =>array (

                       'name'=> 'username',

                       'value' => false,

                       'type'=> 'input',

                       'default'=>false

               ),

               'option2' =>array (

                       'name'=> 'password',

                       'value' => false,

                       'type'=> 'input',

                       'default'=>false

               ),

       );

       //End User Specifics

       //Start Action Handler

    protected $commands = array(

               'Suspend','Terminate','ChangePackage','ChangePassword','Create','Unsuspend'//,'getResourcePlansInfo'

       );

                                                       

                                                       

                                                       

                                                       

   //connection

   private $server_username;

   private $server_password;

   private $server_hostname;

   private $server_ip;

   public function connect($connect) {

       $this->server_username = $connect['username'];

       $this->server_password = $connect['password'];

       $this->server_hostname = $connect['hostname'];

       $this->server_ip = $connect['ip'];

        if($connect['secure']) {

               $this->port = 7777;              

               $this->http = "https";

               }

           else {

               $this->port = 7778;

               $this->http = "http";

   }

   }//endconnection

                                                       

                                                       

                                                       

   //Default Kloxo JSON Processing

   public function lxlabs_get_via_json($protocol, $server, $port, $param) {

       $param = "login-class=client&login-name=admin&login-password=pass&output-type=json&$param";

       $url = "$protocol://$server:$port/webcommand.php";

       $ch = curl_init($url);

       curl_setopt($ch, CURLOPT_POST, true);

       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

       curl_setopt($ch, CURLOPT_POSTFIELDS, $param);

       $totalout = curl_exec($ch);

       $totalout = trim($totalout);

       //Replace require JSON.php START X0001

       require_once('JSON.php');

       //end Replace X0001

       $json = new Services_JSON();

       $object = $json->decode($totalout);

                                                       

if (!is_object($object)) {

print("Fatal Error. Got a non-object from the server: $totalout\n");

exit;

}

                                                       

return $object;

}//end Kloxo's JSON

private function Send($type, $param) {

                                                       

                                                       

$http = "http";

if ( $http == "http" ) {

$port  = '7778';

}

else {

$port = '7777';

}//end SetDefaultPort

$adminpassword = $this->server_password;

$adminuser = $this->server_username;

$serverloc = $this->server_ip;

$builtparameter = "login-class=client&login-name=$adminuser&login-password=$adminpassword&output-type=json&". $param;

$get = $this->lxlabs_get_via_json($this->http, $serverloc, $this->port, $builtparameter);

return array(

   'success'=>true,

);

}//End Send

                                                       

                                                       

//CreateServer

public function Create() {

//Build the string

$string = "action=add";

$string .= "&class=client";

$string .= "&v-plan_name=". $this->options['option2']['value'] ."";

$string .= "&v-type=". $this->options['option1']['value'];

$string .= "&v-contactemail=". $this->client_data['email'];

$string .= "&send_welcome_f=off";

$string .= "&v-domain_name=". $this->details['option6']['value'];

$string .= "&v-dnstemplate_name=". $this->options['option3']['value'];

$string .= "&v-password=". $this->details['option2']['value'];

$string .= "&name=". $this->details['option1']['value'];

//Finish building string $string          

//send data

$type = null;

$senddata = $this->Send($type, $string);

if ($senddata['success']) {

$this->addInfo('Account has been created');

return true;

}

else {

return false;

}

}//End Create Server

                                                                                   

//Suspend

public function Suspend() {

//Prepare string

$string = "class=client";

$string .= "&name=". $this->details['option1'];

$string .= "&action=update";

$string .= "&subaction=disable";

//End Prepare String

$type = null;

//Send Data

$senddata = $this->Send($type, $string);

if ($senddata['success']) {

$this->addinfo('Account Suspended');

return true;

}

else {

return false;

}

                                                       

}

//End Suspend

//Unsuspend

public function Unsuspend() {

//Prepare string

$string = "class=client";

$string .= "&name=". $this->details['option1'];

$string .= "&action=update";

$string .= "&subaction=enable";

//End Prepare String

$type = null;

//Send Data

$senddata = $this->Send($type, $string);

if ($senddata['success']) {

$this->addInfo('Account has been unSuspended.');

return true;

}

else {

return false;

                                                       

}

                                                       

}

//End Suspend

//Kill Account

public function Terminate() {

$string = "action=delete";

$string .= "class=client";

$string .= "name=". $this->details['option1']['value'];

$type = null;

//Send Data

$senddata = $this->Send($type, $string);

if ($senddata['success']) {

return true;

}

else {

return false;

}

}

//Finish the murder

}//End Extension

?>



Kloxo快速安装中文语言包

wget -c http://down.kvm.la/kloxo/kloxo_cn.tar.gz
tar zxf kloxo_cn.tar.gz -C /usr/local/lxlabs/kloxo/httpdocs/lang
/script/update --class=sp_specialplay --name=client-admin --subaction=skin --v-specialplay_b_s_language=cn

快速简洁,干净利落。

kloxo安装中文包教程

登录系统ssh执行下面的命令
wget -c http://down.kvm.la/kloxo/kloxo_cn.tar.gz
tar zxf kloxo_cn.tar.gz -C /usr/local/lxlabs/kloxo/httpdocs/lang
最后在Appearance->Language里选择Chinese,然后点击update完成切换中文.

Centos5安装设置Kloxo教程

yum remove httpd -y
wget http://download.lxcenter.org/download/kloxo/production/kloxo-installer.sh
sh ./kloxo-installer.sh --type=master
首先猥琐的复制粘贴命令脚本,
kloxo1.gif

脚本运行后出现4个【OK】第一个为检查是否为root,第二个为检查是否系统支持(用debian/ubuntu类的同学请自重绕道),第三个为

阅读剩余部分...