Wilt u vanuit huis een Minecraft-server runnen zonder uw IP-adres prijs te geven? Jij kan! Stel gewoon een gratis proxy in met Amazon Web Services om uw server te beschermen tegen denial-of-service-aanvallen. We laten je zien hoe.
Deze gids werkt voor elke spelserver, niet alleen voor Minecraft. Het enige dat het doet is proxyverkeer op een specifieke poort. Je hoeft alleen maar de poort 25565 van Minecraft te veranderen in de poort waarop je gameserver draait.
Hoe werkt dit?
Stel dat u een Minecraft-server wilt hosten en deze open wilt stellen voor internet. Het is niet zo moeilijk om er een uit te voeren. Ze zijn eenvoudig te installeren, gebruiken slechts één verwerkingsdraad en zelfs de zwaar gemodificeerde servers nemen niet meer dan 2 tot 3 GB RAM in beslag met een paar spelers online. U zou gemakkelijk een server op een oude laptop of op de achtergrond op uw desktopcomputer kunnen draaien in plaats van iemand anders te betalen om het voor u te hosten.
Maar om mensen er verbinding mee te laten maken, moet u uw IP-adres opgeven. Dit levert een aantal problemen op. Het is een groot veiligheidsrisico , vooral als uw router nog steeds het standaard admin-wachtwoord heeft. Het laat je ook openstaan voor distributie denial-of-service (DDOS) -aanvallen , die niet alleen uw Minecraft-server zou stoppen, maar ook uw internet zou kunnen afsluiten totdat de aanval afneemt.
You don’t have to allow people to connect directly to your router. Instead, you can rent a small Linux box from Amazon Web Services, Google Cloud Platform of Microsoft Azure, die allemaal gratis niveaus hebben. Deze server hoeft niet sterk genoeg te zijn om de Minecraft-server te hosten; hij stuurt alleen de verbinding voor je door. Hierdoor kunt u het IP-adres van de proxyserver opgeven in plaats van uw eigen IP-adres.
Stel dat iemand verbinding wil maken met uw server, dus typt ze het IP-adres van uw AWS-proxy in haar Minecraft-client. Er wordt een pakket verzonden naar de proxy op poort 25565 (de standaardpoort van Minecraft). De proxy is geconfigureerd om het verkeer op poort 25565 af te stemmen en door te sturen naar uw thuisrouter. Dit gebeurt achter de schermen: de persoon die verbinding maakt, weet het niet eens.
Uw thuisrouter moet dan port-forward zijn om de verbinding verder naar uw eigenlijke pc door te sturen. Uw pc voert de server uit en reageert op het pakket van de client. Het stuurt het terug naar de proxy en vervolgens herschrijft de proxy het pakket zodat het lijkt alsof de proxy reageert. De klant heeft geen idee dat dit gebeurt en denkt gewoon dat de proxy het systeem is waarop de server draait.
Het is alsof u een andere router voor de server toevoegt, op dezelfde manier waarop uw thuisrouter uw computer beschermt. Deze nieuwe router draait echter op Amazon Web Services en krijgt de volledige DDOS-beperking op de transportlaag die gratis wordt geleverd bij elke AWS-service ( genaamd AWS Shield ). Als er een aanval wordt gedetecteerd, wordt deze automatisch beperkt zonder dat uw server er last van heeft. Als het is het niet om de een of andere reden gestopt, kunt u de instantie altijd uitschakelen en de verbinding met uw huis verbreken.
Om de proxy af te handelen, gebruikt u een hulpprogramma genaamd
Mand
. Het is bedoeld voor protocol-multiplexing; als je SSH (meestal poort 22) en HTTPS (poort 443) op dezelfde poort wilde draaien, zou je problemen tegenkomen.
Mand
zit vooraan en leidt poorten om naar de beoogde applicaties, waardoor dit probleem wordt opgelost. Maar het doet dit op het niveau van de transportlaag, net als een router. Dit betekent dat we Minecraft-verkeer kunnen matchen en doorsturen naar uw thuisserver.
Mand
is standaard niet transparant, wat betekent dat het pakketten herschrijft om uw IP-adres thuis te verbergen. Dit maakt het voor niemand onmogelijk om het met zoiets op te snuiven
Wireshark
.
Creëer en maak verbinding met een nieuwe VPS
Om te beginnen, heeft u de proxyserver ingesteld. Dit is zeker gemakkelijker te doen als je wat Linux-ervaring hebt, maar het is niet vereist.
Ga naar
Amazon Web Services
en maak een account aan. U moet uw debet- of creditcardgegevens opgeven, maar dit is alleen om te voorkomen dat mensen dubbele accounts maken; er worden geen kosten in rekening gebracht voor de instantie die u maakt. Het gratis niveau verloopt na een jaar, dus zorg ervoor dat u het uitschakelt nadat u ermee klaar bent.
Google Cloud Platform
heeft een
f1-micro
instantie altijd gratis beschikbaar als u die liever gebruikt. Google biedt ook een tegoed van $ 300 voor een jaar, dat u daadwerkelijk kunt gebruiken om een goede cloudserver te draaien.
AWS rekent wel een beetje bandbreedte aan. Je krijgt 1 GB gratis, maar daarboven wordt $ 0,09 per GB belast. Realistisch gezien zult u dit waarschijnlijk niet bespreken, maar houd het in de gaten als u een afschrijving van 20 cent op uw factuur ziet.
Nadat u uw account heeft gemaakt, zoekt u naar 'EC2'. Dit is het virtuele serverplatform van AWS. Mogelijk moet u even wachten totdat AWS EC2 heeft ingeschakeld voor uw nieuwe account.
Selecteer op het tabblad "Instances" de optie "Launch Instance" om de startwizard te openen.
U kunt de standaard "Amazon Linux 2 AMI" of "Ubuntu Server 18.04 LTS" als besturingssysteem selecteren. Klik op Volgende en u wordt gevraagd het instantietype te selecteren. Selecteer
t2.micro
, wat de gratis tier-instantie is. U kunt deze instantie 24/7 uitvoeren op het gratis niveau van AWS.
Selecteer 'Controleren en starten'. Selecteer op de volgende pagina "Starten" en u ziet het onderstaande dialoogvenster. Klik op 'Een nieuw sleutelpaar maken' en vervolgens op 'Sleutelpaar downloaden'. Dit is uw toegangssleutel tot de instantie, dus verlies deze niet: plaats deze in uw map Documenten om deze veilig te bewaren. Nadat het is gedownload, klikt u op 'Instanties starten'.
U wordt teruggebracht naar de pagina met instanties. Zoek het openbare IPv4-IP-adres van uw instantie, het adres van de server. Als je wilt, kun je een AWS Elastic IP instellen (die niet verandert bij opnieuw opstarten), of zelfs een gratis domeinnaam met dot.tk , als u niet steeds naar deze pagina terug wilt komen om het adres te zoeken.
Bewaar het adres voor later. Eerst moet u de firewall van de instantie bewerken om poort 25565 te openen. Selecteer op het tabblad Beveiligingsgroepen de groep die uw instantie gebruikt (waarschijnlijk launch-wizard-1) en klik vervolgens op 'Bewerken'.
Voeg een nieuwe aangepaste TCP-regel toe en stel het poortbereik in op 25565. De bron moet worden ingesteld op "Anywhere" of
0.0.0.0/0
.
Sla de wijzigingen op en de firewall-updates.
We gaan nu naar SSH naar de server om de proxy in te stellen; als je macOS / Linux gebruikt, kun je je terminal openen. Als u Windows gebruikt, moet u een SSH-client gebruiken, zoals Stopverf of installeer het Windows-subsysteem voor Linux . We raden het laatste aan, omdat het consistenter is.
Het eerste dat u moet doen, is
cd
naar uw documentenmap waar het keyfile is:
cd ~/Documents/
Als u Windows Subsystem voor Linux gebruikt, bevindt uw C-schijf zich op
/ mnt / c /
, en je moet naar je documentenmap gaan:
cd / mnt / c / Users / gebruikersnaam / Documenten /
Gebruik de
-ik
vlag om SSH te vertellen dat u de keyfile wilt gebruiken om verbinding te maken. Het bestand heeft een
.pem
extensie, dus u moet het volgende opnemen:
ssh -i keyfile.pem [email protected]
Vervangen "
0.0.0.0
” with your IP address. If you made an Ubuntu server rather than AWS Linux, connect as user “ubuntu.”
You should be granted access and see your command prompt change to the server’s prompt.
Configureer SSLH
U wilt installeren
Mand
van de pakketbeheerder. Voor AWS Linux zou dat zo zijn
jammie
, voor Ubuntu gebruikt u
apt-get
. Mogelijk moet u de EPEL-repository toevoegen op AWS Linux:
sudo yum install epel-release
sudo yum sslh installeren
Zodra het is geïnstalleerd, opent u het configuratiebestand met
nano
:
nano / etc / default / sslh
Verander de
RUN =
parameter op "ja":
Hieronder de finale
DEMON
regel, typ het volgende:
DAEMON_OPTS = "- gebruiker sslh --listen 0.0.0.0:25565 --prot uw_ip_adres: 25565 --pidfile /var/run/sslh/sslh.pid
Vervangen "
uw_ip_adres
”Met uw IP-adres thuis. Als u uw IP niet weet, zoek dan
"Wat is mijn IP-adres?"
op Google - ja, serieus.
Deze configuratie maakt het
Mand
proxy luisteren op alle netwerkapparaten op poort 25565. Vervang dit door een ander poortnummer als je Minecraft-client iets anders gebruikt of als je een ander spel speelt. Meestal met
Mand
, koppel je verschillende protocollen en stuur je ze naar verschillende plaatsen. Voor onze doeleinden willen we echter eenvoudig al het mogelijke verkeer matchen en doorsturen naar
uw_ip_adres: 25565
.
Druk op Control + X en vervolgens op Y om het bestand op te slaan. Typ het volgende om in te schakelen
Mand
:
sudo systemctl inschakelen sslh
sudo systemctl start sslh
Als
systemctl
is niet beschikbaar op uw systeem, moet u mogelijk de
onderhoud
commando in plaats daarvan.
Mand
zou nu moeten draaien. Zorg ervoor dat uw thuisrouter
Port forwarding
en 25565 verkeer naar uw computer sturen. Misschien wilt u uw computer een statisch IP-adres geven, zodat dit niet verandert.
Om te zien of mensen toegang hebben tot uw server, typt u het IP-adres van de proxy in een online statuschecker . U kunt ook het IP-adres van uw proxy in uw Minecraft-client typen en proberen deel te nemen. Als het niet werkt, zorg er dan voor dat de poorten open zijn in de beveiligingsgroepen van uw instantie.