
Բարև ձեզ!
Հաճախակի հայտնի պատճառներով ավելի շատ ժամանակ պետք է անցկացնել տունը մոնիտորի դիմաց:
Այս պայմաններում անհրաժեշտ է հիշել անցյալի գործերը:
Ինչպես արդեն պարզ է հոդվածի վերնագրից, խոսվելու է Synology NAS-ի կարգավորման մասին որպես խաղային սերվեր:
Achtung — հոդվածում շատ էկրանի նկառակապիչներ կան (էկրանի նկառակապիչները սեղմելի են)!
Որպեսզի սկսենք, ահա անհրաժեշտ գործիքների ցանկը:
Synology NAS — այստեղ սահմանափակումներ չեմ տեսնում, կարծում եմ ցանկացածը подойдет, եթե ծրագրեր չունեք տանել 10K խաղացողի սերվեր:
Docker — հատուկ գնումներ չեն պահանջվում, պարզապես ընդհանուր գաղափար ունենալ գոնե:
LinuxGSM — ինչ է LinuxGSM-ի մասին, կարող եք կարդալ պաշտոնական կայքում: https://linuxgsm.com.
Այս պահի դրությամբ (2020 թվականի ապրիլ) LinuxGSM-ում առկա է 105 խաղային սերվեր:
Լիքը ցանկը կարող եք տեսնել այստեղ https://linuxgsm.com/servers.
Steam — խաղերի շուկա:
Խաղային սերվեր LinuxGSM-ն ինտեգրվել է SteamCMD, այսինքն, LinuxGSM խաղային սերվերը կարող եք օգտագործել միայն Steam-ի խաղերի համար:
Docker-ի տեղադրումը Synology NAS-ում
Այս փուլում ամեն բան պարզ է, անցնում ենք Synology-ի ադմինիստրյալ վահանակ, ապա «Փաթեթների կենտրոն», գտնում և տեղադրում ենք Docker:
Փաթեթների կենտրոն
Ռազմական է տոկոսում տեսնում ենք այսպիսի պատկեր (ես արդեն տեղադրել եմ այս կոնտեյերը)
Կոնտեյերի կառավարում
Այնուհետև անցնում ենք «Registry» вкладка, ներմուծում ենք որոնման «gameservermanagers», ընտրում ենք «gameservermanagers/linuxgsm-docker» պատկերը և սեղմում «Download» կոճակը:
gameservermanagers/linuxgsm-docker
Այսօր անցնում ենք «Image» вкладка, սպասում ենք պատկերի ներբեռնումը և սեղմում «Launch» կոճակը:
Պատվերի ներբեռնումը
Բացված պատուհանում պետք է անցնել «Advanced Settings», ապա «Network» вкладка և նշեք «Use the same network as Docker Host» անցումը:
Այստեղի մյուս կարգավորումները, օրինակ, «Container Name», փոփոխեք ըստ ձեր ցանկության:
Container Name — ինչպես հեշտ է ենթադրվել, սա է կոնտեյերի անունը, որը հետո օգտակար կդառնա: Խորհուրդ եմ տալիս կարճ անվանել ինչ-որ կերպ, օրինակ, пусть կլինի «test».
Դրանից հետո սեղմեք «Apply» կամ «Next» կոճակը մի քանի անգամ մինչև կարգավորումը ավարտվի:
Advanced Settings
Ընթացում ենք «Container» вкладка և տեսնում ենք նոր գործակցված (եթե ոչ, գործարկենք) կոնտեյերը:
Այստեղ կարող եք կանգնացնել, գործարկել, ջնջել և իրականացնել այլ գործողություններ:
LinuxGSM Docker կոնտեյերի կարգավորումը
Նախքան Synology NAS-ին SSH-ով միանալը, անհրաժեշտ է ակտիվացնել SSH մուտքը ադմինիստրյալ վահանում:
SSH-ով կապը
Այլևս պետք է օգտագործել ներքին IP հասցե Synology NAS սերվեր SSH-ով միանալու համար:
Գործեք ամպում (կամ այլ ցանկացած նմանությամբ, օրինակ՝ Windows-ը PuTTY) և օգտագործեք հետևյալ հրամանը:
ssh user_name@IPԻմ դեպքում սա դիտարկվում է այսպես
ssh admin@192.168.0.166Synology NAS սերվերի IP հասցե
Համաձայնեցնելուց հետո պետք է կատարել հրամանը «test» կոնտեյեր տեղափոխվելու համար (Docker կարգավորումներում «Container Name» դրույք)
sudo docker exec -u 0 -it test bashDocker-ին միացում
LinuxGSM-ը տեղադրելուց առաջ պետք է կատարել որոշ գործողություններ:
Մենք կսահմանենք «root» օգտագործողի գաղտնաբառը
passwdԱյժմ թարմացնենք բոլոր փաթեթները
apt update && apt upgrade && apt autoremoveՍպասում ենք գործընթացի ավարտին…
Փաթեթների թարմացում
Այժմ կտեղադրենք անհրաժեշտ գործիքները
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-fullԼայն՝ «root»-ով տարբեր գործողություններ իրականացնելը լավագույն գաղափարը չէ, կավելացնենք նոր «test» օգտագործող:
adduser testԵվ թույլ կտանք նոր օգտագործողին օգտագործել «sudo»-ն
usermod -aG sudo testՓոխանցվում ենք նոր «test» օգտագործողին
su testLinuxGSM-ի տեղադրում և կարգավորում
Վերլուծենք LinuxGSM-ի կարգավորումը «Counter-Strike» կամ «CS 1.6» օրինակով https://linuxgsm.com/lgsm/csserver
Մուտք գործեք «Counter-Strike»-ի հրահանգների էջ: linuxgsm.com/lgsm/csserver.
«Dependencies» вкладкаից պատճենեք «Ubuntu 64-bit»-ի համար կոդը:
Հոդվածի գրության պահին այդ կոդը հետևյալն է՝
sudo dpkg --add-architecture i386; sudo apt update; sudo apt install mailutils postfix curl wget file tar bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux lib32gcc1 libstdc++6 lib32stdc++6 steamcmd
Ակտիվների տեղադրում
Տեղադրման ընթացքում պետք է համաձայնել «Steam License»-ին:
Steam License
Մուտք գնացեք «Install» вкладка և պատճենեք 2-րդ քայլի կոդը (1-ին քայլը բաց թողեք, «test» օգտվողը արդեն կա):
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
Սպասում ենք ներբեռնումը:
Ներբեռնում
Եվ սկսում ենք տեղադրումը:
./csserver installԵթե ամեն ինչ ճիշտ է անցել, բայց մենք տեսնում ենք «Install Complete!»
Install Complete!
Սկսում ենք… և տեսնում ենք «Multiple IP addresses found» սխալը:
./csserver startMultiple IP addresses found
Այդ դեպքում պետք է հստակ նշել, թե որ IP-ն պետք է օգտագործվի:
Իմ դեպքում սա՝
192.168.0.166Մուտք գնում ենք այն ֆոլդերը, որի ուղին հաղորդվել է «location»-ի միջոցով:
cd /home/test/lgsm/config-lgsm/csserverԵվ նայեք՝ որ ֆայլեր կան այդ ֆոլդերում:
lscsserver ֆոլդերում գոյություն ունեցող ֆայլերի ցանկը
Պատճենեք «_default.cfg» ֆայլի բովանդակությունը «csserver.cfg» ֆայլում:
cat _default.cfg >> csserver.cfgԵվ մտեք «csserver.cfg» ֆայլը խմբագրելու ռեժիմում:
nano csserver.cfgcsserver.cfg ֆայլի խմբագրում
Հայտնաբերում ենք տողը:
ip="0.0.0.0"Եվ փոխարինում ենք առաջարկված IP հասցեն, իմ դեպքում, դա «192.168.0.166» է:
Ստացվում է այսպես՝
ip="192.168.0.166"Սեղմեք համակցման կոճակները:
Ctr + XԵվ երբ առաջարկվում է պահպանել, սեղմում ենք:
YՎերադառնում ենք «test» օգտվողի ֆոլդերը:
cd ~Եվ նորից փորձեք սկսել сервера: Այժմ серверը պետք է սկսվի առանց խնդրի:
./csserver startՍերվերի սկսում
Մանրամասն տեղեկություններ դիտելու համար օգտագործեք հրամանը:
./csserver detailsՄանրամասն տեղեկություններ սերվերի
Հիմնական պարամետրերից, որ值得 նշել:
- Server IP: 192.168.0.166:27015
- Internet IP: xxx.xx.xxx.xx:27015
- Config file: /home/test/serverfiles/cstrike/csserver.cfg
Այս փուլում խաղային սերվերը արդեն հասանելի է տեղական ցանցում:
IP հասցեի վերադարձումը
Ախորժալի է մուտքային ցանցում խաղալը, բայց ավելի լավ է խաղալ ընկերների հետ ինտերնետում:
IP հասցեի վերադարձման համար, որը ստացել է ռոուտերը, օգտագործեք NAT մեխանիզմը:
Այնպես է, որ շատ մատակարարներ օգտագործում են դինամիկ IP հասցեներ իրենց հաճախորդների համար:
Հարմար աշխատելու և կայունության համար ցանկալի է ստացնել ստատիկ IP հասցե:
Քանի որ իմ ուղղիչը «TP-Link Archer C60» է, ես բերում եմ փոխանցման կարգավորման օրինակ, ինչպես դա իրականացված է իմ ուղղիչում:
Այլ ուղղիչների համար կարծում եմ, որ փոխանցման կարգավորումը նման է:
Այս ամենն ամենատարբեր է՝ անհրաժեշտ է նշել արտաքին IP հասցեի փոխանցումը ներքին IP հասցեին միայն երկու պորտերի համար:
- 27015
- 27005
Իմ ուղղիչի ադմին պանելում դա այսպես է ելնում:
Ուղղիչի ադմին պանել
Եվ վերջապես, ուղիչի կարգավորումները保存ելիս, խաղի սերվերը կլինի հասանելի ցանցում արտաքին IP հասցեով նշված պորտերի համար!
Ավելանյութ կարգավորումներ՝ CS 1.6-ի օրինակով
CS 1.6-ի օրինակով ցանկանում եմ տալ մի քանի օգտակար խորհուրդներ:
Սերվերի համար կան երկու ֆայլեր:
Առաջինն այսպես է:
~\/lgsm\/config-lgsm\/csserver\/csserver.cfgԵրկրորդն այսպես է:
~\/serverfiles\/cstrike\/csserver.cfgԱռաջին ֆայլը պարունակում է ընդհանուր կարգավորումներ, ինչպիսիք են IP հասցեն, մապն առաջին անգամ загрузки սերվերի և այլն:
Երկրորդ ֆայլը պարունակում է կվարկային կարգավորումներ, որոնք կարող են իրականացվել «Counter-Strike» կոնսոլի միջոցով, օրինակ «rcon_password» կամ «sv_password»:
Երկրորդ ֆայլում խորհուրդ եմ տալիս սահմանել սերվերի հետ միանալու գաղտնաբառը CVar «sv_password»-ի միջոցով և սահմանել գաղտնաբառ սերվերի կոնսոլի կառավարման համար CVar «rcon_password»-ի միջոցով:
Ամբողջ CVar փոփոխականների ցուցակը կարելի է տեսնել այստեղ. http://txdv.github.io/cstrike-cvarlist
Այդ նույն՝ հավանաբար կպահանջվի լրացուցիչ մապերի տեղադրումը, օրինակ «fy_pool_day»:
Բոլոր մապերը CS 1.6-ի համար գտնվում են այստեղ:
~\/serverfiles\/cstrike\/mapsԳտնում ենք անհրաժեշտ մապը, բեռնում ուղղակի այնտեղ (եթե արխիվում է, բացում ենք) և տեղափոխում «.bsp» վարվելում չկողմնորոշված ֆայլը «~\/serverfiles\/cstrike\/maps» օրինակոբ մեջ և վերագործարկում սերվերը:
~.\/csserver restartԳրեթե բոլոր հասանելի սերվերի հրամանները կարելի է տեսնել այսպես:
~.\/csserver
Եզրակացություն
Ես գոհ եմ ստացողական արդյունքից: Ամբոջը լավ է աշխատում և չի խլանում:
LinuxGSM-ն ունի շատ հավելյալ կարգավորումներ, օրինակ՝ Telegram և Slack-ի ինտեգրացիա տեղեկացումների համար, բայց որոշ ֆունկցիոնալություն դեռ պահանջում է բարելավումներ:
Ընդհանուր առմամբ, խորհուրդ եմ տալիս օգտագործել:
Աղբյուրներ
https://linuxgsm.com
https://docs.linuxgsm.com
https://digitalboxweb.wordpress.com/2019/09/02/serveur-counter-strike-go-sur-nas-synology
https://medium.com/@konpat/how-to-host-a-counter-strike-1-6-game-on-linux-full-tutorial-a25f20ff1149
http://txdv.github.io/cstrike-cvarlist
ՆԹԲ
Ինչպես նկատել է centralhardware չի բոլոր Synology NAS-ները կարողանում են Docker-ում, ահա սարքերի ցանկը որոնք կարող են: https://www.synology.com/ru-ru/dsm/packages/Docker.
Ընտանիք: habr.com



