Adaugă la favorite Adaugă la favorite    Tipăreşte Tipăreşte

Upgrade de securitate si performanta (engine HLDS) v6153 @ 2014

Incepand cu 03.Mai.2017 acest document a fost inlocuit de http://www.krond.org/knowledgebase/109/Upgrade-de-securitate-engine-reHLDS-at-2017.html



ATENTIE:
Pentru a efectua cu succes upgrade-ul la ultima versiune a engine-ului, va rugam cititi INTEGRAL acest articol intrucat contine informatii vitale pentru procesul ce urmeaza sa-l executati. 

A trecut mult timp (chiar foarte mult) de cand Valve nu a mai acordat atentie engine-ului HLDS ce sta la baza celui mai jucat shooter din ultima decada, totusi ... au realizat si dansii nevoia unor update-uri pe care le-au tot optimizat/modificat in ultimele 6-8 luni de zile direct pe pagina de github https://github.com/ValveSoftware/halflife. Dupa ce un engine lansat a fost cat de cat stabil, a aparut si support dproto (pachet metamod pentru nonsteam), bineinteles ... dupa cum v-am obisnuit de-a lungul anilor am tot asteptat sa vedem ce noutati mai apar in acest segment pentru ca upgrade-ul sa fie cat se poate de rapid, complet informat de partea clientului si fara prea mari batai de cap.
 
Upgrade-ul este necesar intrucat blocheaza o sumedenie de exploit-uri aparute de-a lungul timpului (si blocate de noi prin modificari de engine ori unelte externe), de asemeni noul engine promite o generare mai exacta a FPS-urilor si implicit o performanta mai sporita. Pana la urma ... daca se poate sa avem un plus de securitate si performanta prin inlocuirea batranului engine ce ne-a servit pana acum, de ce nu ? Noi am tinut in teste acest upgrade in jur de 2 luni de zile, totul functioneaza corect si fara prea mari probleme ... singurul aspect pe care-l putem confirma insa este acela cu privire la securitate (rezolvarea majoritatii exploit-urilor aparute pana-n prezent).
 
Incepand cu 01.11.2013 orice server nou instalat in panoul de control va fi livrat cu noul engine, am scos din panou versiunile anterioare de dproto precum si toate addons-urile disponibile - acestea urmand a fi actualizate in urmatoarea perioada si reinstalate pentru a fi la dispozitia utilizatorilor nostrii.
 
Toti pasii explicati in acest tutorial implica accesul la panoul de control pentru gazduire servicii platforma linux - www.gamepanel.ro precum si acces FTP.
 
ATENTIE: Patru din cinci servere zombiemod NU SUNT COMPATIBILE cu noul engine si necesita atat upgrade-uri de module cat si de plugin-uri, NU va apucati de upgrade decat daca si numai daca ati trecut in revista TOATE elementele addon-ului de zombiemod si aveti upgrade-urile pregatite, serverul NU VA PORNI daca nu le actualizati si pe acestea. Asistenta tehnica NU raspunde in 30 secunde, nu riscati sa aveti un server de top inchis datorita faptului ca nu sunteti pregatiti de acest upgrade. Alocati-va timp, e un update major ce necesita actualizari atat de metamod cat si de amxmodx (explicate in acest tutorial), unele upgrade-uri se rezolva in 2-3 minute iar altele au nevoie de modificari extinse. Nu suntem responsabili pentru nefunctionarea serverului si pierderea in rank pe gametracker datorita faptului ca nu cititi acest tutorial integral si nu va pregatiti de upgrade asa cum va recomandam. 
 
 
Resurse importante si adnotari:
 
  • Upgrade CSDM (respawn) - functioneaza exclusiv cu varianta BETA lansata de KWo, mai multe informatii aici: https://forums.alliedmods.net/showthread.php?t=47306, daca utilizati acest modul pe server si nu actualizati modulele amxmodx pentru CSDM din acest pachet serverul NU va porni.
---
 
 
A. Vreau sa reinstalez serverul si sa-l configurez de la zero pe noul engine, nu ma intereseaza configuratia actuala
 
1) Intra in panoul de control, selecteaza serverul in cauza si opreste-l (Stop)
2) Navigheaza la tabul "Settings" si modifica parametrul "kversion" in "cs_new" apoi click pe salvare fara ghilimele) - asigura-te de asemeni ca la "map" ai de_dust2 sau alta harta care vine preinstalata in pachetul standard de CS 1.6.
3) Din cadrul sectiunii principale, actioneaza butonul de reinstalare, serverul ar trebui sa revina online in maxim 5 minute utilizand noul engine.
 
Nu opri serverul pentru configurare decat in momentul in care acesta apare online, in HLSW sau in panoul de control.
 
 
 
B. Vreau sa fac upgrade la noul engine dar sa-mi pastrez configuratia actuala.
 
Aici este putin mai complicat, daca n-ar fi fost atunci am fi procesat noi acest upgrade fara sa fie nevoie de interventia ta. 
Daca ai un addon foarte modificat (de genul celor facute de programatorul Hattrick) ori alte addon-uri bazate pe module metamod (altele decat amxmodx) trebuie sa te opresti aici pentru ca acele addon-uri nu sunt compatibile cu noul engine si de asemeni nici cu ultima versiune de metamod, solicita upgrade de la dezvoltator inainte sa continui pasii din acest tutorial.
 
In cazul in care ai un addon simplu, standard (bazat pe amdmodx) atunci totul este in ordine, toate modulele standard (ce fac parte din pachetul original amxmodx) vor fi actualizate de-a lungul procesului iar serverul va functiona fara nici o problema, atentie mare insa ... daca aveti si alte module amxmodx acestea vor trebui actualizate manual ... de exemplu modulele csdm, orpheu, etc ...
 
 
1) Efectueaza un backup al configuratiei, aici ne referim la directorul addons - nu se stie niciodata cand e nevoie ... poate ceva nu merge in ordine si ar fi bine sa ai un backup de rezerva.
2) Opreste serverul din panoul de control (Stop)
3) Navigheaza la tabul "Settings" si modifica parametrul "kversion" in "cs_new" apoi click pe salvare (fara ghilimele)
4) Porneste serverul din panoul de control (Start), asteapta 30 secunde si opreste-l la loc (Stop), aceasta operatie va forta sistemul sa aplice patch-ul de schimbare a versiunii dupa cum urmeaza:
 
Se initieaza procedura de stergere a fisierelor outdated pentru pregatirea upgrade-ului, sistemul va sterge automat aceste fisiere:
 
core_i386.so
cstrike/cs_havana.WAD
cstrike/dlls/cs_i386.so
cstrike/iga.dat
cstrike/iga_static
cstrike/iga_static.wad
cstrike/overviews/cs_backalley.BMP
engine_amd.so
engine_i686.so
filesystem_stdio_i386.so
hlds_amd
hlds_i486
hlds_i686
InstallRecord.blob
libsteam_api_c.so
libtier0_s.so
libvstdlib_s.so
linuxreadme.txt
proxy_i386.so
reslists
steam
steam_appid.txt
valve/dlls/hl_i386.so
 
Dupa aceasta se aplica upgrade-ul ce consta in aceste fisiere:
 
core.so
crashhandler.so
cstrike/cl_dlls/client.dll
cstrike/cl_dlls/client.dylib
cstrike/cl_dlls/client.so
cstrike/config.cfg
cstrike/cs_havana.wad
cstrike/delta.lst
cstrike/dlls/cs_amd64.so
cstrike/dlls/cs.dylib
cstrike/dlls/cs.so
cstrike/dlls/mp.dll
cstrike/game.icns
cstrike/gfx/shell/kb_act.lst
cstrike/gfx/shell/kb_def.lst
cstrike/overviews/cs_backalley.bmp
cstrike/resource/OptionsSubMultiplayer.res
cstrike/steam.inf
cstrike/user.scr
demoplayer.so
engine_i486.so
filesystem_stdio.so
hlds_linux
hlds_run
hltv
libSDL2.so
libstdc++.so.6
libsteam_api.so
libtier0.so
libvstdlib.so
proxy.so
steamclient.so
valve/cl_dlls/client.dll
valve/cl_dlls/client.dylib
valve/cl_dlls/client.so
valve/config.cfg
valve/dlls/Director.dll
valve/dlls/director.dylib
valve/dlls/director.so
valve/dlls/hl.dll
valve/dlls/hl.dylib
valve/dlls/hl.so
valve/game.icns
valve/GameServerConfig.vdf
valve/game.tga
valve/gfx/shell/kb_act.lst
valve/gfx/shell/kb_def.lst
valve/liblist.gam
valve/maps/c1a0d.bsp
valve/media/Half-Life01.mp3
valve/media/Half-Life02.mp3
valve/media/Half-Life03.mp3
valve/media/Half-Life04.mp3
valve/media/Half-Life05.mp3
valve/media/Half-Life06.mp3
valve/media/Half-Life07.mp3
valve/media/Half-Life08.mp3
valve/media/Half-Life09.mp3
valve/media/Half-Life10.mp3
valve/media/Half-Life11.mp3
valve/media/Half-Life12.mp3
valve/media/Half-Life13.mp3
valve/media/Half-Life14.mp3
valve/media/Half-Life15.mp3
valve/media/Half-Life16.mp3
valve/media/Half-Life17.mp3
valve/media/Prospero01.mp3
valve/media/Prospero02.mp3
valve/media/Prospero03.mp3
valve/media/Prospero04.mp3
valve/media/Prospero05.mp3
valve/media/Suspense01.mp3
valve/media/Suspense02.mp3
valve/media/Suspense03.mp3
valve/media/Suspense05.mp3
valve/media/Suspense07.mp3
valve/resource/gameui_english.txt
valve/resource/LoadGameDialog.res
valve/resource/LoadingDialogConnectionLost.res
valve/resource/LoadingDialogDualProgress.res
valve/resource/LoadingDialogDualProgressVAC.res
valve/resource/LoadingDialogErrorLoggedInElsewhere.res
valve/resource/LoadingDialogErrorNoSteamConnection.res
valve/resource/LoadingDialogError.res
valve/resource/LoadingDialogErrorVACBanned.res
valve/resource/LoadingDialogNoBanner.res
valve/resource/LoadingDialogNoBannerSingle.res
valve/resource/LoadingDialog.res
valve/resource/LoadingDialogVAC.res
valve/resource/marlett.ttf
valve/resource/OptionsSubAdvanced.res
valve/resource/OptionsSubAudio.res
valve/resource/OptionsSubKeyboard.res
valve/resource/OptionsSubMouse.res
valve/resource/OptionsSubMultiplayer.res
valve/resource/OptionsSubVideo.res
valve/resource/OptionsSubVoice.res
valve/resource/SaveGameDialog.res
valve/resource/valve_english.txt
valve/sound/misc/talk.wav
valve/spectatormenu.txt
valve/spectcammenu.txt
valve/steamcomm.lst
valve/steam.inf
vgui2.so
vgui.so
voice_miles.so
voice_silk.so
voice_speex.so
 
 
Dupa cum vezi, nici un fisier vital configuratiei nu este rescris. 
 
5) Trebuie sa faci upgrade la amxmodx si metamod, navigheaza la tabul "Addons" si instaleaza "AmxmodX 1.8.2 - Standard (upgrade only)", acesta va rescrie urmatoarele fisiere (neatingandu-se de configuratia amxmodx-ului):
 
cstrike/
cstrike/addons/
cstrike/addons/metamod/
cstrike/addons/metamod/plugins.ini
cstrike/addons/metamod/dlls/
cstrike/addons/metamod/dlls/metamod_i386.so
cstrike/addons/metamod/dlls/metamod.so
cstrike/addons/amxmodx/
cstrike/addons/amxmodx/dlls/
cstrike/addons/amxmodx/dlls/amxmodx_mm_i386.so
cstrike/addons/amxmodx/plugins/
cstrike/addons/amxmodx/plugins/restmenu.amxx
cstrike/addons/amxmodx/plugins/timeleft.amxx
cstrike/addons/amxmodx/plugins/miscstats.amxx
cstrike/addons/amxmodx/plugins/statscfg.amxx
cstrike/addons/amxmodx/plugins/menufront.amxx
cstrike/addons/amxmodx/plugins/statsx.amxx
cstrike/addons/amxmodx/plugins/pausecfg.amxx
cstrike/addons/amxmodx/plugins/admincmd.amxx
cstrike/addons/amxmodx/plugins/adminvote.amxx
cstrike/addons/amxmodx/plugins/stats_logging.amxx
cstrike/addons/amxmodx/plugins/antiflood.amxx
cstrike/addons/amxmodx/plugins/adminchat.amxx
cstrike/addons/amxmodx/plugins/scrollmsg.amxx
cstrike/addons/amxmodx/plugins/mapsmenu.amxx
cstrike/addons/amxmodx/plugins/plmenu.amxx
cstrike/addons/amxmodx/plugins/cmdmenu.amxx
cstrike/addons/amxmodx/plugins/admin_sql.amxx
cstrike/addons/amxmodx/plugins/adminhelp.amxx
cstrike/addons/amxmodx/plugins/multilingual.amxx
cstrike/addons/amxmodx/plugins/telemenu.amxx
cstrike/addons/amxmodx/plugins/mapchooser.amxx
cstrike/addons/amxmodx/plugins/adminslots.amxx
cstrike/addons/amxmodx/plugins/amxmod_compat.amxx
cstrike/addons/amxmodx/plugins/nextmap.amxx
cstrike/addons/amxmodx/plugins/imessage.amxx
cstrike/addons/amxmodx/plugins/pluginmenu.amxx
cstrike/addons/amxmodx/plugins/admin.amxx
cstrike/addons/amxmodx/modules/
cstrike/addons/amxmodx/modules/regex_amxx_i386.so
cstrike/addons/amxmodx/modules/cstrike_amxx_i386.so
cstrike/addons/amxmodx/modules/engine_amxx_i386.so
cstrike/addons/amxmodx/modules/fun_amxx_i386.so
cstrike/addons/amxmodx/modules/geoip_amxx_i386.so
cstrike/addons/amxmodx/modules/sockets_amxx_i386.so
cstrike/addons/amxmodx/modules/fakemeta_amxx_i386.so
cstrike/addons/amxmodx/modules/mysql_amxx_i386.so
cstrike/addons/amxmodx/modules/csx_amxx_i386.so
cstrike/addons/amxmodx/modules/nvault_amxx_i386.so
cstrike/addons/amxmodx/modules/sqlite_amxx_i386.so
cstrike/addons/amxmodx/modules/hamsandwich_amxx_i386.so
cstrike/addons/amxmodx/data/
cstrike/addons/amxmodx/data/csstats.amxx
cstrike/addons/amxmodx/data/GeoIP.dat
cstrike/addons/amxmodx/data/lang/
cstrike/addons/amxmodx/data/lang/pausecfg.txt
cstrike/addons/amxmodx/data/lang/antiflood.txt
cstrike/addons/amxmodx/data/lang/languages.txt
cstrike/addons/amxmodx/data/lang/adminhelp.txt
cstrike/addons/amxmodx/data/lang/plmenu.txt
cstrike/addons/amxmodx/data/lang/common.txt
cstrike/addons/amxmodx/data/lang/imessage.txt
cstrike/addons/amxmodx/data/lang/multilingual.txt
cstrike/addons/amxmodx/data/lang/mapsmenu.txt
cstrike/addons/amxmodx/data/lang/admincmd.txt
cstrike/addons/amxmodx/data/lang/adminslots.txt
cstrike/addons/amxmodx/data/lang/scrollmsg.txt
cstrike/addons/amxmodx/data/lang/stats_dod.txt
cstrike/addons/amxmodx/data/lang/nextmap.txt
cstrike/addons/amxmodx/data/lang/statscfg.txt
cstrike/addons/amxmodx/data/lang/adminvote.txt
cstrike/addons/amxmodx/data/lang/mapchooser.txt
cstrike/addons/amxmodx/data/lang/statsx.txt
cstrike/addons/amxmodx/data/lang/miscstats.txt
cstrike/addons/amxmodx/data/lang/admin.txt
cstrike/addons/amxmodx/data/lang/telemenu.txt
cstrike/addons/amxmodx/data/lang/time.txt
cstrike/addons/amxmodx/data/lang/timeleft.txt
cstrike/addons/amxmodx/data/lang/restmenu.txt
cstrike/addons/amxmodx/data/lang/menufront.txt
cstrike/addons/amxmodx/data/lang/adminchat.txt
cstrike/addons/amxmodx/data/lang/cmdmenu.txt
cstrike/liblist.gam
 
6) Penultimul pas o reprezinta update-ul dproto, navigheaza la tabul "Updates" si instaleaza "Dproto - Non-Steam" sau "Dproto  - Steam-Only" (dupa caz), acesta va copia aceste fisiere:
 
cstrike/
cstrike/addons/
cstrike/addons/metamod/
cstrike/addons/metamod/plugins.ini
cstrike/addons/metamod/dlls/
cstrike/addons/metamod/dlls/dproto_i386.so
cstrike/addons/metamod/dlls/metamod_i386.so
cstrike/addons/metamod/dlls/metamod.so
cstrike/liblist.gam
cstrike/dproto.cfg
 
 
7) Acum porneste serverul din panou, daca totul a decurs bine ar trebui ca acesta sa porneasca in maxim 30 secunde.
 
 
C. Vreau sa revin la vechiul engine, cunosc posibilele probleme de securitate de care nu o sa fiu protejat.
 
1) Opreste serverul din panoul de control (Stop)
2) Navigheaza la tabul "Settings" si modifica parametrul "kversion" in "cs_old" apoi click pe salvare.
3) Porneste serverul, ar trebui sa apara online in mai putin de 30 de secunde. 
Ţi-a folosit?

Citiţi şi