Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Zmiana hasła rcon


  • Zamknięty Temat jest zamknięty
31 odpowiedzi w tym temacie

#1 Snickers

    Życzliwy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:25
Offline

Napisano 18.02.2010 21:58

Witam. Chciałem napisać plugin, który co dwie godziny ustawia losowe hasło rcon do serwera. No i niby coś tam napisałem, niby się skompilowało ale nie wiem czy takie coś przejdzie :)

#include <amxmodx>
new const duza[][] = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","R","S","T","Q","U","W","V","X","Y","Z"}
new const mala[][] = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","r","s","t","q","u","w","v","x","y","z"}
new const cyfra[][] = {"1","2","3","4","5","6","7","8","9","0"}
public plugin_init()
{
	register_plugin("HasloRcon","1.0","Snickers");
	set_task ( 7200.0, "rcon", _, _, _, "b");
}
public rcon()
{
	server_cmd("rcon_password ^"%s%s%s%s%s%s^"", mala[random_num(0,26)],duza[random_num(0,26)],mala[random_num(0,26)],mala[random_num(0,26)],cyfra[random_num(0,10)],duza[random_num(0,26)]);
}

I mam kilka pytań. Czy taki plugin będzie działał skutecznie ? Czy da radę zrobić, by plugin zmieniał to hasło o pełnych godzinach (0:00, 2:00 itd.), albo np. gdy ktoś wpisze komendę "rcon rcon_password "jakies haslo"" to zaczyna odliczać 2 h i po tym czasie zmienia. I czy da radę, by aktualne hasło było wyświetlane na stronie www i ile do następnej zmiany hasła :)

Trochę to pokomplikowane, ale chce po prostu wynajmować serwer, a ustawienie jednego hasła i wypożyczanie pod warunkiem zmiany na ustalone hasło po mixie raczej nie przejdzie, bo jak ktos nie zmieni to będzie miał serwer na cały dzień, a wpisanie do cfg to wyobraźcie sobie, że ktoś gra dwie mapy, zmienia mapę, cfg się wczytuje wchodzi ktoś obcy zmienia hasło i pograne :)

P.S. Tylko prosiłbym by wytłumaczyć mi to jak najprościej, bo nigdy nie pisałem pluginów, tylko je edytowałem :)

Użytkownik Snickers edytował ten post 18.02.2010 22:00

  • +
  • -
  • 0

#2 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 18.02.2010 22:07

Kod który dałeś wygląda sensownie, powinien działać.
O pełnych godzinach może zmieniać. Wystarczy w task'u dać sprawdzanie godziny: Nieoficjalny polski support AMX Mod X -> Dokumentacja :: AMXX > Core > core >> time
Przechwycenie wpisania komendy "rcon rcon_password" było by truuudne jak nie niemożliwe.

Żeby wyświetlić na stronie rcon_password musiałbyś znać... rcon_password ;>
Więc żeby to było możliwe to mógłbyś korzystać np z bazy danych mysql.
  • +
  • -
  • 0

#3 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 18.02.2010 22:09

set_task rusza od początku mapy po 7200s wykona funkcję = zadziała tylko pod warunkiem, że ustawisz czas mapy na 2h i 1s :P

sprawa dość skomplikowana i pewnie nie obędzie się bez MySQLa, kiedyś chyba zacząłem pisać coś podobnego, ale nie pamiętam czy wypaliło; jak znajdę źródła to podrzucę potem
  • +
  • -
  • 0

#4 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 18.02.2010 22:12

nie jestem pewien ale czy co mape nie bedzie odliczac tych 2h ?? wiec tak w nieskonczonosc :D a co do godziny mozesz dac tak jak pav w new year coutdown tylko pominac date

@up szybszy byles :D


EDIT a czy w php pav nie da sie odczytac pliku? wiec mozna chyba zrobic odczyt rcon_password z server.cfg

EDIT 2

z dokumentacji

new godzin, minut, sekund
new unix = time(godzin, minut, sekund)
client_print(0, print_chat, "Od poczatku epoki Linux'owej minelo %d sekund", unix)
client_print(0, print_chat, "Aktualnie mamy: %d godzine, %d minute, %d sekunde", godzin, minut, sekund)


