Jump to content

Recommended Posts

Posted

На фре поднят файловый сервер на самбе, можно ли както запретить пользователям смотреть с него фильмы, может какие порты на файрволе зарезать? Установка FTP сразу скажу не подходит, интересен имено вариант на самбе но без возможности просмотра фильмов с сервака.

Posted

1) завести отдельную шару дл фильмов, и соот. разрулить доступ по user/ip к этой шаре

2) в samb'е есть директивы типа veto files можете покопать их

Posted (edited)

Он имел ввиду "разрешить скачать, но запретить тянуть сессию продолжительностью равную продолжительности фильма". Ответ: НЕТ. И там и там для сервера это выглядит абсолютно идентично: запрос файла, отправка в сеть... разница только в скорости получения (а от этого и кореллируется скорость отправки) данных по сессии. Смиритесь. Или, всё-таки, как все "нормальные пацаны" уходите на FTP. Уверяю, успокоятся довольно быстро. Смотреть "на лету" с ФТП смогут только самые отчаянные (mplayer умеет).

Edited by GateKeeper
Posted

Он имел ввиду "разрешить скачать, но запретить тянуть сессию продолжительностью равную продолжительности фильма". Ответ: НЕТ. И там и там для сервера это выглядит абсолютно идентично: запрос файла, отправка в сеть... разница только в скорости получения (а от этого и кореллируется скорость отправки) данных по сессии. Смиритесь. Или, всё-таки, как все "нормальные пацаны" уходите на FTP. Уверяю, успокоятся довольно быстро. Смотреть "на лету" с ФТП смогут только самые отчаянные (mplayer умеет).

Спасибо, всетаки придется ФТП подымать.

Posted

Если это линукс, connbytes в iptables, и -j CLASSIFY в шейпер

т.е. если тянется что-то очень длинное, урезать скорость до мегабита скажем

для файла хватит, для фильма нет

Posted
т.е. если тянется что-то очень длинное, урезать скорость до мегабита скажем

для файла хватит, для фильма нет

Ну mpeg4 фильмы по 700мб могут смотреться и при 500кбит/c, а вот если до такой скорости упадет скачивание игрового iso-шника юзеры будут вопить, что "сетка говно - тормозит!". Тут разве что раз в минуту шейпить на 5 сек до 100кбит/c, а потом снимать шейп. Фильм смотреть станет невыносимо, а у файла средняя скорость скачивания особо не пострадает.
Posted (edited)

Kuzmich, согласитесь, бред?

 

Во, кстати, сейчас вспомнил, что планировал, но так и не успел осуществить по предыдущему месту работы: FTP, имеющий морду на HTTP. Далее - раздел фильмы, там картинка, описание, как обычно, кнопка смотреть... Ну и смотри себе на здоровье (любой мало-мальски уважающий себя плеер умеет хотя бы HTTP-поток, даже MediaPlayer) - нагрузка по передаче трафика по HTTP в разы, если не в порядки отличается от нагрузке по передаче средствами SMB/CIFS. Разве только опять же фильмы... Но у себя мы тогда свыклись с негаснущим индикатором обращения к винтам...

Edited by GateKeeper
Posted

сегодня зачем-то пришла в голову мысль типа: сделать веб-морду, а файлы отдавать с виртуального хоста на другом порту (например 8080).

скрипт, который отдает линк на файл - чтоб в момент старта открывал фаерволом порт 8080 для IP клиента, а через 20 минут закрывал. 20 минут для скачивания вполне хватит, а для просмотра - нет. :)

Posted

balamutang, тогда дальше пойдите:

header('Content-Disposition: attachment; filename="тут_MD5илиSHA256_хэш_от_случайного_набора_символов.avi"');

 

Тогда даже wget'ом не утянут на скриптах, разве только повозятся и укажут -o :)

Posted (edited)
balamutang, тогда дальше пойдите:

header('Content-Disposition: attachment; filename="тут_MD5илиSHA256_хэш_от_случайного_набора_символов.avi"');

 

Тогда даже wget'ом не утянут на скриптах, разве только повозятся и укажут -o :)

нутк наоборот, задача вроде как надо чтоб вгетом/регетом/прочим гетом утягивали или просто эксплорером сливали на хард, а не смотрели напрямую с сервера :)

 

задача фаервола - резать сессии которые тянутся больше 10-20 минут, а не запрещать доступ к серверу.

 

ЗЫ кстати можно и самбовские порты открывать через веб-морду на 20 минут.

Edited by balamutang
Posted

balamutang, Вы не поняли:

