From: <abe...@us...> - 2013-02-18 21:58:47
|
Revision: 5961 http://astlinux.svn.sourceforge.net/astlinux/?rev=5961&view=rev Author: abelbeck Date: 2013-02-18 21:58:39 +0000 (Mon, 18 Feb 2013) Log Message: ----------- web interface, add OpenVPN Server and Client sub-tab support for Auth HMAC, and Edit tab support for '/mnt/kd/openvpn/ccd/' files Modified Paths: -------------- branches/1.0/package/webinterface/altweb/admin/edit.php branches/1.0/package/webinterface/altweb/admin/openvpn.php branches/1.0/package/webinterface/altweb/admin/openvpnclient.php Modified: branches/1.0/package/webinterface/altweb/admin/edit.php =================================================================== --- branches/1.0/package/webinterface/altweb/admin/edit.php 2013-02-18 19:57:20 UTC (rev 5960) +++ branches/1.0/package/webinterface/altweb/admin/edit.php 2013-02-18 21:58:39 UTC (rev 5961) @@ -9,6 +9,7 @@ // edit.php for AstLinux // 04-28-2008 // 12-04-2008, Added Reload/Restart Menu +// 02-18-2013, Added OpenVPN Client Config editing // $myself = $_SERVER['PHP_SELF']; @@ -248,6 +249,7 @@ if ($dir === '/mnt/kd' || $dir === '/mnt/kd/dahdi' || $dir === '/mnt/kd/openvpn' || + $dir === '/mnt/kd/openvpn/ccd' || $dir === '/mnt/kd/rc.conf.d' || $dir === '/mnt/kd/crontabs' || $dir === '/mnt/kd/apcupsd' || @@ -470,10 +472,20 @@ putHtml('<option value="'.$file.'"'.$sel.'>prosody/'.basename($file).' - XMPP Shared Groups</option>'); } putHtml('</optgroup>'); - if (is_dir('/mnt/kd/docs')) { + if (is_dir('/mnt/kd/openvpn/ccd') && count($globfiles = glob('/mnt/kd/openvpn/ccd/*')) > 0) { + putHtml('<optgroup label="———— OpenVPN Client Configs ————">'); + foreach ($globfiles as $globfile) { + if (is_file($globfile) && is_writable($globfile)) { + $sel = ($globfile === $openfile) ? ' selected="selected"' : ''; + putHtml('<option value="'.$globfile.'"'.$sel.'>'.basename($globfile).' - X509 CN of OpenVPN Client</option>'); + } + } + putHtml('</optgroup>'); + } + if (is_dir('/mnt/kd/docs') && count($globfiles = glob('/mnt/kd/docs/*')) > 0) { putHtml('<optgroup label="———— Documentation ————">'); - foreach (glob('/mnt/kd/docs/*') as $globfile) { - if (is_writable($globfile)) { + foreach ($globfiles as $globfile) { + if (is_file($globfile) && is_writable($globfile)) { $sel = ($globfile === $openfile) ? ' selected="selected"' : ''; putHtml('<option value="'.$globfile.'"'.$sel.'>'.basename($globfile).' - /mnt/kd/docs/ File</option>'); } Modified: branches/1.0/package/webinterface/altweb/admin/openvpn.php =================================================================== --- branches/1.0/package/webinterface/altweb/admin/openvpn.php 2013-02-18 19:57:20 UTC (rev 5960) +++ branches/1.0/package/webinterface/altweb/admin/openvpn.php 2013-02-18 21:58:39 UTC (rev 5961) @@ -82,13 +82,19 @@ $openssl = openvpn_openssl($key_size); $cipher_menu = array ( - '' => 'Default Cipher', + '' => 'Use Default', 'BF-CBC' => 'BF-CBC', 'AES-128-CBC' => 'AES-128-CBC', 'AES-192-CBC' => 'AES-192-CBC', 'AES-256-CBC' => 'AES-256-CBC' ); +$auth_hmac_menu = array ( + '' => 'Use Default', + 'SHA1' => 'SHA1', + 'SHA256' => 'SHA256' +); + $verbosity_menu = array ( '1' => 'Low', '3' => 'Medium', @@ -114,7 +120,7 @@ ); $topology_menu = array ( - '' => 'Default Topology', + '' => 'Use Default', 'net30' => '[net30] older, OpenVPN 2.0 default', 'p2p' => '[p2p] point-to-point, no Windows clients', 'subnet' => '[subnet] latest, requires OpenVPN 2.1+ clients' @@ -178,6 +184,9 @@ $value = 'OVPN_CIPHER="'.$_POST['cipher_menu'].'"'; fwrite($fp, "### Cipher\n".$value."\n"); + $value = 'OVPN_AUTH="'.$_POST['auth_hmac'].'"'; + fwrite($fp, "### Auth HMAC\n".$value."\n"); + $value = 'OVPN_TUNNEL_HOSTS="'.trim($_POST['tunnel_external_hosts']).'"'; fwrite($fp, "### Allowed External Hosts\n".$value."\n"); @@ -339,6 +348,9 @@ if (($cipher = getVARdef($db, 'OVPN_CIPHER')) !== '') { $str .= "cipher $cipher\n"; } + if (($auth_hmac = getVARdef($db, 'OVPN_AUTH')) !== '') { + $str .= "auth $auth_hmac\n"; + } if ($ta_file !== '') { $str .= "key-direction 1\n"; } @@ -622,13 +634,23 @@ putHtml('<tr class="dtrow1"><td style="text-align: right;" colspan="2">'); putHtml('Device:'); - putHtml('</td><td style="text-align: left;" colspan="4">'); + putHtml('</td><td style="text-align: left;" colspan="1">'); putHtml('<select name="device">'); $sel = (getVARdef($db, 'OVPN_DEV') === 'tun0') ? ' selected="selected"' : ''; putHtml('<option value="tun0"'.$sel.'>tun0</option>'); $sel = (getVARdef($db, 'OVPN_DEV') === 'tun1') ? ' selected="selected"' : ''; putHtml('<option value="tun1"'.$sel.'>tun1</option>'); putHtml('</select>'); + putHtml('</td><td style="text-align: right;" colspan="1">'); + putHtml('Auth HMAC:'); + putHtml('</td><td style="text-align: left;" colspan="2">'); + $auth_hmac = getVARdef($db, 'OVPN_AUTH'); + putHtml('<select name="auth_hmac">'); + foreach ($auth_hmac_menu as $key => $value) { + $sel = ($auth_hmac === $key) ? ' selected="selected"' : ''; + putHtml('<option value="'.$key.'"'.$sel.'>'.$value.'</option>'); + } + putHtml('</select>'); putHtml('</td></tr>'); putHtml('<tr class="dtrow1"><td style="text-align: right;" colspan="2">'); Modified: branches/1.0/package/webinterface/altweb/admin/openvpnclient.php =================================================================== --- branches/1.0/package/webinterface/altweb/admin/openvpnclient.php 2013-02-18 19:57:20 UTC (rev 5960) +++ branches/1.0/package/webinterface/altweb/admin/openvpnclient.php 2013-02-18 21:58:39 UTC (rev 5961) @@ -32,13 +32,19 @@ ); $cipher_menu = array ( - '' => 'Default Cipher', + '' => 'Use Default', 'BF-CBC' => 'BF-CBC', 'AES-128-CBC' => 'AES-128-CBC', 'AES-192-CBC' => 'AES-192-CBC', 'AES-256-CBC' => 'AES-256-CBC' ); +$auth_hmac_menu = array ( + '' => 'Use Default', + 'SHA1' => 'SHA1', + 'SHA256' => 'SHA256' +); + $nscerttype_menu = array ( '' => 'No', 'server' => 'Server' @@ -86,6 +92,9 @@ $value = 'OVPNC_CIPHER="'.$_POST['cipher_menu'].'"'; fwrite($fp, "### Cipher\n".$value."\n"); + + $value = 'OVPNC_AUTH="'.$_POST['auth_hmac'].'"'; + fwrite($fp, "### Auth HMAC\n".$value."\n"); $value = 'OVPNC_NSCERTTYPE="'.$_POST['nscerttype'].'"'; fwrite($fp, "### nsCertType\n".$value."\n"); @@ -333,13 +342,23 @@ putHtml('<tr class="dtrow1"><td style="text-align: right;" colspan="2">'); putHtml('Device:'); - putHtml('</td><td style="text-align: left;" colspan="4">'); + putHtml('</td><td style="text-align: left;" colspan="1">'); putHtml('<select name="device">'); $sel = (getVARdef($db, 'OVPNC_DEV') === 'tun2') ? ' selected="selected"' : ''; putHtml('<option value="tun2"'.$sel.'>tun2</option>'); $sel = (getVARdef($db, 'OVPNC_DEV') === 'tun3') ? ' selected="selected"' : ''; putHtml('<option value="tun3"'.$sel.'>tun3</option>'); putHtml('</select>'); + putHtml('</td><td style="text-align: right;" colspan="1">'); + putHtml('Auth HMAC:'); + putHtml('</td><td style="text-align: left;" colspan="2">'); + $auth_hmac = getVARdef($db, 'OVPNC_AUTH'); + putHtml('<select name="auth_hmac">'); + foreach ($auth_hmac_menu as $key => $value) { + $sel = ($auth_hmac === $key) ? ' selected="selected"' : ''; + putHtml('<option value="'.$key.'"'.$sel.'>'.$value.'</option>'); + } + putHtml('</select>'); putHtml('</td></tr>'); putHtml('<tr class="dtrow1"><td style="text-align: right;" colspan="2">'); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |