diff options
author | Mika Havela <mika.havela@gmail.com> | 2007-11-19 14:43:46 +0000 |
---|---|---|
committer | Mika Havela <mika.havela@gmail.com> | 2007-11-19 14:43:46 +0000 |
commit | 723453ae5dced317e70f6597efe17b4872ea35a2 (patch) | |
tree | 91863556987ac06972503c6d115621ef3043e060 | |
parent | 31ff3ba51554722d2afbdc8153801c5496ff02b8 (diff) | |
download | acf-openvpn-723453ae5dced317e70f6597efe17b4872ea35a2.tar.bz2 acf-openvpn-723453ae5dced317e70f6597efe17b4872ea35a2.tar.xz |
Building up ideas on different functions
git-svn-id: svn://svn.alpinelinux.org/acf/openvpn/trunk@335 ab2d0c66-481e-0410-8bed-d214d4d58bed
-rw-r--r-- | openvpn-client_config-html.lsp | 66 | ||||
-rw-r--r-- | openvpn-controller.lua | 19 | ||||
-rw-r--r-- | openvpn-logfile-html.lsp | 12 | ||||
-rw-r--r-- | openvpn-model.lua | 15 | ||||
-rw-r--r-- | openvpn-pem_info-html.lsp | 40 | ||||
-rw-r--r-- | openvpn-read-html.lsp | 4 | ||||
-rw-r--r-- | openvpn-server_config-html.lsp | 34 | ||||
-rw-r--r-- | openvpn-status_info-html.lsp | 40 | ||||
-rw-r--r-- | openvpn-unknown_config-html.lsp | 12 |
9 files changed, 226 insertions, 16 deletions
diff --git a/openvpn-client_config-html.lsp b/openvpn-client_config-html.lsp new file mode 100644 index 0000000..cd0c754 --- /dev/null +++ b/openvpn-client_config-html.lsp @@ -0,0 +1,66 @@ +<? local view = ... ?> +<html> +<body> +<h1>Client config 'xxx.conf'</h1> +<h2>Client settings</h2> + +<dt>Mode</dt> +<dd>client</dd> + +<dt>User device</dt> +<dd>xxx</dd> + +<dt>Remote server</dt> +<dd>xxx.xxx.xxx.xxx:xxxx (xxx)</dd> + +<dt>Logfile</dt> +<dd><?= html.link{value = view.url .. "/logfile?name=xxx" , label="xxx.log" } ?> (Verbosity level: x)</dd> + +<dt>Configfile</dt> +<dd><?= html.link{value = view.url .. "/unknown_config?name=xxx" , label="xxx.conf" } ?></dd> + +<h3>Client properties</h3> + +<dt>Common name</dt> +<dd>xxx</dd> + +<dt>Virtual address</dt> +<dd>xxx.xxx.xxx.xxx</dd> + +<dt>Real address</dt> +<dd>xxx.xxx.xxx.xxx:xxxx</dd> + +<h2>Startup options</h2> + +<dt>Process running</dt> +<dd><input type="checkbox">xxx</input></dd> + +<dt>Init.d script exists</dt> +<dd><input type="checkbox">xxx</input></dd> + +<dt>Autostarts at boot</dt> +<dd><input type="checkbox">xxx</input></dd> + +<h2>Certificate files</h2> + +<dt>DH</dt> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?></dd> + +<dt>CA Certificate</dt> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?></dd> + +<dt>Client Certificate</dt> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?></dd> + +<dt>Client Private Key</dt> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?></dd> + +<dt>TLS Authentication</dt> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?></dd> + +<dt>CRL Verify File</dt> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?> (client side)</dd> + + +</body> +</html> diff --git a/openvpn-controller.lua b/openvpn-controller.lua index b088758..a0c973b 100644 --- a/openvpn-controller.lua +++ b/openvpn-controller.lua @@ -115,7 +115,7 @@ end read = function (self) local me = {} me = cfe{name=conflistfilesaf, value="hej"} - return ( {conflistfiles = self.model:list_conffiles()} ) + return ( {conflistfiles = self.model:list_conffiles(), url = ENV["SCRIPT_NAME"] .. self.conf.prefix .. self.conf.controller} ) -- return ({conflistfiles = me}) -- return self.model:get() -- return build_form(self) @@ -123,6 +123,23 @@ end server_config = function (self) + return ( {url = ENV["SCRIPT_NAME"] .. self.conf.prefix .. self.conf.controller} ) +end + +client_config = function (self) + return ( {url = ENV["SCRIPT_NAME"] .. self.conf.prefix .. self.conf.controller} ) +end + +pem_info = function (self) +end + +status_info = function (self) +end + +unknown_config = function (self) +end + +logfile = function (self) end create = update diff --git a/openvpn-logfile-html.lsp b/openvpn-logfile-html.lsp new file mode 100644 index 0000000..c1db75e --- /dev/null +++ b/openvpn-logfile-html.lsp @@ -0,0 +1,12 @@ +<? local view = ... ?> +<html> +<body> +<h1>Logfile 'xxx.log'</h1> + +<h2>Details</h2> + +<input type=text style="width:100%;height:500px"></input> + + +</body> +</html> diff --git a/openvpn-model.lua b/openvpn-model.lua index c5210b3..4e60764 100644 --- a/openvpn-model.lua +++ b/openvpn-model.lua @@ -21,6 +21,21 @@ local function read_file_as_array ( path ) return f end + +local is_running = function( process ) + local retval = false + local file = io.popen("pidof " .. process) + if file ~= nil then + local line = file:read( "*l" ) + file:close() + if #line > 0 then + retval = true + end + end + + return retval +end + local function has_init_script ( f ) local initprefix = "/etc/init.d/openvpn" local file = initprefix .. "." .. f diff --git a/openvpn-pem_info-html.lsp b/openvpn-pem_info-html.lsp new file mode 100644 index 0000000..028ba03 --- /dev/null +++ b/openvpn-pem_info-html.lsp @@ -0,0 +1,40 @@ +<? local view = ... ?> +<html> +<body> +<h1>Certificate Info 'xxx.conf'</h1> +<h2>General</h2> + +<dt>Serial</dt> +<dd>xxx</dd> + +<dt>Common name</dt> +<dd>xxx</dd> + +<dt>Country</dt> +<dd>xxx</dd> + +<dt>State or Province</dt> +<dd>xxx</dd> + +<dt>City</dt> +<dd>xxx</dd> + +<dt>Company</dt> +<dd>xxx</dd> + +<dt>Departement II</dt> +<dd>xxx</dd> + +<dt>e-mail</dt> +<dd>xxx</dd> + +<dt>Status</dt> +<dd>xxx</dd> + +<h2>Certificate Details</h2> + +<input type=text style="width:100%;height:300px"></input> + + +</body> +</html> diff --git a/openvpn-read-html.lsp b/openvpn-read-html.lsp index 521e6b3..6854054 100644 --- a/openvpn-read-html.lsp +++ b/openvpn-read-html.lsp @@ -5,7 +5,7 @@ ]]-- ?> <html> <body> -<h1>General</h1> +<h1>Welcome</h1> <h2>Available configs</h2> <TABLE BORDER=0 WIDTH="100%"> <TR style="background:#eee;font-weight:bold;vertical-align:top;"> @@ -17,7 +17,7 @@ <? for i = 1, table.maxn(view.conflistfiles) do ?> <TR > - <TD><a href=""><?= view.conflistfiles[i].value ?></a></TD> + <TD><?= html.link{value = view.url .. "/" .. view.conflistfiles[i].type .. "_config?config=" .. view.conflistfiles[i].value , label=view.conflistfiles[i].value } ?></TD> <TD><?= view.conflistfiles[i].type ?></TD> <TD><?= view.conflistfiles[i].init ?></TD> <TD>xxx</TD> diff --git a/openvpn-server_config-html.lsp b/openvpn-server_config-html.lsp index 41b28c5..6c26398 100644 --- a/openvpn-server_config-html.lsp +++ b/openvpn-server_config-html.lsp @@ -7,9 +7,6 @@ <dt>Mode</dt> <dd>server</dd> -<dt>Process running</dt> -<dd><input type="checkbox">xxx</input></dd> - <dt>User device</dt> <dd>xxx</dd> @@ -17,42 +14,53 @@ <dd>xxx.xxx.xxx.xxx:xxxx (xxx)</dd> <dt>Logfile</dt> -<dd><a href="">xxx.log</a> (Verbosity level: x)</dd> +<dd><?= html.link{value = view.url .. "/logfile?name=xxx" , label="xxx.log" } ?> (Verbosity level: x)</dd> <dt>Configfile</dt> -<dd><a href="">xxx.conf</a></dd> +<dd><?= html.link{value = view.url .. "/unknown_config?name=xxx" , label="xxx.conf" } ?></dd> <h3>Connected clients status</h3> <dt>Last status was recorded</dt> -<dd><a href="">YYYY-MM-DD HH:MM:SS</a> (xx minutes ago)</dd> +<dd>YYYY-MM-DD HH:MM:SS (xx minutes ago)</dd> <dt>Maximum clients</dt> <dd>xxx</dd> <dt>Connected clients</dt> -<dd><a href="">xxx</a></dd> +<dd><?= html.link{value = view.url .. "/status_info?name=xxx" , label="xxx" } ?></dd> + +<h2>Startup options</h2> + +<dt>Process running</dt> +<dd><input type="checkbox">xxx</input></dd> + +<dt>Init.d script exists</dt> +<dd><input type="checkbox">xxx</input></dd> + +<dt>Autostarts at boot</dt> +<dd><input type="checkbox">xxx</input></dd> <h2>Certificate files</h2> <dt>DH</dt> -<dd><a href="">xxx.pem</a></dd> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?></dd> <dt>CA Certificate</dt> -<dd><a href="">xxx.pem</a></dd> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?></dd> <dt>Server Certificate</dt> -<dd><a href="">xxx.pem</a></dd> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?></dd> <dt>Server Private Key</dt> -<dd><a href="">xxx.pem</a></dd> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?></dd> <dt>TLS Authentication</dt> -<dd><a href="">xxx.pem</a></dd> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?></dd> <dt>CRL Verify File</dt> -<dd><a href="">xxx.pem</a> (server side)</dd> +<dd><?= html.link{value = view.url .. "/pem_info?name=xxx" , label="xxx.pem" } ?> (server side)</dd> </body> diff --git a/openvpn-status_info-html.lsp b/openvpn-status_info-html.lsp new file mode 100644 index 0000000..e538cd1 --- /dev/null +++ b/openvpn-status_info-html.lsp @@ -0,0 +1,40 @@ +<? local view = ... ?> +<html> +<body> +<h1>Status</h1> +<h2>Connected clients</h2> + +<TABLE BORDER=0 WIDTH="100%"> + <TR style="background:#eee;font-weight:bold;vertical-align:top;"> + <TD WIDTH=120>Common Name<BR>Connected at</TD> + <TD WIDTH=110>Virtual Address</TD> + <TD WIDTH=140>Real Address</TD> + <TD WIDTH=100>Bytes Received</TD> + <TD>Bytes Sent</TD> + </TR> + <TR> + <TD>XXX</TD> + <TD>XXX.XXX.XXX.XXX</TD> + <TD>XXX.XXX.XXX.XXX:XXXX</TD> + <TD>XXXX</TD> + <TD>XXXX</TD> + </TR> + <TR> + <TD COLSPAN=5 style="border-bottom: 1px solid #ccc;">YYYY-MM-DD HH:MM:SS (Which is xx minutes ago)</TD> + </TR> + + <TR> + <TD>XXX</TD> + <TD>XXX.XXX.XXX.XXX</TD> + <TD>XXX.XXX.XXX.XXX:XXXX</TD> + <TD>XXXX</TD> + <TD>XXXX</TD> + </TR> + <TR> + <TD COLSPAN=5 style="border-bottom: 1px solid #ccc;">YYYY-MM-DD HH:MM:SS (Which is xx minutes ago)</TD> + </TR> + + +</TABLE> +</body> +</html> diff --git a/openvpn-unknown_config-html.lsp b/openvpn-unknown_config-html.lsp new file mode 100644 index 0000000..26787c5 --- /dev/null +++ b/openvpn-unknown_config-html.lsp @@ -0,0 +1,12 @@ +<? local view = ... ?> +<html> +<body> +<h1>Configuration file 'xxx.conf'</h1> + +<h2>Details</h2> + +<input type=text style="width:100%;height:500px"></input> + + +</body> +</html> |