@drumee/setup-infra 1.0.0
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.
- package/LICENSE +661 -0
- package/README.md +3 -0
- package/configs/etc/cron.d/drumee +6 -0
- package/configs/etc/postfix/master.cf +137 -0
- package/congigure/init/acme +69 -0
- package/congigure/init/mail +16 -0
- package/congigure/init/named +27 -0
- package/congigure/menu/menu -tmp +144 -0
- package/congigure/menu/menu-install +147 -0
- package/congigure/menu/menu-reinstall +15 -0
- package/congigure/prepare +10 -0
- package/congigure/preset/jitsi +9 -0
- package/congigure/setup-infra +58 -0
- package/congigure/setup-schemas +57 -0
- package/congigure/start +29 -0
- package/congigure/utils/configure +56 -0
- package/congigure/utils/dependencies +90 -0
- package/congigure/utils/jitsi +122 -0
- package/congigure/utils/misc +77 -0
- package/congigure/utils/prompt.sh +35 -0
- package/congigure/utils/setup-versions +7 -0
- package/index.js +572 -0
- package/package.json +30 -0
- package/template.js +453 -0
- package/templates/env/application.json.tpl +0 -0
- package/templates/env/logrotate.tpl +7 -0
- package/templates/etc/bind/named.conf.local +13 -0
- package/templates/etc/bind/named.conf.log +105 -0
- package/templates/etc/bind/named.conf.options +33 -0
- package/templates/etc/dkimkeys/dkim.key +1 -0
- package/templates/etc/drumee/conf.d/conference.json.tpl +9 -0
- package/templates/etc/drumee/conf.d/drumee.json.tpl +7 -0
- package/templates/etc/drumee/conf.d/exchange.json.tpl +4 -0
- package/templates/etc/drumee/conf.d/myDrumee.json.tpl +16 -0
- package/templates/etc/drumee/credential/db.json.tpl +6 -0
- package/templates/etc/drumee/credential/email.json.tpl +12 -0
- package/templates/etc/drumee/credential/ovh/dns.json.tpl +6 -0
- package/templates/etc/drumee/credential/ovh/dns.sh.tpl +7 -0
- package/templates/etc/drumee/credential/redis.json.tpl +6 -0
- package/templates/etc/drumee/credential/sms.json.tpl +6 -0
- package/templates/etc/drumee/dnsapi.sh.tpl +28 -0
- package/templates/etc/drumee/drumee.sh.tpl +43 -0
- package/templates/etc/drumee/env.json +29 -0
- package/templates/etc/drumee/infrastructure/internals/accel.conf.tpl +47 -0
- package/templates/etc/drumee/infrastructure/mfs.conf.tpl +16 -0
- package/templates/etc/drumee/infrastructure/platform.json.tpl +16 -0
- package/templates/etc/drumee/infrastructure/routes/main.conf.tpl +143 -0
- package/templates/etc/drumee/infrastructure/servers/tt.conf +199 -0
- package/templates/etc/drumee/ssl/main.conf.tpl +10 -0
- package/templates/etc/jitsi/jicofo/config +2 -0
- package/templates/etc/jitsi/jicofo/defaults/jicofo.conf +225 -0
- package/templates/etc/jitsi/jicofo/defaults/logging.properties +15 -0
- package/templates/etc/jitsi/jicofo/jicofo.conf.tpl +46 -0
- package/templates/etc/jitsi/jicofo/logging.properties.tpl +12 -0
- package/templates/etc/jitsi/meet.conf.tpl +131 -0
- package/templates/etc/jitsi/ssl.conf.tpl +25 -0
- package/templates/etc/jitsi/videobridge/config +2 -0
- package/templates/etc/jitsi/videobridge/defaults/jvb.conf +129 -0
- package/templates/etc/jitsi/videobridge/defaults/logging.properties +12 -0
- package/templates/etc/jitsi/videobridge/jvb.conf +67 -0
- package/templates/etc/jitsi/videobridge/logging.properties.tpl +12 -0
- package/templates/etc/jitsi/web/config.js.tpl +208 -0
- package/templates/etc/jitsi/web/defaults/default +26 -0
- package/templates/etc/jitsi/web/defaults/ffdhe2048.txt +8 -0
- package/templates/etc/jitsi/web/defaults/interface_config.js +273 -0
- package/templates/etc/jitsi/web/defaults/meet.conf +193 -0
- package/templates/etc/jitsi/web/defaults/nginx.conf +73 -0
- package/templates/etc/jitsi/web/defaults/settings-config.js +480 -0
- package/templates/etc/jitsi/web/defaults/ssl.conf +28 -0
- package/templates/etc/jitsi/web/defaults/system-config.js +60 -0
- package/templates/etc/jitsi/web/interface_config.js +273 -0
- package/templates/etc/mail/dkim.key +1 -0
- package/templates/etc/mailname +1 -0
- package/templates/etc/mysql/mariadb.conf.d/50-server.cnf +120 -0
- package/templates/etc/nginx/modules-enabled/90-turn-relay.conf +27 -0
- package/templates/etc/nginx/modules-enabled/90-turn-relay.conf.tpl +27 -0
- package/templates/etc/nginx/nginx.conf +65 -0
- package/templates/etc/nginx/sites-enabled/drumee.conf.tpl +33 -0
- package/templates/etc/nginx/sites-enabled/jitsi.conf.tpl +28 -0
- package/templates/etc/nginx/sites-enabled/turnrelay.conf.tpl +9 -0
- package/templates/etc/opendkim/KeyTable +1 -0
- package/templates/etc/postfix/main.cf +76 -0
- package/templates/etc/postfix/mysql-virtual-alias-maps.cf +5 -0
- package/templates/etc/postfix/mysql-virtual-mailbox-domains.cf +5 -0
- package/templates/etc/postfix/mysql-virtual-mailbox-maps.cf +5 -0
- package/templates/etc/prosody/conf.d/vhost.cfg.lua.tpl +162 -0
- package/templates/etc/prosody/defaults/conf.d/jitsi-meet.cfg.lua +406 -0
- package/templates/etc/prosody/defaults/credentials.sh +10 -0
- package/templates/etc/prosody/defaults/prosody.cfg.lua +225 -0
- package/templates/etc/prosody/defaults/saslauthd.conf +30 -0
- package/templates/etc/prosody/prosody.cfg.lua.tpl +203 -0
- package/templates/etc/turnserver.conf.tpl +46 -0
- package/templates/index.js +102 -0
- package/templates/schema/utils/configs.init.sql.tpl +20 -0
- package/templates/schema/utils/configs.update.sql.tpl +19 -0
- package/templates/server/ecosystem.config.js.tpl +8 -0
- package/templates/var/lib/bind/domain.tpl +70 -0
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
/* eslint-disable no-unused-vars, no-var, max-len */
|
|
2
|
+
/* eslint sort-keys: ["error", "asc", {"caseSensitive": false}] */
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* !!!IMPORTANT!!!
|
|
6
|
+
*
|
|
7
|
+
* This file is considered deprecated. All options will eventually be moved to
|
|
8
|
+
* config.js, and no new options should be added here.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
var interfaceConfig = {
|
|
12
|
+
APP_NAME: 'Jitsi Meet',
|
|
13
|
+
AUDIO_LEVEL_PRIMARY_COLOR: 'rgba(255,255,255,0.4)',
|
|
14
|
+
AUDIO_LEVEL_SECONDARY_COLOR: 'rgba(255,255,255,0.2)',
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* A UX mode where the last screen share participant is automatically
|
|
18
|
+
* pinned. Valid values are the string "remote-only" so remote participants
|
|
19
|
+
* get pinned but not local, otherwise any truthy value for all participants,
|
|
20
|
+
* and any falsy value to disable the feature.
|
|
21
|
+
*
|
|
22
|
+
* Note: this mode is experimental and subject to breakage.
|
|
23
|
+
*/
|
|
24
|
+
AUTO_PIN_LATEST_SCREEN_SHARE: 'remote-only',
|
|
25
|
+
BRAND_WATERMARK_LINK: '',
|
|
26
|
+
|
|
27
|
+
CLOSE_PAGE_GUEST_HINT: false, // A html text to be shown to guests on the close page, false disables it
|
|
28
|
+
|
|
29
|
+
DEFAULT_BACKGROUND: '#040404',
|
|
30
|
+
DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.svg',
|
|
31
|
+
|
|
32
|
+
DISABLE_DOMINANT_SPEAKER_INDICATOR: false,
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* If true, notifications regarding joining/leaving are no longer displayed.
|
|
36
|
+
*/
|
|
37
|
+
DISABLE_JOIN_LEAVE_NOTIFICATIONS: false,
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* If true, presence status: busy, calling, connected etc. is not displayed.
|
|
41
|
+
*/
|
|
42
|
+
DISABLE_PRESENCE_STATUS: false,
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Whether the ringing sound in the call/ring overlay is disabled. If
|
|
46
|
+
* {@code undefined}, defaults to {@code false}.
|
|
47
|
+
*
|
|
48
|
+
* @type {boolean}
|
|
49
|
+
*/
|
|
50
|
+
DISABLE_RINGING: false,
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Whether the speech to text transcription subtitles panel is disabled.
|
|
54
|
+
* If {@code undefined}, defaults to {@code false}.
|
|
55
|
+
*
|
|
56
|
+
* @type {boolean}
|
|
57
|
+
*/
|
|
58
|
+
DISABLE_TRANSCRIPTION_SUBTITLES: false,
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Whether or not the blurred video background for large video should be
|
|
62
|
+
* displayed on browsers that can support it.
|
|
63
|
+
*/
|
|
64
|
+
DISABLE_VIDEO_BACKGROUND: false,
|
|
65
|
+
|
|
66
|
+
DISPLAY_WELCOME_FOOTER: true,
|
|
67
|
+
DISPLAY_WELCOME_PAGE_ADDITIONAL_CARD: false,
|
|
68
|
+
DISPLAY_WELCOME_PAGE_CONTENT: false,
|
|
69
|
+
DISPLAY_WELCOME_PAGE_TOOLBAR_ADDITIONAL_CONTENT: false,
|
|
70
|
+
|
|
71
|
+
ENABLE_DIAL_OUT: true,
|
|
72
|
+
|
|
73
|
+
// DEPRECATED. Animation no longer supported.
|
|
74
|
+
// ENABLE_FEEDBACK_ANIMATION: false,
|
|
75
|
+
|
|
76
|
+
FILM_STRIP_MAX_HEIGHT: 120,
|
|
77
|
+
|
|
78
|
+
GENERATE_ROOMNAMES_ON_WELCOME_PAGE: true,
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Hide the invite prompt in the header when alone in the meeting.
|
|
82
|
+
*/
|
|
83
|
+
HIDE_INVITE_MORE_HEADER: false,
|
|
84
|
+
|
|
85
|
+
JITSI_WATERMARK_LINK: 'https://jitsi.org',
|
|
86
|
+
|
|
87
|
+
LANG_DETECTION: true, // Allow i18n to detect the system language
|
|
88
|
+
LOCAL_THUMBNAIL_RATIO: 16 / 9, // 16:9
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Maximum coefficient of the ratio of the large video to the visible area
|
|
92
|
+
* after the large video is scaled to fit the window.
|
|
93
|
+
*
|
|
94
|
+
* @type {number}
|
|
95
|
+
*/
|
|
96
|
+
MAXIMUM_ZOOMING_COEFFICIENT: 1.3,
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Whether the mobile app Jitsi Meet is to be promoted to participants
|
|
100
|
+
* attempting to join a conference in a mobile Web browser. If
|
|
101
|
+
* {@code undefined}, defaults to {@code true}.
|
|
102
|
+
*
|
|
103
|
+
* @type {boolean}
|
|
104
|
+
*/
|
|
105
|
+
MOBILE_APP_PROMO: true,
|
|
106
|
+
|
|
107
|
+
// Names of browsers which should show a warning stating the current browser
|
|
108
|
+
// has a suboptimal experience. Browsers which are not listed as optimal or
|
|
109
|
+
// unsupported are considered suboptimal. Valid values are:
|
|
110
|
+
// chrome, chromium, edge, electron, firefox, nwjs, opera, safari
|
|
111
|
+
OPTIMAL_BROWSERS: [ 'chrome', 'chromium', 'firefox', 'nwjs', 'electron', 'safari' ],
|
|
112
|
+
|
|
113
|
+
POLICY_LOGO: null,
|
|
114
|
+
PROVIDER_NAME: 'Jitsi',
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* If true, will display recent list
|
|
118
|
+
*
|
|
119
|
+
* @type {boolean}
|
|
120
|
+
*/
|
|
121
|
+
RECENT_LIST_ENABLED: true,
|
|
122
|
+
REMOTE_THUMBNAIL_RATIO: 1, // 1:1
|
|
123
|
+
|
|
124
|
+
SETTINGS_SECTIONS: [ 'devices', 'language', 'moderator', 'profile', 'calendar', 'sounds', 'more' ],
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Specify which sharing features should be displayed. If the value is not set
|
|
128
|
+
* all sharing features will be shown. You can set [] to disable all.
|
|
129
|
+
*/
|
|
130
|
+
// SHARING_FEATURES: ['email', 'url', 'dial-in', 'embed'],
|
|
131
|
+
|
|
132
|
+
SHOW_BRAND_WATERMARK: false,
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Decides whether the chrome extension banner should be rendered on the landing page and during the meeting.
|
|
136
|
+
* If this is set to false, the banner will not be rendered at all. If set to true, the check for extension(s)
|
|
137
|
+
* being already installed is done before rendering.
|
|
138
|
+
*/
|
|
139
|
+
SHOW_CHROME_EXTENSION_BANNER: false,
|
|
140
|
+
|
|
141
|
+
SHOW_JITSI_WATERMARK: true,
|
|
142
|
+
SHOW_POWERED_BY: false,
|
|
143
|
+
SHOW_PROMOTIONAL_CLOSE_PAGE: false,
|
|
144
|
+
|
|
145
|
+
/*
|
|
146
|
+
* If indicated some of the error dialogs may point to the support URL for
|
|
147
|
+
* help.
|
|
148
|
+
*/
|
|
149
|
+
SUPPORT_URL: 'https://community.jitsi.org/',
|
|
150
|
+
|
|
151
|
+
// Browsers, in addition to those which do not fully support WebRTC, that
|
|
152
|
+
// are not supported and should show the unsupported browser page.
|
|
153
|
+
UNSUPPORTED_BROWSERS: [],
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Whether to show thumbnails in filmstrip as a column instead of as a row.
|
|
157
|
+
*/
|
|
158
|
+
VERTICAL_FILMSTRIP: true,
|
|
159
|
+
|
|
160
|
+
// Determines how the video would fit the screen. 'both' would fit the whole
|
|
161
|
+
// screen, 'height' would fit the original video height to the height of the
|
|
162
|
+
// screen, 'width' would fit the original video width to the width of the
|
|
163
|
+
// screen respecting ratio, 'nocrop' would make the video as large as
|
|
164
|
+
// possible and preserve aspect ratio without cropping.
|
|
165
|
+
VIDEO_LAYOUT_FIT: 'both',
|
|
166
|
+
|
|
167
|
+
/**
|
|
168
|
+
* If true, hides the video quality label indicating the resolution status
|
|
169
|
+
* of the current large video.
|
|
170
|
+
*
|
|
171
|
+
* @type {boolean}
|
|
172
|
+
*/
|
|
173
|
+
VIDEO_QUALITY_LABEL_DISABLED: false,
|
|
174
|
+
|
|
175
|
+
/**
|
|
176
|
+
* How many columns the tile view can expand to. The respected range is
|
|
177
|
+
* between 1 and 5.
|
|
178
|
+
*/
|
|
179
|
+
// TILE_VIEW_MAX_COLUMNS: 5,
|
|
180
|
+
|
|
181
|
+
// List of undocumented settings
|
|
182
|
+
/**
|
|
183
|
+
INDICATOR_FONT_SIZES
|
|
184
|
+
PHONE_NUMBER_REGEX
|
|
185
|
+
*/
|
|
186
|
+
|
|
187
|
+
// -----------------DEPRECATED CONFIGS BELOW THIS LINE-----------------------------
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* Specify URL for downloading ios mobile app.
|
|
191
|
+
*/
|
|
192
|
+
// MOBILE_DOWNLOAD_LINK_IOS: 'https://itunes.apple.com/us/app/jitsi-meet/id1165103905',
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* Specify custom URL for downloading android mobile app.
|
|
196
|
+
*/
|
|
197
|
+
// MOBILE_DOWNLOAD_LINK_ANDROID: 'https://play.google.com/store/apps/details?id=org.jitsi.meet',
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* Specify mobile app scheme for opening the app from the mobile browser.
|
|
201
|
+
*/
|
|
202
|
+
// APP_SCHEME: 'org.jitsi.meet',
|
|
203
|
+
|
|
204
|
+
// NATIVE_APP_NAME: 'Jitsi Meet',
|
|
205
|
+
|
|
206
|
+
/**
|
|
207
|
+
* Specify Firebase dynamic link properties for the mobile apps.
|
|
208
|
+
*/
|
|
209
|
+
// MOBILE_DYNAMIC_LINK: {
|
|
210
|
+
// APN: 'org.jitsi.meet',
|
|
211
|
+
// APP_CODE: 'w2atb',
|
|
212
|
+
// CUSTOM_DOMAIN: undefined,
|
|
213
|
+
// IBI: 'com.atlassian.JitsiMeet.ios',
|
|
214
|
+
// ISI: '1165103905'
|
|
215
|
+
// },
|
|
216
|
+
|
|
217
|
+
/**
|
|
218
|
+
* Hide the logo on the deep linking pages.
|
|
219
|
+
*/
|
|
220
|
+
// HIDE_DEEP_LINKING_LOGO: false,
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* Specify the Android app package name.
|
|
224
|
+
*/
|
|
225
|
+
// ANDROID_APP_PACKAGE: 'org.jitsi.meet',
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* Specify custom URL for downloading f droid app.
|
|
229
|
+
*/
|
|
230
|
+
// MOBILE_DOWNLOAD_LINK_F_DROID: 'https://f-droid.org/en/packages/org.jitsi.meet/',
|
|
231
|
+
|
|
232
|
+
// Connection indicators (
|
|
233
|
+
// CONNECTION_INDICATOR_AUTO_HIDE_ENABLED,
|
|
234
|
+
// CONNECTION_INDICATOR_AUTO_HIDE_TIMEOUT,
|
|
235
|
+
// CONNECTION_INDICATOR_DISABLED) got moved to config.js.
|
|
236
|
+
|
|
237
|
+
// Please use disableModeratorIndicator from config.js
|
|
238
|
+
// DISABLE_FOCUS_INDICATOR: false,
|
|
239
|
+
|
|
240
|
+
// Please use defaultLocalDisplayName from config.js
|
|
241
|
+
// DEFAULT_LOCAL_DISPLAY_NAME: 'me',
|
|
242
|
+
|
|
243
|
+
// Please use defaultLogoUrl from config.js
|
|
244
|
+
// DEFAULT_LOGO_URL: 'images/watermark.svg',
|
|
245
|
+
|
|
246
|
+
// Please use defaultRemoteDisplayName from config.js
|
|
247
|
+
// DEFAULT_REMOTE_DISPLAY_NAME: 'Fellow Jitster',
|
|
248
|
+
|
|
249
|
+
// Moved to config.js as `toolbarConfig.initialTimeout`.
|
|
250
|
+
// INITIAL_TOOLBAR_TIMEOUT: 20000,
|
|
251
|
+
|
|
252
|
+
// Please use `liveStreaming.helpLink` from config.js
|
|
253
|
+
// Documentation reference for the live streaming feature.
|
|
254
|
+
// LIVE_STREAMING_HELP_LINK: 'https://jitsi.org/live',
|
|
255
|
+
|
|
256
|
+
// Moved to config.js as `toolbarConfig.alwaysVisible`.
|
|
257
|
+
// TOOLBAR_ALWAYS_VISIBLE: false,
|
|
258
|
+
|
|
259
|
+
// This config was moved to config.js as `toolbarButtons`.
|
|
260
|
+
// TOOLBAR_BUTTONS: [],
|
|
261
|
+
|
|
262
|
+
// Moved to config.js as `toolbarConfig.timeout`.
|
|
263
|
+
// TOOLBAR_TIMEOUT: 4000,
|
|
264
|
+
|
|
265
|
+
// Allow all above example options to include a trailing comma and
|
|
266
|
+
// prevent fear when commenting out the last value.
|
|
267
|
+
// eslint-disable-next-line sort-keys
|
|
268
|
+
makeJsonParserHappy: 'even if last key had a trailing comma'
|
|
269
|
+
|
|
270
|
+
// No configuration value should follow this line.
|
|
271
|
+
};
|
|
272
|
+
|
|
273
|
+
/* eslint-enable no-unused-vars, no-var, max-len */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
*@<%= domain %>:<%= domain %>:/etc/opendkim/keys/<%= domain %>/private.pem
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<%= domain %>
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
#
|
|
2
|
+
# These groups are read by MariaDB server.
|
|
3
|
+
# Use it for options that only the server (but not clients) should see
|
|
4
|
+
|
|
5
|
+
# this is read by the standalone daemon and embedded servers
|
|
6
|
+
[server]
|
|
7
|
+
|
|
8
|
+
# this is only for the mysqld standalone daemon
|
|
9
|
+
[mysqld]
|
|
10
|
+
|
|
11
|
+
#
|
|
12
|
+
# * Basic Settings
|
|
13
|
+
#
|
|
14
|
+
|
|
15
|
+
#user = mysql
|
|
16
|
+
pid-file = /run/mysqld/mysqld.pid
|
|
17
|
+
basedir = /usr
|
|
18
|
+
datadir = <%= db_dir %>/run
|
|
19
|
+
#tmpdir = /tmp
|
|
20
|
+
|
|
21
|
+
# Broken reverse DNS slows down connections considerably and name resolve is
|
|
22
|
+
# safe to skip if there are no "host by domain name" access grants
|
|
23
|
+
#skip-name-resolve
|
|
24
|
+
|
|
25
|
+
# Instead of skip-networking the default is now to listen only on
|
|
26
|
+
# localhost which is more compatible and is not less secure.
|
|
27
|
+
bind-address = 127.0.0.1
|
|
28
|
+
|
|
29
|
+
#
|
|
30
|
+
# * Fine Tuning
|
|
31
|
+
#
|
|
32
|
+
|
|
33
|
+
#key_buffer_size = 128M
|
|
34
|
+
#max_allowed_packet = 1G
|
|
35
|
+
#thread_stack = 192K
|
|
36
|
+
#thread_cache_size = 8
|
|
37
|
+
# This replaces the startup script and checks MyISAM tables if needed
|
|
38
|
+
# the first time they are touched
|
|
39
|
+
#myisam_recover_options = BACKUP
|
|
40
|
+
#max_connections = 100
|
|
41
|
+
#table_cache = 64
|
|
42
|
+
|
|
43
|
+
#
|
|
44
|
+
# * Logging and Replication
|
|
45
|
+
#
|
|
46
|
+
|
|
47
|
+
# Note: The configured log file or its directory need to be created
|
|
48
|
+
# and be writable by the mysql user, e.g.:
|
|
49
|
+
# $ sudo mkdir -m 2750 /var/log/mysql
|
|
50
|
+
# $ sudo chown mysql /var/log/mysql
|
|
51
|
+
|
|
52
|
+
# Both location gets rotated by the cronjob.
|
|
53
|
+
# Be aware that this log type is a performance killer.
|
|
54
|
+
# Recommend only changing this at runtime for short testing periods if needed!
|
|
55
|
+
#general_log_file = /var/log/mysql/mysql.log
|
|
56
|
+
#general_log = 1
|
|
57
|
+
|
|
58
|
+
# When running under systemd, error logging goes via stdout/stderr to journald
|
|
59
|
+
# and when running legacy init error logging goes to syslog due to
|
|
60
|
+
# /etc/mysql/conf.d/mariadb.conf.d/50-mysqld_safe.cnf
|
|
61
|
+
# Enable this if you want to have error logging into a separate file
|
|
62
|
+
#log_error = /var/log/mysql/error.log
|
|
63
|
+
# Enable the slow query log to see queries with especially long duration
|
|
64
|
+
#log_slow_query_file = /var/log/mysql/mariadb-slow.log
|
|
65
|
+
#log_slow_query_time = 10
|
|
66
|
+
#log_slow_verbosity = query_plan,explain
|
|
67
|
+
#log-queries-not-using-indexes
|
|
68
|
+
#log_slow_min_examined_row_limit = 1000
|
|
69
|
+
|
|
70
|
+
# The following can be used as easy to replay backup logs or for replication.
|
|
71
|
+
# note: if you are setting up a replication slave, see README.Debian about
|
|
72
|
+
# other settings you may need to change.
|
|
73
|
+
#server-id = 1
|
|
74
|
+
#log_bin = /var/log/mysql/mysql-bin.log
|
|
75
|
+
expire_logs_days = 10
|
|
76
|
+
#max_binlog_size = 100M
|
|
77
|
+
|
|
78
|
+
#
|
|
79
|
+
# * SSL/TLS
|
|
80
|
+
#
|
|
81
|
+
|
|
82
|
+
# For documentation, please read
|
|
83
|
+
# https://mariadb.com/kb/en/securing-connections-for-client-and-server/
|
|
84
|
+
#ssl-ca = /etc/mysql/cacert.pem
|
|
85
|
+
#ssl-cert = /etc/mysql/server-cert.pem
|
|
86
|
+
#ssl-key = /etc/mysql/server-key.pem
|
|
87
|
+
#require-secure-transport = on
|
|
88
|
+
|
|
89
|
+
#
|
|
90
|
+
# * Character sets
|
|
91
|
+
#
|
|
92
|
+
|
|
93
|
+
# MySQL/MariaDB default is Latin1, but in Debian we rather default to the full
|
|
94
|
+
# utf8 4-byte character set. See also client.cnf
|
|
95
|
+
character-set-server = utf8mb4
|
|
96
|
+
collation-server = utf8mb4_general_ci
|
|
97
|
+
|
|
98
|
+
#
|
|
99
|
+
# * InnoDB
|
|
100
|
+
#
|
|
101
|
+
|
|
102
|
+
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
|
|
103
|
+
# Read the manual for more InnoDB related options. There are many!
|
|
104
|
+
# Most important is to give InnoDB 80 % of the system RAM for buffer use:
|
|
105
|
+
# https://mariadb.com/kb/en/innodb-system-variables/#innodb_buffer_pool_size
|
|
106
|
+
#innodb_buffer_pool_size = 8G
|
|
107
|
+
|
|
108
|
+
# this is only for embedded server
|
|
109
|
+
[embedded]
|
|
110
|
+
|
|
111
|
+
# This group is only read by MariaDB servers, not by MySQL.
|
|
112
|
+
# If you use the same .cnf file for MySQL and MariaDB,
|
|
113
|
+
# you can put MariaDB-only options here
|
|
114
|
+
[mariadb]
|
|
115
|
+
transaction_isolation=READ-COMMITTED
|
|
116
|
+
|
|
117
|
+
# This group is only read by MariaDB-10.11 servers.
|
|
118
|
+
# If you use the same .cnf file for MariaDB of different versions,
|
|
119
|
+
# use this group for options that older servers don't understand
|
|
120
|
+
[mariadb-10.11]
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
stream {
|
|
2
|
+
map $ssl_preread_server_name $name {
|
|
3
|
+
<%= jitsi_domain %> web_backend;
|
|
4
|
+
turn-jitsi.<%= jitsi_domain %> turn_backend;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
upstream web_backend {
|
|
8
|
+
server 127.0.0.1:4444;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
upstream turn_backend {
|
|
12
|
+
server <%= public_ip4 %>:5349;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
server {
|
|
16
|
+
listen 443;
|
|
17
|
+
listen [::]:443;
|
|
18
|
+
|
|
19
|
+
# since 1.11.5
|
|
20
|
+
ssl_preread on;
|
|
21
|
+
|
|
22
|
+
proxy_pass $name;
|
|
23
|
+
|
|
24
|
+
# Increase buffer to serve video
|
|
25
|
+
proxy_buffer_size 10m;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
stream {
|
|
2
|
+
map $ssl_preread_server_name $name {
|
|
3
|
+
turn.<%= jitsi_domain %> web_backend;
|
|
4
|
+
turn-jitsi.<%= jitsi_domain %> turn_backend;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
upstream web_backend {
|
|
8
|
+
server 127.0.0.1:3478;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
upstream turn_backend {
|
|
12
|
+
server <%= public_ip4 %>:5349;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
server {
|
|
16
|
+
listen 443 udp;
|
|
17
|
+
listen [::]:443 udp;
|
|
18
|
+
|
|
19
|
+
# since 1.11.5
|
|
20
|
+
ssl_preread on;
|
|
21
|
+
|
|
22
|
+
proxy_pass $name;
|
|
23
|
+
|
|
24
|
+
# Increase buffer to serve video
|
|
25
|
+
proxy_buffer_size 10m;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
|
|
2
|
+
user www-data;
|
|
3
|
+
worker_processes 4;
|
|
4
|
+
pid /run/nginx.pid;
|
|
5
|
+
include /etc/nginx/modules-enabled/*.conf;
|
|
6
|
+
|
|
7
|
+
events {
|
|
8
|
+
worker_connections 768;
|
|
9
|
+
# multi_accept on;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
http {
|
|
13
|
+
|
|
14
|
+
##
|
|
15
|
+
# Basic Settings
|
|
16
|
+
##
|
|
17
|
+
|
|
18
|
+
sendfile on;
|
|
19
|
+
tcp_nopush on;
|
|
20
|
+
tcp_nodelay on;
|
|
21
|
+
keepalive_timeout 65;
|
|
22
|
+
types_hash_max_size 2048;
|
|
23
|
+
server_tokens off;
|
|
24
|
+
|
|
25
|
+
# server_names_hash_bucket_size 64;
|
|
26
|
+
# server_name_in_redirect off;
|
|
27
|
+
|
|
28
|
+
client_max_body_size 0;
|
|
29
|
+
|
|
30
|
+
resolver <%= local_address %>;
|
|
31
|
+
include /etc/nginx/mime.types;
|
|
32
|
+
default_type application/octet-stream;
|
|
33
|
+
|
|
34
|
+
##
|
|
35
|
+
# Logging Settings
|
|
36
|
+
##
|
|
37
|
+
|
|
38
|
+
access_log /dev/stdout;
|
|
39
|
+
error_log /dev/stderr;
|
|
40
|
+
|
|
41
|
+
##
|
|
42
|
+
# Gzip Settings
|
|
43
|
+
##
|
|
44
|
+
|
|
45
|
+
gzip on;
|
|
46
|
+
gzip_types text/plain text/css application/javascript application/json;
|
|
47
|
+
gzip_vary on;
|
|
48
|
+
gzip_min_length 860;
|
|
49
|
+
|
|
50
|
+
##
|
|
51
|
+
# Connection header for WebSocket reverse proxy
|
|
52
|
+
##
|
|
53
|
+
map $http_upgrade $connection_upgrade {
|
|
54
|
+
default upgrade;
|
|
55
|
+
'' close;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
##
|
|
59
|
+
# Virtual Host Configs
|
|
60
|
+
##
|
|
61
|
+
include /etc/nginx/sites-enabled/*.conf;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
#daemon off;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
|
|
2
|
+
# -------------------------------------------------------------
|
|
3
|
+
# !!!!!!! DO NOT EDIT !!!!!!!!
|
|
4
|
+
# Config file automatically generated by <infra-setup>
|
|
5
|
+
# Purpose : Provide Nginx config to a specific server
|
|
6
|
+
# Server name : <%= domain %>
|
|
7
|
+
# Date : <%= date %>
|
|
8
|
+
# -------------------------------------------------------------
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
proxy_cache_path <%= cache_dir %>/<%= domain %> levels=1:2 keys_zone=<%= domain %>_keys_zone:10m max_size=10g inactive=60m;
|
|
12
|
+
server {
|
|
13
|
+
listen 80;
|
|
14
|
+
listen [::]:80;
|
|
15
|
+
server_name <%= domain %>;
|
|
16
|
+
location / {
|
|
17
|
+
return 301 https://$host$request_uri;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
server {
|
|
21
|
+
listen 443 ssl;
|
|
22
|
+
listen [::]:443 ssl;
|
|
23
|
+
#
|
|
24
|
+
root <%= server_dir %>;
|
|
25
|
+
server_name _;
|
|
26
|
+
client_max_body_size <%= max_body_size %>;
|
|
27
|
+
include /etc/drumee/ssl/main.conf;
|
|
28
|
+
include /etc/drumee/infrastructure/routes/*.conf;
|
|
29
|
+
include /etc/drumee/infrastructure/internals/*.conf;
|
|
30
|
+
include /etc/drumee/infrastructure/mfs.conf;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# -------------------------------------------------------------
|
|
2
|
+
# !!!!!!! DO NOT EDIT !!!!!!!!
|
|
3
|
+
# Config file automatically generated by <infra-setup>
|
|
4
|
+
# Purpose : Provide Nginx config to a specific server
|
|
5
|
+
# Server name : <%= domain %>
|
|
6
|
+
# Date : <%= date %>
|
|
7
|
+
# -------------------------------------------------------------
|
|
8
|
+
|
|
9
|
+
map $http_upgrade $connection_upgrade {
|
|
10
|
+
default upgrade;
|
|
11
|
+
'' close;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
server {
|
|
15
|
+
listen 80 default_server;
|
|
16
|
+
listen [::]:80 default_server;
|
|
17
|
+
server_name *.<%= jitsi_domain %>;
|
|
18
|
+
include /etc/jitsi/meet.conf;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
server {
|
|
22
|
+
listen 443 ssl http2;
|
|
23
|
+
listen [::]:443 ssl http2;
|
|
24
|
+
server_name *.<%= jitsi_domain %>;
|
|
25
|
+
include /etc/jitsi/ssl.conf;
|
|
26
|
+
include /etc/jitsi/meet.conf;
|
|
27
|
+
}
|
|
28
|
+
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
server {
|
|
2
|
+
listen 4444 ssl;
|
|
3
|
+
listen [::]:4444 ssl;
|
|
4
|
+
server_name turn.<%= jitsi_domain %>;
|
|
5
|
+
ssl_certificate_key <%= certs_dir %>/<%= jitsi_domain %>_ecc/<%= jitsi_domain %>.key;
|
|
6
|
+
ssl_certificate <%= certs_dir %>/<%= jitsi_domain %>_ecc/fullchain.cer;
|
|
7
|
+
ssl_trusted_certificate <%= certs_dir %>/<%= jitsi_domain %>_ecc/ca.cer;
|
|
8
|
+
}
|
|
9
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
mail._domainkey.<%= domain %> <%= domain %>:mail:/etc/opendkim/keys/<%= domain %>/private.pem
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# Configs generated by drumee-infra-setup
|
|
2
|
+
# See /usr/share/postfix/main.cf.dist for a commented, more complete version
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
# Debian specific: Specifying a file name will cause the first
|
|
6
|
+
# line of that file to be used as the name. The Debian default
|
|
7
|
+
# is /etc/mailname.
|
|
8
|
+
#myorigin = /etc/mailname
|
|
9
|
+
|
|
10
|
+
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
|
|
11
|
+
biff = no
|
|
12
|
+
|
|
13
|
+
# appending .domain is the MUA's job.
|
|
14
|
+
append_dot_mydomain = no
|
|
15
|
+
|
|
16
|
+
# Uncomment the next line to generate "delayed mail" warnings
|
|
17
|
+
#delay_warning_time = 4h
|
|
18
|
+
|
|
19
|
+
readme_directory = no
|
|
20
|
+
|
|
21
|
+
# See http://www.postfix.org/COMPATIBILITY_README.html
|
|
22
|
+
# fresh installs.
|
|
23
|
+
compatibility_level = 3.7
|
|
24
|
+
|
|
25
|
+
#Reject unproper client
|
|
26
|
+
smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unknown_reverse_client_hostname, reject_unknown_client_hostname, reject_unknown_sender_domain
|
|
27
|
+
smtpd_helo_required = yes
|
|
28
|
+
smtpd_helo_restrictions =
|
|
29
|
+
permit_mynetworks
|
|
30
|
+
permit_sasl_authenticated
|
|
31
|
+
reject_invalid_helo_hostname
|
|
32
|
+
reject_non_fqdn_helo_hostname
|
|
33
|
+
reject_unknown_helo_hostname
|
|
34
|
+
smtpd_client_restrictions = permit_mynetworks, reject
|
|
35
|
+
|
|
36
|
+
# TLS parameters
|
|
37
|
+
smtpd_tls_cert_file=<%= certs_dir %>/<%= domain %>_ecc/fullchain.cer
|
|
38
|
+
smtpd_tls_key_file=<%= certs_dir %>/<%= domain %>_ecc/<%= domain %>.key
|
|
39
|
+
smtpd_use_tls=yes
|
|
40
|
+
smtpd_tls_session_cache_database = <%= smptd_cache_db %>{data_directory}/smtpd_scache
|
|
41
|
+
smtp_tls_session_cache_database = <%= smptd_cache_db %>{data_directory}/smtp_scache
|
|
42
|
+
smtp_tls_security_level = may
|
|
43
|
+
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
|
|
44
|
+
# information on enabling SSL in the smtp client.
|
|
45
|
+
|
|
46
|
+
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
|
|
47
|
+
mydomain = <%= domain %>
|
|
48
|
+
myhostname = smtp.<%= domain %>
|
|
49
|
+
alias_maps = hash:/etc/aliases
|
|
50
|
+
alias_database = hash:/etc/aliases
|
|
51
|
+
myorigin = /etc/mailname
|
|
52
|
+
mydestination = localhost, localhost.localdomain, <%= domain %>
|
|
53
|
+
relayhost =
|
|
54
|
+
mynetworks = 127.0.0.0/8, 192.168.5.0/24, [::ffff:127.0.0.0]/104
|
|
55
|
+
mailbox_size_limit = 0
|
|
56
|
+
recipient_delimiter = +
|
|
57
|
+
inet_interfaces = all
|
|
58
|
+
#inet_protocols = all
|
|
59
|
+
inet_protocols = ipv4
|
|
60
|
+
#inet_protocols = ipv4, ipv6
|
|
61
|
+
virtual_transport = lmtp:unix:private/dovecot-lmtp
|
|
62
|
+
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
|
|
63
|
+
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
|
|
64
|
+
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-alias-maps.cf
|
|
65
|
+
local_recipient_maps =
|
|
66
|
+
|
|
67
|
+
milter_default_action = accept
|
|
68
|
+
milter_protocol = 2
|
|
69
|
+
|
|
70
|
+
smtpd_milters = unix:/spamass/spamass.sock, inet:localhost:12301
|
|
71
|
+
non_smtpd_milters = unix:/spamass/spamass.sock, inet:localhost:12301
|
|
72
|
+
maximal_queue_lifetime = 1d
|
|
73
|
+
minimal_backoff_time = 300s
|
|
74
|
+
maximal_backoff_time = 4000s
|
|
75
|
+
message_size_limit = 26214400
|
|
76
|
+
maillog_file = /var/log/postfix.log
|