wiec mozna chyba sprawdzac co jakis czas czy godzin==23 i wtedy o 23 bedzie sie wykonywal cod

Użytkownik G[o]Q edytował ten post 18.02.2010 22:16

  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#5 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 18.02.2010 22:15

Jest jeszcze opcja że masz ten serwer na własnym dedyku lub vps'ie. Wtedy możesz połączyć się po ssh i zmieniać/pobierać rcon_password.


EDIT a czy w php pav nie da sie odczytac pliku? wiec mozna chyba zrobic odczyt rcon_password z server.cfg

A skąd ten plik ma się znaleźć na serwerze z PHP ?
  • +
  • -
  • 0

#6 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 18.02.2010 22:17

nom i wersja poza AMXXem byłaby tu najlepsza :-)
  • +
  • -
  • 0

#7 Snickers

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:25
Offline

Napisano 18.02.2010 23:00

Nie mam serwera na dedyku, a co do tego że trzeba użyć MySQL podejrzewałem :)

Więc jakby coś to czekam na konkrety :)
  • +
  • -
  • 0

#8 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 18.02.2010 23:16

zgodnie z tym co napisalem wczesniej masz takie cos

#include <amxmodx>
#define godziny 23
#define minuty 00
#define sekundy 00

new const duza[][] = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","R","S","T","Q","U","W","V","X","Y","Z"}
new const mala[][] = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","r","s","t","q","u","w","v","x","y","z"}
new const cyfra[][] = {"1","2","3","4","5","6","7","8","9","0"}
public plugin_init()
{
	register_plugin("HasloRcon","1.0","Snickers");
	set_task ( 1.0, "rcon", _, _, _, "b");
	register_clcmd("say czas","rcon")
	}
public rcon()
{	
	new godzin, minut, sekund
	new unix = time(godzin, minut, sekund)
	
	if ((godzin==godziny)&&(minut==minuty)&&(sekund==sekundy)
	
	server_cmd("rcon_password ^"%s%s%s%s%s%s^"", mala[random_num(0,26)],duza[random_num(0,26)],mala[random_num(0,26)],mala[random_num(0,26)],cyfra[random_num(0,10)],duza[random_num(0,26)]);
}


w tych 3 define ustawiasz kiedy ma zmieniac haslo tzn o ktorej godzinie

ewentualnie mozesz zrobic tak ze co 1 sekunde sprawdzasz reszte z dzielenia czasu od poczatku unixa przez 3600 jesli jest 0 to wykonujesz instrukcje wtedy haslo bedzie sie zmieniac co godzine o ile jest tak jak w c++ to operatorem reszty z dzielenia jest %
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#9 Snickers

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:25
Offline

Napisano 19.02.2010 01:02

Wiedziałem że tak będzie, musiało coś być. Bo szczerze mówiąc to nie rozumiem co do mnie rozmawiasz ^^
Myślałem, że to wszystko będzie takie proste jak napisanie tego co ja tam u góry nabazgrałem :P Ten kod nie chce się skompilować, a jakby się dał to mam rozumieć że wtedy codziennie o 23 zmieniałby się rcon, czy raczej co 23 godziny ? ;]

P.S. Oporny jestem w tych sprawach, więc jeżeli jest to a wykonalne, lub zbyt trudne dla mnie, to może ktoś z Was by się połakomił ? A jak nie to dajmy sobie spokój. Oczywiście chciałbym próbować zrobić coś sam i się nauczyć, ale rozumiem, że cierpliwość ludzka ma granice :P
  • +
  • -
  • 0

#10 Vertricus

    Godlike

  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 19.02.2010 02:59

Napisałem ci plugin nie testowałem go bo nie mam czasu :F w końcu 3 dobija :D
Jakby nie działał napisz postaram się poprawić i resztę ludzi którzy zajrzą do sma o ew. poprawki ;]
Edit:
Załączony plik  rcon.sma   4,47 KB  72 Ilość pobrań
  rcon.amxx
