ProHoster > Blog > Rêveberî > Servera minecraft-a belaş a li ser AWS-ê bi zanyariya sifir a Linux-ê re
Servera minecraft-a belaş a li ser AWS-ê bi zanyariya sifir a Linux-ê re
Silav Habr! Bi rastî, xapînokên ku lê digerin ku meriv çawa serverek minecraft saz bike da ku bi hevalên xwe re bilîze.
Gotar ji bo ne-bernamenûs, ne-sysadmin, bi gelemperî, ne ji bo temaşevanên sereke yên Habrê ye. Gotar rêwerzên gav-bi-gav ji bo afirandina serverek minecraft-ê bi IP-ya taybetî, ku ji bo mirovên dûrî IT-ê hatî adaptekirin, vedihewîne. Ger ev ne li ser we be, çêtir e ku hûn gotarê berdin.
server çi ye?
Ji ber vê yekê serverek çi ye? Ger em xwe bispêrin têgeha "server" wekî hêmanek nermalavê, wê hingê server bernameyek e ku dikare daneyên ku ji bikarhênerên (mişterî) yên ku bi vê serverê ve girêdayî ne, werbigire, pêvajo bike û veguhezîne. Malper wekî nimûne bikar bînin, malper li ser hin serverek webê ye, ku hûn bi gerokek xwe digihînin. Di rewşa me de, servera minecraft cîhanek ku lîstikvan (mişterî) pê ve girêdidin, ku dikarin bimeşin, blokan bişkînin, û hwd diafirîne. Pêşkêşkara minecraft ji bo girêdana lîstikvan û her kiryarên wan berpirsiyar e.
Eşkere ye, server divê li ser komputerê (makîneyê) were xebitandin. Hûn dikarin li ser komputera xweya malê serverek saz bikin, lê di vê rewşê de:
Hûn ewlehiya komputera xwe bi vekirina portên li ser wê dixe xeterê
Pêşkêşker dê barek li ser komputera we bike, ku dibe ku di xebata we de bi wê re mudaxele bike
Hûn nikarin komputera xweya malê 24/7 bixebitin: Carinan hûn wê diqewirînin, carinan komputera we pêwendiya înternetê winda dike, hwd.
Ji bo ku hûn ji cîhana derve bigihîjin servera xwe, hûn neçar in ku bi riya komputera xwe bigihîjin Navnîşana IP'yê, ku ji bo pêşkêşkerên Înternetê "mal" e dînamîk, ango, ew dikare her 2-3 rojan carekê ji ber sedemên li derveyî kontrola we biguhezîne.
Û em çawa van pirsgirêkan çareser bikin?
Çareseriya van hemû pirsgirêkan bikaranîna e makîneya virtual re statîk, ango navnîşek IP-ya neguherbar.
Termînolojiya tevlihev? Werin em wê bihesibînin.
Ka em vegerin ser Wîkîpediya.
Виртуальная машина (VM, от англ. virtual machine) — программная и/или аппаратная система, эмулирующая аппаратное обеспечение некоторой платформы...
Ji bo ku ew bi şertên pir xav were gotin, ew komputerek di nav komputerê de ye. Her weha hûn dikarin pergalek xebitandinê li ser saz bikin û wekî bi komputerek asayî pê re bixebitin.
Em dikarin ji ku derê bistînin?
Bersiv hêsan e - AWS. Ev platformek e ku gelek karûbarên cloudê yên cihêreng peyda dike ku ji bo her kesê ku bi tevneyê re dixebite û ne tenê bikêr e. Ji bo afirandina serverek minecraft, yek ji hilberên AWS bêkêmasî ye - Amazon EC2 - makîneyek virtual ewr ku 24/7 heye. AWS makîneyek virtual ya herî kêm pêşkêşî dike (10 GB SSD, 1 GB RAM) belaş ji bo salekêDigel vê yekê, gengaz e ku meriv navnîşek IP-ya taybetî ya belaş (statîk) ji bo gihîştina daîmî bi VM-ya xwe (makîna virtual) li heman navnîşanê ve girê bide.
Em VM diafirînin û mîheng dikin
Herin malperê AWS û qeyd bikin. Dûv re biçin konsolê rêveberiyê.
Di konsolê de, di nav karûbaran de, bibînin EC2 û biçe wê.
Girîng e ku meriv navendek daneyê hilbijêrin, bi tenê, cîhê ku serverên Amazon lê ne. Pêdivî ye ku hûn li gorî cîhê xwe hilbijêrin, ji ber ku leza ragihandinê ya li ser Înternetê diguhere, û divê hûn navendek daneyê hilbijêrin ku pê re ragihandina ji bajarê we dê bi qasî ku gengaz be.
Ji bo hilbijartina navendek daneyê, ez pêşniyar dikim ku karûbarê bikar bînin WonderNetwork, ku leza veguhestina pakêtan bi bajarên din re dipîve.
Di doza min de (Moskow), navenda daneya îrlandî ji min re xweş bû.
Wext e ku meriv makîneyek virtual biafirîne. Ji bo vê yekê, biçin tabê Nimûneya destpêkirinê
Werin em dest bi veavakirina VM-ê bikin.
1) Wêneyê pergala xebitandinê hilbijêrin. Linux ji bo bilindkirina serveran pir hêsan e; em ê kîtê belavkirinê bikar bînin CentOS7
Pêdivî ye ku were zanîn ku dê di makîneya weya virtual de hawîrdorek grafîkî tune be; gihîştina makîneyê dê bi konsolê re be. Ew kontrolkirina VM-ê bi karanîna fermanan li şûna mişkek komputerê vedihewîne. Ji vê netirsin: divê ev aniha we nehêle an dev ji ramana bilindkirina servera xweya minecraft bernede ji ber ku ew "pir dijwar e". Karkirina bi makîneyê re bi konsolê re ne dijwar e - hûn ê di demek nêzîk de ji xwe re bibînin.
2) Naha em werin veavakirina teknîkî ya VM diyar bikin. Ji bo karanîna belaş, Amazon veavakirinê pêşkêşî dike t2.micro, ne bes ji bo serverek mezin a minecraft-ê ya bêkêmasî ye, lê têra lîstina bi hevalan re ye.
3) Mîhengên mayî wekî xwerû bihêlin, lê li ser tabê rawestin Komên Ewlekariyê mîheng bikin.
Li vir pêdivî ye ku em gihîştina benderan ji bo servera minecraft mîheng bikin.
Bi gotinên hêsan, portek hejmareke ne-neyînî ye ku destnîşan dike ku daneyên hatina ji cîhana derve ji kê re têne şandin. VM dikare gelek karûbar û pêşkêşkerên cihêreng mêvandar bike, ji ber vê yekê hemî pakêtên daneya hatinî porta (hejmara) mebestê (xizmet, server) di hundurê VM-ê de di serê xwe de hilînin.
Ji bo serverên minecraft, standarda de facto karanîna portê ye 25565. Ka em qaîdeyek lê zêde bikin ku destnîşan dike ku gihîştina VM-ya we bi vê portê ve tê pejirandin.
Em bi tikandina bişkojê diçin pencereyê ji bo temamkirina çêkirina VM-ê Vekolîn û Destpêkirin
Sazkirina cotek mifteya SSH ji bo VM
Ji ber vê yekê, girêdana bi makîneyê re dê bi karanîna protokola SSH pêk were.
Protokola SSH bi vî rengî dixebite: cotek bişkok (gelemperî û taybet) têne hilberandin, mifteya giştî li ser VM-ê tê hilanîn, û mifteya taybet li ser komputera kesê ku bi VM-yê ve girêdayî ye (mişterî) tê hilanîn. Dema ku tê girêdan, VM kontrol dike ku xerîdar xwedan mifteyek taybet a maqûl e.
Bişkojkê bikirtînin Destpêkirin. Paceya jêrîn dê li ber we xuya bibe:
Navê cotê mifteyê (ji bo rehetiya xwe) binivîse û bikirtîne Cotê kilîtê daxîne. Divê hûn dakêşin .pem pelek ku mifteya weya taybet heye. Bişkojka bitikîne Mînakên destpêkirinê. We nû makîneyek virtual çêkiriye ku server dê li ser were saz kirin.
Distînin IP-ya statîk
Naha pêdivî ye ku em IP-ya statîk bi VM-ya xwe re bistînin û girêdin. Ji bo vê menuyê em tabloyê dibînin IP -yên elastîk û em pê re diçin. Li ser tabê, bişkojka bikirtînin Navnîşana IP-ya Elastic veqetînin û IP-ya statîk bistînin.
Naha navnîşana IP-ya wergirtî divê bi VM-ya me re têkildar be. Ji bo vê yekê, wê ji navnîşê û di menuê de hilbijêrin Actions helbijartin Navnîşana IP-ê ya têkildar
Dûv re, em ê VM-ê bi navnîşana IP-ya xwe ve girêdin
Done!
Em diçin VM
Naha ku VM hatî mîheng kirin û navnîşana IP-yê hatî destnîşan kirin, em pê ve girêbidin û servera xweya minecraft saz bikin.
Ji bo girêdana VM-ê bi SSH-ê em ê bernameyê bikar bînin putty. PuTTYgen tavilê ji vê rûpelê saz bikin
Piştî sazkirina PuTTY, wê vekin. Naha hûn hewce ne ku pêwendiyê mîheng bikin.
Di tabê de Rûniştinî cureyê girêdanê hilbijêre SSH, port 22. Ji bo girêdanê navek diyar bikin. Navê mêvandarê ji bo girêdana bi SSH re rêzek wekî: имя_пользователя@публичный_dns.
Navê bikarhênerê xwerû di AWS de ji bo CentOS e cent. DNS-ya weya giştî dikare li vir were dîtin:
Di tabê de SSH -> Auth mifteya xweya SSH ya taybet têkevin. Di pelê de tê hilanîn .pem, ku me berê dakêşand. Lê PuTTY nikare bi pelan re bixebite .pem, wî formatek hewce dike .ppk. Ji bo veguherînê em ê PuTTYgen bikar bînin. Rêbernameyên veguherînê ji malpera PuTTYgen. Dosya wergirt .ppk Ka em li vir hilînin û destnîşan bikin:
Em bi vekirina pêwendiya bi bişkojê ve bi VM-ê ve girêdidin Vekirî.
Pîroz be! Me tenê bi konsolê VM-ya we ve girêdayî ye. Tiştê ku dimîne ev e ku em servera xwe li ser wê saz bikin.
Sazkirin û mîhengkirina serverek minecraft
Ka em dest bi sazkirina servera xwe bikin. Pêşîn, pêdivî ye ku em çend pakêtan li ser VM-ya xwe saz bikin.
sudo yum install -y wget mc iptables iptables-services java screen
Ka em fêr bibin ka her yek ji pakêtan ji bo çi ye.
wget - amûrek ji bo daxistina pelan li Linux. Bi karanîna wê em ê pelên serverê dakêşin.
mc - edîtorê nivîsê ya konsolê. Ji bo bikarhênerek nexwendî karanîna wê hêsan û hêsan e.
iptables - amûrek ji bo rêvebirin û mîhengkirina dîwarê agir, bi alîkariya wê em ê portek ji bo servera li ser VM-ya xwe vekin.
java - Minecraft li ser java-yê dimeşîne, ji ber vê yekê pêdivî ye ku server kar bike
rûber - rêveberê pencereyê ji bo Linux. Ew ê bihêle ku em konsolê xwe dubare bikin da ku serverê bilind bikin. Rastî ev e ku server divê bi konsolê ve were destpêkirin; heke hûn ji VM-ya xwe qut bibin, dê pêvajoya serverê were sekinandin. Ji ber vê yekê, em ê wê di pencereyek konsolê ya cihê de bimeşînin.
Naha werin em dîwarê dîwarê mîheng bikin.
Firewall hêmanek nermalava an hardware-nermalava tora komputerê ye ku seyrûsefera torê ya ku di nav wê re derbas dibe li gorî qaîdeyên diyarkirî kontrol dike û fîlter dike. (Wikipedia)
Ji bo ravekirina bi peyvên hêsan: bajarekî kelehkirî bifikirin. Her tim ji derve ve rastî êrîşan tê, lê jiyana normal li bajêr didome. Ji bo gihandina bajêr, di dîwarê kelehê de dergehek heye, li wir cerdevan radiwestin û ji lîsteyan kontrol dikin ka ev kes dikare biçe kelê. Rola dîwar û deriyekî di torên kompîturê de bi dîwarê agir pêk tê.
sudo mcedit /etc/sysconfig/iptables
Me nuh pelek veavakirina dîwarê fireh çêkir. Ka em wê bi daneyên mîhengê standard tije bikin, tevî qaîdeyek ji bo portê 25565, ku ji bo servera minecraft porta standard e.
*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
Bi tikandina pelê bigire F10, tomarkirina guhertinan.
Naha em ê dîwarê dîwarê dest pê bikin û di destpêkê de wê çalak bikin:
Bi karanîna fermanê naveroka peldankek temaşe bikin ls, Piştrast bike ku pel hatine daxistin.
Ka em pelê serverê bidin destpêkirin. Naha server dê nexebite: ew ê hemî pelên ku ji bo xebatê hewce ne biafirîne, û dê gilî bike ku we şertên lîsansa EULA qebûl nekir. Bi vekirina pelê şertan qebûl bikin eula.txt
sudo mcedit eula.txt
Bi guheztina têketinê lihevhatina xwe piştrast bikin:
Wextê destpêkirina serverê ye. Wekî ku min berê jî got, server rasterast ji konsolê dest pê dike, lê heke em konsolê sereke bigirin, dê pêvajoya serverê were sekinandin. Ji ber vê yekê, bila em konsolek din ava bikin:
Pêşkêşkar di nav 45 çirkeyan de dest pê dike, pêvajoyê qut nekin. Dema ku server were destpêkirin û xebitandin, hûn ê tiştek wekî bibînin:
Pîroz be! We nû servera xweya minecraft raxistiye û xebitiye. Naha girîng e ku meriv rast ji konsolê duyemîn derkeve da ku ew bi servera xebitandinê re berdewam bike. Ji bo vê yekê, bikirtînin Ctrl+Ahingê D. Divê hûn di konsolê sereke de bin û peyamek mîna bibînin [detached from 1551.pts-0.ip-172-31-37-146]. Heke hûn hewce ne ku vegerin konsolê ku server lê dimeşe, bikar bînin screen -r
Naha hûn dikarin ji VM-ya xwe veqetînin. Dê servera we bi navnîşana IP-ya statîk a ku me berê wergirtiye, li ser porta 25565-ê bigihîje.
Derket holê ku navnîşana têketina serverê dê bibe <ваш_статический_IP>:25565.
encamê
Bi karanîna van rêwerzan, hûn dikarin bi hêsanî serverek minecraft-a belaş bi IP-ya diyarkirî saz bikin. Gotar bi zimanê herî hêsan hatiye nivîsandin û ji bo kesên ne pispor e. Di vî warî de, guhdarîkirina şîroveyên kesên ku dagîr dikin balkêş e, ji ber ku dema hêsankirina materyalê, di termînolojiyê de xeletiyên rastîn dikarin werin kirin.