Rcon
Spis treści |
Opis
Ten artykuł jest niepełny i wymaga uzupełnienia. Jeżeli jesteś w stanie - postaraj się go uzupełnić.. Pamiętaj, że nawet najmniejsza zmiana jest cenna i pomocna :) |
Co to jest rcon?
Nazwa rcon jest skrótem słów remote 'console i oznacza konsolę zdalną, podobną do takiej jaką masz w grze Half-Life, jednakże bez auto uzupełnienia (jak naciśniesz tab to ci nie uzupełni początku komendy do rozpoznawalnej nazwy, przynajmniej tka było w Counter-Strike 1.6
Do czego służy rcon?
Rcon służy do zdalnej administracji serwerem gry, np Half-Life, czyli HLDS, albo gry Source czyli SRCDS, ale jest też spotykany w większości gier FPP, takich jak Quake 3, Unreal Tournament itd. Moze to byc serwer na lanie (tzn Listen Server) czy też najczęściej serwer dedykowany Dedicated Server albo serwer HLTV, czy innej, podobnej usługi, np w QW serwer Proxy.
Jak to skonfigurowac na serwerze?
Aby dostęp do rcon'a był mozliwy serwer musi miec zdefiniowana zmienna, najczęściej rcon_password np dla serwerów HLDS mamay
rcon_password "TwojeUlubioneHalso"
Najlepiej w linii startowej hlds jest umieścić rcon_password np
hlds_run -ip 123.45.67.89 -port 27015 +exec server.cfg +map de_dust +rcon_password "zupa_jarzynowa"
Mozna takze w pliku konfiguracyjnym takim jak server.cfg (czy listenserver.cfg) - tam po prostu dodajemy kolejną linijke typu:
rcon_password "zupa_jarzynowa"
ale odradzamy to rozwiązanie z przyczyn bezpieczeństwa.
Rcon moze byc takze ładowany z bazy danych SQL jeśli mamy odpowiedni plugin do AMX Moda (czy inne narzędzie do komuniakcji z bazą danych pod serwer gry).
Haslo może byc dowolne ale radze ustawiac w miarę długie, nie moze zawierac znakow zakazanych przez slinik gry - czyli żadnych polskich itp, najlepiej pisac prostymi literkami.
Najlepiej aby rcon_password byl unikalny na serwer, szczegolnie jak jest kilka serwerow na tym samym numerze ip ale na różnych portach.
Rcon jest bardzo potężną komendą - mozna nia zdziałać bardzo wiele. Osoby, ktore nie znają sie na serwerze gry mogą tylko zaszkodzić na serwerze, jesli będą bezmyślnie korzystać z komend i przestawiać zmienne. Jedynie wybrane zaufane osoby powinny mieć dostęp do rcon'a. Co więcej istnaieją przypadki gdzie rcon nie powinen byc kompletnie znany jednye przez Head Admina w związku z innymi działającymi programamy na serwerze rgy (korzystającymi z rcon;a do komunikacji z serwerem, jego mziana może spowodować, ze te aplikacje przestaną działać).
Wiele pluginów daje mozliwosc nadawania adminom prawa dostepu do rcon'a ale bez znajomosci hasła rcon_password - np cm_rcon, amx_rcon, admin_rcon. Jednakze ma to swoje ograniczenia np dziala to w jedym kierunku - serwer moze otrzymac komende od admina, ale czasem serwer nie zwraca nic do admina - np z potwierdzeniem o ustawieniu zmiennej itp.
Jak tego uzywac bedac w grze?
Musisz najpierw znać kilka rzeczy:
- rcon_address - ip serwera do ktorego chcesz sie podlaczyc rcon'em,
jesli puste - domyslnie numer ip do ktorego jestes podlaczony aktualnie w czasie gry, inaczej trza podac
- rcon_port - port serwera do ktorego sie chcesz podlaczyc rconem,
jesli puste domyslnie port na ktorym jestes podlaczony do serwera gry, inaczej trza wpisac. trzeba uwazac jak jest klika serwerow na tym samym numerze ip ale na roznych portach - lepiej precyzowac port czesto wtedy servery sa na tym samym ip ale ronych portach i majak rozne hasla na serwery
- rcon_password - haslo do rcona, takie jakie jest na serwerze (patrz punkt 4.)
Przewaznie starczy, ze podczas gry znasz tylko rcon_password - bo reszta bedzie uznawana za domyslna i bedzie przypisana do aktualnie podlaczanego serwera.
Podczas gry na danym serwerze do ktorego mamy rcon_password, w konsoli gracza (przewaznie u siebie) wpisujemy
rcon_password "zupa_jarzynowa"
Nastepnie nalezy sie upewnic ze podane haslo jest prawidlowe - przeprowadzamy maly test
rcon say Test raz dwa trzy
powinien sie pojawic w czesci chat na ekranie tekst wypowiedziany prez serwer (jako imie gracza bedzie nazwa hostname serwera)
Jesli to dziala mozemy smialo operowac rconem dalej. Jesli nie to nie probujmy na sile bo zostaniemy zbanowani z serwera! Trzeba sie upewnic, ze mamy poprawny host, port, no i oczywiscie haslo :D
Komendy wstukiwane przy uzyciu rcon'a sa dokladnie takie same jabysmy je wstukiwali bezposrednio do konsoli serwera gry - jedyna roznica polega na tym ze trzeba dodac magiczne slowo rcon na poczatku. Jednakże nie wszystkie komendy w serwerze hlds sa dostepne w serwerach listen albo z komend u klienta.
Komendy
Najczesciej uzywane komendy poprzez rcon dla serwera HLDS
- lista graczy (zobacz SteamID)
rcon status rcon users
(users powinien chyba dzialc nawet bez rcon'a)
- restart rundy
rcon sv_restartround 1
- zmiana mapy
rcon changelevel de_dust
- zmiana mapy z wykopaniem graczy
rcon map de_dust
- zmiana zmiennych (przyklad trzcech)
rcon mp_timelimit 0 rcon mp_winlimit 12 rcon hostname "Serwer zajety!" rcon sv_lan 1
- zmian hasla na serwerze np na mecz
rcon sv_password "haslo_na_cw"
- czyszczenie hasla na serwerze po meczu
rcon sv_password ""
- kopanie/banowanie
wpisujemy
status
(albo users, zalezy od przyzwyczajenia) patrzymy na liste jaka sie pojawi w konsoli patrzymy na uid (unique id gracza) i steamid (ew zastap steamnid wonid'em)
i piszemy
rcon banid 1440 # uniqueid kick //ban z wykopem rcon writeid //zapisanie banow rcon writeip //zapisanie banow na ip
rcon banid 0.0 # uniqueid //permanent ban rcon kick # uid //wykopanie gracza
- gadanie
rcon say Nie biegac!!
Oczywiscie mozemy wykonac inne komendy dostepne, np z pluginow
rcon cm_say @g "Muahaha Wasz Pan Wrocil!" rcon amx_nextmap de_dust
Radze korzystac z programow typu HLSW ktore lepiej sie nadaja do zdalenej administracji serwerem via rcon
FAQ
Nie che mi sie pisac w konsoli, mozna podpisac pod klaiwsz komendy?
A: Tak, tylko zanim nacisciesz klawisz upewnij sie ze masz poprawnie wpisane rcon_password
przyklad
bind "[" "rcon say !!! Restart !!!;rcon sv_restartround 3" bind "'" "rcon say !!! GL & HF !!!;" bind "]" "rcon mp_timelimit 0;rcon mp_winlimit 12;rcon servercfgfile 'clanbase.cfg';rcon mapcyclefile ;rcon sv_password clanwar;rcon say !!! Do meczu gotowi?!!!;rcon exec clanbase.cfg;" bind "/" "rcon mp_winlimit 0;rcon servercfgfile 'server.cfg';rcon mapcyclefile 'mapcycle.txt';rcon sv_password ;rcon say !!! Public!!!;rcon exec server.cfg"
Ban
Mialem zbindowany klawisz na restart, pare razy wcisnalem a zapomnialem ze nie wpisalem hasla! Zbanowalo mnie i nie moge wejsc na serwer!!
A: Musisz sprawdzic swoje ip z którego grałeś albo łączyłeś sie rconem do serwera. Następnie musisz wykonac komendę
removeip writeip
Na przykład łączyłeś się z 192.169.10.2 to z innego numeru ip przez rcon albo bezpośrednio w konsoli serwera (na screenie) musisz wpisać
removeip 192.169.10.2 writeip
Ewentualnie jak to nie wchodzi w grę to wyłącz serwer i uruchom ponownie.
Jak sie zabezpieczyc przed przejeciem rcon'a?
A: Kilka metod:
- cs 1.5 - zainstaluj update x.1.1.1e
- steam - juz expolitow teoretycznie nie ma
nie trzymaj rcon_password w pliku server.cfg (bo moze byc sciagniety) sv_allowdownload 0 jak uzywasz sv_downloadurl nie zamiesczaj tam plikow konfiguracyjnych z aktualnie chodzacego serwera bez przejrzenia i wyciecia waznych informacji
wiecej na http://board.counter-strike.pl/viewtopic.php?t=24076
[iPort]vib: to moze ja podam jeszcze sposob, ktory nie zabezpiecza do konca mozliwosci sciagniecia rcona, ale generalnie na kid-hackierow wystarczy: haslo rcona trzymajcie w jakims dziwnym pliku, typu: mam2leweN0gi.cfg niestety, pozostaja jescze hasla adminow w plikach ktorych nazwy sa ogolnie znane.
Jak sie zabepieczyc przed zlamaniem hasla do rcon-a ?
na serwerze HLDS albo SRCDS w server.cfg wpisz:
sv_rcon_minfailures 2 // # of failures needed before ban // Liczba nie udanych prob potrzebnych do zbanowania sv_rcon_minfailuretime 600 // amount of time (seconds) failed rcon attempts must occur within for the ban to be applied sv_rcon_banpenalty 300 // minutes to ban. 300 = 5 hours. // Ile ma trwac czasu ban. 300 minut = 5 godzin. sv_rcon_maxfailures 3 // similar to sv_rcon_minfailures, except this setting doesn't rely on sv_rcon_minfailuretime. // Any IP address that fails 3 rcon authentications (during a server uptime session) will be banned for the banpenalty.
Dodatkowo odradzamy dawanie rcona osobom do których nie mamy pełnego zaufania, albo jeśli nie mamy możliwości wyłączenia serwera czy innego rodzaju nad nim kontroli.
info zebrane z board.counter-strike.pl z sekcji Konfiguracja Serwera
info zebrane z unitedadmins.com z sekcji Half-Life Support / HLDS
Podziękowania
- Pawels
- vib