Tere, Habr! Täpsemalt, need on need, kes otsivad, kuidas teha Minecraft server sõpradega mängimiseks.
Artikkel on suunatud mitteprogrammeerijatele, mitte süsteemiadministraatoritele, ühesõnaga, mitte Habr'i peamisele publikule. Artiklis on samm-sammuline juhend Minecraft serveri loomiseks eraldatud IP-ga, kohandatud inimestele, kes ei ole IT-ga kursis. Kui see ei ole teie jaoks - parem on artikkel vahele jätta.
Mis on server?
Nii, mis on server? Kui lähtuda mõisted "server" tarkvarakomponendina, siis server on programm, mis suudab vastu võtta, töödelda ja edastada andmeid, mida kasutajad (kliendid) serveriga ühendavad. Näiteks veebileht — see asub mõnel veebiserveril, millele pääsete juurde brauseri kaudu. Meie puhul genereerib Minecraft server maailma, millega saavad liituda mängijad (kliendid), kes saavad liikuda, plokke purustada jne. Mängijate ühendamise ja nende tegevustega seondub Minecraft server.
Ilmselt peab server töötama arvutis (masinas). Saate serveri tööle panna oma koduarvutis, kuid sel juhul:
- Paned ohtu oma arvuti turvalisuse, avades sellel porte.
- Server koormab sinu arvutit, mis võib segada selle kasutamist.
- Sa ei saa koduarvutit 24/7 käimas hoida: mõnikord lülitad selle välja, mõnikord kaotab sinu arvuti internetiühenduse jne.
- Täpse juurdepääsu jaoks oma serverile välismaailmast pead arvutisse pöörduma läbi IP-aadressi, mis on "koduste" internetiteenuste pakkujate puhul dünaamiline, see tähendab, et see võib muutuda iga 2-3 päeva tagant, sõltumatult sinust.
Kuidas me nende probleemidega toime tuleme?
Kõikide nimetatud probleemide lahenduseks on virtuaalne masin ja staatilise, st muutumatu IP-aadressiga.
Raske terminoloogia? Uurime lähemalt.
Vaatame, mida ütleb Wikipedia.
Virtuaalne masin (VM, inglise keeles virtual machine) — tarkvara ja/või riistvarasüsteem, mis emuleerib teatud platvormi riistvara...Üks lihtsamaid selgitusi võiks olla, et see on arvuti arvutis. Sellele saab installida operatsioonisüsteemi ja kasutada seda nagu tavalist arvutit.
Kust me selle võtame?
Vastus on lihtne — . See on platvorm, mis pakub mitmeid erinevaid pilveteenuseid, mis on kasulikud kõigile, kes tegelevad veebiga ja muuga. Minecrafti serveri loomise jaoks sobib suurepäraselt üks AWS toode — Amazon EC2 — pilvevirtuaalne masin, mis on saadaval 24/7. AWS pakub minimaalset virtuaalmasinat (10GB SSD, 1GB RAM) aasta tasuta, lisaks on võimalik siduda tasuta pühendatud (staatiline) IP-aadress, et pääseda oma virtuaalmasinale (VM) alati samalt aadressilt.
Loome ja seadistame VM-i
Minge veebilehele ja registreeruge. Seejärel minge juhtimistöö tabelisse.

Juhtimistöö tabelis leidke teenuste hulgast EC2 ja minge selle juurde.
Oluline on valida andmekeskus, lihtsustatult öeldes, koht, kus Amazoni serverid asuvad. Valik tuleks teha sõltuvalt teie asukohast, kuna Interneti-ühenduse kiirus on erinev ja peaksite valima andmekeskuse, millega side teie linnast oleks maksimaalselt kiire.

Andmekeskuse valimiseks soovitan kasutada teenust , mis mõõdab paketivahetuse kiirus teistesse linnadesse.
Minu puhul (Moskva) sobis mulle Iirimaa andmekeskus.
On aeg luua virtuaalne masin. Selleks minge vahekaardile Launch instance

Alustame VM-i konfigureerimist.
1) Valime operatsioonisüsteemi pildi. Serverite käivitamiseks on väga mugav kasutada Linuxit, meie kasutame distributsiooni CentOS7
Tuleb märkida, et teie virtuaalses masinas ei ole graafilist keskkonda, masinasse pääseb konsooli kaudu. See eeldab VM-i juhtimist käskude kaudu, mitte arvutihiirega. Ärge kartke: see ei tohiks teid juba praegu peatada või loobuda oma Minecraft-serveri loomise ideest, sest see on "liigne keeruline". Tööskleda masinaga konsooli kaudu ei ole keeruline — varsti veendute selles ise.

