LINUX.ORG.RU
ФорумAdmin

Запретить в squid все браузеры, кроме firefox (внимание!) версий 15 и выше.

 , , , ,


0

1

В моей домашней сетке около 23 устройств, которые подключены к локалке и имеют свои IP. Большей части из них доступ в интернет либо ограничен, либо его вообще нет. Однако есть и другая проблема: с тех устройств, которым доступ в интернет не ограничен (мои рабочие станции и ноут/нетбуки) весьма может идти всякий трафик HTTP (а другой (обычно. в определенные моменты разрешаю) там не разрешен. За исключением rsync, ssh и ещё некоторых) от приложений, которым его генерировать не надо. Например, он некоторых плееров. Мало того, у меня есть виртуалки с виндой (чего греха таить, у многих тут они есть :) ), и хотелось бы, чтобы можно было пользоваться на них браузером, но только ФФ, а всему остальному внешним файерволом доступ запретить.

Я подумал, что наиболее подходящим решением по теме будет использовать squid в прозрачном режиме, далее там смотреть user-agent, и разрешать только лису 15 и выше.
Из поиска в гугле наиболее подходящей страничкой была:
https://forums.clavister.com/viewtopic.php?f=17&t=3431

И её пример:
# This will only find «real» Mozilla 1.2 browsers
acl mozilla12 browser ^Mozilla/5\.0.*rv:1.2

Однако, мне нужно, чтобы было не тупое прибитое гвоздями сравнение, а сравнение «15 или выше». Мало того, весьма важно сравнивать оба числа (в «15»), т.к. выход 20-го FF не за горами.

Ко всему прочему, я думаю, что необходимо модифицировать логику выборки: смотреть и на rv: 15.0 (только 15, 0 можно не сравнивать) и на самый конец (тоже только 15, остальное не сравнивать). Это уменьшит вероятность пропустить какое-нибудь хитрое приложение.

Пример юзер-агента, о котором я говорю:
Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20100101 Firefox/15.0.1




Я весьма слаб в регекспах squid (да и вообще я его использовал всего 2 раза в жизни), поэтому прошу squid-гуру помочь с написание правильного регулярного выражения.

☆☆☆

Последнее исправление: CYB3R (всего исправлений: 1)

И тут я понял про кого придумали поговорку «когда в руке у тебя молоток, то все проблемы кажутся гвоздями»

zolden ★★★★★
()
Ответ на: комментарий от kostik87

Вообще-то я и так написал, как это можно сделать «в принципе», мне нужно делать сравнение «15 или больше». Читайте до конца.

ktulhu666 ☆☆☆
() автор топика
Ответ на: Так тебе нужен PCRE? от UFO-man

Ага, именно это. А я думал, что там более сложный синтасис - это первое. А второе - я думал, что можно сделать [13-999], но реально нельзя - как я выяснил, там используется логика как в egrep, поэтому с числами нельзя работать, только с символами.

Я реализовал при помощи:
acl mozilla12 browser ^Mozilla.*rv:1[5-9]*Firefox/1[5-9]*
acl mozilla12 browser ^Mozilla.*rv:[2-9][0-9]*Firefox/2[0-9]*

Но твой вариант мне тоже нравится.

ktulhu666 ☆☆☆
() автор топика
Ответ на: Так тебе нужен PCRE? от UFO-man

Прошу прощения, там немного не правильно. Верно так:

acl firefox browser ^Mozilla.*rv:1[5-9].*Firefox/1[5-9]
acl firefox browser ^Mozilla.*rv:[2-9][0-9].*Firefox/2[0-9]

http_access allow firefox

ktulhu666 ☆☆☆
() автор топика

Я подумал, что наиболее подходящим решением по теме будет использовать squid в прозрачном режиме, далее там смотреть user-agent, и разрешать только лису 15 и выше.

Раз уж тебе посоветовали решение, хотелось бы немного подискутировать. Зачем тебе именно это? Борьба за «безопасность»?

cipher ★★★★★
()
Ответ на: комментарий от cipher

Раз уж тебе посоветовали решение, хотелось бы немного подискутировать. Зачем тебе именно это? Борьба за «безопасность»?

Не решение, а реализацию регулярного выражения :) .

Да.

Рекомендую запустить urlsnarf -i eth0 (из пакета dsniff) на основном шлюзе домашнем (хотя можно и на самой рабочей станции), после через закрыть все приложения, открыть заново. Послушать музыку/фильмы в любимых плеерах, открыть скайп :) Вы будете приятно удивлены хороший интреграции с веб-сервисами ;) . Это же так удобно, когда часть музыкального файла отсылается на удаленный сервер, а далее загружаются метаданные :)

Про винду я вообще молчу. Там каждое приложение считает своим долгом вылезти в интернет и отправить «анонимную статистику» (правда с уникальным для системы id, ага), проверить обновления.

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от sin_a

Не проще. Ты не забывай, что axel, curl, wget, git, mercurial тоже используют http. Мало того, для нетбуков постоянно отключать/включать прокси (они не всегда дома то) - это не тру.

В случае винды может быть и проще, но проверка user-agent всё-равно нужна, т.к. некоторые охамевшие приложения проверяют прокси не только в осле, но и в FF.

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от cipher

А, я уж думал, у тебя там борьба за браузер, а тут всего лишь анонимность :)

С кем мне бороться то? С самим с собой? :)

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от ktulhu666

В моей домашней сетке около 23 устройств

Ты еще скажи, что это все только для тебя одного)

С самим с собой? :)

Ну а вдруг у тебя 2 личности, одна из которых - фанат интернет эксплорера) Кстати, личности могут быть виртуальными и использовать движок ie...

cipher ★★★★★
()
Последнее исправление: cipher (всего исправлений: 1)
Ответ на: комментарий от cipher

Ты еще скажи, что это все только для тебя одного)

Да. Ты не учитываешь, что я люблю экспериментировать и со свитчами/маршрутизаторами класса Small Medium Business. Плюс сюда входят и мобильные устройства. Поверь, это только кажется большой цифрой. Даже у среднестатистического продвинутого юзера есть минимум 5 устройств: ноут, десктоп, хранилище, роутер, мобилка. И да: каждый принтер у меня имеет собственную говножелезку для lpr.

Кроме физических устройств есть ещё и куда виртуалок, но я их не учитывал.

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от cipher

Ну а вдруг у тебя 2 личности, одна из которых - фанат интернет эксплорера) Кстати, личности могут быть виртуальными и использовать движок ie...

Нет, нет такого :) Это у многих лоровцев-позеров есть раздвоние личности с дуалбутом в винду, и вечными орами, что в винде у них всё работает, а в линуксе - нет. Правда винду приходит два раза в месяц переставлять, но это их не останавливает :). Однако, в их случае о какой-либо анонимности и безопасности и речи не идет, т.к. MS и безопасность - это вещи которые в одном контексте не употребляются в принципе :).

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от ktulhu666

Ну эт ССЗБ. Провёл эксперимент - единственные запросы от ddclient и mpdscribble, так эти зонды я сам навешал.

А приложениям никто не мешает подставить юзер агент хоть от 30го фаерфокса.

Kalashnikov ★★★
()
Ответ на: комментарий от Kalashnikov

А приложениям никто не мешает подставить юзер агент хоть от 30го фаерфокса.

Ага, только де-факто такого я не видел пока. Кстати, в винде flash подменяет свой юзер-агент на UA FF из которого он был запущен.

По поводу приложений - это больше для винды в виртуалках. Однако и в линуксе они срут:
Amarok (на magnatune.com, amarok.kde.org:81, http://www.archive.org, archive.org, ia600209.us.archive.org)
gnome-mplayer (на musicbrainz.org)
Adacious (scrobbler (lifefm), lyricwiki)

Также потенциально опасным является vlc (но тут он при первом запуске спрашивает, можно ли ему лезть или нет).

Скайп лезет за проверкой новой версии.

ktulhu666 ☆☆☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.