wget будет тянуть первые 20 минут, однако на скрипт это дело поставить будет очень сложно. Если он зацепился для стягивания - то стянет, буде это позволено текущей нагрузкой на сеть или сервер. А вот остальные шаманства... Дело в том, что тут даже не могу себе представить такой извращённый вариант как использовать wget для просмотра on-line. Хотя да... некоторые плееры берут поток из stdin. В общем, на всякий случай принимайте совет к сведению - извращаться, так извращаться :) Чтобы защититься от извращенцев надо быть самому еще большим извращенцем и предугадывать их шаги заранее.

Posted (edited)
balamutang, Вы не поняли:
определенно ктото из нас что-то не понял. :) еще раз:

есть фильмопомойка, задача запретить юзверям смотреть фильмы прямо с сервера.

как определить что смотрят с сервера: если скорость маленькая (500-700кб/с) или если время сессии больше 3-20 минут. проще определиться по времени. соответственно надо убивать коннекты длинней 20 минут.

проще всего рубить фаером. управление закачкой - через веб-морду, suexec перловый в начале закачки открывает порт и в этот же момент заносит в atrun задачу отключить через 20 минут этот же IP (по сути просто заносится и удаляется ip из таблицы). отдавать файло можно любым сервисом (SMB/FTP/HTTP), главное при HTTP отдавать с другого порта, чтоб веб-морду управления случайно не зарезать фаером.

 

даже если кто-то извратится и будет смотреть нерадиционно (через стдин) это будет единичный случай, бороться с которым особого смысла нет. здесь задача не защищаться от 1-5% извращенцев :) ,а приучить к порядку остальные 95-99% юзверей.

Edited by balamutang
Posted

> а приучить к порядку остальные 95-99% юзверей.

 

Разрешите оффтоп:

А зачем запрещать юзерам смотреть фильмы с сервера ?

Я вот люблю смотреть фильм прямо с сервера ....

Posted

у меня дома как-то стоял собранный из хлама P1-120MHz 32Mb SIMM'ов на котором крутились ftp/chat/forum. Для двух десятков непритязательных юзеров хватало. Представляю если разрешить с такой машины фильмы )))

Posted

> Представляю если разрешить с такой машины фильмы )))

 

Ась ?

Apache оптимизированный для отдачи статики занимает на каждого клиента не мболее 2Мб памяти.

nginx еше меньше.

Процессорные ресурсы вообще мизерные потребуются.

С диска и через сеть будет гонятся для каждого клиента 400-600 Кб/с

 

А если действовать как предлагает товарисч то мы имеет, если к примеру 10 человек одновременно понянут фильмы , то они рискуют вообще за указанные 20 минут не вытянуть

Posted

2edwin:

 

Да не суть в этих 20 минут. Время можно определить и динамически (например, текущие закачки - 10 потоков по 10Мбит/с - клиенту говорим: звыняйте, слотов не осталося..., или потоков меньше - вычисляем из текущей нагрузки время прохождения его фильма через коннектор, накидываем на всякие непредвиденные несколько минут, отдаём). Дело в другом. Когда юзеры смотрят фильмы с сервера (а смотрят они их круглосуточно, уверяю) при тогдашних 1000 пользователей плюс-минус 30-40 лампочки на винтах не гасли вообще ни днём ни ночью - в дни дежурства это смотрел. Даже в 4 утра, когда в общем-то даже самые стойкие разбредаются... Итог: раз в пол-года были аварии по винтам - ну не выдерживали они такого издевательства. Ситуацию в общем-то не особо спас переход сервера-помойки на FTP (фильмы тогда не тронули - на CIFSе оставили), помойка не сильно реже стала винтами шуршать. Но вот balamutang дело говорит: хочешь скачать - будь любезен скачать, а дальше делай чо угодно, хоть монтаж фильмов, хоть что, освободи винты и канал для других.

 

2balamutang:

 

Да я не спорю с тем, чтобы открывать по времени, лишь решил поприкалываться и предложить заранее "усовершенствовать" систему :). Кстати, такая штука у мну на работе - по веб-авторизации открывается порт SSH (на несколько минут всего). А проверка пользователя - по SSL-сертификату. :)

Posted

> Итог: раз в пол-года были аварии по винтам

 

Понятно .. просто я смотрю со своей колокольни SCSI винтов....

Кстати дешевые IDE винты еще и актиным Squid'ом очень шестреко убиваются ....

Posted

edwin: ну не будет же никто вменяемый на _файлопомойку_ ставить SCSI в 5 рейде! Тем более, если делать что-то типа 1,5+TB объёмом.

 

Такие хранилища и в более других проектах пригодятся, где это более оправдано.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.