2) Nüüd määrame VM-i tehnilise konfiguratsiooni. Tasuta kasutamiseks pakub Amazon konfiguratsiooni t2.micro, mis on vähe suurele Minecraft serverile, kuid sõpradega mängimiseks piisab.

3) Ülejäänud seadepunktid jätame vaikesätetele, kuid peatume vahekaardil Configure Security groups.

Siin tuleb meil seadistada juurdepääs portsioonidele Minecraft serveri jaoks.
Lihtsalt öeldes — port on mitte-negatiivne number, mis näitab, kellele on suunatud sissetulevad andmed välistest allikatest. VM-is võib olla palju erinevaid teenuseid ja servereid, seega hoiab iga sissetulev andmepakett oma pealdises porti (number) saajat (teenust, serverit) VM-is.
Minecraft serverite standardiks on de facto porti kasutamine 25565. Lisame reegli, mis näitab, et juurdepääs teie VM-ile selle portaali kaudu on lubatud.


Liigume VM-i loomise lõppakna juurde, vajutades nuppu Ülevaatus ja käivitamine
SSH võtme paari seadistamine VM-ile
Nii et ühendamine masinaga toimub SSH protokolli kaudu.
SSH-protokoll töötab järgmiselt: genereeritakse võtmepaar (avatud ja suletud), VM-is hoitakse avatud võti, inimese arvutis, kes ühendust VM-iga luua üritab (klient) — suletud. Ühenduse loomisel kontrollib VM, kas kliendil on õige suletud võti.
„Uuesti väljaandmine“ Käivita. Teie ees avatakse järgmine aken:

Sisestage võtmepaari nimi (oma mugavuse huvides) ja klõpsake Laadi alla võtmepaar. Te peate alla laadima .pem faili, mis sisaldab teie suletud võtit. Klõpsake nuppu Käivita instantsid. Just nüüd olete loonud virtuaalmasina, millele server tõstetakse.
Saame staatilise IP
Nüüd peame saama ja siduma staatilise IP meie VM-iga. Selleks menüüs leiame vahekaart Elastic IP-d ja läheme sellele edasi. Vahekaardil klõpsame nuppu Allocate Elastic IP address ja saame staatilise IP.

Nüüd tuleb saadud IP-aadress siduda meie VM-iga. Selleks valime selle loendist ja menüüs Tegevused valime Associate IP address

Edasi, sidume VM meie IP-aadressiga

Valmis!
Siseneme VM-i
Nüüd, kui VM on seadistatud ja IP-aadress on seotud, ühendame selle ja installime meie Minecraft-serveri.
SSH kaudu VM-iga ühenduse loomiseks kasutame programmi . Installige PuTTYgen otse sellelt lehelt.
Pärast PuTTY installimist avage see. Nüüd tuleb seadistada ühendus.

- Vahekaardil Seanss valige ühenduse tüüp SSH, port 22. Määrake ühenduse jaoks nimi. SSH-ühenduse hostinimi on järgmine:
kasutajanimi@avalik_dns.
AWS-i vaikimisi kasutajanimi CentOS-i jaoks on centos. Teie avaliku DNS-i leiate siit:

Mul tekkis järgmine rida centos@ec2-54-246-186-12.eu-west-1.compute.amazonaws.com
- Vahekaardil SSH -> Auth määrake oma privaatne SSH-võti. See asub failis
.pem, mille allalaadimist me varem tegime. Kuid PuTTY ei oska töötada failidega.pem, selleks on vajalik formaat.ppk. Konverteerimiseks kasutame PuTTYgeni. . Saadud fail.ppkSalvestame ja määrame siia:

