From 2700f0c13e7d768cb1cc2cdfde2b6daebf163b4a Mon Sep 17 00:00:00 2001 From: Scott Ullrich Date: Tue, 30 Jun 2009 14:23:03 -0400 Subject: Moving file from .tgz to normal directory for easier modification --- .../openvpn-client-export.xml | 7 +- .../openvpn-client-export/vpn_openvpn_export.php | 362 +++++++++++++++++++++ 2 files changed, 368 insertions(+), 1 deletion(-) create mode 100755 config/openvpn-client-export/vpn_openvpn_export.php (limited to 'config') diff --git a/config/openvpn-client-export/openvpn-client-export.xml b/config/openvpn-client-export/openvpn-client-export.xml index 611d6a83..f0975ced 100755 --- a/config/openvpn-client-export/openvpn-client-export.xml +++ b/config/openvpn-client-export/openvpn-client-export.xml @@ -18,12 +18,17 @@ /usr/local/pkg/ 077 http://www.pfsense.com/packages/config/openvpn-client-export/openvpn-client-export.inc - + /tmp/ 077 http://www.pfsense.com/packages/config/openvpn-client-export/openvpn-client-export.tgz + + /usr/local/www/ + 077 + http://www.pfsense.com/packages/config/openvpn-client-export/vpn_openvpn_export.php + diff --git a/config/openvpn-client-export/vpn_openvpn_export.php b/config/openvpn-client-export/vpn_openvpn_export.php new file mode 100755 index 00000000..e5d474cb --- /dev/null +++ b/config/openvpn-client-export/vpn_openvpn_export.php @@ -0,0 +1,362 @@ + & $server) { + $ras_user = array(); + if (stripos($server['mode'], "server") === false) + continue; + foreach($a_user as $uindex => & $user) { + if (!is_array($user['cert'])) + continue; + foreach($user['cert'] as $cindex => & $cert) { + if ($cert['caref'] != $server['caref']) + continue; + $ras_userent = array(); + $ras_userent['uindex'] = $uindex; + $ras_userent['cindex'] = $cindex; + $ras_userent['name'] = $user['name']; + $ras_userent['certname'] = $cert['name']; + $ras_user[] = $ras_userent; + } + } + if (!count($ras_user)) + continue; + $ras_serverent = array(); + $prot = $server['protocol']; + $port = $server['local_port']; + if ($server['description']) + $name = "{$server['description']} {$prot}:{$port}"; + else + $name = "Server {$prot}:{$port}"; + $ras_serverent['index'] = $sindex; + $ras_serverent['name'] = $name; + $ras_serverent['users'] = $ras_user; + $ras_server[] = $ras_serverent; +} + +$id = $_GET['id']; +if (isset($_POST['id'])) + $id = $_POST['id']; + +$act = $_GET['act']; +if (isset($_POST['act'])) + $act = $_POST['act']; + +if($act == "conf") { + $srvid = $_GET['srvid']; + $usrid = $_GET['usrid']; + $crtid = $_GET['crtid']; + if (($srvid === false) || ($usrid === false) || ($crtid === false)) { + pfSenseHeader("vpn_openvpn_export.php"); + exit; + } + $useaddr = $_GET['useaddr']; + $usetoken = $_GET['usetoken']; + + $exp_name = openvpn_client_export_prefix($srvid); + $exp_name = urlencode($exp_name."-config.ovpn"); + $exp_data = openvpn_client_export_config($srvid, $usrid, $crtid, $useaddr, $usetoken); + $exp_size = strlen($exp_data); + + header("Content-Type: application/octet-stream"); + header("Content-Disposition: attachment; filename={$exp_name}"); + header("Content-Length: $exp_size"); + echo $exp_data; + exit; +} + +if($act == "inst") { + $srvid = $_GET['srvid']; + $usrid = $_GET['usrid']; + $crtid = $_GET['crtid']; + if (($srvid === false) || ($usrid === false) || ($crtid === false)) { + pfSenseHeader("vpn_openvpn_export.php"); + exit; + } + $useaddr = $_GET['useaddr']; + $usetoken = $_GET['usetoken']; + $password = ""; + if ($_GET['password']) + $password = $_GET['password']; ; + + $exp_name = openvpn_client_export_prefix($srvid); + $exp_name = urlencode($exp_name."-install.exe"); + $exp_path = openvpn_client_export_installer($srvid, $usrid, $crtid, $useaddr, $usetoken, $password); + $exp_size = filesize($exp_path); + + header("Content-Type: application/octet-stream"); + header("Content-Disposition: attachment; filename={$exp_name}"); + header("Content-Length: $exp_size"); + readfile($exp_path); + unlink($exp_path); + exit; +} + +include("head.inc"); + +?> + + + + + + + + + + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + +
Remote Access Server + +
Host Name Resolution + + + + + +
+ + + + Use the server IP address instead of the hostname. + +
+
Certificate Export Options + + + + + +
+ + + + Use Microsoft Certificate Storage instead of local files. + +
+ + + + + +
+ + + + Use a password to protect the pkcs12 file contents. + +
+ + + + + + + + + +
+ +  Password :  + + + +
+ +  Confirm :  + + + +
+
 
Client Install Packages
+ + + + + + +
+
+
+ + + -- cgit v1.2.3