$server) { if (isset($server['disable'])) continue; $ras_user = array(); if ($server['mode'] != "p2p_shared_key") continue; $ras_serverent = array(); $prot = $server['protocol']; $port = $server['local_port']; if ($server['description']) $name = "{$server['description']} {$prot}:{$port}"; else $name = "Shared Key Server {$prot}:{$port}"; $ras_serverent['index'] = $sindex; $ras_serverent['name'] = $name; $ras_server[] = $ras_serverent; } $id = $_GET['id']; if (isset($_POST['id'])) $id = $_POST['id']; $act = $_GET['act']; if (isset($_POST['act'])) $act = $_POST['act']; $error = false; if(($act == "skconf") || ($act == "skzipconf")) { $srvid = $_GET['srvid']; if (($srvid === false) || ($config['openvpn']['openvpn-server'][$srvid]['mode'] != "p2p_shared_key")) { pfSenseHeader("vpn_openvpn_export.php"); exit; } if (empty($_GET['useaddr'])) { $error = true; $input_errors[] = "You need to specify an IP or hostname."; } else $useaddr = $_GET['useaddr']; $proxy = ""; if (!empty($_GET['proxy_addr']) || !empty($_GET['proxy_port'])) { $proxy = array(); if (empty($_GET['proxy_addr'])) { $error = true; $input_errors[] = "You need to specify an address for the proxy port."; } else $proxy['ip'] = $_GET['proxy_addr']; if (empty($_GET['proxy_port'])) { $error = true; $input_errors[] = "You need to specify a port for the proxy ip."; } else $proxy['port'] = $_GET['proxy_port']; $proxy['proxy_authtype'] = $_GET['proxy_authtype']; if ($_GET['proxy_authtype'] != "none") { if (empty($_GET['proxy_user'])) { $error = true; $input_errors[] = "You need to specify a username with the proxy config."; } else $proxy['user'] = $_GET['proxy_user']; if (!empty($_GET['proxy_user']) && empty($_GET['proxy_password'])) { $error = true; $input_errors[] = "You need to specify a password with the proxy user."; } else $proxy['password'] = $_GET['proxy_password']; } } $exp_name = openvpn_client_export_prefix($srvid); if ($act == "skzipconf") $zipconf = true; $exp_data = openvpn_client_export_sharedkey_config($srvid, $useaddr, $proxy, $zipconf); if (!$exp_data) { $input_errors[] = "Failed to export config files!"; $error = true; } if (!$error) { if ($zipconf) { $exp_name = urlencode($exp_data); $exp_size = filesize("{$g['tmp_path']}/{$exp_data}"); } else { $exp_name = urlencode($exp_name."-config.ovpn"); $exp_size = strlen($exp_data); } header('Pragma: '); header('Cache-Control: '); header("Content-Type: application/octet-stream"); header("Content-Disposition: attachment; filename={$exp_name}"); header("Content-Length: $exp_size"); if ($zipconf) readfile("{$g['tmp_path']}/{$exp_data}"); else echo $exp_data; @unlink("{$g['tmp_path']}/{$exp_data}"); exit; } } include("head.inc"); ?>
Shared Key Server
Host Name Resolution

Use HTTP Proxy
Use HTTP proxy to communicate with the server.

 
Client Configuration Packages