- Ühendame VM-iga, avades ühenduse nupuga Open.
Palju õnne! Just saime ühendatud teie VM-i terminaliga. Jäänud on seadistada sellele meie server.
Minecraft serveri installimine ja seadistamine
Alustame meie serveri seadistamist. Esiteks, peame installima mõned paketid meie VM-ile.
sudo yum install -y wget mc iptables iptables-services java screenSelgitame välja, milleks iga paketid vajalikud on.
- wget — failide üleslaadimise utiliit Linuxis. Selle abil saame serveri faile alla laadida.
- mc — konsooli tekstiredaktor. Erakordselt lihtne ja mugav kasutada, isegi algajatele.
- iptables — tulemüüri haldamise ja seadistamise tööriist, mille abil avame meie VM-is serveri jaoks portaali.
- java — Minecraft töötab Java peal, seega on see serveri tööks hädavajalik.
- ekraan — aknahaldur Linuxile. See võimaldab meil kopeerida meie konsooli serveri tõstmiseks. Asi on selles, et server peab olema käivitatud konsoolide kaudu. Kui te lahkute oma VM-ist, peatub serveri protsess. Seetõttu käivitame selle eraldi konsooli aknas.
Nüüd seadistame tulemüüri.
Tulemüür (firewall) on tarkvara või riistvara element arvutivõrgus, mis kontrollib ja filtreerib selle kaudu liikuvat liiklust vastavalt määratud reeglitele. (Wikipedia)
Lihtsustatult öeldes: kujuta ette linnus-linna. Seda ründavad pidevalt väljastpoolt, samas kui linnas toimub tavaline elu. Ligipääsuks linnale on kindluse seinal väravad, mille juures seisavad valvurid ja kontrollivad loenditest, kas see isik tohib linna siseneda. Arvutivõrkudes täidab seina ja väravate rolli tulemüür.
sudo mcedit /etc/sysconfig/iptablesJust nüüd loodi ka tulemüüri konfiguratsioonifail. Täidame selle standardsete konfiguratsioonide andmetega, lisades sinna reegli porti jaoks 25565, mis on Minecraft serveri jaoks standardport.
*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
COMMITSulgege fail vajutades F10, salvestades muudatused.

Nüüd käivitame tulemüüri ja lubame selle automaatses laadimises:
sudo systemctl enable iptables
sudo systemctl restart iptablesServeri faile hoiame eraldi kaustas, loome selle, liikuge sinna ja laadime serveri failid alla. Selleks tuleks kasutada wget
mkdir minecraft
cd minecraft
wgetOn vajalik leida otsene link alla tõmbamiseks .jar serveri failist. Näiteks, siin on link serveri failile versioonile 1.15.2:
wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jarKasutage kaustas sisu vaatamiseks käsku ls, veenduge, et failid on alla laaditud.

Käivitame serveri faili. Praegu server ei tööta: see loob kõik vajalikud tööfailid ja annab teada, et te ei nõustunud EULA litsentsi tingimustega. Aktsepteerime tingimused, avades faili eula.txt
sudo mcedit eula.txtKinnitage oma nõusolek, muutes kirje järgmiseks:
eula=trueAvage fail server.properties: see on teie serveri konfiguratsioonifail.
Selles tuleb kindlasti teha järgmine muudatus:
online-mode=falseÜlejäänud seaded on teie valikul.
Serveri käivitamine
On aeg server käivitada. Nagu ma juba ütlesin, käivitatakse server otse konsoolist, kuid kui sulgeme põhi(konsooli) — serveri protsess peatub. Seetõttu loome veel ühe konsooli:
ekraanSelles konsoolis käivitame serveri:
sudo java -Xms512M -Xmx1024M -jar .jar --noguiServer käivitub umbes 45 sekundi jooksul, ärge katkestage protsessi. Kui server on initsialiseeritud ja käivitatud, näete midagi sellist:

Õnnitleme! Just tõstsisite ja käivitasite oma minecraft serveri. Nüüd on oluline õigesti teise konsoolist välja minna, et see jätkaks serveri käitamisega. Selleks vajutage Ctrl+A, seejärel D. Te peaksite olema põhikonsolis ja nägema sõnumit, mis näeb välja nagu [detached from 1551.pts-0.ip-172-31-37-146]. Kui teil on vaja naasta konsooli, kus server käivitus, kasutage screen -r
Nüüd saate oma VM-ilt lahkuda. Teie server on saadaval staatilise IP-aadressi kaudu, mille saime varem, aadressil 25565.

Seega on sisenemise aadress serverisse :25565.
Kokkuvõte
Selle juhendi abil saate luua tasuta minecraft serveri eraldiseisva IP-ga kergesti. Artikkel on kirjutatud maksimaalselt arusaadavas keeles ja on suunatud mittespetsialistidele. Seetõttu on huvitav kuulda kogenud kommentaare, sest materjali lihtsustamisel võidakse terminoloogiasse teha sisulisi vigu.
Allikas: habr.com