Zmieniłem że ma sprawdzać co 1min a nie 2 razy na mapę.
  • +
  • -
  • 1

#11 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 19.02.2010 17:19

mozesz tak jak wyzej albo tak jak ja czyli przy standardowych ustawieniach o 23 kazego dnia zmieni sie rcon pass :D
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#12 Vertricus

    Godlike

  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 19.02.2010 17:46

GoQ myślenie boli :F

I czy da radę, by aktualne hasło było wyświetlane na stronie www

Hmm?:F Do mojego musi sobie skrypt php skołować ;]
Powiedz jak u ciebie ten rcon pobierze?:F
  • +
  • -
  • 0

#13 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 19.02.2010 20:00

serwer gry jest dalej serverem ftp wiec teoretycznie mozna sie polaczyc chociaz nie wiem bo sie nie znam na tym

a pozatym ja robilem losowanie hasla o danej godzinie bo o to tez prosil pozatym twoj kod bedzie zmieniac co mape rcona
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#14 Snickers

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:25
Offline

Napisano 20.02.2010 03:54

Vertricus, plugin tworzy tabele w bazie danych, ale w tej tabeli nie ma nic, co więcej plugin nie zmienia hasła.
  • +
  • -
  • 0

#15 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 20.02.2010 10:11

A nie lepiej zrobic funkcje co "generuje" haslo od godziny, w sposób dość mało jasny dla użytkownika i zaopatrzyć skrypt php w ten sam algorytm generujący?

Moge napisać funkcje generatora i opcjonalnie dodać go do pluga, ale musiał byś znaleźć kogoś od php'a...
  • +
  • -
  • 0

#16 Portek

    Kończymy zabawę, permanentna emerytura!

  • Przyjaciel

Reputacja: 976
Master

  • Postów:3 007
  • GG:
  • Steam:steam
  • Imię:Michał
  • Lokalizacja:Częstochowa
Offline

Napisano 20.02.2010 11:35

Jak wytłumaczysz tok myślenia to może Ci pomogę ;P W zasadzie chyba najprościej i najelastyczniej było by zwyczajnie w PHP napisać skrypt który powiedzmy co 12 h zmienia hasło rcon na losowe + aktualizuje rekord w bazie. Potem na serwerze napisać plugin który z bazy pobierze owy rekord i niech sobie wymusza powiedzmy co 10min to hasło rcon. Funkcja generująca ograniczy się do wylosowania tak jak mamy w pierwszym pluginie wartości z pośród 3 tablic, w postaci powiedzmy 9 znaków - operacja powtórzy się 3x.
  • +
  • -
  • 0

serwer-1.png
IP: ts3.cserwerek.pl


#17 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 20.02.2010 11:42

Ale wersja miczu jest też całkiem dobra. Wystarczy jakiś algorytm zamiany godz+dzien+miesiac+rok na rcon_password
Opracowanie takiego samego algorytmu dla php i amxx nie będzie problemem, wystarczy tylko wymyślić zasadę.
  • +
  • -
  • 0

#18 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 20.02.2010 12:31

Pavulon php ma opcje zmieniania liczb na kod ASCII? Jesli tak, to moge wymyslic dosc skuteczna metode + liczby w cvarach/define by nawet obecnosc na forum dawala pełne bezpieczenstwo :)

Hmm... tylko moze, jak ktos zna godzine i haslo to moze na twardo szukac, kombinacji ktora da taki wynik... O ale wiem juz jak to omine :D
  • +
  • -
  • 0

#19 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 20.02.2010 12:32

php ma wszystko czego człowiek może potrzebować i jeszcze trochę więcej.
tylko wiesz, taki mix typu przesunięcia, mnożenie itp :D
  • +
  • -
  • 0

#20 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 20.02.2010 13:18

mozna zrobic tablice 24 elementowa liczb oraz 60 elementowa roznych slowek,zbitek literowych i potem np liczby[godzina]+slowka[minuta] +np liczby[godzina/4] itd. takiego czegos nie odgadnie nikt bez dostepu do sma/php
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych