Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Hallo, Habr! Meer presies, skelms wat op soek is na hoe om 'n minecraft-bediener op te stel om met vriende te speel.

Die artikel is bedoel vir nie-programmeerders, nie-sysadmins, in die algemeen, nie vir Habr se hoofgehoor nie. Die artikel bevat stap-vir-stap instruksies vir die skep van 'n minecraft-bediener met 'n toegewyde IP, aangepas vir mense ver van IT. As dit nie oor jou gaan nie, is dit beter om die artikel oor te slaan.

Wat is 'n bediener?

So wat is 'n bediener? As ons staatmaak op die konsep van "bediener" as 'n sagteware komponent, dan is die bediener 'n program wat data ontvang, verwerk en oordra van gebruikers (kliënte) wat aan hierdie bediener gekoppel is. Deur die webwerf as 'n voorbeeld te gebruik, is die webwerf geleë op een of ander webbediener, waartoe u toegang verkry deur 'n blaaier. In ons geval genereer die minecraft-bediener 'n wêreld waaraan spelers (kliënte) koppel, wie kan loop, blokke breek, ens. Die minecraft-bediener is verantwoordelik vir die koppeling van spelers en enige van hul aksies.

Natuurlik moet die bediener op die rekenaar (masjien) loop. U kan 'n bediener op u tuisrekenaar opstel, maar in hierdie geval:

  • Jy stel die sekuriteit van jou eie rekenaar in gevaar deur poorte daarop oop te maak
  • Die bediener sal 'n las op jou rekenaar plaas, wat kan inmeng met jou werk daarmee
  • Jy kan nie jou tuisrekenaar 24/7 aan die gang hou nie: soms skakel jy dit af, soms verloor jou rekenaar internetverbinding, ens.
  • Om toegang tot u bediener vanaf die buitewêreld te verkry, sal u toegang tot u rekenaar moet verkry via IP adres, wat vir "tuis" internetverskaffers is dinamies, dit wil sê, dit kan elke 2-3 dae verander om redes buite jou beheer.

En hoe los ons hierdie probleme op?

Die oplossing vir al hierdie probleme is om te gebruik virtuele masjien met staties, dit wil sê 'n onveranderlike IP-adres.

Komplekse terminologie? Kom ons vind dit uit.
Kom ons blaai na Wikipedia.

Виртуальная машина (VM, от англ. virtual machine) — программная и/или аппаратная система, эмулирующая аппаратное обеспечение некоторой платформы...

Om dit in baie kru terme te stel, dit is 'n rekenaar binne 'n rekenaar. Jy kan ook 'n bedryfstelsel daarop installeer en daarmee werk soos met 'n gewone rekenaar.

Waar kan ons dit kry?

Die antwoord is eenvoudig - AWS. Dit is 'n platform wat baie verskillende wolkdienste bied wat nuttig is vir almal wat met die web werk en nie net nie. Om 'n minecraft-bediener te skep, is een van die AWS-produkte perfek - Amazon EC2 - 'n virtuele wolkmasjien wat 24/7 beskikbaar is. AWS bied 'n minimum virtuele masjien (10 GB SSD, 1 GB RAM) gratis vir 'n jaar, maak dit ook moontlik om 'n gratis toegewyde (statiese) IP-adres te bind vir permanente toegang tot jou VM (virtuele masjien) by dieselfde adres.

Ons skep en konfigureer 'n VM

Gaan na die webwerf AWS en registreer. Gaan dan na die bestuurskonsole.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

In die konsole, onder dienste, vind EC2 en gaan daarnatoe.

Dit is belangrik om 'n datasentrum te kies, eenvoudig gestel, die plek waar die Amazon-bedieners geleë is. Jy moet kies afhangende van jou ligging, want die spoed van kommunikasie op die internet verskil, en jy moet 'n datasentrum kies waarmee kommunikasie vanaf jou stad so vinnig as moontlik sal wees.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Om 'n datasentrum te kies, beveel ek aan om die diens te gebruik WonderNetwerk, wat die transmissiespoed van pakkies met ander stede meet.
In my geval (Moskou) het die Ierse datasentrum my gepas.

Dit is tyd om 'n virtuele masjien te skep. Om dit te doen, gaan na die oortjie Begin instansie

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Kom ons begin die VM konfigureer.

1) Kies die bedryfstelselbeeld. Linux is baie gerieflik vir die verhoging van bedieners; ons sal die verspreidingskit gebruik CentOS7

Daar moet kennis geneem word dat daar geen grafiese omgewing op u virtuele masjien sal wees nie; toegang tot die masjien sal deur die konsole wees. Dit behels die beheer van die VM deur opdragte eerder as 'n rekenaarmuis te gebruik. Moenie hiervoor bang wees nie: dit behoort jou nie nou te stop of die idee om jou eie minecraft-bediener te verhoog nie, te laat vaar omdat dit "te moeilik" is. Om met die masjien deur die konsole te werk is nie moeilik nie - jy sal binnekort self sien.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

