Autor Zpráva
xaverista
Profil
Zdravím!
Chtěl bych se zeptat, mám několik serverů. Dejme tomu S1, S2. S1 beru jako hlavní server, že kterého bych chtěl "ovládat" druhý server, tedy posílat mu požadavky, aby něco vykonal. Zajímalo by mne tedy, jak na základě webové administrace na S1 nejlépe, bezpečně a rychle komunikovat s ostatními servery.

Napadlo mne udělat si na ostatních serverech nějaké API, prostě jakési rozhraní, na které budu z S1 na S2 posílat požadavky pomocí URL adresy, na základě tohoto požadavku by se pak provedly určitě změny na serverech, příkladem zkopírování souborů, spuštění aplikace různých procesů atd. K tomu bych nejspíš potřeboval i autorizační tokeny atd...?

Říkal jsem si, že je hloupost posílat všechny příkazy přes ssh PHP knihovnu s několika exec prikazy.

Taktéž by mne prosím zajímalo, zda byste mne mohli "nakopnout", když pošlu ten požadavek, který bude trvat delší dobu, tak abych mohl procházet web a jakmile se požadavek na druhém serveru vykoná, abych si vypsal notifikaci na S1.

Moc děkuji za případné rady a nápady.
Pěkný den.
Amunak
Profil
Co myslíš tím "ovládat"? Jde ti o skutečný "remote desktop", resp. něco jako SSH, nebo potřebuješ jen omezenou skupinu příkazů které se pravidelně opakují? A musí to být webová aplikace, proč?

Obecně API ti poskytne nejvíc bezpečnosti, ale bude nejnáročnější na implementaci. Pouštět z PHP exec bych opravdu nedoporučoval; obzvlášť v kombinaci s SSH.

Taktéž by mne prosím zajímalo, zda byste mne mohli "nakopnout", když pošlu ten požadavek, který bude trvat delší dobu, tak abych mohl procházet web a jakmile se požadavek na druhém serveru vykoná, abych si vypsal notifikaci na S1.

Buď jde příkazy vykonávat až po odeslání všech dat klientovi a uzavření spojení, nebo si na serveru (ať už "zdrojovém" nebo "cílovém") můžeš udělat jen frontu příkazů, tu třeba jednou za čas kontrolovat cronem a pouštět to a pak se jen dotazovat na výsledky.

Obecně mi ale přijde že na to co chceš je PHP dost nevhodné - buď bych zkoumal standardní hotové řešení (SSH, TDP, TeamViewer, ... podle platformy a potřeb) nebo raději sáhl po jazyku jako je třeba Python, kde jde webový server a API napsat relativně snadno a rychle, ale narozdíl od PHP je daleko lépe uzpůsobené k rychlému vykonávání kódu který se víc dotýká OS.

Nejvíc ale záleží jak moc obecné to potřebuješ a co se vlastně snažíš udělat.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0