knoxbox-web 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.rock.yml +1 -0
- data/Gemfile +3 -0
- data/Rakefile +3 -0
- data/contrib/nginx.conf +78 -0
- data/contrib/supervisor.conf +13 -0
- data/knoxbox-web.gemspec +33 -0
- data/lib/knoxbox-web.rb +1 -0
- data/lib/knoxbox-web/version.rb +3 -0
- metadata +149 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: e0aa0dcf0900eae8dc3b62ebebd8df148ec76025
|
4
|
+
data.tar.gz: 452e09a0a999d72c222a1e6bd657b52617bc2060
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 331e91b227073257f3092bcf2045f4c741e573aac675b2964df45e6e1b015cf536abb107c59d0c7dad13fe96f00a3f7073b82e4f79917d23c58a9787b1448e73
|
7
|
+
data.tar.gz: ae87ed6ef15ac477e193fddc15b7507fff4533452b6c08c94c22081d0ddbbf1f283aff88f88ba0da375ea3b487c5599e64f350acd3ea484e5086b35ebfdad358
|
data/.rock.yml
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
runtime: ruby21
|
data/Gemfile
ADDED
data/Rakefile
ADDED
data/contrib/nginx.conf
ADDED
@@ -0,0 +1,78 @@
|
|
1
|
+
worker_processes 8;
|
2
|
+
daemon off;
|
3
|
+
pid /run/nginx.pid;
|
4
|
+
|
5
|
+
events {
|
6
|
+
worker_connections 768;
|
7
|
+
multi_accept on;
|
8
|
+
}
|
9
|
+
|
10
|
+
http {
|
11
|
+
|
12
|
+
sendfile on;
|
13
|
+
|
14
|
+
tcp_nopush on;
|
15
|
+
tcp_nodelay on;
|
16
|
+
|
17
|
+
keepalive_timeout 65;
|
18
|
+
types_hash_max_size 2048;
|
19
|
+
|
20
|
+
include /etc/nginx/mime.types;
|
21
|
+
|
22
|
+
default_type application/octet-stream;
|
23
|
+
access_log /var/log/nginx/access.log;
|
24
|
+
error_log /var/log/nginx/error.log;
|
25
|
+
|
26
|
+
add_header X-Frame-Options SAMEORIGIN;
|
27
|
+
add_header X-Content-Type-Options nosniff;
|
28
|
+
add_header X-XSS-Protection "1; mode=block";
|
29
|
+
|
30
|
+
gzip on;
|
31
|
+
gzip_disable "msie6";
|
32
|
+
|
33
|
+
upstream knoxbox {
|
34
|
+
server 127.0.0.1:8000;
|
35
|
+
}
|
36
|
+
|
37
|
+
server {
|
38
|
+
listen [::]:80 ipv6only=on default_server;
|
39
|
+
listen 80;
|
40
|
+
rewrite ^ https://$host$request_uri permanent;
|
41
|
+
}
|
42
|
+
|
43
|
+
server {
|
44
|
+
listen [::]:443 ipv6only=on default_server;
|
45
|
+
listen 443 default_server ssl;
|
46
|
+
|
47
|
+
index index.html;
|
48
|
+
root /opt/knoxbox/public;
|
49
|
+
|
50
|
+
ssl on;
|
51
|
+
ssl_certificate /opt/knoxbox/ssl/knoxbox.key;
|
52
|
+
ssl_certificate_key /opt/knoxbox/ssl/knoxbox.key;
|
53
|
+
ssl_dhparam /opt/knoxbox/ssl/knoxbox-dh.pem;
|
54
|
+
|
55
|
+
# Allow only newest TLS
|
56
|
+
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
|
57
|
+
|
58
|
+
# Prefer ciphers
|
59
|
+
ssl_prefer_server_ciphers on;
|
60
|
+
ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
|
61
|
+
|
62
|
+
# SSL OSCP Stapling
|
63
|
+
ssl_stapling on;
|
64
|
+
ssl_stapling_verify on;
|
65
|
+
resolver 8.8.4.4 8.8.8.8 valid=300s;
|
66
|
+
resolver_timeout 10s;
|
67
|
+
|
68
|
+
# SSL Session details
|
69
|
+
ssl_buffer_size 8k;
|
70
|
+
ssl_session_cache shared:SSL:25m;
|
71
|
+
ssl_session_timeout 10m;
|
72
|
+
|
73
|
+
location / {
|
74
|
+
proxy_pass http://knoxbox;
|
75
|
+
}
|
76
|
+
}
|
77
|
+
}
|
78
|
+
|
@@ -0,0 +1,13 @@
|
|
1
|
+
[program:nginx]
|
2
|
+
command = /usr/sbin/nginx
|
3
|
+
autorestart = true
|
4
|
+
stdout_logfile = /var/log/nginx.log
|
5
|
+
redirect_stderr = true
|
6
|
+
|
7
|
+
[program:knoxbox]
|
8
|
+
command = knoxbox -c knoxbox.conf
|
9
|
+
directory = /opt/knoxbox
|
10
|
+
autorestart = true
|
11
|
+
stdout_logfile = /var/log/knoxbox.log
|
12
|
+
redirect_stderr = true
|
13
|
+
environment = LOGLEVEL=debug
|
data/knoxbox-web.gemspec
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
# Created by hand, like a real man
|
2
|
+
# coding: utf-8
|
3
|
+
lib = File.expand_path('../lib', __FILE__)
|
4
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
|
+
require 'knoxbox-web/version'
|
6
|
+
|
7
|
+
Gem::Specification.new do |s|
|
8
|
+
s.name = 'knoxbox-web'
|
9
|
+
s.version = KnoxBoxWeb::VERSION
|
10
|
+
s.date = '2015-04-20'
|
11
|
+
s.summary = 'KnoxBox HTTP Management Interface'
|
12
|
+
s.description = 'OpenVPN management tool'
|
13
|
+
s.authors = ['Mike Mackintosh']
|
14
|
+
s.email = 'm@zyp.io'
|
15
|
+
s.homepage =
|
16
|
+
'http://github.com/mikemackintosh/knoxbox-web'
|
17
|
+
|
18
|
+
s.license = 'MIT'
|
19
|
+
|
20
|
+
s.require_paths = ['lib']
|
21
|
+
s.files = `git ls-files -z`.split("\x0")
|
22
|
+
s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
23
|
+
s.test_files = s.files.grep(%r{^(test|spec|features)/})
|
24
|
+
|
25
|
+
s.add_dependency 'knoxbox'
|
26
|
+
s.add_dependency 'sinatra'
|
27
|
+
|
28
|
+
s.add_development_dependency 'bundler'
|
29
|
+
s.add_development_dependency 'rake'
|
30
|
+
s.add_development_dependency 'rspec'
|
31
|
+
s.add_development_dependency 'webmock'
|
32
|
+
s.add_development_dependency 'rubocop'
|
33
|
+
end
|
data/lib/knoxbox-web.rb
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require 'knoxbox-web/version'
|
metadata
ADDED
@@ -0,0 +1,149 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: knoxbox-web
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Mike Mackintosh
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-04-20 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: knoxbox
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: sinatra
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: bundler
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rspec
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - '>='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - '>='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: webmock
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - '>='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: rubocop
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - '>='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
description: OpenVPN management tool
|
112
|
+
email: m@zyp.io
|
113
|
+
executables: []
|
114
|
+
extensions: []
|
115
|
+
extra_rdoc_files: []
|
116
|
+
files:
|
117
|
+
- .rock.yml
|
118
|
+
- Gemfile
|
119
|
+
- Rakefile
|
120
|
+
- contrib/nginx.conf
|
121
|
+
- contrib/supervisor.conf
|
122
|
+
- knoxbox-web.gemspec
|
123
|
+
- lib/knoxbox-web.rb
|
124
|
+
- lib/knoxbox-web/version.rb
|
125
|
+
homepage: http://github.com/mikemackintosh/knoxbox-web
|
126
|
+
licenses:
|
127
|
+
- MIT
|
128
|
+
metadata: {}
|
129
|
+
post_install_message:
|
130
|
+
rdoc_options: []
|
131
|
+
require_paths:
|
132
|
+
- lib
|
133
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
134
|
+
requirements:
|
135
|
+
- - '>='
|
136
|
+
- !ruby/object:Gem::Version
|
137
|
+
version: '0'
|
138
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
139
|
+
requirements:
|
140
|
+
- - '>='
|
141
|
+
- !ruby/object:Gem::Version
|
142
|
+
version: '0'
|
143
|
+
requirements: []
|
144
|
+
rubyforge_project:
|
145
|
+
rubygems_version: 2.0.14
|
146
|
+
signing_key:
|
147
|
+
specification_version: 4
|
148
|
+
summary: KnoxBox HTTP Management Interface
|
149
|
+
test_files: []
|