From 2ff37978936bc397175c27928ad18526853a4631 Mon Sep 17 00:00:00 2001 From: DiscoverSquishy Date: Mon, 28 Jan 2019 19:41:57 +0300 Subject: [PATCH 01/12] Added SSL Troubleshooting & Fixed Spelling Errors --- ops/publish_release.md | 6 +++--- panel/configuration.md | 4 ++-- panel/troubleshooting.md | 4 ++-- tutorials/creating_ssl_certificates.md | 22 ++++++++++++++++++++++ tutorials/mysql_setup.md | 2 +- 5 files changed, 30 insertions(+), 8 deletions(-) diff --git a/ops/publish_release.md b/ops/publish_release.md index 6b0b4fea..6a94d31d 100644 --- a/ops/publish_release.md +++ b/ops/publish_release.md @@ -11,13 +11,13 @@ day-to-day basis. ## Pick a Codename If this is going to be a major version release `0.X` or `1.X` (not `0.0.X`), you will need to have a codename picked out for the release. This should be some type of rhyme or otherwise creative name, ideally using some type of Pterodactyl -releated species name. +related species name. ## Create the Release Branch Releases should be created as their own branch on Github, following the GitFlow model. This means you'll need to create a `release/vX.X.X` branch. Once the branch is created you need to update the version number for the software. For the Panel -this requires editing `config/app.php` and setting the specific `APP_VERSION` _without_ a preceeding `v`. For the Daemon, -you need to edit `package.json` and set the `version` field, again _without_ a preceeding `v`. +this requires editing `config/app.php` and setting the specific `APP_VERSION` _without_ a preceding `v`. For the Daemon, +you need to edit `package.json` and set the `version` field, again _without_ a preceding `v`. Once you've created the branch and update the relevant file publish the branch to Github to begin the next steps. diff --git a/panel/configuration.md b/panel/configuration.md index bc7692e9..34400c59 100644 --- a/panel/configuration.md +++ b/panel/configuration.md @@ -12,12 +12,12 @@ is because the internal logic the Panel is using to determine how links should b HTTP, and not over HTTPS. You will need to edit the `.env` file in the Panel's root directory to contain `TRUSTED_PROXIES=*` at minimum. We -highly suggest providing a specific IP address (or comma seperated list of IPs) rather than allowing `*`. For example, +highly suggest providing a specific IP address (or comma separated list of IPs) rather than allowing `*`. For example, if your proxy is running on the same machine as the server, chances are that something like `TRUSTED_PROXIES=127.0.0.1` will work for you. ### Cloudflare Specific Configuration -If you're using Cloudflares Flexible SSL you should set `TRUSTED_PROXIES` to contain [their IP addresses](https://www.cloudflare.com/ips/). +If you're using Cloudflare's Flexible SSL you should set `TRUSTED_PROXIES` to contain [their IP addresses](https://www.cloudflare.com/ips/). Below is an example of how to set this. ``` diff --git a/panel/troubleshooting.md b/panel/troubleshooting.md index 88f2dc42..6f600c4d 100644 --- a/panel/troubleshooting.md +++ b/panel/troubleshooting.md @@ -44,7 +44,7 @@ local.ERROR: ErrorException: file_put_contents(...): failed to open stream: Perm From this error we can determine that there was an error performing a [file_put_contents()](http://php.net/manual/en/function.file-put-contents.php) call, and the error was that we couldn't open the file because permissions were denied. Its okay if you don't understand the error at all, but it does help you get faster support if you're able to provide these logs, and at least find the source of the error. -Sometimes the errors are pretty strightforward and will tell you exactly what went wrong, such as a `ConnectionException` +Sometimes the errors are pretty straightforward and will tell you exactly what went wrong, such as a `ConnectionException` being thrown when the Panel can't connect to the Daemon. ### Utilizing GREP @@ -116,7 +116,7 @@ installation of the Panel. When restoring backups you should _always_ restore the `.env` file! ::: -Sometimes when using the Panel you'll unexpectely encounter a broken page, and upon checking the logs you'll see +Sometimes when using the Panel you'll unexpectedly encounter a broken page, and upon checking the logs you'll see an exception mentioning an invalid MAC when decrypting. This error is caused by mismatched `APP_KEY`s in your `.env` file when the data was encrypted versus decrypted. diff --git a/tutorials/creating_ssl_certificates.md b/tutorials/creating_ssl_certificates.md index 7035e6eb..8c4391b1 100644 --- a/tutorials/creating_ssl_certificates.md +++ b/tutorials/creating_ssl_certificates.md @@ -34,3 +34,25 @@ which provides more options, and is much more powerful than certbot. ``` text certbot renew ``` + +## Troubleshooting +If you get a `Insecure Connection` or related when trying to access your panel, it is likely that the SSL has expired. +This can be easily fixed by renewing the SSL certificate, although using the command +``` text +certbot renew +``` +Wont do the job. As it'll give a error such as `Error: Attempting to renew cert (domain) from /etc/letsencrypt/renew/domain.conf produced an unexpected error`. +This will happen especially if your running NGINX instead of Apache, the solution for this is to stop NGINX, renew the certificate then start NGINX once again. +You can do this by running, +```bash +systemctl stop NGINX +``` +To stop the NGINX service. Now you need to renew the certificate, you can do this by running, +```bash +certbot renew +``` +Wait for the process to complete. +Once it has, you may now re-start the NGINX service using, +```bash +systemctl start NGINX +``` diff --git a/tutorials/mysql_setup.md b/tutorials/mysql_setup.md index 778f4f5b..958c61e1 100644 --- a/tutorials/mysql_setup.md +++ b/tutorials/mysql_setup.md @@ -25,7 +25,7 @@ to `somePassword`. ``` sql USE mysql; -# Remeber to change 'somePassword' below to be a unique password specific to this account. +# Remember to change 'somePassword' below to be a unique password specific to this account. CREATE USER 'pterodactyl'@'127.0.0.1' IDENTIFIED BY 'somePassword'; ``` From 2ad2ad30b3391e0023995c6e334d738700f07e3e Mon Sep 17 00:00:00 2001 From: DiscoverSquishy Date: Wed, 30 Jan 2019 20:04:59 +0300 Subject: [PATCH 02/12] Fixed command issues with capitalization. --- tutorials/creating_ssl_certificates.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tutorials/creating_ssl_certificates.md b/tutorials/creating_ssl_certificates.md index 8c4391b1..dfc8388b 100644 --- a/tutorials/creating_ssl_certificates.md +++ b/tutorials/creating_ssl_certificates.md @@ -45,7 +45,7 @@ Wont do the job. As it'll give a error such as `Error: Attempting to renew cert This will happen especially if your running NGINX instead of Apache, the solution for this is to stop NGINX, renew the certificate then start NGINX once again. You can do this by running, ```bash -systemctl stop NGINX +systemctl stop nginx ``` To stop the NGINX service. Now you need to renew the certificate, you can do this by running, ```bash @@ -54,5 +54,5 @@ certbot renew Wait for the process to complete. Once it has, you may now re-start the NGINX service using, ```bash -systemctl start NGINX +systemctl start nginx ``` From cf036b73da578b37aba2914ff3e2cca77d80944f Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Thu, 31 Jan 2019 20:37:32 -0800 Subject: [PATCH 03/12] Update standalone_sftp.md --- daemon/standalone_sftp.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/daemon/standalone_sftp.md b/daemon/standalone_sftp.md index 4609b227..57c70d77 100644 --- a/daemon/standalone_sftp.md +++ b/daemon/standalone_sftp.md @@ -34,7 +34,7 @@ Once you've done that, restarting the Daemon will apply the change and not boot To download the standalone server, execute the command below in your Daemon's base directory (generally `/srv/daemon`). ``` sh -curl -Lo sftp-server https://github.com/pterodactyl/sftp-server/releases/download/v1.0.2/sftp-server +curl -Lo sftp-server https://github.com/pterodactyl/sftp-server/releases/download/v1.0.3/sftp-server chmod +x sftp-server ``` From 74149990c6c9f3c31e2e8847524a85c5498dc845 Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Thu, 31 Jan 2019 20:43:39 -0800 Subject: [PATCH 04/12] Update daemon version --- daemon/installing.md | 2 +- daemon/upgrade/0.5_to_0.6.md | 2 +- daemon/upgrade/0.6.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/daemon/installing.md b/daemon/installing.md index ff59f488..aad5b126 100644 --- a/daemon/installing.md +++ b/daemon/installing.md @@ -125,7 +125,7 @@ set when creating the node. The next step is to download the software and unpack the archive. ``` bash -curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.8/daemon.tar.gz | tar --strip-components=1 -xzv +curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.9/daemon.tar.gz | tar --strip-components=1 -xzv ``` Finally, we need to install the dependencies that allow the Daemon to run properly. This command will most likely diff --git a/daemon/upgrade/0.5_to_0.6.md b/daemon/upgrade/0.5_to_0.6.md index 29d50cd7..982a97af 100644 --- a/daemon/upgrade/0.5_to_0.6.md +++ b/daemon/upgrade/0.5_to_0.6.md @@ -29,7 +29,7 @@ systemctl stop wings ::: ``` bash -curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.8/daemon.tar.gz | tar --strip-components=1 -xzv +curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.9/daemon.tar.gz | tar --strip-components=1 -xzv ``` Then, update the core dependencies for the Daemon with the following command. diff --git a/daemon/upgrade/0.6.md b/daemon/upgrade/0.6.md index f655aadd..e486c5f0 100644 --- a/daemon/upgrade/0.6.md +++ b/daemon/upgrade/0.6.md @@ -14,7 +14,7 @@ First, ensure you're in the Daemon directory, `/srv/daemon`, before continuing t that, run the command below to pull down the latest files and unpack them in the daemon directory. ``` bash -curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.8/daemon.tar.gz | tar --strip-components=1 -xzv +curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.9/daemon.tar.gz | tar --strip-components=1 -xzv ``` ## Update Components From f445184b67b62acdfc7dbc3c1eac3776ae0b1569 Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Thu, 31 Jan 2019 20:53:26 -0800 Subject: [PATCH 05/12] Bump versions on old daemon --- daemon/upgrade/0.4_to_0.5.md | 2 +- daemon/upgrade/0.5.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/daemon/upgrade/0.4_to_0.5.md b/daemon/upgrade/0.4_to_0.5.md index e0ab9c1c..1c9c166f 100644 --- a/daemon/upgrade/0.4_to_0.5.md +++ b/daemon/upgrade/0.4_to_0.5.md @@ -27,7 +27,7 @@ guide your Daemon is most likely located in `/srv/daemon`. Then, download and un command below. ``` bash -curl -L https://github.com/pterodactyl/daemon/releases/download/v0.5.6/daemon.tar.gz | tar --strip-components=1 -xzv +curl -L https://github.com/pterodactyl/daemon/releases/download/v0.5.7/daemon.tar.gz | tar --strip-components=1 -xzv ``` Then, update the core dependencies for the Daemon with the following command. diff --git a/daemon/upgrade/0.5.md b/daemon/upgrade/0.5.md index 627533fb..5b73f030 100644 --- a/daemon/upgrade/0.5.md +++ b/daemon/upgrade/0.5.md @@ -10,7 +10,7 @@ First, ensure you're in the Daemon directory, `/srv/daemon`, before continuing t that, run the command below to pull down the latest files and unpack them in the daemon directory. ``` bash -curl -L https://github.com/pterodactyl/daemon/releases/download/v0.5.6/daemon.tar.gz | tar --strip-components=1 -xzv +curl -L https://github.com/pterodactyl/daemon/releases/download/v0.5.7/daemon.tar.gz | tar --strip-components=1 -xzv ``` ## Update Components From 16e5cedc794ff5214a9b827815e98215f450dcce Mon Sep 17 00:00:00 2001 From: Lance Pioch Date: Fri, 1 Feb 2019 17:11:49 -0500 Subject: [PATCH 06/12] Update language and spelling --- tutorials/creating_ssl_certificates.md | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/tutorials/creating_ssl_certificates.md b/tutorials/creating_ssl_certificates.md index dfc8388b..d6aa4cdd 100644 --- a/tutorials/creating_ssl_certificates.md +++ b/tutorials/creating_ssl_certificates.md @@ -36,23 +36,21 @@ certbot renew ``` ## Troubleshooting -If you get a `Insecure Connection` or related when trying to access your panel, it is likely that the SSL has expired. -This can be easily fixed by renewing the SSL certificate, although using the command -``` text -certbot renew -``` -Wont do the job. As it'll give a error such as `Error: Attempting to renew cert (domain) from /etc/letsencrypt/renew/domain.conf produced an unexpected error`. -This will happen especially if your running NGINX instead of Apache, the solution for this is to stop NGINX, renew the certificate then start NGINX once again. -You can do this by running, +If you get an `Insecure Connection` or related error when trying to access your panel, it is likely that the SSL certificate has expired. +This can be easily fixed by renewing the SSL certificate, although using the command `certbot renew` won't do the job. As it'll give a error like: `Error: Attempting to renew cert (domain) from /etc/letsencrypt/renew/domain.conf produced an unexpected error`. +This will happen especially if you're running NGINX instead of Apache. The solution for this is to stop NGINX, then renew the certificate, finally restart NGINX. + +Stop NGINX: ```bash systemctl stop nginx ``` -To stop the NGINX service. Now you need to renew the certificate, you can do this by running, + +Renew the certificate: ```bash certbot renew ``` -Wait for the process to complete. -Once it has, you may now re-start the NGINX service using, + +Once the process has complete, you can restart the NGINX service: ```bash systemctl start nginx ``` From c68eb5813ed851151163984ed142f074dc8d988c Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Fri, 1 Feb 2019 20:38:35 -0800 Subject: [PATCH 07/12] 0.6.10 daemon version --- daemon/installing.md | 2 +- daemon/upgrade/0.5_to_0.6.md | 2 +- daemon/upgrade/0.6.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/daemon/installing.md b/daemon/installing.md index aad5b126..02363cfa 100644 --- a/daemon/installing.md +++ b/daemon/installing.md @@ -125,7 +125,7 @@ set when creating the node. The next step is to download the software and unpack the archive. ``` bash -curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.9/daemon.tar.gz | tar --strip-components=1 -xzv +curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.10/daemon.tar.gz | tar --strip-components=1 -xzv ``` Finally, we need to install the dependencies that allow the Daemon to run properly. This command will most likely diff --git a/daemon/upgrade/0.5_to_0.6.md b/daemon/upgrade/0.5_to_0.6.md index 982a97af..6cde2ae1 100644 --- a/daemon/upgrade/0.5_to_0.6.md +++ b/daemon/upgrade/0.5_to_0.6.md @@ -29,7 +29,7 @@ systemctl stop wings ::: ``` bash -curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.9/daemon.tar.gz | tar --strip-components=1 -xzv +curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.10/daemon.tar.gz | tar --strip-components=1 -xzv ``` Then, update the core dependencies for the Daemon with the following command. diff --git a/daemon/upgrade/0.6.md b/daemon/upgrade/0.6.md index e486c5f0..ef66a640 100644 --- a/daemon/upgrade/0.6.md +++ b/daemon/upgrade/0.6.md @@ -14,7 +14,7 @@ First, ensure you're in the Daemon directory, `/srv/daemon`, before continuing t that, run the command below to pull down the latest files and unpack them in the daemon directory. ``` bash -curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.9/daemon.tar.gz | tar --strip-components=1 -xzv +curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.10/daemon.tar.gz | tar --strip-components=1 -xzv ``` ## Update Components From 631af7a1d896e41500b8fa12001846b48722de9e Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Fri, 1 Feb 2019 21:14:58 -0800 Subject: [PATCH 08/12] Fix broken sidebar links and make it less repeated --- .vuepress/config.js | 346 +++++++++++--------------------------------- package.json | 2 +- yarn.lock | 12 +- 3 files changed, 93 insertions(+), 267 deletions(-) diff --git a/.vuepress/config.js b/.vuepress/config.js index 12ddb7cf..6eea7a9a 100644 --- a/.vuepress/config.js +++ b/.vuepress/config.js @@ -32,10 +32,6 @@ module.exports = { text: 'Get Started', link: '/project/introduction.md', }, - // { - // text: 'API Reference', - // link: '/api/' - // }, { text: 'Community Guides', link: '/community/about.md', @@ -45,263 +41,91 @@ module.exports = { link: 'https://pterodactyl.io/discord' } ], - sidebar: { - '/project/': [ - { - title: 'Project Information', - collapsable: false, - children: [ - '/project/introduction.md', - '/project/about.md', - '/project/terms.md', - ] - }, - { - title: 'Panel', - collapsable: false, - children: [ - '/panel/getting_started', - '/panel/webserver_configuration', - '/panel/upgrading', - '/panel/configuration', - '/panel/troubleshooting', - ] - }, - { - title: 'Daemon', - collapsable: false, - children: [ - '/daemon/installing', - '/daemon/upgrading', - '/daemon/configuration', - '/daemon/kernel_modifications', - '/daemon/debian_8_docker', - '/daemon/standalone_sftp', - ] - }, - { - title: 'Tutorials', - collapsable: false, - children: [ - '/tutorials/mysql_setup.md', - '/tutorials/creating_ssl_certificates.md', - ], - }, - { - title: 'Development & Ops', - collapsable: true, - children: [ - '/ops/publish_release.md', - ], - }, - // { - // title: 'API Reference', - // collapsable: true, - // children: [ - // '/', - // ] - // } - ], - '/panel/': [ - { - title: 'Project Information', - collapsable: false, - children: [ - '/project/introduction.md', - '/project/about.md', - '/project/terms.md', - ] - }, - { - title: 'Panel', - collapsable: false, - children: [ - '/panel/getting_started', - '/panel/webserver_configuration', - '/panel/upgrading', - '/panel/configuration', - '/panel/troubleshooting', - ] - }, - { - title: 'Daemon', - collapsable: false, - children: [ - '/daemon/installing', - '/daemon/upgrading', - '/daemon/configuration', - '/daemon/kernel_modifications', - '/daemon/debian_8_docker', - ] - }, - { - title: 'Tutorials', - collapsable: false, - children: [ - '/tutorials/mysql_setup.md', - '/tutorials/creating_ssl_certificates.md', - ], - }, - { - title: 'Development & Ops', - collapsable: true, - children: [ - '/ops/publish_release.md', - ], - }, - // { - // title: 'API Reference', - // collapsable: true, - // children: [ - // '/', - // ] - // } - ], - '/daemon/': [ - { - title: 'Project Information', - collapsable: false, - children: [ - '/project/introduction.md', - '/project/about.md', - '/project/terms.md', - ] - }, - { - title: 'Panel', - collapsable: false, - children: [ - '/panel/getting_started', - '/panel/webserver_configuration', - '/panel/upgrading', - '/panel/configuration', - '/panel/troubleshooting', - ] - }, - { - title: 'Daemon', - collapsable: false, - children: [ - '/daemon/installing', - '/daemon/upgrading', - '/daemon/configuration', - '/daemon/kernel_modifications', - '/daemon/debian_8_docker', - ] - }, - { - title: 'Tutorials', - collapsable: false, - children: [ - '/tutorials/mysql_setup.md', - '/tutorials/creating_ssl_certificates.md', - ], - }, - { - title: 'Development & Ops', - collapsable: true, - children: [ - '/ops/publish_release.md', - ], - }, - // { - // title: 'API Reference', - // collapsable: true, - // children: [ - // '/', - // ] - // } - ], - '/tutorials/': [ - { - title: 'Project Information', - collapsable: false, - children: [ - '/project/introduction.md', - '/project/about.md', - '/project/terms.md', - ] - }, - { - title: 'Panel', - collapsable: false, - children: [ - '/panel/getting_started', - '/panel/webserver_configuration', - '/panel/upgrading', - '/panel/configuration', - '/panel/troubleshooting', - ] - }, - { - title: 'Daemon', - collapsable: false, - children: [ - '/daemon/installing', - '/daemon/upgrading', - '/daemon/configuration', - '/daemon/kernel_modifications', - '/daemon/debian_8_docker', - ] - }, - { - title: 'Tutorials', - collapsable: false, - children: [ - '/tutorials/mysql_setup.md', - '/tutorials/creating_ssl_certificates.md', - ], - }, - { - title: 'Development & Ops', - collapsable: true, - children: [ - '/ops/publish_release.md', - ], - }, - // { - // title: 'API Reference', - // collapsable: true, - // children: [ - // '/', - // ] - // } - ], - '/community/':[ - { - title: 'Community Guides', - collapsable: false, - children: [ - '/community/about.md', - ] - }, - { - title: 'Install Panel', - collapsable: false, - children: [ - '/community/install/panel/centos7.md', - '/community/install/panel/ubuntu1804.md', - '/community/install/panel/debian9.md', - ] - }, - { - title: 'Install Daemon', - collapsable: false, - children: [ - '/community/install/daemon/centos7.md', - '/community/install/daemon/ubuntu1804.md', - '/community/install/daemon/debian9.md', - ] - }, - { - title: 'Minecraft', - collapsable: false, - children: [ - '/community/minecraft/networks.md', - ], - }, - ] - } + sidebar: { + '/community/': [ + { + title: 'Community Guides', + collapsable: false, + children: [ + '/community/about.md', + ] + }, + { + title: 'Install Panel', + collapsable: false, + children: [ + '/community/install/panel/centos7.md', + '/community/install/panel/ubuntu1804.md', + '/community/install/panel/debian9.md', + ] + }, + { + title: 'Install Daemon', + collapsable: false, + children: [ + '/community/install/daemon/centos7.md', + '/community/install/daemon/ubuntu1804.md', + '/community/install/daemon/debian9.md', + ] + }, + { + title: 'Minecraft', + collapsable: false, + children: [ + '/community/minecraft/networks.md', + ], + }, + ], + '/': [ + { + title: 'Project Information', + collapsable: false, + children: [ + '/project/introduction.md', + '/project/about.md', + '/project/terms.md', + ] + }, + { + title: 'Panel', + collapsable: false, + children: [ + '/panel/getting_started', + '/panel/webserver_configuration', + '/panel/upgrading', + '/panel/configuration', + '/panel/troubleshooting', + ] + }, + { + title: 'Daemon', + collapsable: false, + children: [ + '/daemon/installing', + '/daemon/upgrading', + '/daemon/configuration', + '/daemon/kernel_modifications', + '/daemon/debian_8_docker', + '/daemon/standalone_sftp', + ] + }, + { + title: 'Tutorials', + collapsable: false, + children: [ + '/tutorials/mysql_setup.md', + '/tutorials/creating_ssl_certificates.md', + ], + }, + { + title: 'Development & Ops', + collapsable: true, + children: [ + '/ops/publish_release.md', + ], + }, + ], + }, }, postcss: { plugins: [ diff --git a/package.json b/package.json index 34ba5f22..3445a71d 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "dependencies": { "jquery": "^3.3.1", "slick-carousel": "^1.8.1", - "vuepress": "^0.14.3" + "vuepress": "^0.14.8" }, "scripts": { "build": "./node_modules/vuepress/bin/vuepress.js build", diff --git a/yarn.lock b/yarn.lock index 48e3920e..4b8ea95c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3956,9 +3956,10 @@ min-document@^2.19.0: dependencies: dom-walk "^0.1.0" -mini-css-extract-plugin@^0.4.1: +mini-css-extract-plugin@0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.1.tgz#d2bcf77bb2596b8e4bd9257e43d3f9164c2e86cb" + integrity sha512-XWuB3G61Rtasq/gLe7cp5cuozehE6hN+E4sxCamRR/WDiHTg+f7ZIAS024r8UJQffY+e2gGELXQZgQoFDfNDCg== dependencies: "@webpack-contrib/schema-utils" "^1.0.0-beta.0" loader-utils "^1.1.0" @@ -6653,9 +6654,10 @@ vuepress-html-webpack-plugin@^3.2.0: toposort "^1.0.0" util.promisify "1.0.0" -vuepress@^0.14.3: - version "0.14.3" - resolved "https://registry.yarnpkg.com/vuepress/-/vuepress-0.14.3.tgz#ed20ab490967e5e4247577e9e2bd8b4506a3635f" +vuepress@^0.14.8: + version "0.14.8" + resolved "https://registry.yarnpkg.com/vuepress/-/vuepress-0.14.8.tgz#1e0a70a64c19e82e365eb7313b1ec88cc4ad7ab3" + integrity sha512-2BVubO3a4Nl8i/tWaO66iq2NRxxf9bh3QwDdoUuBTrhGtLgjv8mv4xrsgMpiPLXo1uk7bQY4hjZNvbYjCLCQkg== dependencies: "@babel/core" "7.0.0-beta.47" "@vue/babel-preset-app" "3.0.0-beta.11" @@ -6689,7 +6691,7 @@ vuepress@^0.14.3: markdown-it-container "^2.0.0" markdown-it-emoji "^1.4.0" markdown-it-table-of-contents "^0.4.0" - mini-css-extract-plugin "^0.4.1" + mini-css-extract-plugin "0.4.1" nprogress "^0.2.0" optimize-css-assets-webpack-plugin "^4.0.0" portfinder "^1.0.13" From 7bffd66403df6957dc10ab544f0fe925f6fda637 Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Fri, 1 Feb 2019 21:28:24 -0800 Subject: [PATCH 09/12] Fix CentOS community guide --- .vuepress/config.js | 14 +++--- community/about.md | 9 ++-- .../daemon/centos7.md | 0 .../daemon/debian9.md | 0 .../daemon/ubuntu1804.md | 0 .../panel/centos7.md | 49 +++++++++---------- .../panel/debian9.md | 0 .../panel/ubuntu1804.md | 0 8 files changed, 35 insertions(+), 37 deletions(-) rename community/{install => installation-guides}/daemon/centos7.md (100%) rename community/{install => installation-guides}/daemon/debian9.md (100%) rename community/{install => installation-guides}/daemon/ubuntu1804.md (100%) rename community/{install => installation-guides}/panel/centos7.md (67%) rename community/{install => installation-guides}/panel/debian9.md (100%) rename community/{install => installation-guides}/panel/ubuntu1804.md (100%) diff --git a/.vuepress/config.js b/.vuepress/config.js index 6eea7a9a..11ba7734 100644 --- a/.vuepress/config.js +++ b/.vuepress/config.js @@ -51,21 +51,21 @@ module.exports = { ] }, { - title: 'Install Panel', + title: 'Panel Installation', collapsable: false, children: [ - '/community/install/panel/centos7.md', - '/community/install/panel/ubuntu1804.md', - '/community/install/panel/debian9.md', + '/community/installation-guides/panel/centos7.md', + '/community/installation-guides/panel/ubuntu1804.md', + '/community/installation-guides/panel/debian9.md', ] }, { title: 'Install Daemon', collapsable: false, children: [ - '/community/install/daemon/centos7.md', - '/community/install/daemon/ubuntu1804.md', - '/community/install/daemon/debian9.md', + '/community/installation-guides/daemon/centos7.md', + '/community/installation-guides/daemon/ubuntu1804.md', + '/community/installation-guides/daemon/debian9.md', ] }, { diff --git a/community/about.md b/community/about.md index fdfe5912..9e96ab12 100644 --- a/community/about.md +++ b/community/about.md @@ -1,5 +1,6 @@ -# Introduction -This is the community guide section of the site. +# About +This section of Pterodactyl's site is dedicated to more complex topics, tutorials, and features that we +feel are important to share with the community, but do not fit into the theme of our core documentation. -## -This is the area for community maintained guides that have been validated before being added. \ No newline at end of file +Here you'll find in-depth OS-specific installation guides, advanced network configurations, individual game +setup instructions, and so much more. diff --git a/community/install/daemon/centos7.md b/community/installation-guides/daemon/centos7.md similarity index 100% rename from community/install/daemon/centos7.md rename to community/installation-guides/daemon/centos7.md diff --git a/community/install/daemon/debian9.md b/community/installation-guides/daemon/debian9.md similarity index 100% rename from community/install/daemon/debian9.md rename to community/installation-guides/daemon/debian9.md diff --git a/community/install/daemon/ubuntu1804.md b/community/installation-guides/daemon/ubuntu1804.md similarity index 100% rename from community/install/daemon/ubuntu1804.md rename to community/installation-guides/daemon/ubuntu1804.md diff --git a/community/install/panel/centos7.md b/community/installation-guides/panel/centos7.md similarity index 67% rename from community/install/panel/centos7.md rename to community/installation-guides/panel/centos7.md index 58992a8a..1009462b 100644 --- a/community/install/panel/centos7.md +++ b/community/installation-guides/panel/centos7.md @@ -1,15 +1,17 @@ -# Install pterodactyl on CentOS 7 - -This guide covers the installation of the requirements for a panel with SSL enabled. +# CentOS 7 +In this guide we will install Pterodactyl — including all of it's dependencies — and configure our webserver +to serve it using SSL. [[toc]] -## Install Requirements +::: tip +This guide is based off the [official installation documentation](/panel/getting_started.md) but is tailored specifically for CentOS 7. +::: -The panel requirements can be found [here](/panel/getting_started.md#dependencies) +## Install Requirements +We will first begin by installing all of Pterodactyl's [required](/panel/getting_started.md#dependencies) dependencies. ### MariaDB - ```bash ## Install Repos cat < /etc/yum.repos.d/mariadb.repo @@ -47,8 +49,7 @@ yum update -y yum install -y php72u-php php72u-common php72u-fpm php72u-cli php72u-json php72u-mysqlnd php72u-mcrypt php72u-gd php72u-mbstring php72u-pdo php72u-zip php72u-bcmath php72u-dom php72u-opcache ``` -### nginx - +### Nginx ```bash yum install -y nginx @@ -58,7 +59,6 @@ firewall-cmd --reload ``` ### Redis - ```bash yum install -y redis40u @@ -66,14 +66,14 @@ systemctl start redis systemctl enable redis ``` -### utilities +### Additional Utilities -#### certbot +#### Certbot ```bash yum install -y certbot ``` -#### composer +#### Composer ```bash curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer ``` @@ -82,7 +82,7 @@ curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin This following section covers the configuration of parts of the server to run the panel. -### MariaDB +### Configuring MariaDB The fastest way to set up mariadb is to use the `mysql_secure_installation` command and follow prompts ```bash @@ -110,10 +110,9 @@ All done! If you've completed all of the above steps, your MariaDB installation should now be secure. #### Adding MariaDB user -We have a tutorial in the tutorial section -[Setting up MySQL](/tutorials/mysql_setup.md) +To add your first user to the database, see our tutorial on [setting up MySQL](/tutorials/mysql_setup.md). -### PHP +### Setup PHP Place the contents below in a file inside the `/etc/php-fpm.d` folder. The file can be named anything, but a good standard is `www-pterodactyl.conf`. This config will match the nginx config later in the guide. @@ -125,17 +124,15 @@ systemctl enable php-fpm systemctl start php-fpm ``` -### nginx +### Nginx +Please check our [tutorial](/tutorials/creating_ssl_certificates.md) on generating SSL certificates for more information. -follow the [tutorial](/tutorials/creating_ssl_certificates.md) on generating an SSL cert to use. - -#### ssl config +#### SSL Configuration <<< @/.snippets/webservers/nginx-centos.conf{5,11,26-27} -### Redis -The default Redis install is perfectly fine for the panel. +### Redis Setup +The default Redis install is perfectly fine for the panel. If you have Redis already in use you may want to look into +[running another Redis instance](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host). -If you have Redis already in use you may want to look into running another Redis instance similar to [this guide](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host) - -## Installing the panel -Follow the regular guide to install the [panel](/panel/getting_started.md#installation) +## Installing the Panel +Excellent, we now have all of the required dependencies installed and configured. From here, follow the [official Panel installation documentation](/panel/getting_started.md#installation). diff --git a/community/install/panel/debian9.md b/community/installation-guides/panel/debian9.md similarity index 100% rename from community/install/panel/debian9.md rename to community/installation-guides/panel/debian9.md diff --git a/community/install/panel/ubuntu1804.md b/community/installation-guides/panel/ubuntu1804.md similarity index 100% rename from community/install/panel/ubuntu1804.md rename to community/installation-guides/panel/ubuntu1804.md From d2342f248e4de9e37e4bca185d601ca62d291046 Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Fri, 1 Feb 2019 21:35:30 -0800 Subject: [PATCH 10/12] Finish cleaning panel install guides --- .../installation-guides/panel/centos7.md | 2 - .../installation-guides/panel/debian9.md | 59 ++++++++----------- .../installation-guides/panel/ubuntu1804.md | 57 ++++++++---------- 3 files changed, 52 insertions(+), 66 deletions(-) diff --git a/community/installation-guides/panel/centos7.md b/community/installation-guides/panel/centos7.md index 1009462b..d8ab3331 100644 --- a/community/installation-guides/panel/centos7.md +++ b/community/installation-guides/panel/centos7.md @@ -79,7 +79,6 @@ curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin ``` ## Server Configuration - This following section covers the configuration of parts of the server to run the panel. ### Configuring MariaDB @@ -113,7 +112,6 @@ installation should now be secure. To add your first user to the database, see our tutorial on [setting up MySQL](/tutorials/mysql_setup.md). ### Setup PHP - Place the contents below in a file inside the `/etc/php-fpm.d` folder. The file can be named anything, but a good standard is `www-pterodactyl.conf`. This config will match the nginx config later in the guide. <<< @/.snippets/php-fpm/pterodactyl-centos.conf diff --git a/community/installation-guides/panel/debian9.md b/community/installation-guides/panel/debian9.md index fa71e6e8..a74db9c7 100644 --- a/community/installation-guides/panel/debian9.md +++ b/community/installation-guides/panel/debian9.md @@ -1,15 +1,17 @@ -# Install pterodactyl on Debian 9 - -This guide covers the installation of the requirements for a panel with SSL enabled. +# Debian 9 +In this guide we will install Pterodactyl — including all of it's dependencies — and configure our webserver +to serve it using SSL. [[toc]] -## Install Requirements +::: tip +This guide is based off the [official installation documentation](/panel/getting_started.md) but is tailored specifically for Debian 9. +::: -The panel requirements can be found [here](/panel/getting_started.md#dependencies) +## Install Requirements +We will first begin by installing all of Pterodactyl's [required](/panel/getting_started.md#dependencies) dependencies. ### MariaDB - ```bash apt install -y software-properties-common dirmngr @@ -31,7 +33,6 @@ systemctl enable mariadb ``` ### PHP 7.2 - ```bash ## Install the PHP 7.2 repo for debian apt install -y ca-certificates apt-transport-https @@ -45,14 +46,12 @@ apt update apt install -y php7.2 php7.2-cli php7.2-gd php7.2-mysql php7.2-pdo php7.2-mbstring php7.2-tokenizer php7.2-bcmath php7.2-xml php7.2-fpm php7.2-curl php7.2-zip ``` -### nginx - +### Nginx ```bash apt install -y nginx ``` ### Redis - ```bash apt install -y redis-server @@ -60,23 +59,22 @@ systemctl start redis-server systemctl enable redis-server ``` -### utilities +### Additional Utilities -#### certbot +#### Certbot ```bash apt install -y certbot curl ``` -#### composer +#### Composer ```bash curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer ``` ## Server Configuration - This following section covers the configuration of parts of the server to run the panel. -### MariaDB +### Configuring MariaDB The fastest way to set up mariadb is to use the `mysql_secure_installation` command and follow prompts ```bash @@ -100,35 +98,30 @@ Extra databases that aren't needed Clears and sets all the changes made `Reload privilege tables now? [Y/n] Y` -All done! If you've completed all of the above steps, your MariaDB -installation should now be secure. +All done! If you've completed all of the above steps, your MariaDB installation should now be secure. #### Adding MariaDB user -We have a tutorial in the tutorial section -[Setting up MySQL](/tutorials/mysql_setup.md) +To add your first user to the database, see our tutorial on [setting up MySQL](/tutorials/mysql_setup.md). -### PHP +### Setup PHP +The default php-fpm configuration is fine to use and can be started and then enabled on the system using the +commands below. -The default php-fpm configuration is good to use. - -Start and enable php-fpm on the system. ```bash systemctl enable php7.2-fpm systemctl start php7.2-fpm ``` -### nginx +### Nginx +Please check our [tutorial](/tutorials/creating_ssl_certificates.md) on generating SSL certificates for more information. -follow the [tutorial](/tutorials/creating_ssl_certificates.md) on generating an SSL cert to use. - -#### ssl config +#### SSL Configuration <<< @/.snippets/webservers/nginx.conf{5,11,26-27} -### Redis -The default Redis install is perfectly fine for the panel. +### Redis Setup +The default Redis install is perfectly fine for the panel. If you have Redis already in use you may want to look into +[running another Redis instance](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host). -If you have Redis already in use you may want to look into running another Redis instance similar to [this guide](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host) - -## Installing the panel -Follow the regular guide to install the [panel](/panel/getting_started.md#installation) \ No newline at end of file +## Installing the Panel +Excellent, we now have all of the required dependencies installed and configured. From here, follow the [official Panel installation documentation](/panel/getting_started.md#installation). diff --git a/community/installation-guides/panel/ubuntu1804.md b/community/installation-guides/panel/ubuntu1804.md index f43628cb..6ee8b2af 100644 --- a/community/installation-guides/panel/ubuntu1804.md +++ b/community/installation-guides/panel/ubuntu1804.md @@ -1,15 +1,17 @@ -# Install pterodactyl on Ubuntu 18.04 - -This guide covers the installation of the requirements for a panel with SSL enabled. +# Ubuntu 18.04 +In this guide we will install Pterodactyl — including all of it's dependencies — and configure our webserver +to serve it using SSL. [[toc]] -## Install Requirements +::: tip +This guide is based off the [official installation documentation](/panel/getting_started.md) but is tailored specifically for Ubuntu 18.04. +::: -The panel requirements can be found [here](/panel/getting_started.md#dependencies) +## Install Requirements +We will first begin by installing all of Pterodactyl's [required](/panel/getting_started.md#dependencies) dependencies. ### MariaDB - ```bash ## Get apt updates apt update -y @@ -32,7 +34,7 @@ apt update -y apt install -y php7.2 php7.2-cli php7.2-gd php7.2-mysql php7.2-pdo php7.2-mbstring php7.2-tokenizer php7.2-bcmath php7.2-xml php7.2-fpm php7.2-curl php7.2-zip ``` -### nginx +### Nginx ```bash apt install -y nginx @@ -47,23 +49,22 @@ systemctl start redis-server systemctl enable redis-server ``` -### utilities +### Additional Utilities -#### certbot +#### Certbot ```bash apt install -y certbot ``` -#### composer +#### Composer ```bash curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer ``` ## Server Configuration - This following section covers the configuration of parts of the server to run the panel. -### MariaDB +### Configuring MariaDB The fastest way to set up MariaDB is to use the `mysql_secure_installation` command and follow prompts ```bash @@ -87,35 +88,29 @@ Extra databases that aren't needed Clears and sets all the changes made `Reload privilege tables now? [Y/n] Y` -All done! If you've completed all of the above steps, your MariaDB -installation should now be secure. +All done! If you've completed all of the above steps, your MariaDB installation should now be secure. #### Adding MariaDB user -We have a tutorial in the tutorial section -[Setting up MySQL](/tutorials/mysql_setup.md) +To add your first user to the database, see our tutorial on [setting up MySQL](/tutorials/mysql_setup.md). -### PHP +### Setup PHP +The default php-fpm configuration is fine to use and can be started and then enabled on the system using the +commands below. -The default php-fpm configuration is good to use. - -Start and enable php-fpm on the system. ```bash systemctl enable php7.2-fpm systemctl start php7.2-fpm ``` -### nginx +### Nginx +Please check our [tutorial](/tutorials/creating_ssl_certificates.md) on generating SSL certificates for more information. -follow the [tutorial](/tutorials/creating_ssl_certificates.md) on generating an SSL cert to use. - -#### ssl config +#### SSL Configuration <<< @/.snippets/webservers/nginx.conf{5,11,26-27} +### Redis Setup +The default Redis install is perfectly fine for the panel. If you have Redis already in use you may want to look into +[running another Redis instance](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host). -### Redis -The default Redis install is perfectly fine for the panel. - -If you have Redis already in use you may want to look into running another Redis instance similar to [this guide](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host) - -## Installing the panel -Follow the regular guide to install the [panel](/panel/getting_started.md#installation) +## Installing the Panel +Excellent, we now have all of the required dependencies installed and configured. From here, follow the [official Panel installation documentation](/panel/getting_started.md#installation). From fae7fd77294d2c4d7eb2516b37858afce8307123 Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Fri, 1 Feb 2019 21:40:44 -0800 Subject: [PATCH 11/12] Finish cleanup --- .vuepress/config.js | 2 +- .../installation-guides/daemon/centos7.md | 22 ++++++++++--------- .../installation-guides/daemon/debian9.md | 19 +++++++++------- .../installation-guides/daemon/ubuntu1804.md | 19 +++++++++------- 4 files changed, 35 insertions(+), 27 deletions(-) diff --git a/.vuepress/config.js b/.vuepress/config.js index 11ba7734..7c88050d 100644 --- a/.vuepress/config.js +++ b/.vuepress/config.js @@ -60,7 +60,7 @@ module.exports = { ] }, { - title: 'Install Daemon', + title: 'Daemon Installation', collapsable: false, children: [ '/community/installation-guides/daemon/centos7.md', diff --git a/community/installation-guides/daemon/centos7.md b/community/installation-guides/daemon/centos7.md index 8c8ea28a..408049fc 100644 --- a/community/installation-guides/daemon/centos7.md +++ b/community/installation-guides/daemon/centos7.md @@ -1,12 +1,15 @@ -# Install wings on CentOS 7 - -This guide covers the installation of the requirements for a daemon with SSL enabled. +# CentOS 7 +In this guide we will install Pterodactyl's Daemon (wings) — including all of it's dependencies — and configure it +to use a SSL connection. [[toc]] -## Install Requirements +::: tip +This guide is based off the [official installation documentation](/daemon/installing.md) but is tailored specifically for CentOS 7. +::: -The daemon requirements can be found [here](/daemon/installing.md#system-requirements) +## Install Requirements +We will first begin by installing all of the Daemon's [required](/daemon/installing.md#dependencies) dependencies. ### General Requirements ```bash @@ -26,15 +29,14 @@ systemctl enable docker systemctl start docker ``` -### nodejs +### Nodejs ```bash curl --silent --location https://rpm.nodesource.com/setup_8.x | bash - yum install -y nodejs ``` -### server ports - +### Server Ports ```bash firewall-cmd --add-port 8080/tcp --permanent firewall-cmd --add-port 2022/tcp --permanent @@ -42,5 +44,5 @@ firewall-cmd --permanent --zone=trusted --change-interface=docker0 firewall-cmd --reload ``` -## Installing the daemon -Follow the regular guide to install the [daemon](/daemon/installing.md#installing-daemon-software) \ No newline at end of file +## Installing the Daemon +Great, now all of the dependencies and firewall rules have been dealt with. From here follow the [official Daemon installation documentation](/daemon/installing.md#installing-daemon-software). diff --git a/community/installation-guides/daemon/debian9.md b/community/installation-guides/daemon/debian9.md index bf417eae..ee73a93e 100644 --- a/community/installation-guides/daemon/debian9.md +++ b/community/installation-guides/daemon/debian9.md @@ -1,12 +1,15 @@ -# Install wings on Debian 9 - -This guide covers the installation of the requirements for a daemon with SSL enabled. +# Debian 9 +In this guide we will install Pterodactyl's Daemon (wings) — including all of it's dependencies — and configure it +to use a SSL connection. [[toc]] -## Install Requirements +::: tip +This guide is based off the [official installation documentation](/daemon/installing.md) but is tailored specifically for Debian 9. +::: -The daemon requirements can be found [here](/daemon/installing.md#system-requirements) +## Install Requirements +We will first begin by installing all of the Daemon's [required](/daemon/installing.md#dependencies) dependencies. ### General Requirements ```bash @@ -33,7 +36,7 @@ systemctl enable docker systemctl start docker ``` -### nodejs +### Nodejs ```bash ## Install nodejs repo @@ -43,5 +46,5 @@ curl -sL https://deb.nodesource.com/setup_8.x | bash - apt install -y nodejs ``` -## Installing the daemon -Follow the regular guide to install the [daemon](/daemon/installing.md#installing-daemon-software) \ No newline at end of file +## Installing the Daemon +Great, now all of the dependencies have been dealt with. From here follow the [official Daemon installation documentation](/daemon/installing.md#installing-daemon-software). diff --git a/community/installation-guides/daemon/ubuntu1804.md b/community/installation-guides/daemon/ubuntu1804.md index 2efc5dbd..121d5903 100644 --- a/community/installation-guides/daemon/ubuntu1804.md +++ b/community/installation-guides/daemon/ubuntu1804.md @@ -1,12 +1,15 @@ -# Install wings on Ubuntu 18.04 - -This guide covers the installation of the requirements for a daemon with SSL enabled. +# Ubuntu 18.04 +In this guide we will install Pterodactyl's Daemon (wings) — including all of it's dependencies — and configure it +to use a SSL connection. [[toc]] -## Install Requirements +::: tip +This guide is based off the [official installation documentation](/daemon/installing.md) but is tailored specifically for Ubuntu 18.04. +::: -The daemon requirements can be found [here](/daemon/installing.md#system-requirements) +## Install Requirements +We will first begin by installing all of the Daemon's [required](/daemon/installing.md#dependencies) dependencies. ### General Requirements ```bash @@ -22,11 +25,11 @@ systemctl enable docker systemctl start docker ``` -### nodejs +### Nodejs ```bash apt install -y nodejs npm ``` -## Installing the daemon -Follow the regular guide to install the [daemon](/daemon/installing.md#installing-daemon-software) \ No newline at end of file +## Installing the Daemon +Great, now all of the dependencies and firewall rules have been dealt with. From here follow the [official Daemon installation documentation](/daemon/installing.md#installing-daemon-software). From 3ba47a1ab4a77332059c1f4f1afb95466d273bb6 Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Fri, 1 Feb 2019 21:53:28 -0800 Subject: [PATCH 12/12] Server network cleanup --- community/minecraft/networks.md | 45 ++++++++++++++++++--------------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/community/minecraft/networks.md b/community/minecraft/networks.md index 41ab95d6..3dc92cfe 100644 --- a/community/minecraft/networks.md +++ b/community/minecraft/networks.md @@ -1,37 +1,42 @@ # Server Networks +This guide was written for Bungeecord, but should work fine for Waterfall and Hexacord servers. [[toc]] :::warning -This guide was written with BungeeCord in mind, but should work for Waterfall and Hexacord as well. For the setup described below, it is necessary that all servers are on the same node. ::: -## Setting up a BungeeCord network +## Setting up the Network +The ideal setup for this involves a separated internal network with only one access point — the BungeeCord server — +which is an easy configuration with Pterodactyl. In order to create a Bungeecord network you'll first need to add an +allocation to your Node that makes your Bungeecord server publicly accessible. This allocation should be for your +public IP address and the default port you wish to use — generally `25565`. -The ideal setup with BungeeCord is a seperated internal network with only one access point which is the BungeeCord server. Pterodactyl provides this with Docker. -In order to create a BungeeCord network you'll have to add an allocation with which the BungeeCord server should be reachable. Add an allocation with the IP address of the node and the desired port (e.g. 25565, the default Minecraft port) to your node first. -Then create a new BungeeCord server and use the allocation you just created. +## Adding Additional Servers +All other servers that are a part of the network should be created on local interfaces — meaning they are not publicly +accessible. Create new allocations on the localhost IP address `127.0.0.1` with some ports for the servers to use. +You can also enter a port range, e.g. `30000-30010` which will get you 11 ports. -### Adding servers to the BungeeCord network +Now create new servers and be sure to use your internal allocations — `127.0.0.1` — for each of them. To add the +servers to your network you'll use `172.18.0.1:` — or `127.0.0.1` which will automatically be resolved to your +Docker network interface IP — as the IP address in your configuration file. -All the other servers that should be part of the BungeeCord network don't require external ports. Create new allocations on the localhost IP address `127.0.0.1` with some ports for the servers to use. You can also enter a port range, e.g. `30000-30010` which will get you 11 ports. -Now create new servers and be sure to use `127.0.0.1` allocations for each of them. To add the servers to your BungeeCord network, use `172.18.0.1:` (not 127.0.0.1) as the IP addresses of the servers to add in your configuration file. +## In Conclusion +* Only the proxy server (Bungeecord/Hexacord/Waterfall) should be attached to your publically accessible IP address. +* You should _not_ make any modifications to IPTables. +* All of the servers behind the proxy are safe from direct _external_ connections, assuming you bind them to `127.0.0.1`. -## Notes +## UFW Firewall +If you are using a `ufw` firewall, it might be necessary to allow access to specific host ports. The following command +allows incoming requests to `172.18.0.1`, which is the IP of the actual host server within the docker network. Replace +`` with any port you want to be accessible. In this case use the port you assigned to the minecraft +server you want to add. -* **Only** the proxy (Waterfall / Hexagon / Bungee) has to be bound to an external IP. -* **No modifications to iptables should be done** -* all servers behind the proxy are safe. - -### UFW Firewall - -If you are using the ufw firewall, it might be necessary to allow access to specific host ports. The following command allows incoming requests to `172.18.0.1`, which is the IP of the actual host server within the docker network. Replace `` with any port you want to be accessible. In this case use the port you assigned to the minecraft server you want to add. +:::warning +The ports you open with this command will be accessible by any server _on the same node_. +::: ``` ufw allow in on pterodactyl0 to 172.18.0.1 port proto tcp ``` - -:::warning -The ports you open with this command will be accessible by any server on the same node. -::: \ No newline at end of file