Updated self-hosting

This commit is contained in:
Will Browning 2021-06-21 09:02:47 +01:00
parent 3a1921ead0
commit f33354fc70
4 changed files with 234 additions and 3139 deletions

View file

@ -2,7 +2,7 @@
## Assumptions ## Assumptions
This guide assumes that you are competent using the command line to manage an Ubuntu server and that you have already taken appropriate steps to harden and secure the server, for example: no root login, key auth only, 2FA, automatic security updates etc.). I will not go over these here as there are already many great resources availble covering this: This guide assumes that you are competent using the command line to manage an Ubuntu server and that you have already taken appropriate steps to harden and secure the server, for example: no root login, key auth only, 2FA, automatic security updates etc. I will not go over these here as there are already many great resources availble covering this:
- [https://github.com/imthenachoman/How-To-Secure-A-Linux-Server](https://github.com/imthenachoman/How-To-Secure-A-Linux-Server) - [https://github.com/imthenachoman/How-To-Secure-A-Linux-Server](https://github.com/imthenachoman/How-To-Secure-A-Linux-Server)
- [https://jacyhong.wordpress.com/2016/06/27/my-first-10-minutes-on-a-server-primer-for-securing-ubuntu/](https://jacyhong.wordpress.com/2016/06/27/my-first-10-minutes-on-a-server-primer-for-securing-ubuntu/) - [https://jacyhong.wordpress.com/2016/06/27/my-first-10-minutes-on-a-server-primer-for-securing-ubuntu/](https://jacyhong.wordpress.com/2016/06/27/my-first-10-minutes-on-a-server-primer-for-securing-ubuntu/)
@ -581,14 +581,14 @@ USE `anonaddy_database`$$
DROP PROCEDURE IF EXISTS `check_access`$$ DROP PROCEDURE IF EXISTS `check_access`$$
CREATE PROCEDURE `check_access`(alias_email VARCHAR(254)) CREATE PROCEDURE `check_access`(alias_email VARCHAR(254) charset utf8)
BEGIN BEGIN
DECLARE no_alias_exists int(1); DECLARE no_alias_exists int(1);
DECLARE alias_action varchar(7); DECLARE alias_action varchar(7) charset utf8;
DECLARE username_action varchar(7); DECLARE username_action varchar(7) charset utf8;
DECLARE additional_username_action varchar(7); DECLARE additional_username_action varchar(7) charset utf8;
DECLARE domain_action varchar(7); DECLARE domain_action varchar(7) charset utf8;
DECLARE alias_domain varchar(254); DECLARE alias_domain varchar(254) charset utf8;
SET alias_domain = SUBSTRING_INDEX(alias_email, '@', -1); SET alias_domain = SUBSTRING_INDEX(alias_email, '@', -1);

133
composer.lock generated
View file

@ -153,16 +153,16 @@
}, },
{ {
"name": "bacon/bacon-qr-code", "name": "bacon/bacon-qr-code",
"version": "2.0.3", "version": "2.0.4",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/Bacon/BaconQrCode.git", "url": "https://github.com/Bacon/BaconQrCode.git",
"reference": "3e9d791b67d0a2912922b7b7c7312f4b37af41e4" "reference": "f73543ac4e1def05f1a70bcd1525c8a157a1ad09"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/Bacon/BaconQrCode/zipball/3e9d791b67d0a2912922b7b7c7312f4b37af41e4", "url": "https://api.github.com/repos/Bacon/BaconQrCode/zipball/f73543ac4e1def05f1a70bcd1525c8a157a1ad09",
"reference": "3e9d791b67d0a2912922b7b7c7312f4b37af41e4", "reference": "f73543ac4e1def05f1a70bcd1525c8a157a1ad09",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -200,9 +200,9 @@
"homepage": "https://github.com/Bacon/BaconQrCode", "homepage": "https://github.com/Bacon/BaconQrCode",
"support": { "support": {
"issues": "https://github.com/Bacon/BaconQrCode/issues", "issues": "https://github.com/Bacon/BaconQrCode/issues",
"source": "https://github.com/Bacon/BaconQrCode/tree/2.0.3" "source": "https://github.com/Bacon/BaconQrCode/tree/2.0.4"
}, },
"time": "2020-10-30T02:02:47+00:00" "time": "2021-06-18T13:26:35+00:00"
}, },
{ {
"name": "beberlei/assert", "name": "beberlei/assert",
@ -2352,16 +2352,16 @@
}, },
{ {
"name": "league/commonmark", "name": "league/commonmark",
"version": "1.6.2", "version": "1.6.4",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/thephpleague/commonmark.git", "url": "https://github.com/thephpleague/commonmark.git",
"reference": "7d70d2f19c84bcc16275ea47edabee24747352eb" "reference": "c3c8b7217c52572fb42aaf84211abccf75a151b2"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/thephpleague/commonmark/zipball/7d70d2f19c84bcc16275ea47edabee24747352eb", "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/c3c8b7217c52572fb42aaf84211abccf75a151b2",
"reference": "7d70d2f19c84bcc16275ea47edabee24747352eb", "reference": "c3c8b7217c52572fb42aaf84211abccf75a151b2",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2379,7 +2379,7 @@
"github/gfm": "0.29.0", "github/gfm": "0.29.0",
"michelf/php-markdown": "~1.4", "michelf/php-markdown": "~1.4",
"mikehaertl/php-shellcommand": "^1.4", "mikehaertl/php-shellcommand": "^1.4",
"phpstan/phpstan": "^0.12", "phpstan/phpstan": "^0.12.90",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.2", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.2",
"scrutinizer/ocular": "^1.5", "scrutinizer/ocular": "^1.5",
"symfony/finder": "^4.2" "symfony/finder": "^4.2"
@ -2449,7 +2449,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2021-05-12T11:39:41+00:00" "time": "2021-06-19T20:08:14+00:00"
}, },
{ {
"name": "league/event", "name": "league/event",
@ -5727,16 +5727,16 @@
}, },
{ {
"name": "symfony/console", "name": "symfony/console",
"version": "v5.3.0", "version": "v5.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/console.git", "url": "https://github.com/symfony/console.git",
"reference": "058553870f7809087fa80fa734704a21b9bcaeb2" "reference": "649730483885ff2ca99ca0560ef0e5f6b03f2ac1"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/058553870f7809087fa80fa734704a21b9bcaeb2", "url": "https://api.github.com/repos/symfony/console/zipball/649730483885ff2ca99ca0560ef0e5f6b03f2ac1",
"reference": "058553870f7809087fa80fa734704a21b9bcaeb2", "reference": "649730483885ff2ca99ca0560ef0e5f6b03f2ac1",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -5805,7 +5805,7 @@
"terminal" "terminal"
], ],
"support": { "support": {
"source": "https://github.com/symfony/console/tree/v5.3.0" "source": "https://github.com/symfony/console/tree/v5.3.2"
}, },
"funding": [ "funding": [
{ {
@ -5821,7 +5821,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2021-05-26T17:43:10+00:00" "time": "2021-06-12T09:42:48+00:00"
}, },
{ {
"name": "symfony/css-selector", "name": "symfony/css-selector",
@ -6329,16 +6329,16 @@
}, },
{ {
"name": "symfony/http-foundation", "name": "symfony/http-foundation",
"version": "v5.3.1", "version": "v5.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/http-foundation.git", "url": "https://github.com/symfony/http-foundation.git",
"reference": "8827b90cf8806e467124ad476acd15216c2fceb6" "reference": "7b6dd714d95106b831aaa7f3c9c612ab886516bd"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/8827b90cf8806e467124ad476acd15216c2fceb6", "url": "https://api.github.com/repos/symfony/http-foundation/zipball/7b6dd714d95106b831aaa7f3c9c612ab886516bd",
"reference": "8827b90cf8806e467124ad476acd15216c2fceb6", "reference": "7b6dd714d95106b831aaa7f3c9c612ab886516bd",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -6382,7 +6382,7 @@
"description": "Defines an object-oriented layer for the HTTP specification", "description": "Defines an object-oriented layer for the HTTP specification",
"homepage": "https://symfony.com", "homepage": "https://symfony.com",
"support": { "support": {
"source": "https://github.com/symfony/http-foundation/tree/v5.3.1" "source": "https://github.com/symfony/http-foundation/tree/v5.3.2"
}, },
"funding": [ "funding": [
{ {
@ -6398,20 +6398,20 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2021-06-02T09:32:00+00:00" "time": "2021-06-12T10:15:17+00:00"
}, },
{ {
"name": "symfony/http-kernel", "name": "symfony/http-kernel",
"version": "v5.3.1", "version": "v5.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/http-kernel.git", "url": "https://github.com/symfony/http-kernel.git",
"reference": "74eb022e3bac36b3d3a897951a98759f2b32b864" "reference": "e7021165d9dbfb4051296b8de827e92c8a7b5c87"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/http-kernel/zipball/74eb022e3bac36b3d3a897951a98759f2b32b864", "url": "https://api.github.com/repos/symfony/http-kernel/zipball/e7021165d9dbfb4051296b8de827e92c8a7b5c87",
"reference": "74eb022e3bac36b3d3a897951a98759f2b32b864", "reference": "e7021165d9dbfb4051296b8de827e92c8a7b5c87",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -6494,7 +6494,7 @@
"description": "Provides a structured process for converting a Request into a Response", "description": "Provides a structured process for converting a Request into a Response",
"homepage": "https://symfony.com", "homepage": "https://symfony.com",
"support": { "support": {
"source": "https://github.com/symfony/http-kernel/tree/v5.3.1" "source": "https://github.com/symfony/http-kernel/tree/v5.3.2"
}, },
"funding": [ "funding": [
{ {
@ -6510,20 +6510,20 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2021-06-02T10:07:12+00:00" "time": "2021-06-17T14:18:27+00:00"
}, },
{ {
"name": "symfony/mime", "name": "symfony/mime",
"version": "v5.3.0", "version": "v5.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/mime.git", "url": "https://github.com/symfony/mime.git",
"reference": "ed710d297b181f6a7194d8172c9c2423d58e4852" "reference": "47dd7912152b82d0d4c8d9040dbc93d6232d472a"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/mime/zipball/ed710d297b181f6a7194d8172c9c2423d58e4852", "url": "https://api.github.com/repos/symfony/mime/zipball/47dd7912152b82d0d4c8d9040dbc93d6232d472a",
"reference": "ed710d297b181f6a7194d8172c9c2423d58e4852", "reference": "47dd7912152b82d0d4c8d9040dbc93d6232d472a",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -6577,7 +6577,7 @@
"mime-type" "mime-type"
], ],
"support": { "support": {
"source": "https://github.com/symfony/mime/tree/v5.3.0" "source": "https://github.com/symfony/mime/tree/v5.3.2"
}, },
"funding": [ "funding": [
{ {
@ -6593,7 +6593,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2021-05-26T17:43:10+00:00" "time": "2021-06-09T10:58:01+00:00"
}, },
{ {
"name": "symfony/polyfill-ctype", "name": "symfony/polyfill-ctype",
@ -7326,16 +7326,16 @@
}, },
{ {
"name": "symfony/process", "name": "symfony/process",
"version": "v5.3.0", "version": "v5.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/process.git", "url": "https://github.com/symfony/process.git",
"reference": "53e36cb1c160505cdaf1ef201501669c4c317191" "reference": "714b47f9196de61a196d86c4bad5f09201b307df"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/process/zipball/53e36cb1c160505cdaf1ef201501669c4c317191", "url": "https://api.github.com/repos/symfony/process/zipball/714b47f9196de61a196d86c4bad5f09201b307df",
"reference": "53e36cb1c160505cdaf1ef201501669c4c317191", "reference": "714b47f9196de61a196d86c4bad5f09201b307df",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -7368,7 +7368,7 @@
"description": "Executes commands in sub-processes", "description": "Executes commands in sub-processes",
"homepage": "https://symfony.com", "homepage": "https://symfony.com",
"support": { "support": {
"source": "https://github.com/symfony/process/tree/v5.3.0" "source": "https://github.com/symfony/process/tree/v5.3.2"
}, },
"funding": [ "funding": [
{ {
@ -7384,7 +7384,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2021-05-26T12:52:38+00:00" "time": "2021-06-12T10:15:01+00:00"
}, },
{ {
"name": "symfony/psr-http-message-bridge", "name": "symfony/psr-http-message-bridge",
@ -7645,16 +7645,16 @@
}, },
{ {
"name": "symfony/string", "name": "symfony/string",
"version": "v5.3.0", "version": "v5.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/string.git", "url": "https://github.com/symfony/string.git",
"reference": "a9a0f8b6aafc5d2d1c116dcccd1573a95153515b" "reference": "0732e97e41c0a590f77e231afc16a327375d50b0"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/string/zipball/a9a0f8b6aafc5d2d1c116dcccd1573a95153515b", "url": "https://api.github.com/repos/symfony/string/zipball/0732e97e41c0a590f77e231afc16a327375d50b0",
"reference": "a9a0f8b6aafc5d2d1c116dcccd1573a95153515b", "reference": "0732e97e41c0a590f77e231afc16a327375d50b0",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -7708,7 +7708,7 @@
"utf8" "utf8"
], ],
"support": { "support": {
"source": "https://github.com/symfony/string/tree/v5.3.0" "source": "https://github.com/symfony/string/tree/v5.3.2"
}, },
"funding": [ "funding": [
{ {
@ -7724,20 +7724,20 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2021-05-26T17:43:10+00:00" "time": "2021-06-06T09:51:56+00:00"
}, },
{ {
"name": "symfony/translation", "name": "symfony/translation",
"version": "v5.3.0", "version": "v5.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/translation.git", "url": "https://github.com/symfony/translation.git",
"reference": "251de0d921c42ef0a81494d8f37405421deefdf6" "reference": "7e2603bcc598e14804c4d2359d8dc4ee3c40391b"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/translation/zipball/251de0d921c42ef0a81494d8f37405421deefdf6", "url": "https://api.github.com/repos/symfony/translation/zipball/7e2603bcc598e14804c4d2359d8dc4ee3c40391b",
"reference": "251de0d921c42ef0a81494d8f37405421deefdf6", "reference": "7e2603bcc598e14804c4d2359d8dc4ee3c40391b",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -7803,7 +7803,7 @@
"description": "Provides tools to internationalize your application", "description": "Provides tools to internationalize your application",
"homepage": "https://symfony.com", "homepage": "https://symfony.com",
"support": { "support": {
"source": "https://github.com/symfony/translation/tree/v5.3.0" "source": "https://github.com/symfony/translation/tree/v5.3.2"
}, },
"funding": [ "funding": [
{ {
@ -7819,7 +7819,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2021-05-29T22:28:28+00:00" "time": "2021-06-06T09:51:56+00:00"
}, },
{ {
"name": "symfony/translation-contracts", "name": "symfony/translation-contracts",
@ -7901,16 +7901,16 @@
}, },
{ {
"name": "symfony/var-dumper", "name": "symfony/var-dumper",
"version": "v5.3.0", "version": "v5.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/var-dumper.git", "url": "https://github.com/symfony/var-dumper.git",
"reference": "1d3953e627fe4b5f6df503f356b6545ada6351f3" "reference": "905a22c68b292ffb6f20d7636c36b220d1fba5ae"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/1d3953e627fe4b5f6df503f356b6545ada6351f3", "url": "https://api.github.com/repos/symfony/var-dumper/zipball/905a22c68b292ffb6f20d7636c36b220d1fba5ae",
"reference": "1d3953e627fe4b5f6df503f356b6545ada6351f3", "reference": "905a22c68b292ffb6f20d7636c36b220d1fba5ae",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -7969,7 +7969,7 @@
"dump" "dump"
], ],
"support": { "support": {
"source": "https://github.com/symfony/var-dumper/tree/v5.3.0" "source": "https://github.com/symfony/var-dumper/tree/v5.3.2"
}, },
"funding": [ "funding": [
{ {
@ -7985,20 +7985,20 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2021-05-27T12:28:50+00:00" "time": "2021-06-06T09:51:56+00:00"
}, },
{ {
"name": "symfony/yaml", "name": "symfony/yaml",
"version": "v5.3.0", "version": "v5.3.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/yaml.git", "url": "https://github.com/symfony/yaml.git",
"reference": "3bbcf262fceb3d8f48175302e6ba0ac96e3a5a11" "reference": "71719ab2409401711d619765aa255f9d352a59b2"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/yaml/zipball/3bbcf262fceb3d8f48175302e6ba0ac96e3a5a11", "url": "https://api.github.com/repos/symfony/yaml/zipball/71719ab2409401711d619765aa255f9d352a59b2",
"reference": "3bbcf262fceb3d8f48175302e6ba0ac96e3a5a11", "reference": "71719ab2409401711d619765aa255f9d352a59b2",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -8044,7 +8044,7 @@
"description": "Loads and dumps YAML files", "description": "Loads and dumps YAML files",
"homepage": "https://symfony.com", "homepage": "https://symfony.com",
"support": { "support": {
"source": "https://github.com/symfony/yaml/tree/v5.3.0" "source": "https://github.com/symfony/yaml/tree/v5.3.2"
}, },
"funding": [ "funding": [
{ {
@ -8060,7 +8060,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2021-05-26T17:43:10+00:00" "time": "2021-06-06T09:51:56+00:00"
}, },
{ {
"name": "thecodingmachine/safe", "name": "thecodingmachine/safe",
@ -11584,6 +11584,7 @@
"type": "github" "type": "github"
} }
], ],
"abandoned": true,
"time": "2020-09-28T06:45:17+00:00" "time": "2020-09-28T06:45:17+00:00"
}, },
{ {

View file

@ -5,9 +5,9 @@ current:
major: 0 major: 0
minor: 7 minor: 7
patch: 4 patch: 4
prerelease: 1-gafb5b4a prerelease: 2-g3a1921e
buildmetadata: '' buildmetadata: ''
commit: afb5b4 commit: 3a1921
timestamp: timestamp:
year: 2020 year: 2020
month: 10 month: 10

3222
package-lock.json generated

File diff suppressed because it is too large Load diff