Sziasztok!
Gondolkozom azon, hogy ideiglenesen adnék ismerősömnek egy video streamet, amit meg tud nézni.
A streamet VLC-vel adom, ami jelenleg a belső hálózaton fut egy gépen.
A "szerver" gépen lévő apache-ben beállítottam a proxy modult a másik gép IP/portjára, valamint egy azonosítást, hogy azért más ne férjen hozzá.
Kérdésem: melyik az a legegyszerűbb megoldás, amivel el tudom érni, hogy az általam megadott user/pass párossal egyszerre csak egy helyről lehessen belépni? ...tehát nem szeretném, ha visszaélnének vele, leszívva a sávszélességet.
Van erre kész megoldás? Eddig még nem találtam...
Minden segítséget/ötletet előre is köszönök.
- 1923 megtekintés
Hozzászólások
ip-re is szűrj
--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.
- A hozzászóláshoz be kell jelentkezni
mivan ha dinamikus iprol (ADSL, mobilnet) probaljak elerni az oldalt?
udv Zoli
- A hozzászóláshoz be kell jelentkezni
szopó :)
--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.
- A hozzászóláshoz be kell jelentkezni
Nem feltétlenül egy "helyszínhez" szeretném kötni a dolgot (no meg tudomásom szerint alapvetően sem fix az IP), csak a lehetőséget lenne jó elkerülni a visszaélésre.
Azt értem, hogy logokból ki tudom deríteni, de gondoltam, valakinek van még ötlete korlátozni. Pl. magát a virtualhostot/proxyt user kapcsolatok szerint.
- A hozzászóláshoz be kell jelentkezni
pontosan hogyan szeretned eldonteni egy stateless protokoll eseteben, hogy meg mindig be van-e lepve a felhasznalo?
- A hozzászóláshoz be kell jelentkezni
azert a stateless eleg eros sztem, egy "kapcsolodva/nincs kapcsolodva" eleg egyertelmuen eldontheto egy tcp-re epulo protokoll eseteben
- A hozzászóláshoz be kell jelentkezni
Ezek szerint a felhasznalo kilep, amikor a bongeszoje betoltotte az oldalt?
- A hozzászóláshoz be kell jelentkezni
streamrol beszelunk mar ne haragudj.
- A hozzászóláshoz be kell jelentkezni
Mondjuk a proxyn van átmenő forgalom.
- A hozzászóláshoz be kell jelentkezni
Es ez mitol lesz stateful?
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Nem lesz az, igazad van.
A "hogy szeretnéd eldönteni" részre reagáltam, még ha alapvetően hülyeséget is. :)
Mármint nem abból indultam ki, hogy stateless vagy sem, hanem abból, hogy folyamatos kapcsolat van a proxyval.
Persze, hogy ez felhasználható-e és mennyire egyszerűen, az más kérdés...
- A hozzászóláshoz be kell jelentkezni
Egyszeruen iptables-szel megoldani? (felteve hogy pl a port azonosithato)
- A hozzászóláshoz be kell jelentkezni
Mire gondolsz?
Alapvetően a 80-as porton fut néhány weboldal. A VLC egy másik porton futna, de ugyanezen a gépen. Ehhez gondoltam egy virtualhostot létrehozni (az azonosítással együtt) és a proxy modullal átadni a VLC web-szerverének a kéréseket.
Szerk.:
...vagy létre kéne hoznom egy proxyt az apache és a VLC közé és azon végezni az azonosítást ill. a hozzáférés korlátozását?
Működhet ez egyszerű módon (hogy ne okozzon gondot a stream lejátszása)?
...vagy ez már az ágyú és veréb esete...
- A hozzászóláshoz be kell jelentkezni
Ez hogy tetszik?
http://www.directadmin.com/forum/showthread.php?t=14782
Végül is a sávszélesség a kritikus.
Szerk.:
Van még ez a másik cband modul is:
http://www.uno-code.com/?q=node/64
Lehet ez fekszik neked jobban, mert teljes virtualhostot akarsz sávszélesség limit alá vonni, nem csak egy felhasználót. Bár nem gondoltam végig hogy ez az-e, de itt érdemes elindulni.
- A hozzászóláshoz be kell jelentkezni
Köszi a tippet, egész jónak néz ki, csak be kell állítanom hozzá (ill. még a VLC sem fut, eddig teszt volt).
...viszont a lényegre megoldásnak tűnik: működik, amíg egy ember használja, ha mégis megpróbálnák többen, az senkinek nem jó... így nincs értelme továbbadni sem a hozzáférést.
Lehet, hogy ez lesz. Köszönöm mégegyszer, eddig konkrétan erre nem gondoltam.
- A hozzászóláshoz be kell jelentkezni
Hali!
Az nem megoldás, hogy futtatsz még egy apache-t egy másik porton és ott beállítod a MaxClients értékét 1-re?
Nem vagyok ebben profi, de amíg fel van kapcsolódva, addig talán nem szabadítja fel a foglalt kapcsolatot,
így újat sem fog kiszolgálni. Azaz ha az ismerős kiadja a hozzáférést, akkor magára vessen, mert ő sem tudja
majd használni, ha mások ráakaszkodnak.
-Mr-
- A hozzászóláshoz be kell jelentkezni
Köszi az ötletet. Ez is egy megoldás lehet, bár talán kicsit macerásabb.
Egyébként az érdekes lenne, ha a MaxClients-et össze lehetne kötni az adott virtualhost, esetleg aktív azonosított felhasználók szerinti kapcsolatok számával.
Sajnos önmagában a MaxClients nem adható meg virtualhostonként.
A foglalt kapcsolatot elvileg nem szabadíthatja fel, mert szüksége van a streamelt video adataira.
- A hozzászóláshoz be kell jelentkezni
Ehhem-ehhem. A kulcsszo a "masik apache" volt. Apache-nkent megadhato viszont.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Ez így van, erre írtam, hogy talán kicsit macerásabb.
...de el lehet gondolkodni rajta.
- A hozzászóláshoz be kell jelentkezni
irsz mondjuk php-ben egy kis session-kezelo valamit (ami aka'r a jelszot is bekerheti, de azt csinalhatja a .htaccess/.htpasswd is). a stream-nek is akkor at kell folynia a php-n, ez kicsit nyugos lehet (bar cserebe akkor nem kell proxy modul). kis programozas, de cserebe egzaktul azt fogja csinalni amit akarsz.
- A hozzászóláshoz be kell jelentkezni
Igazad van. Bár ez kevésbé a rögtön meggcsinálom kategóriába esik, lévén előtte bele kellene mélyednem kicsit a PHP rejtelmeibe, nem túl felületes szinten.
Egyébként nem rossz ötlet, bár azért megvalósítása részemről még várat magára.
Köszönöm neked is az ötletet.
- A hozzászóláshoz be kell jelentkezni
kb ennyi:
<?php
/* stream.php */
$SESSION_FILE="/tmp/stream.session.lock";
if ( is_file($SESSION_FILE) )
{ printf("Nem nyert.<br>\n");
return(0);
}
$fw=fopen($SESSION_FILE,"wb");
fclose($fw);
header("Content-type: ..."); /* amilyen a stream...*/
$ch = curl_init();
curl_setopt_array($ch,array(CURLOPT_URL=>"http://doma.in/of/the/stream",CURLOPT_HEADER => 0,CURLOPT_TIMEOUT => 5));
curl_exec($ch);
curl_close($ch);
unlink($SESSION_FILE);
?>
icipicit race condition-os, de most a klasszikus c-beli open(...,O_CREAT|O_EXCL,...) pa'rositas php-beli megfelelo"je't hirtelen nem talalom. de gondolom a gyakorlatban ez neked nem lesz kritikus.
ezt a stream.php-t pedig szepen leve'ded .htaccess/.htpasswd-vel. php5-curl modul meg kell ehhez az izehez.
szerk: curl helyett sima fopen() is jo, sot, lehet hogy az nyerobb hogyha nincs elsodleges tartalom (igy ez most mintha maga't a browsert kenyszeritene' ra' az atiranyitasra):
$fr=fopen("http://doma.in/of/the/stream","rb");
while ( ! feof($fr) )
{ $buff=fread($fr,65536);
print($buff);
}
fclose($fr);
a.
- A hozzászóláshoz be kell jelentkezni
Hopsz, köszönöm.
Ígéretesnek néz ki, amit írsz. Azt hittem, kicsit nehézkesebb megoldani a dolgot.
Elvileg jövő hétvégén lesz időm próbálkozni vele.
Nagyon szépen köszönöm a segítséget, ill. a kódot.
- A hozzászóláshoz be kell jelentkezni
Arra kell vigyázni, hogy a php limitek nehogy bekavarjanak(idő). A video streamelés életben tartja a php kérést, és az alap konfig nem biztos hogy ezt eltűri.
- A hozzászóláshoz be kell jelentkezni
Értem, jogos. Köszönöm a figyelmeztetést.
Erre idáig még nem gondoltam.
- A hozzászóláshoz be kell jelentkezni
o"o", igen, kerdes, hogy ez cpu ido-e (mmint amit az ember a php.ini-ben mint max_execution_time) megad, vagy valos ido. mivel valos problemaknal azert ritkan sleep-elget egy webszerver-oldali program (vicces is lenne, varakoztassuk a juzert csak ugy), ezert talan az elobbi. de lehet hogy az utobbi. ezt meg kene nezni, csak explicit egyertelmu utalast igy hirtelen 1-2 perc alatt nem talaltam.
- A hozzászóláshoz be kell jelentkezni
Sendfile nem lehet megoldas? Lokalis fajlnal az nem vinne a php idot.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
jaja, igen, biztos van erre cel-php fuggveny, csak nem ugrott be. +1.
- A hozzászóláshoz be kell jelentkezni
Doglodik a wifi kapcsolatom, ugyhogy csak ezt talaltam a kerdesben: http://stackoverflow.com/questions/80186/using-x-sendfile-with-apache-p…
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Helló!
Nagyon egyszerű, kihagyod az apacheot. A vlc tud http-n szolgáltatni (egész pontosan rtsp-n), és basic authentication is implementálva van benne. Kell ennél több? K.I.S.S.! :-)
http://wiki.videolan.org/Documentation:Streaming_HowTo/Advanced_Streami…
valamint
http://wiki.videolan.org/Documentation:Streaming_HowTo/Advanced_Streami…
- A hozzászóláshoz be kell jelentkezni
Köszi, megnézem.
Bár eddig nem látom benne, hogy tudná korlátozni az egyidejű belépéseket.
- A hozzászóláshoz be kell jelentkezni