2) Kom ons definieer nou die tegniese konfigurasie van die VM. Vir gratis gebruik bied Amazon die konfigurasie aan t2.mikro, nie genoeg vir 'n volwaardige groot minecraft-bediener nie, maar genoeg om met vriende te speel.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

3) Laat die res van die instellings as verstek, maar stop by die blad Stel sekuriteitsgroepe op.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Hier moet ons toegang tot poorte vir die minecraft-bediener konfigureer.

In eenvoudige terme is 'n poort 'n nie-negatiewe nommer wat aandui aan wie inkomende data van die buitewêreld gerig is. 'n VM kan baie verskillende dienste en bedieners huisves, so alle inkomende datapakkies stoor die poort (nommer) van die bestemming (diens, bediener) binne die VM in hul kop.

Vir minecraft-bedieners is die de facto standaard om die poort te gebruik 25565. Kom ons voeg 'n reël by wat aandui dat toegang tot jou VM deur hierdie poort aanvaarbaar is.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Ons gaan na die venster om die skepping van die VM te voltooi deur op die knoppie te klik Hersien en begin

Stel 'n SSH-sleutelpaar vir 'n VM op

Dus, die verbinding met die masjien sal met die SSH-protokol uitgevoer word.

Die SSH-protokol werk soos volg: 'n paar sleutels (publiek en privaat) word gegenereer, die publieke sleutel word op die VM gestoor, en die private sleutel word gestoor op die rekenaar van die persoon wat aan die VM (kliënt) koppel. Wanneer hy koppel, kontroleer die VM dat die kliënt 'n geskikte private sleutel het.

pers Begin. Die volgende venster sal voor jou verskyn:

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Voer die naam van die sleutelpaar in (vir u gerief) en klik Laai sleutelpaar af. Jy moet aflaai .pem 'n lêer wat jou private sleutel bevat. Klik op die knoppie Begin gevalle. Jy het sopas 'n virtuele masjien geskep waarop die bediener geïnstalleer sal word.

Kry 'n statiese IP

Nou moet ons 'n statiese IP verkry en aan ons VM bind. Vir hierdie spyskaart vind ons die blad Elastiese IP's en ons beweeg daarlangs. Klik op die oortjie op die knoppie Ken Elastiese IP-adres toe en kry 'n statiese IP.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Nou moet die ontvangde IP-adres met ons VM geassosieer word. Om dit te doen, kies dit uit die lys en in die spyskaart aksies kies Geassosieerde IP-adres

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Vervolgens sal ons die VM aan ons IP-adres bind

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Gedoen!

Ons gaan na die VM

Noudat die VM gekonfigureer is en die IP-adres toegewys is, kom ons koppel daaraan en installeer ons minecraft-bediener.

Om via SSH aan die VM te koppel, sal ons die program gebruik PuTTY. Installeer PuTTYgen onmiddellik vanaf hierdie bladsy

Nadat u PuTTY geïnstalleer het, maak dit oop. Nou moet jy die verbinding konfigureer.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

  1. In die blad Sessie kies tipe verbinding SSH, hawe 22. Spesifiseer 'n naam vir die verbinding. Die gasheernaam vir verbinding via SSH is 'n string soos: имя_пользователя@публичный_dns.

Die verstek gebruikersnaam in AWS vir CentOS is CentOS. Jou publieke DNS kan hier bekyk word:

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Ek het die lyn [email protected]

  1. In die blad SSH -> Auth voer jou private SSH-sleutel in. Dit word in 'n lêer gestoor .pem, wat ons vroeër afgelaai het. Maar PuTTY kan nie met lêers werk nie .pem, het hy 'n formaat nodig .ppk. Vir omskakeling sal ons PuTTYgen gebruik. Omskakelingsinstruksies vanaf die PuTTYgen-webwerf. Lêer ontvang .ppk Kom ons stoor en dui hier aan:

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

  1. Ons koppel aan die VM deur die verbinding met die knoppie oop te maak Opening.
    Baie geluk! Ons het pas aan die konsole van jou VM gekoppel. Al wat oorbly is om ons bediener daarop te installeer.

Installeer en konfigureer 'n minecraft-bediener

Kom ons begin ons bediener opstel. Eerstens moet ons verskeie pakkette op ons VM installeer.

sudo yum install -y wget mc iptables iptables-services java screen

