Salomlar!
Shunday qilib, barcha ma'lum sabablarga ko'ra, biz monitor oldida uyda ko'proq vaqt o'tkazishimiz kerak.
Bunday holatda, o'tgan kunlarning ishlarini esga olish kerak.
Ushbu maqolaning sarlavhasidan allaqachon aniq bo'lganidek, biz Synology NAS-ni o'yin serveri sifatida sozlash haqida gaplashamiz.
Achtung — maqolada juda ko'p skrinshotlar mavjud (skrinshotlarni bosish mumkin)!
Ishni boshlashdan oldin, bizga kerak bo'ladigan vositalar ro'yxati:
Ayni paytda (2020-yil aprel) LinuxGSM-da 105 ta oʻyin serverlari mavjud.
Toʻliq roʻyxatni shu yerda koʻrish mumkin
LinuxGSM o'yin serveri bilan integratsiya mavjud
Synology NAS-ga Docker-ni o'rnatish
Ushbu bosqichda hamma narsa oddiy, Synology boshqaruv paneliga o'ting, so'ng "Paket markazi" ga o'ting, Docker-ni toping va o'rnating.
Paket markazi
Biz uni ishga tushiramiz va shunga o'xshash narsani ko'ramiz (menda bu konteyner allaqachon o'rnatilgan)
Konteynerlarni boshqarish
Keyin, "Ro'yxatga olish kitobi" yorlig'iga o'ting, qidiruvga "gameservermanagers" ni kiriting, "gameservermanagers/linuxgsm-docker" rasmini tanlang va "Yuklab olish" tugmasini bosing.
gameservermanagers/linuxgsm-docker
Keyin "Rasm" yorlig'iga o'ting, rasm yuklanishini kuting va "Ishga tushirish" tugmasini bosing.
Rasm yuklab olish
Ochilgan oynada siz "Kengaytirilgan sozlamalar", keyin "Tarmoq" yorlig'iga o'tishingiz va "Docker Host bilan bir xil tarmoqdan foydalanish" katagiga belgi qo'yishingiz kerak.
Qolgan sozlamalarni, masalan, "Konteyner nomi" kabi o'z ixtiyorimiz bilan o'zgartiramiz.
Konteyner nomi - siz taxmin qilganingizdek, bu konteynerning nomi, u keyinroq foydali bo'ladi. Men uni qisqacha nomlashni tavsiya qilaman; masalan, u "sinov" bo'lsin.
Keyin, sozlash tugaguniga qadar "Ilova" yoki "Keyingi" tugmasini bir necha marta bosing.
Murakkab sozlamalar
"Konteyner" yorlig'iga o'ting va yangi ishlaydigan (agar bo'lmasa, ishga tushirish) konteynerni ko'ring.
Bu erda siz to'xtatishingiz, boshlashingiz, o'chirishingiz va boshqa amallarni bajarishingiz mumkin.
LinuxGSM Docker konteynerini sozlash
Synology NAS ga SSH orqali ulanishdan oldin administrator panelida SSH kirishini faollashtirishingiz kerak.
SSH orqali ulanish
Keyinchalik, SSH orqali ulanish uchun Synology NAS serverining ichki IP manzilidan foydalanishingiz kerak.
Terminalga o'ting (yoki boshqa analog, masalan, Windows ostida bu
ssh user_name@IP
Mening holatimda bu shunday ko'rinadi
ssh [email protected]
Synology NAS serverining IP manzili
Avtorizatsiyadan so'ng siz "root" foydalanuvchisi ostidagi "sinov" konteynerining o'ziga (Docker sozlamalaridagi "Konteyner nomi" maydoni) o'tish buyrug'ini bajarishingiz kerak.
sudo docker exec -u 0 -it test bash
Docker-ga ulanish
LinuxGSM ni o'rnatishdan oldin siz ba'zi qadamlarni bajarishingiz kerak.
"Root" foydalanuvchisi uchun parol o'rnating
passwd
Keyin barcha paketlarni yangilaymiz
apt update && apt upgrade && apt autoremove
Jarayonning tugashini kutamiz...
Paketlarni yangilash
Keyinchalik, kerakli yordamchi dasturlarni o'rnating
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-full
"Ildiz" ostida turli xil amallarni bajarish eng yaxshi g'oya emasligi sababli, keling, yangi foydalanuvchi "test" ni qo'shamiz.
adduser test
Keling, yangi foydalanuvchiga "sudo" dan foydalanishga ruxsat beraylik.
usermod -aG sudo test
Yangi foydalanuvchi "test" ga o'tish
su test
LinuxGSM ni o'rnatish va sozlash
Keling, "Counter-Strike" aka "CS 1.6" misolidan foydalanib, LinuxGSM-ni sozlash misolini ko'rib chiqaylik.
"Counter-Strike" ko'rsatmalar sahifasiga o'ting
"Bog'liqlar" yorlig'ida "Ubuntu 64-bit" ostidagi kodni nusxalash.
Yozish vaqtida ushbu kod quyidagicha ko'rinadi:
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
Bog'liqlarni o'rnatish
O'rnatish jarayonida siz "Steam litsenziyasi" ga rozi bo'lishingiz kerak:
Steam litsenziyasi
"O'rnatish" yorlig'iga o'ting va 2-bosqichdagi kodni nusxalash (biz 1-bosqichni o'tkazib yuboramiz, allaqachon "sinov" foydalanuvchisi mavjud):
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
Biz yuklab olishni kutmoqdamiz:
Yuklab oling
Va o'rnatishni boshlang:
./csserver install
Agar hamma narsa odatdagidek bo'lsa, biz qimmatbaho "O'rnatish tugallandi!"
Oʻrnatish tugallandi!
Biz ishga tushiramiz... va "Bir nechta IP manzillar topildi" xatosini ko'ramiz.
./csserver start
Bir nechta IP manzillar topildi
Keyinchalik, serverga qaysi IP-dan foydalanishni aniq aytishingiz kerak.
Mening holimda bu:
192.168.0.166
Papkaga o'ting, uning yo'li xabarda "joylashuv" sifatida ko'rsatilgan:
cd /home/test/lgsm/config-lgsm/csserver
Va ushbu papkada qanday fayllar mavjudligiga qarang:
ls
csserver jildidagi fayllar ro'yxati
"_default.cfg" faylining mazmunini "csserver.cfg" fayliga nusxalash:
cat _default.cfg >> csserver.cfg
Va "csserver.cfg" faylini tahrirlash rejimiga o'ting:
nano csserver.cfg
csserver.cfg faylini tahrirlash
Biz qatorni topamiz:
ip="0.0.0.0"
Va biz taklif qilingan IP-manzilni almashtiramiz, mening holimda bu "192.168.0.166".
Bu shunday bo'ladi:
ip="192.168.0.166"
Klaviatura yorlig'ini bosing:
Ctr + X
Va saqlash taklifidan keyin bosing:
Y
Foydalanuvchining “test” jildiga qayting:
cd ~
Va yana serverni ishga tushirishga harakat qilamiz. Server endi muammosiz ishga tushishi kerak:
./csserver start
Server ishga tushirilmoqda
Batafsil ma'lumotni ko'rish uchun quyidagi buyruqdan foydalaning:
./csserver details
Server haqida batafsil ma'lumot
E'tiborga olish kerak bo'lgan muhim parametrlar:
- Server IP: 192.168.0.166:27015
- Internet IP: xxx.xx.xxx.xx:27015
- Konfiguratsiya fayli: /home/test/serverfiles/cstrike/csserver.cfg
Ushbu bosqichda o'yin serveri allaqachon mahalliy tarmoqda mavjud.
IP manzilini yo'naltirishni sozlash
Mahalliy tarmoq orqali o'ynash yaxshi, lekin Internet orqali do'stlar bilan o'ynash yaxshiroq!
Router provayderdan olgan IP manzilini yuborish uchun biz NAT mexanizmidan foydalanamiz.
Shuni ham ta'kidlash kerakki, ko'pchilik provayderlar o'z mijozlari uchun dinamik IP manzillaridan foydalanadilar.
Ishning qulayligi va barqarorligi uchun statik IP-manzilni olish tavsiya etiladi.
Menda TP-Link Archer C60 marshrutizatori borligi sababli, men yo'riqnomamda amalga oshirilganligi sababli yo'naltirishni sozlashga misol keltiraman.
Boshqa marshrutizatorlar uchun yo'naltirish sozlamalari o'xshash deb o'ylayman.
Bu erda hamma narsa oddiy - ikkita port uchun tashqi IP-manzildan serverning ichki IP-manziliga qayta yo'naltirishni belgilashingiz kerak:
- 27015
- 27005
Routerimning boshqaruv panelida shunday ko'rinadi
Router administrator paneli
Hammasi shu, marshrutizator sozlamalarini saqlaganingizdan so'ng, o'yin serveri ko'rsatilgan portlar uchun tashqi IP-manzil orqali tarmoqda mavjud bo'ladi!
Misol sifatida CS 1.6 dan foydalangan holda qo'shimcha sozlamalar
Misol tariqasida CS 1.6 dan foydalanib, ba'zi foydali maslahatlar bermoqchiman.
Server konfiguratsiyasi uchun ikkita fayl mavjud
Birinchisi bu erda:
~/lgsm/config-lgsm/csserver/csserver.cfg
Ikkinchisi bu erda:
~/serverfiles/cstrike/csserver.cfg
Birinchi faylda IP-manzil, serverni birinchi marta yuklash xaritasi va boshqalar kabi umumiy sozlamalar mavjud.
Ikkinchi faylda Counter-Strike konsoli orqali bajarilishi mumkin bo'lgan buyruqlar sozlamalari mavjud, masalan, "rcon_password" yoki "sv_password".
Ikkinchi faylda men CVar “sv_password” orqali serverga ulanish uchun parol o'rnatishni va CVar “rcon_password” orqali server konsolidan boshqarish uchun parolni o'rnatishni tavsiya qilaman.
Barcha CVar o'zgaruvchilari ro'yxatini bu yerda topishingiz mumkin
Bundan tashqari, qo'shimcha kartalarni o'rnatish kerak bo'ladi, masalan, "fy_pool_day".
CS 1.6 uchun barcha xaritalar bu yerda:
~/serverfiles/cstrike/maps
Biz kerakli xaritani topamiz, uni to'g'ridan-to'g'ri serverga yuklaymiz (agar u arxivda bo'lsa, uni oching), ".bsp" kengaytmali faylni "~/serverfiles/cstrike/maps" fayllari joylashgan jildga o'tkazamiz va qayta ishga tushiramiz. server.
~./csserver restart
Aytgancha, barcha mavjud server buyruqlarini quyidagicha ko'rish mumkin:
~./csserver
Xulosa
Natijadan mamnunman. Hamma narsa tez ishlaydi va ortda qolmaydi.
LinuxGSM-da ko'plab qo'shimcha sozlamalar mavjud, masalan, bildirishnomalar uchun Telegram va Slack bilan integratsiya, ammo ba'zi funksiyalar hali ham yaxshilanishlarni talab qiladi.
Umuman olganda, men buni tavsiya qilaman!
Axborot manbalari
DUP
Ta'kidlanganidek
Manba: www.habr.com