⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 make_archive.php

📁 vpn虚拟专用网络的一个开源搭建工具
💻 PHP
字号:
<?php
include('login.php');
require('lib/archive.php');
include('lib/conf.php');

$idcomm = $_GET["idcomm"];
$ext = $_GET["ext"];

$conn = mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($dbname);

$query = "SELECT * FROM MEMB WHERE id = '$uid' AND id1 = '$idcomm'";
$result = mysql_query($query)
or die("<br>Invalid query: $query\n<BR>\n" . mysql_error());
$fetch_em = mysql_fetch_array($result);
$numrows = mysql_num_rows($result);
if($numrows == "0") exit();

$query = "SELECT ip_num FROM MEMB WHERE id = '$uid' AND id1 = '$idcomm' AND confirmed = 1";
$result = mysql_query($query)
or die("<br>Invalid query: $query\n<BR>\n" . mysql_error());
$row = mysql_fetch_array($result);
$ip_host = $row['ip_num'];

$query = "SELECT * FROM `COMM` where id='$idcomm'";
$result = mysql_query($query)
or die("<br>Invalid query: $query\n<BR>\n" . mysql_error());
$row = mysql_fetch_array($result);
//mysql_close($conn);

$comm_name=$row['name'];
$subnet= $row['subnet'];
$netmask=$row['netmask'];
$key_file=$row['file_key'];
$remote_srv=$row['host_srv'];
$port=$row['port_srv'];
$type_vpn=$row['type_vpn'];
$key=$row['key'];
$uname_admin=$row['uname_admin'];

if ($uname_admin!=$user_name) $openvpn = "remote ".$remote_srv;
else $openvpn = "#remote ".$remote_srv;
$openvpn = $openvpn. "
port ".$port."
dev tap
ifconfig ".$ip_host." ".$netmask;
if ($type_vpn!="NOTCRYPT") $openvpn = $openvpn. "
secret ".$key_file;
$openvpn = $openvpn. "
persist-tun
ping 10
comp-lzo
verb 4
mute 10
";

@mkdir("/tmp/conf", 0766);
$d = opendir("/tmp/conf");
while ($file = readdir($d)) @unlink("conf/$file");
closedir($d);

$file=fopen("/tmp/conf/$comm_name.ovpn", "w+");
if (flock($file, LOCK_EX)) {
	fputs($file,$openvpn);
	flock($file, LOCK_UN);
} else echo "lock file !";
fclose($file);

if ($ext=="zip") {
	$test = new zip_file("/tmp/conf/$comm_name.zip");
	$test->set_options(array('inmemory' => 1, 'recurse' => 0, 'storepaths' => 0));
	$test->add_files("/tmp/conf/$comm_name.ovpn");
	if ($type_vpn=="CRYPT") {
		$file=fopen("/tmp/conf/$key_file", "w+");
		if (flock($file, LOCK_EX)) {
			fputs($file,$key);
			flock($file, LOCK_UN);
		} else echo "lock file !";
		fclose($file);
		$test->add_files("/tmp/conf/$key_file");
	}
	$test->create_archive();
}
if ($ext=="tgz") {
	$test = new gzip_file("/tmp/conf/$comm_name.tar.gz");
	$test->set_options(array('inmemory'=>1));
	$test->add_files("/tmp/conf/$comm_name.ovpn");
	if ($type_vpn=="CRYPT") {
		$file=fopen("/tmp/conf/$key_file", "w+");
		fputs($file,$key);
		fclose($file);
		$test->add_files("/tmp/conf/$key_file");
	}
	$test->create_archive();
}

@unlink("/tmp/conf/$comm_name.ovpn");
@unlink("/tmp/conf/$key_file");

$test->download_file();

exit();
echo "1 <A HREF=\"conf/".$comm_name.".zip\">".$comm_name.".zip</A><br>";
echo "2 <A HREF=\"http://openvpn.net/download.html\">Download OpenVPN 2.0</A><br>";
?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -