LinuxForum.Fans
Тема

Блокировка потокового мультимедиа в Squid

Автор: Firebolt 22 сообщений 5013 просмотров
#381490

Всех приветствую!

Чуть ли не важней задачей прокси-сервера является блокировка доступа к потоковому мультимедиа (youtube, rutube, плееры соц. сетей и т.д.)
Но не выходит у меня осуществить эту задачу.

Пробовал так, все равно играет. Пробовал так, тоже не работает.
Кому-нибудь удалось это сделать?

#381493

ТС у вас сквид 3,1 верно.
Я вот тут загрузил видео с ютубе и посмотрел как его в access.log описывает сквид. Так у меня вот что пишет

text
1401193183.218    587 192.168.0.3 TCP_MISS/200 438704 GET http://r1---sn-03guxaxjvh-3c2e.googlevideo.com/videoplayback? - HIER_DIRECT/213.186.122.204 application/octet-stream

А в конфиге миме типов сквида вот что есть по этому поводу

text
root@rm-proxy:/etc/squid# cat mime.conf | grep octet
\.exe$          application/octet-stream        silk/application.png            -       image   +download
\.bz2$          application/octet-stream        silk/compress.png               -       image   +download
\.bz$           application/octet-stream        silk/compress.png               -       image   +download
^core$          application/octet-stream        silk/bomb.png                   -       image   +download
\.core$         application/octet-stream        silk/bomb.png                   -       image   +download
\.cab$          application/octet-stream        silk/compress.png               -       image   +download +view
\.class$        application/octet-stream        silk/script_gear.png            -       image   +download
\.dll$          application/octet-stream        silk/plugin.png                 -       image   +download
\.dms$          application/octet-stream        silk/drive_disk.png             -       image   +download
\.so$           application/octet-stream        silk/plugin.png                 -       image   +download

Я чесно говоря не знаю потому как такого не делал, но например попробуйте вот так задать список достуда

text
acl media rep_mime_type application/x-shockwave-flash
acl media rep_mime_type application/octet-stream

И смотрите.

#381508
text
acl media rep_mime_type application/octet-stream
acl SERVER src 192.168.0.2
http_reply_access deny media SERVER

Работает, по крайней мере на ютубе проверил

#381511

Весьма печально. Потому что у меня не работает. Огрызок лога:

text
1401187802.445     54 192.168.1.23 TCP_MISS/204 572 GET http://s.youtube.com/api/stats/playback? DOMAIN_USER DIRECT/74.125.143.101 text/html
1401187802.526    134 192.168.1.23 TCP_MISS/204 454 GET http://csi.gstatic.com/csi? DOMAIN_USER DIRECT/173.194.39.63 image/gif
1401187803.067    396 192.168.1.23 TCP_MISS/200 242126 GET http://r5---sn-n8v7sn7e.googlevideo.com/videoplayback? DOMAIN_USER DIRECT/74.125.110.84 audio/mp4
1401187803.516    921 192.168.1.23 TCP_MISS/200 1139151 GET http://r5---sn-n8v7sn7e.googlevideo.com/videoplayback? DOMAIN_USER DIRECT/74.125.110.84 video/mp4
1401187803.988    173 192.168.1.23 TCP_MISS/200 3775 POST http://www.youtube.com/watch_fragments_ajax? DOMAIN_USER DIRECT/74.125.143.93 application/json
1401187805.421    264 192.168.1.23 TCP_MISS/200 242126 GET http://r5---sn-n8v7sn7e.googlevideo.com/videoplayback? DOMAIN_USER DIRECT/74.125.110.84 audio/mp4
1401187807.128   1306 192.168.1.23 TCP_MISS/200 1139151 GET http://r5---sn-n8v7sn7e.googlevideo.com/videoplayback? DOMAIN_USER DIRECT/74.125.110.84 video/mp4
1401187807.473    302 192.168.1.23 TCP_MISS/200 242126 GET http://r5---sn-n8v7sn7e.googlevideo.com/videoplayback? DOMAIN_USER DIRECT/74.125.110.84 audio/mp4
1401187807.864    255 192.168.1.23 TCP_MISS/200 522 GET http://p2-a4l4bv3kqflzy-c5jqkmfjphiiltmk-367860-i1-v6exp3-ds.metric.gstatic.com/v6exp3/6.gif DOMAIN_USER DIRECT/74.125.143.120 image/gif
1401187807.991    318 192.168.1.23 TCP_MISS/200 522 GET http://p2-a4l4bv3kqflzy-c5jqkmfjphiiltmk-367860-i2-v6exp3-v4.metric.gstatic.com/v6exp3/6.gif DOMAIN_USER DIRECT/74.125.143.120 image/gif
1401187808.228    140 192.168.1.23 TCP_MISS/204 572 POST http://s.youtube.com/api/stats/atr? DOMAIN_USER DIRECT/74.125.143.101 text/html
1401187809.839 105295 192.168.1.23 TCP_MISS/200 252944 CONNECT goszakup.gov.kz:443 DOMAIN_USER DIRECT/212.154.168.5 -
1401187810.486     54 192.168.1.23 TCP_MISS/204 506 GET http://s.youtube.com/stream_204? DOMAIN_USER DIRECT/74.125.143.101 text/html
1401187811.110    237 192.168.1.23 TCP_MISS/200 242126 GET http://r5---sn-n8v7sn7e.googlevideo.com/videoplayback? DOMAIN_USER DIRECT/74.125.110.84 audio/mp4
1401187811.841   1136 192.168.1.23 TCP_MISS/200 1139151 GET http://r5---sn-n8v7sn7e.googlevideo.com/videoplayback? DOMAIN_USER DIRECT/74.125.110.84 video/mp4
1401187812.236     55 192.168.1.23 TCP_MISS/204 572 GET http://s.youtube.com/api/stats/watchtime? DOMAIN_USER DIRECT/74.125.143.101 text/html
#381516

