function updateMainConfFile() { global $gbl, $sgbl, $login, $ghtml; $init_file = "/home/apache/conf/defaults/init.conf"; $vdomlist = $this->main->__var_vdomain_list; $iplist = os_get_allips(); $fdata = null; foreach ($iplist as $key => $ip) { if ($ip) { $fdata .= "NameVirtualHost {$ip}:80\n"; $fdata .= "NameVirtualHost {$ip}:443\n\n"; } } lfile_put_contents($init_file, $fdata); $virtual_file = "/home/apache/conf/defaults/stats.conf"; $fdata = null; $fdata .= "Alias /awstatscss \"{$sgbl->__path_home_root}/httpd/awstats/wwwroot/css/\"\n"; $fdata .= "Alias /awstatsicons \"{$sgbl->__path_home_root}/httpd/awstats/wwwroot/icon/\"\n\n"; lfile_put_contents($virtual_file, $fdata); // MR -- override httpd.conf lxfile_cp("/usr/local/lxlabs/kloxo/file/centos-5/httpd.conf", "/etc/httpd/conf/httpd.conf"); if (file_exists("/etc/httpd/conf/kloxo")) { // MR -- delete old structure exec("rm -rf /etc/httpd/conf/kloxo"); exec("rm -rf /httpd/httpd/conf"); $vdomlist = merge_array_object_not_deleted($vdomlist, $this->main); foreach ((array) $vdomlist as $dom) { exec("rm -rf {$sgbl->__path_httpd_root}/{$dom['nname']}/conf"); } } }
function createMimeType() { $result = $this->main->__var_mime_list; $result = merge_array_object_not_deleted($result, $this->main); $string = null; foreach ($result as $r) { $string .= "Addtype {$r['type']} {$r['extension']}\n"; } lfile_put_contents("/etc/httpd/conf/kloxo/mimetype.conf", $string); }
function createDiruserfile() { global $gbl, $sgbl, $login, $ghtml; $result = $this->main->__var_davuser; $result = merge_array_object_not_deleted($result, $this->main); foreach ($result as $r) { $nr[$r['username']] = $r['realpass']; } createHtpasswordFile($this, "__webdav", $nr); }
function updateWht() { $res = $this->main->__var_whitelist; $res = merge_array_object_not_deleted($res, $this->main); $list = get_namelist_from_arraylist($res, 'ipaddress'); $rmt = new Remote(); $rmt->data = $list; lfile_put_serialize("__path_home_root/lxguard/whitelist.info", $rmt); lxshell_return("__path_php_path", "../bin/common/lxguard.php"); }
function createExtraVariables() { $path = $this->getParentO()->getFullDocRoot(); $this->__var_htp = "{$path}/.htaccess"; $sq = new Sqlite(null, $this->get__table()); $res = $sq->getRowsWhere("parent_clname = '{$this->parent_clname}'"); $result = merge_array_object_not_deleted($res, $this); foreach ($result as $r) { $out[$r['mimehandler']] = $r['extension']; } $this->__var_mimehandler = $out; }
function dbactionAdd() { global $gbl, $sgbl, $login; if (if_demo()) { return; } $_filepath = "__path_home_root/lxguard/hostdeny.info"; $result = $this->main->__var_hostlist; $result = merge_array_object_not_deleted($result, $this->main); $list = get_namelist_from_arraylist($result, 'hostname', 'hostname'); dprintr($list); lfile_put_serialize($_filepath, $list); lxshell_return("__path_php_path", "../bin/common/lxguard.php"); }
function doReverseDns() { addLineIfNotExistInside("__path_named_chroot/etc/named.conf", "include \"/etc/lxreverse.conf\";", "//added by hypervm"); list($base, $end) = reversedns::getBaseEnd($this->main->nname, $this->main->__var_rdnsrange); $ddate = date("Ymd"); $v = rand(0, 99); if ($v < 10) { $v = "0{$v}"; } $ddate = "{$ddate}{$v}"; $string = null; $string .= "\$TTL 86400\n"; $string .= "@ IN SOA {$this->main->__var_revdns1}. root.{$this->main->__var_revdns1}. (\n"; $string .= "{$ddate} ; serial\n"; $string .= "28800 ; refresh\n"; $string .= "14400 ; retry\n"; $string .= "1814400 ; expire\n"; $string .= "86400 ; default_tt\n"; $string .= ")\n"; $string .= " IN NS {$this->main->__var_revdns1}.\n"; if ($this->main->__var_revdns2) { $string .= " IN NS {$this->main->__var_revdns2}.\n"; } $result = $this->main->__var_reverse_list; $result = $result[$base]; $this->main->end = $end; $result = merge_array_object_not_deleted($result, $this->main); foreach ($result as $k => $v) { $v['reversename'] = trim($v['reversename']); if (!cse($v['reversename'], ".")) { $v['reversename'] .= "."; } $string .= "{$v['end']}\tIN PTR {$v['reversename']}\n"; } lfile_put_contents("__path_named_realpath/{$base}.in-addr.arpa", $string); $this->createMainFile(); }
public function setDhCP() { if (!$this->main->isWindows()) { return; } $this->main->iplist = get_namelist_from_objectlist($this->main->vmipaddress_a); $res = merge_array_object_not_deleted($this->main->__var_win_iplist, $this->main); dhcp__dhcpd::createDhcpConfFile($res); }
function syncCreateConf() { global $gbl, $sgbl, $login, $ghtml; global $global_shell_error; if_demo_throw_exception('cron'); $conf_file = "__path_cron_root/{$this->main->username}"; $list = array('minute', 'hour', 'weekday', 'ddate', 'month'); $tfile = lx_tmp_file($conf_file); $cmd = null; if ($this->main->__var_mailto) { $cmd .= "MAILTO={$this->main->__var_mailto}\n"; } $result = $this->main->__var_cron_list; foreach ($result as &$__r) { foreach ($list as $l) { $__r[$l] = unserialize(base64_decode($__r["ser_{$l}"])); } } $result = merge_array_object_not_deleted($result, $this->main); //dprintr($result); foreach ((array) $result as $v) { if ($v['ttype'] === 'simple') { $v['weekday'] = array('--all--'); $v['month'] = array('--all--'); $v['ddate'] = array('--all--'); if ($v['simple_cron'] === 'every-day') { $v['hour'] = $v['cron_day_hour']; $v['minute'] = 0; } if ($v['simple_cron'] === 'every-hour') { $v['hour'] = array('--all--'); $v['minute'] = 0; } if ($v['simple_cron'] === 'every-minute') { $v['hour'] = array('--all--'); $v['minute'] = array('--all--'); } } else { foreach ($v["weekday"] as &$___tq) { if (is_numeric($___tq)) { $___tq -= 1; } } } foreach ($list as $l) { $v[$l] = $this->getCronString($v[$l]); } if (!$v['minute']) { $v['minute'] = 0; } $cmd .= implode("\t", array($v['minute'], $v['hour'], $v['ddate'], $v['month'], $v['weekday'], $v['command'])); $cmd .= "\n"; } lfile_put_contents($tfile, $cmd); if (!posix_getpwnam($this->main->username)) { lxfile_rm("/var/spool/cron/{$this->main->username}"); return; } $ret = lxshell_return("crontab", "-u", $this->main->username, $tfile); if ($ret) { // Why exactly was a throw removed? backup/restore? //throw new lxException("adding_cron_failed", "", $global_shell_error); $gbl->setWarning('adding_cron_failed', '', $global_shell_error); $data = lfile_get_contents($tfile); log_log("cron_error", $data); } lunlink($tfile); }
function doReverseDns() { global $sgbl; $this->main->nname = strtoupper($this->main->nname); addLineIfNotExistInside("__path_named_chroot/etc/named.conf", "include \"/etc/lxreverse.conf\";", "//added by hypervm"); list($base, $end) = reversedns::getBaseEnd($this->main->nname, $this->main->__var_rdnsrange); if (reversedns::isIPV6($this->main->nname)) { $isv6 = true; } else { $isv6 = false; } $ddate = date("Ymd"); // We read the last serial from the zone file // default to 0 on error if ($isv6) { $version = $this->getNewSerial("{$sgbl->__path_named_realpath}/" . $base . "ip6.arpa", $ddate); } else { $version = $this->getNewSerial("{$sgbl->__path_named_realpath}/" . $base . "in-addr.arpa", $ddate); } if ($version < 10) { $version = "0" . $version; } $ddate = "{$ddate}{$version}"; $string = null; $string .= "\$TTL 3600\n"; if ($isv6) { $string .= "\$ORIGIN " . $base . "IP6.ARPA.\n"; } else { $string .= "\$ORIGIN {$base}.IN-ADDR.ARPA.\n"; } $string .= "@ IN SOA {$this->main->__var_revdns1}. root.{$this->main->__var_revdns1}. (\n"; $string .= "{$ddate} ; serial\n"; $string .= "18800 ; refresh\n"; $string .= "14400 ; retry\n"; $string .= "1814400 ; expire\n"; $string .= "3600 ; default_tt\n"; $string .= ")\n"; $string .= " IN NS {$this->main->__var_revdns1}.\n"; if ($this->main->__var_revdns2) { $string .= " IN NS {$this->main->__var_revdns2}.\n"; } $result = $this->main->__var_reverse_list; $result = $result[$base]; $this->main->end = $end; $result = merge_array_object_not_deleted($result, $this->main); foreach ($result as $key => $val) { $val['reversename'] = trim($val['reversename']); if (!cse($val['reversename'], ".")) { $val['reversename'] .= "."; } if ($isv6) { $string .= reversedns::createDottedRevedIPV6($val['end']) . "\t IN PTR {$val['reversename']}\n"; } else { $string .= "{$val['end']}\tIN PTR {$val['reversename']}\n"; } } if ($isv6) { lfile_put_contents("__path_named_realpath/" . $base . "ip6.arpa", $string); } else { lfile_put_contents("__path_named_realpath/{$base}.in-addr.arpa", $string); } $this->createMainFile(); }
function syncCreateConf() { global $gbl, $sgbl, $login, $ghtml; // $host = `hostname`; $dlistv = "__var_domainlist_{$this->main->__var_syncserver}"; $result = $this->main->{$dlistv}; $nameduser = "******"; $dnsfile = "/var/tinydns/root/data"; //dprintr($result); $result = merge_array_object_not_deleted($result, $this->main); if (!$this->main->isDeleted()) { foreach ((array) $this->main->__var_addonlist as $d) { $result = merge_array_object_not_deleted($result, $d); } } $cdata = null; foreach ((array) $result as $value) { $cdata .= " {$value['nname']}.data "; } $cdata = trim($cdata); if ($cdata) { $cmd = "cd /var/tinydns/root/kloxo/ ; cat {$cdata} > ../data"; log_log("dns_log", $cmd); system($cmd); } else { system("rm /var/tinydns/root/data"); } lxfile_unix_chown($dnsfile, $nameduser); lxshell_directory("/var/tinydns/root/", "make"); lxshell_directory("/var/tinydns/root/", "tinydns-data"); }
function syncCreateConf() { global $gbl, $sgbl, $login, $ghtml; // $host = `hostname`; $result = $this->main->__var_domainlist; $fdata = null; $dnsfile = "{$sgbl->__path_mara_conf}"; $nameduser = $sgbl->__var_programuser_dns; $iplist = os_get_allips(); $iplist[] = "127.0.0.1"; $iplist = implode(",", $iplist); $fdata = "csv2 = {}\n"; $fdata .= "chroot_dir = \"/etc/maradns\"\n"; $fdata .= "ipv4_bind_addresses=\"{$iplist}\"\n"; $fdata .= "recursive_acl=\"0.0.0.0/0\"\n"; $result = merge_array_object_not_deleted($result, $this->main); if (!$this->main->isDeleted()) { foreach ((array) $this->main->__var_addonlist as $d) { $result = merge_array_object_not_deleted($result, $d); } } foreach ((array) $result as $value) { $tmp = "csv2[\"{$value['nname']}.\"] = \"{$value['nname']}\"\n"; $fdata .= $tmp; } lfile_put_contents($dnsfile, $fdata); lxfile_unix_chown($dnsfile, $nameduser); }