# Łączenie serwerów za pomocą proxy

**URL:** <https://forum.minehost.pl/t/laczenie-serwerow-za-pomoca-proxy/717>\
**Category:** Poradniki\
**Created:** [5 Czerwiec 2021 17:26 UTC](https://forum.minehost.pl/t/laczenie-serwerow-za-pomoca-proxy/717 "2021-06-05T17:26:24Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Autor:** ![xChlebek](https://forum.minehost.pl/user_avatar/forum.minehost.pl/xchlebek/32/139_2.png) [@xChlebek](https://forum.minehost.pl/u/xChlebek)\
**Data wpisu:** [5 Czerwiec 2021 17:26 UTC](https://forum.minehost.pl/t/laczenie-serwerow-za-pomoca-proxy/717/1 "2021-06-05T17:26:24Z")

</div>

**Łączenie serwerów za pomocą proxy**

W tym poradniku pokażę jak połączyć kilka serwerów minecraft w “sieć” za pomocą proxy. Posłużę się [FlameCordem](https://www.mc-market.org/resources/13492/).

**1. Wybór silnika proxy**

Wybór silnika należy do was, lecz w skrócie opiszę wam kilka z nich.

- **BungeeCord** - najprostszy, często używany podczas początków z serwerami minecraft. Niestety posiada sporo błędów, przez co nie jest zalecany przy większych projektach.
- **Waterfall** - fork BungeeCorda, naprawiający część jego błędów oraz z szerszą możliwością konfiguracji.
- **FlameCord** - fork Travertine - wersji Waterfalla obsługującej minecrafta 1.7. Najlepiej zabezpieczony z powyższych silników proxy.
- **Velocity** - nie jest forkiem żadnego z silników proxy, jest niezależne. Według wielu osób jest to najlepszy silnik proxy. Główną, i wydaje mi się że jedyną wadą jest niedostępność większości pluginów z BungeeCorda na Velocity.

**2. Instalacja i pierwsze uruchomienie proxy**

> **Windows**
>
> W przypadku systemu Windows jest to bardzo proste. Wystarczy pobrać naszego FlameCord’a, stworzyć nowy folder, przenieść tam plik FlameCord.jar oraz stworzyć nawet najprostszy plik startowy. W przypadku systemu Windows będzie to plik z rozszerzeniem **.bat** o treści
> 
> ```bat
> java -Xmx1000M -Xms1000M -jar FlameCord.jar
> PAUSE
> 
> ```
> 
> Wartości “Xmx” oraz “Xms” To ilość pamięci RAM zużywanej przez serwer, a “FlameCord.jar” to nazwa pliku .jar z silnikiem proxy. Przy pierwszym uruchomieniu, gdy nie mamy jeszcze żadnych pluginów itp. wiadomości w konsoli powinny wyglądać mniej więcej tak:
> 
> ![Zrzut ekranu 2021-06-05 125127](https://forum.minehost.pl/uploads/default/original/1X/97e7d191f7a2f912f5f7c12c5b282ae35c6cd3bf.png)

> **Ubuntu**
>
> Dla bezpieczeństwa zalecane jest utworzenie nowego użytkownika komendą `adduser` (przełączamy się na niego przez `su <użytkownik>`.
> 
> Aby w ogóle móc uruchomić proxy, musimy zainstalować Javę oraz screen’a, komendami `apt install openjdk-11-jre-headless` (jeśli chcecie zainstalować inną wersję Javy, w miejscu 11 należy wpisać inną liczbę) oraz `apt install screen`.
> 
> Aby stworzyć folder o nazwie np. `flamecord`, należy wpisać komendę `mkdir /home/flamecord` (możesz pominąć ten krok jeśli utworzyłeś nowego użytkownika). Następnie do nowo utworzonego folderu musimy przenieść silnik proxy. (dla ułatwienia można użyć wget - `wget <bezpośredni link do silnika> -O FlameCord.jar`
> 
> Po tym musimy stworzyć plik startowy wpisując następujące komendy:  
> `cd /home/flamecord`  
> `nano start.sh`  
> W pliku wpisujemy:
> 
> ```bash
> #!/bin/bash
> 
> screen -dmS proxy java -Xmx1G -Xms1G -jar FlameCord.jar 
> 
> ```
> 
> Aby zapisać zmiany, klikamy po kolei **CTRL + O, ENTER i CTRL + X**.  
> Teraz musimy nadać uprawnienia do pliku startowego komendą `chmod 755 start.sh`.  
> Proxy uruchamiamy komendą `./start.sh` będąc w lokalizacji z plikami proxy.

Jeżeli nasze proxy uruchamia się poprawnie, możemy przejść do konfiguracji.

**3. Konfiguracja proxy oraz serwerów gry**

W folderze z naszym proxy otwieramy plik **config.yml** i zmieniamy w nim następujące rzeczy:

● Zmieniamy wyświetlaną ilość slotów na proxy

```auto
listeners:
  max_players: (ilość slotów)

```

● Ustawiamy automatycznie dołączanie na serwer lobby za każdym razem

```auto
listeners:
  priorities:
    lobby

```

oraz

```auto
listeners:
  force_default_server: false (zmieniamy false na true)

```

● Zmieniamy MOTD proxy

```auto
listeners:
  motd: '(tutaj wpisujemy treść naszego MOTD)'

```

● Zmieniamy proxy na non-premium (opcjonalnie)

```auto
online_mode: true (zmieniamy true na false)

```

● Zmieniamy administratora serwera

```auto
groups:
  md_5: (zmieniamy md_5 na swój nick)
  - admin

```

● Włączamy przekazywanie IP

```auto
ip_forward: false (zmieniamy false na true)

```

●Zmieniamy port proxy na standardowy dla minecrafta - 25565

```auto
listeners:
  host: 0.0.0.0:25577 (zmieniamy 25577 na 25565)

```

● Dodajemy serwery  
w zakładce **servers:** dodajemy serwery zgodnie ze wzorem:

```auto
  lobby:
    motd: '&1Just another FlameCord - Forced Host'
    address: localhost:25565
    restricted: false

```

**Nie możecie zapomnieć aby w automatycznie dodanym serwerze lobby zmienić motd oraz adres!**

Teraz możemy przejść do serwerów gry. Opisane zmiany należy wykonać na **wszystkich** dodawanych serwerach.  
W folderze z serwerem otwieramy plik **server-properties** i zmieniamy w nim następujące rzeczy:  
● Zmieniamy port serwera  
`server-port=25565` (port zmieniamy na jakikolwiek inny, np. 25566. Jeśli serwery gry nie są uruchamione na zwykłym komputerze, serwerze VPS czy serwerze dedykowanym to można pominąć ten krok.)

● Zmieniamy serwer na tryb non-premium

```auto
online-mode=true (zmieniamy true na false)

```

● Zmieniamy ustawienia kompresji pakietów

```auto
network-compression-threshold=256 (zmieniamy 256 na -1)

```

W pliku **spigot.yml** należy również dokonać pewnej zmiany:  
● Włączamy tryb bungeecord

```auto
settings:
  bungeecord: false (zmieniamy false na true)

```

Oraz w pliku **bukkit.yml** :  
● Zmieniamy czas pomiędzy możliwymi kolejnymi połączeniami z serwerem

```auto
connection-throttle: 4000 (zmieniamy 4000 na -1)

```

**3. Zabezpieczenia proxy oraz serwerów gry**

Ten poradnik miał się skupić na samym uruchamianiu proxy, lecz bez dobrych zabezpieczeń serwer nie może w pełni bezpiecznie funkcjonować. Przedstawię wam kilka rzeczy, dzięki którym wasze proxy będzie dość bezpieczne.

● **AuthMeBungee**  
AuthMeBungee to dodatek do popularnego pluginu AuthMe instalowany na proxy blokujący komendy proxy przed zalogowaniem. Możecie go pobrać **[tutaj](https://www.spigotmc.org/resources/authmebungee.50219/)**

● **AntyBot**  
Ataki botów bardzo obciążają serwery i proxy, a czasem nawet doprowadzają do ich wyłączenia. Aby temu zapobiec, musicie zabezpieczyć się w dobry plugin blokujący boty. Osobiście polecam **[Botsentry](https://www.google.com/url?sa=t&source=web&rct=j&url=https://www.spigotmc.org/resources/%25E2%259A%25A1-botsentry-%25E2%259A%25A1-the-only-antibot-resisting-30k-bots-per-second-bungee-spigot-sponge-velocity.55924/&ved=2ahUKEwj6o7SF6YPxAhVls4sKHdEWD1YQFjAAegQIBBAC&usg=AOvVaw105rLXqW99WKl7HvkjoNZk&cshid=1623010512578)**, lecz jeśli wolicie darmowe rozwiązanie zainteresujcie się **[2LS AntiBot](https://www.google.com/url?sa=t&source=web&rct=j&url=https://www.spigotmc.org/resources/2ls-antibot-the-ultimate-antibot-plugin.62847/&ved=2ahUKEwi528646YPxAhXJlosKHYcsAagQFjABegQIBxAC&usg=AOvVaw0sNOtxqZXtPw9e469P476P)**.

● **IPWhitelist**  
Bez pluginu IPWhitelist, każdy kto stworzy własne proxy oraz zna adresy serwerów innych niż lobby i proxy może się do nich podłączyć omijając logowanie. Plugin należy zainstalować na każdym z serwerów gry. Trzeba go również skonfigurować, lecz jest to tylko wpisanie komendy **/ipwl addip (adres IP maszyny z proxy)**. Plugin możecie pobrać **[tutaj](https://www.google.com/url?sa=t&source=web&rct=j&url=https://www.spigotmc.org/resources/ipwhitelist.61/&ved=2ahUKEwjG98GN6oPxAhVjlMMKHYEiBCwQFjAAegQIBxAC&usg=AOvVaw0prnIfkF2a5PGM3m_Qp-hd&cshid=1623010770228)**

● **BungeeGuard**  
BungeeGuard to plugin sprawdzający czy gracz na pewno dołącza na serwer przez nasze proxy. Proxy zapisuje specjalny token podczas logowania gracza, a serwery np. lobby sprawdzają czy gracz ma dozwolony token. Plugin należy zainstalować zarówno na proxy jak i każdym z serwerów. Możecie go pobrać **[tutaj](https://www.spigotmc.org/resources/bungeeguard.79601/)**

**I gotowe! Po uruchomieniu serwerów oraz proxy możemy przełączać się między serwerami komendą /server (nazwa serwera). Dla ułatwienia korzystania z permisji, zalecane jest zainstalowanie pluginu LuckPerms.**

---

<div class="post-metadata">

**Autor:** ![Erkzek](https://forum.minehost.pl/user_avatar/forum.minehost.pl/erkzek/32/11_2.png) [@Erkzek](https://forum.minehost.pl/u/Erkzek)\
**Data wpisu:** [10 Grudzień 2021 20:12 UTC](https://forum.minehost.pl/t/laczenie-serwerow-za-pomoca-proxy/717/3 "2021-12-10T20:12:52Z")

</div>

Przeniesiono do kategorii [Poradniki.](https://forum.minehost.pl/c/poradniki/7)
