-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathzapped.json
163 lines (163 loc) · 4.85 KB
/
zapped.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
{
"server": {
"port": 3000,
"host": "127.0.0.1",
"threads": 2,
"workers": 1,
"max_clients": 100000
},
"extensions": {
"tor": {
"enabled": true,
"hidden_service": true,
"port": 9050,
"control_port": 9051,
"control_password": "",
"virtual_port": 80,
"service_dir": "./hidden_service",
"allowed_ports": [80, 443]
},
"i2p": {
"enabled": false,
"sam_address": "127.0.0.1",
"sam_port": 7656,
"tunnel_name": "zapped-service",
"tunnel_length": 3,
"inbound_length": 3,
"outbound_length": 3,
"service_dir": "./i2p_service"
}
},
"features": {
"hot_reload": false,
"compression": true,
"logging": true
},
"security": {
"cors_enabled": true,
"cors_origins": ["*"],
"cors_methods": ["GET", "POST", "OPTIONS"],
"cors_headers": ["Content-Type"],
"cache_control": true,
"cache_max_age": 3600,
"headers": {
"x_frame_options": "DENY",
"x_content_type_options": "nosniff",
"x_xss_protection": "1; mode=block",
"strict_transport_security": "max-age=31536000; includeSubDomains",
"referrer_policy": "strict-origin-when-cross-origin"
},
"csrf_protection": true,
"csrf_token_length": 32,
"request_timeout_ms": 30000,
"max_request_size": 10485760,
"trusted_proxies": [
"127.0.0.1",
"::1"
],
"content_security_policy": "default-src 'self'; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com; img-src 'self' data: https:; script-src 'self' 'unsafe-inline';",
"permissions_policy": "geolocation=(), camera=(), microphone=()",
"bot_protection": {
"enabled": true,
"block_bots": true,
"allowed_bots": [
"Googlebot",
"Bingbot",
"DuckDuckBot"
],
"detection_rules": {
"request_rate": 30,
"time_window": 60,
"suspicious_patterns": true,
"check_headers": true,
"check_fingerprints": true
},
"suspicious_behaviors": {
"rapid_requests": true,
"parallel_requests": true,
"sequential_scanning": true,
"unusual_methods": true,
"suspicious_query_params": true
}
}
},
"monitoring": {
"enabled": true,
"endpoint": "/metrics",
"collect_memory_stats": true,
"collect_request_stats": true,
"auth_required": false,
"metrics": {
"unique_requests": true,
"total_requests": true,
"bot_requests": true,
"blocked_attempts": true,
"request_patterns": true
}
},
"compression": {
"level": 6,
"min_size": 1024,
"types": [
"text/html",
"text/css",
"text/javascript",
"application/javascript",
"application/json",
"image/svg+xml",
"text/plain",
"text/xml",
"application/xml",
"image/x-icon",
"image/png",
"image/jpeg",
"image/gif",
"font/woff",
"font/woff2",
"application/font-woff",
"application/font-woff2"
],
"brotli_enabled": true,
"brotli_quality": 4
},
"static": {
"enabled": true,
"root": "public",
"allowed_root_files": [
"index.html",
"404.html",
"docs.html",
"about.html",
"favicon.ico",
"robots.txt",
"sitemap.xml"
],
"allowed_directories": [
"/public/",
"/css/",
"/js/",
"/fonts/",
"/images/",
"/assets/"
],
"index": "index.html",
"cache": true,
"mime_types": {
".html": "text/html; charset=utf-8",
".css": "text/css; charset=utf-8",
".woff2": "font/woff2",
".woff": "font/woff",
".ttf": "font/ttf",
".eot": "application/vnd.ms-fontobject",
".otf": "font/otf",
".js": "application/javascript; charset=utf-8",
".json": "application/json; charset=utf-8",
".png": "image/png",
".jpg": "image/jpeg",
".jpeg": "image/jpeg",
".gif": "image/gif",
".svg": "image/svg+xml",
".ico": "image/x-icon"
}
}
}