Раздумывая на досуге о наболевшем вопросе как заблокировать Skype, пришла идея, может она здесь уже описывалась, но всё таки решил поделиться личным опытом, может кому и пригодится.Первый раз заблокировать Skype удалось путём перекрытия всех не нужных портов и кое каких правил в прокси squid, которые не давали соединятся по ip-адресам методом CONNECT. Но это не самый лучший вариант, так как блокируется и всё остальное, icq, маил агенты и т.п.
Новая идея основана на отслеживании и блокировке IP, на которые пытается соединиться Skype. И так, как я это делал (шлюз работает под управлением FreeBSD 8.1):
1. Нужен какой ни будь компьютер с Windows и установленным скайпом, желательно последней версии.2. Отключаем на ПК все программы, которые могли бы обратиться в интернет, windows update и всё остальное (что бы эти адреса не попали в дальнейшем в список блокируемых).
3. Нужно включить скайп и залогиниться, что бы он взял с сервера базу ip-адресов, на которые можно соединяться. После этого выключаем его.
4. На шлюзе настраиваем фаервол, что бы он блокировал весь сетевой трафик ПК с протоколированием:
ipfw add 50 deny log logamount 10000000 all from ip_машины to any
пояснение: все обращение с нашей машины будут сыпаться с запретом в лог, у меня /var/log/all.log.
5. Включаем сбор логов и отсеиваем в отдельный файл:
tail --f /var/log/all.log | grep ipfw: 50 > /usr/skype.ip
6. Включаем Skype на нашем компьютере и пытаемся залогиниться.
получаем в файле skype.ip примерно следующее:Jul 9 14:34:10 server kernel: ipfw: 50 Deny UDP 192.168.3.41:40335 217.114.226.118:37950 in via rl0
Jul 9 14:34:11 server kernel: ipfw: 50 Deny UDP 192.168.3.41:40335 87.228.19.207:15134 in via rl0
Jul 9 14:34:12 server kernel: ipfw: 50 Deny UDP 192.168.3.41:40335 95.52.139.143:52195 in via rl0
Jul 9 14:34:12 server kernel: ipfw: 50 Deny UDP 192.168.3.41:40335 95.236.12.233:15842 in via rl0Это малая часть моего примера из файла. Там больше записей.
7. После того, как скайп сказал, что не может соединиться, выключаем его, выключаем сбор логов и удаляем наше блокирующее правило под номером 50.
8. Теперь нам нужно из всей этой каши отобрать IP, на которые обращался скайп и заблокировать в фаерволе. Я написал не большой скрипт, создаём файлик и пишем туда следующее:
# Очищаем таблицу 1, если таковая существует.
ipfw table 1 flush# Запускаем считывание ip адресов(сортируем и отбираем только уникальные записи,
# потому что могут быть повторяющиеся), куда стучался скайп.
awk '{print ($11)}' /usr/skype.ip | sed 's#:.*##' | sort | uniq | while read ip;# Добавляем поочерёдно извлечённые адреса в таблицу 1.
do ipfw table 1 add $ip
done9. Запускаем наш скрипт, если всё сделано верно, то таблица под номером 1 должна была заполниться адресами. Это можно проверить командой
ipfw table 1 list
10. Всё, у нас есть таблица ip-адресов, куда соединялся скайп, теперь остаётся только написать правило:
ipfw add 50 deny all from ip_машины to table\(1\)
11. Включаем скайп на нашей машине и проверяем, что скайп не может залогиниться.
Вот в принципе и всё. Проделав это, удалось заблокировать скайп, без вреда для других программ. Да и ещё, нужно настроить сквид, что бы тот блокировал попытку соединения вида CONNECT по ip-адресам. Если ваши пользователи знают адрес прокси сервера и порт, то они могу указать это в скайпе и тот спокойно будет работать через прокси. Как это сделать есть масса статей в интернете.
И ещё нужно не забывать, что скайп может соединиться с сервером через другой компьютер, на котором запущен скайп и есть доступ в интернет. Они называются супернодами. Но у меня это не вышло, я запустил скайп на своём компьютере, залогинился и закрыл доступ другому, тот второй не смог соединиться.
Есть много способов вычислить адреса на которые стучится скайп. Мой пример - это один из вариантов и он проверен. Как часто обновляется база ip адресов я не знаю, но если эту операцию проделывать несколько раз в неделю, мне кажется можно поддерживать базу ip адресов в актуальном состоянии.
URL:
Обсуждается: http://www.opennet.me/tips/info/2599.shtml
Ужасное решение. Откройте для себя снорт, наконец.
И, кстати, я соверешнно не понимаю кто (или что) мешает вашим пользователям использовать прокси не по адресу, а по хостнейму, гг.
а что мешает делать прокси-сервер прозрачным ?
> а что мешает делать прокси-сервер прозрачным ?Это ничего не изменит. Кстати, я вообще вижу не очень много смысла в прокисровании ссл траффика - фильтрацию все равно не добавить (как и кеширование), ну разьве что статистику считать чуток удобнее.
>> а что мешает делать прокси-сервер прозрачным ?
> Это ничего не изменит. Кстати, я вообще вижу не очень много смысла
> в прокисровании ссл траффика - фильтрацию все равно не добавить (как
> и кеширование), ну разьве что статистику считать чуток удобнее.да плохая идейка проксировать ссл - я предпочитаю натировать
> а что мешает делать прокси-сервер прозрачным ?а с каких пор skype работает по http?
Вообще-то с рождения. :-)
Он пробует разные протоколы, и если ничего не получается, врубает http.
Имеется ввиду не само обращение пользователя к прокси серверу, а уже скайпа к своим серверам. Скайп всегда обращается к серверам по ip-адресам, а не по хостнеймам.
А, понятно. Ну да, это логично запретить, не думаю что кто-то использует ссл с айпи только.> Имеется ввиду не само обращение пользователя к прокси серверу, а уже скайпа
> к своим серверам. Скайп всегда обращается к серверам по ip-адресам, а
> не по хостнеймам.
> Ужасное решение. Откройте для себя снорт, наконец.по ваше анализировать в реалтайме трафик - это круто ? нежели один раз проснифать и статически всё блочить
>> Ужасное решение. Откройте для себя снорт, наконец.
> по ваше анализировать в реалтайме трафик - это круто ?Это не "круто", это то, как работают все современные IDS.
> нежели один раз проснифать и статически всё блочить
1 раз в неделю вы хотели сказать. При этом решение требует еженедельного ручного обновления. И обходится элементарно. А так - все круто, да, нет сомнений.
>>1 раз в неделю вы хотели сказать.то есть вы хотите сказать что скайп обращается к нодам авторизации не на прямую а через посредников ?
>>>1 раз в неделю вы хотели сказать.
> то есть вы хотите сказать что скайп обращается к нодам авторизации не
> на прямую а через посредников ?Да, у скайпа есть такая возможномсть, соединиться через другой компьютер, где запущен скайп. В реальной сети я пробовал это, компьютер на котором запрещён скайп, не смог соедениться через другой компьютер, на котором был запущен скайп и был в сети. Возможно это будет работать, только при наличии каких то определённых параметров, таких как мощность компьютера, скорость соединения с интернетом и т.д.
>>>>1 раз в неделю вы хотели сказать.
>> то есть вы хотите сказать что скайп обращается к нодам авторизации не
>> на прямую а через посредников ?
> Да, у скайпа есть такая возможномсть, соединиться через другой компьютер, где запущен
> скайп. В реальной сети я пробовал это, компьютер на котором запрещён
> скайп, не смог соедениться через другой компьютер, на котором был запущен
> скайп и был в сети. Возможно это будет работать, только при
> наличии каких то определённых параметров, таких как мощность компьютера, скорость соединения
> с интернетом и т.д.___h_t_t_p://www.villoing.net/dossiers/skype.pdf
всё равно можно статически (статическими правилами файервола) блочить скайп
выявлять сигнатуры пакетов на авторизациютоже самое и делают IDS
так же и блочиться p2p (который как три года успешно режу по сигнатуре)
> __h_t_t_p://www.villoing.net/dossiers/skype.pdf
> всё равно можно статически (статическими правилами файервола) блочить скайп
> выявлять сигнатуры пакетов на авторизациюА можно реальные примеры правил блокировки или хотя бы сигнатур ? А то в том документе только расплывчатые теоретические выкладки.
>> __h_t_t_p://www.villoing.net/dossiers/skype.pdf
>> всё равно можно статически (статическими правилами файервола) блочить скайп
>> выявлять сигнатуры пакетов на авторизацию
> А можно реальные примеры правил блокировки или хотя бы сигнатур ? А
> то в том документе только расплывчатые теоретические выкладки.Вас точно забанили в гугле. Посмотрите правила снорта.
http://www.carbonwind.net/Firewalls/BlockingSkypewithPfsense...http://www1.cs.columbia.edu/~salman/publications/skype1_4.pdf
Зачем всё это? Не проще перекрыть порты skype?
> Зачем всё это? Не проще перекрыть порты skype?Да, можно, и проще всего. Видите ли, запретив все порты, мы запретим и 443(https), а его используют давольно часто, придётся жёстко прописывать в браузере адрес прокси сервера, т.к. прозрачного https проксирования не существует, на сколько я знаю. И к тому же мы перекроем доступ к аське и маил агенту, а может их не надо закрывать. Опять же, их можно пустить через проксю, но это геморно. ИМХО.
>к тому же мы перекроем доступ к аське и маил агентуIMHO нет. Т.к. "стандратный" аськин порт 80-ый. К тому же ася-зло
> Зачем всё это? Не проще перекрыть порты skype?ГГ ) Нет никаких "портов скайп".
>> Зачем всё это? Не проще перекрыть порты skype?
> ГГ ) Нет никаких "портов скайп".ГГ ) Т.е. связь через астрал, так и запишем :-D
> ГГ ) Т.е. связь через астрал, так и запишем :-Dхорошо, 1-65535, вам так легче? Добавим в фаер блокировку по портам, ась?
Удивительно, что только не делают вместо того, чтобы немного почитать об обсуждаемой теме.
>хорошо, 1-65535, вам так легче?Что, узнали диапазон портов? Возьми с полки пряник
>> ГГ ) Т.е. связь через астрал, так и запишем :-D
> хорошо, 1-65535, вам так легче? Добавим в фаер блокировку по портам, ась?
> Удивительно, что только не делают вместо того, чтобы немного почитать об обсуждаемой
> теме.Т.е. всё же порты используются? Молодец! Растёшь на глазах.
Автор русский язык в интернете учил?
Не, не получится по IP. Я с успехом заблокировал и скайп и тимвьювер с помощью squid acl ... browser ... Запихнул в список строки приветствия используемых в сети браузеров, остальные - отдыхают.
Подробней тут http://forum.lissyara.su/viewtopic.php?f=4&t=30321&hilit=squ...
Какое-то кривое пионерское решение. Что такой недо-совет делает на опеннете? Столь мощные советы школьного уровня позорят ресурс: такие горе-советы более уместны в журнале "ксакеп", там их поймут и даже поверят что все эти извращения - типа круто.
а зачем нужно блочить скайп ?
Чтобы ФСБ не слушало, очевидно же.
А почему Скайп вообще установлен у этих пользователей?
> А почему Скайп вообще установлен у этих пользователей?Чтобы можно было блокировать ему доступ в инет. Просто выпилить - это скучно :)
> А почему Скайп вообще установлен у этих пользователей?У них личные ноутбуки :)
>> А почему Скайп вообще установлен у этих пользователей?
> У них личные ноутбуки :)Подобные вопросы (о разрешении/запрещении использования определенного ПО) определяются корпоративной политикой. Директор выпускает распоряжение о списке разрешенного ПО (на "личных" ПК можно запретить его запускать во время подключения к ресурсам компании). Всё остальное - разрешается по служебке, которые хранятся в сейфе. При 1м фиксировании нездоровой активности с ПК - пользователю отправляется предупреждение о нарушении корп. политики (со скриншотом лога во вложении), копия - на его непоср. руководителя. При повторном нарушении - последнее китайское, с копией на директора предприятия, поднимается вопрос о необходимости использования интернета данным сотрудником, его соответствии занимаемой должности. При 3м нарушении - интернет отключается без предупреждений, подключение - по письменному указанию директора.
Работает на 100% эффективно, снорт не нужен (хотя и стоит, но для других целей, прикрывает внешку). Юзеры поначалу качают права, после пары увольнений начинают относиться очень вежливо и доброжелательно.
Дружите с директорами - работы становится намного меньше ;-)