Ну а так

text
acl mediapr urlpath_regex \.mp4(\?.*)?$
http_access deny mediapr
#381532

в свое время я всю эту шляпу делал через squidguard

#381606
i2ks написал:
в свое время я всю эту шляпу делал через squidguard

Стоит у меня squidguard, надо покопошиться в нем.

#381609
kisil написал:
Ну а так
text
acl mediapr urlpath_regex \.mp4(\?.*)?$
http_access deny mediapr

ТС а этот вариант не канает????

#381613
"kisil" написал:
С а этот вариант не канает????

Нет. Мой вывод: Squid не умеет закрывать потоковое мультимедиа. Я взялся за squidguard. Посмотрим

#381628

ТС приведите ссылку на видео, хочу у себя проверить

#381636
"kisil" написал:
ТС приведите ссылку на видео, хочу у себя проверить

Да разве это имеет значение? Открыл первое попавшееся видео на youtube - играет, значит правило не работает.

#381648
"Firebolt" написал:
Мой вывод: Squid не умеет закрывать потоковое мультимедиа

Умеет, только настраивается сложно.

#381649
JonnyBekoff написал:
[quote="Firebolt"]Мой вывод: Squid не умеет закрывать потоковое мультимедиа

Умеет, только настраивается сложно.[/quote]
Так помогите ТС решыть проблему конкретным примером.

#381650
"kisil" написал:
acl mediapr urlpath_regex \.mp4(\?.*)?$
http_access deny mediapr

ТС а этот вариант не канает????

Этот вариант для потокового видео и не проканает. Это правило на запрет скачивания.
Правильнее этими вариантами пользоваться:

text
acl block_media_rep rep_mime_type -i video/mp4
acl block_media_req req_mime_type -i video/mp4
#381652
"JonnyBekoff" написал:
acl block_media_rep rep_mime_type -i video/mp4
acl block_media_req req_mime_type -i video/mp4

Забыл добавить deny:

text
http_reply_access deny block_media_rep
http_reply_access deny block_media_req
http_access deny block_media_req
#381824

Никогда не блокировал видео, но может не блокирует потому что HTTPS?

#381877
"Firebolt" написал:
1401187809.839 105295 192.168.1.23 TCP_MISS/200 252944 CONNECT goszakup.gov.kz:443 DOMAIN_USER DIRECT/212.154.168.5 -



1401187810.486 54 192.168.1.23 TCP_MISS/204 506 GET http://s.youtube.com/stream_204? DOMAIN_USER DIRECT/74.125.143.101 text/html 1401187811.110 237 192.168.1.23 TCP_MISS/200 242126 GET http://r5---sn-n8v7sn7e.googlevideo.com/videoplayback?

Как видно из лога что видео поток не берётса по https

#382426

Закрыл доступ, используя SquidGuard. Пока пойдет, а когда взлетим, буду тестить перекрытие потокового мультимедиа.
Всем благодарен, особенно kisil!!!

#382435

А приведите пример с помощью squidGuarda как это сделали :)

#382436
"kisil" написал:
А приведите пример с помощью squidGuarda как это сделали

squidGuard же блокирует доступ к доменам. Списки доменов скачал, сформировал их, в конфиге Squid добавил

text
url_rewrite_program /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf

В конфиге squidGuard создал списки доступа и все.

text
src admin {
    userlist    admins
}    

src video_audio { userlist access_video_audio }

src access_youtube { userlist access_youtube }

acl {

admin within workhours { pass !in-addr !chat !games-online !games-misc !movies !youtube !music !porn !radiotv !socialnet !webradio !webtv any redirect http://proxy/squid-errors/admin_denied } else { pass !porn any }

video_audio { pass !in-addr !adv !anonvpn !chat !games-online !games-misc !porn !socialnet !warez any redirect http://proxy/squid-errors/access_denied }

access_youtube { pass !in-addr !adv !anonvpn !chat !games-online !games-misc !movies !music !porn !radiotv !socialnet !warez !webradio !webtv redirect http://proxy/squid-errors/access_denied }

Войдите или зарегистрируйтесь, чтобы ответить.