Kom ons vind uit waarvoor elkeen van die pakkette is.

  • wget - 'n program vir die aflaai van lêers in Linux. Deur dit te gebruik, sal ons die bedienerlêers aflaai.
  • mc - konsole teksredigeerder. Dit is eenvoudig en maklik om te gebruik vir 'n onopgeleide gebruiker.
  • iptables - 'n program vir die bestuur en konfigurasie van 'n firewall, met die hulp daarvan sal ons 'n poort vir die bediener op ons VM oopmaak.
  • Java - minecraft loop op java, so dit is nodig dat die bediener werk
  • skerm - vensterbestuurder vir Linux. Dit sal ons toelaat om ons konsole te dupliseer om die bediener te verhoog. Die feit is dat die bediener via die konsole geloods moet word; as jy van jou VM ontkoppel, sal die bedienerproses gestop word. Daarom sal ons dit in 'n aparte konsolevenster laat loop.

Kom ons stel nou die firewall op.

'n Firewall is 'n sagteware- of hardeware-sagteware-element van 'n rekenaarnetwerk wat netwerkverkeer wat daardeur gaan, beheer en filter in ooreenstemming met gespesifiseerde reëls. (Wikipedia)

Om in eenvoudige terme te verduidelik: stel jou 'n versterkte stad voor. Hy word voortdurend van buite aangeval, terwyl die normale lewe in die stad voortgaan. Om toegang tot die stad te kry, is daar 'n hek in die muur van die vesting, waar wagte staan ​​en uit lyste kyk of hierdie persoon in die vesting toegelaat kan word. Die rol van 'n muur en hek in rekenaarnetwerke word deur 'n brandmuur uitgevoer.

sudo mcedit /etc/sysconfig/iptables

Ons het sopas 'n firewall-konfigurasielêer geskep. Kom ons vul dit met standaardkonfigurasiedata, insluitend 'n reël vir die poort 25565, wat die standaardpoort vir die minecraft-bediener is.

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 25565 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

Maak die lêer toe deur te druk F10, stoor die veranderinge.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Laat ons nou die firewall begin en aktiveer dit tydens opstart:

sudo systemctl enable iptables
sudo systemctl restart iptables

Ons sal die bedienerlêers in 'n aparte vouer stoor, dit skep, daarna gaan en die bedienerlêers aflaai. Om dit te doen moet jy gebruik wget

mkdir minecraft
cd minecraft
wget <ссылка_на_jar>

Moet vind direkte verbinding vir aflaai .jar bediener lêer. Skakel byvoorbeeld na bedienerlêer weergawe 1.15.2:

wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar

Bekyk die inhoud van 'n gids deur die opdrag te gebruik ls, maak seker dat die lêers afgelaai is.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Kom ons begin die bedienerlêer. Nou sal die bediener nie werk nie: dit sal al die lêers wat nodig is vir werk skep, en sal kla dat jy nie ingestem het tot die bepalings van die EULA-lisensie nie. Aanvaar die bepalings deur die lêer oop te maak eula.txt

sudo mcedit eula.txt

Bevestig jou ooreenkoms deur die inskrywing te verander na:

eula=true

Maak die lêer oop server.properties: Dit is jou bedienerkonfigurasielêer. Meer oor bedienerinstellings

Die volgende verandering moet daaraan gemaak word:

online-mode=false

Die oorblywende instellings is na jou goeddunke.

Bediener begin

Dit is tyd om die bediener te begin. Soos ek reeds gesê het, begin die bediener direk vanaf die konsole, maar as ons die hoofkonsole toemaak, sal die bedienerproses gestop word. Daarom, kom ons skep nog 'n konsole:

screen

Kom ons begin die bediener in hierdie konsole:

 sudo java -Xms512M -Xmx1024M -jar <название_файла_сервера>.jar --nogui

Die bediener begin in ongeveer 45 sekondes, moenie die proses onderbreek nie. Wanneer die bediener geïnisialiseer en aan die gang is, sal jy iets sien soos:

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Baie geluk! Jy het pas jou minecraft-bediener aan die gang gekry. Nou is dit belangrik om die tweede konsole korrek te verlaat sodat dit aanhou werk met die lopende bediener. Om dit te doen, klik Ctrl+Adan D. Jy behoort in die hoofkonsole te wees en 'n boodskap soos [detached from 1551.pts-0.ip-172-31-37-146]. As jy moet terugkeer na die konsole waar die bediener loop, gebruik screen -r

Jy kan nou van jou VM ontkoppel. Jou bediener sal toeganklik wees via die statiese IP-adres wat ons vroeër ontvang het, op poort 25565.

Gratis minecraft-bediener op AWS met geen kennis van Linux nie

Dit blyk dat die adres vir die invoer van die bediener sal wees <ваш_статический_IP>:25565.

Gevolgtrekking

Deur hierdie instruksies te gebruik, kan u maklik 'n gratis minecraft-bediener met 'n toegewyde IP opstel. Die artikel is in die eenvoudigste moontlike taal geskryf en is bedoel vir nie-spesialiste. In hierdie verband is dit interessant om die kommentaar van diegene wat besig is te hoor, want wanneer die materiaal vereenvoudig word, kan feitefoute in terminologie gemaak word.

Bron: will.com

Voeg 'n opmerking