23

Фильтруем и управляем подключением Skype

Добрый день.

Многие наверное подумают - что это немного не тот сайт и не стоило сюда писать, но решил поделиться данной наработкой. Думаю кому-то эта статья будет полезна.

Вопрос с управлением доступом к Skype - это больная тема многих сетевиков и администраторов. В попытках найти решение в интернете многие собирают статистику подключений Skype и открывают доступ полностью в весь пул сетей - но анализ этой чудо программы показал что это не вариант, так как я не очень люблю как работают некоторые вещи для меня непонятным образом, решил что нужно принимать какие-то меры. Так же многие упоминают про Layer 7 protocol - но в случае с L7 у Вас получится только корректно заблокировать доступ, но не управлять им. Для понимания: Skype - очень противное приложение в плане сетевого взаимодействия, ломится на кучу IP-адресов и хостов по куче портов среди которых и 80 и 443. Решение есть и оно довольно простое, мы будем использовать метки DSCP (TOS) и делать будем это средствами самой Windows. О самих же метках лучше почитать внимательно в интернете.


Немного теории


Имеем доменную машину, с Skype на борту, через групповые политики добавляем DSCP(TOS) метку на приложение, маршрутизатор в свою очередь принимая метку маркирует соединение и на основе access-листа разрешает, либо запрещает соединение.

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Собственно будем пытаться сделать как на схеме. Метку при этом я выбрал 32 - она довольно распространенная даже среди провайдеров, но мы не будем лезть в входящий и исходящий трафик, мы лезем только в "проходящий мимо". Почему 32? - а у нее просто очень хорошее число, в бинарном виде DSCP передается как 100000, а TOS 100 - дело в том что некоторые старые устройства не понимают что такое DSCP и метку обрезают с конца до TOS и число 100000 превращается в 100 - такую метку наш роутер тоже поймет. Еще бывает коммутаторы промежуточные срезают метку поставленную роутером - не доверяют типа роутеру, для этого надо на примере коммутаторов SNR добавлять строку на интерфейс mls qos trust dscp. Ладно, хватит теории, к делу.


Практическая часть


Сначала нам надо повешать метку на приложение - открываем редактор локальной групповой политики

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Переходим Конфигурация компьютера -> Конфигурация Windows -> QoS на основе политики

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Нажимаем правой кнопкой мыши Создать новую политику. Добавляем профиль политики я ее назвал skype_dscp, следом нужно указать значение (от 0 до 63) и частоту передачи - я выбрал значение 32 и частоту передачи 2 Мб/с.

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Далее нам надо выбрать приложение или URL-адрес приложения, URL как мы поняли нам неизвестен, собственно поэтому эта статья и написана, выбираем только к приложениям с именем исполняемого файла - в данном случае указываем skype.exe.

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Далее нам следует указать IP-адреса, но нам опять же они неизвестны, да и не интересно собственно, в целом у нас итак будет возможность управлять им на роутере, поэтому ставим к любому исходному IP-адресу и к любому конечному IP-адресу.

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Далее нужно указать протоколы и порты подключения, нам они опять же неизвестны, но известно что Skype использует как TCP так и UDP соединения, поэтому надо выпадающий список поставить TCP и UDP.

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Нажимаем Ок и наша политика готова.

Для раскатывания политиками или добавления вручную достаточно добавить значения в ветке реестра:

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\QoS\skype_dscp
Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Далее нам надо отмаркировать это дело на нашем микротике, заходим IP -> Firewall -> Mangle и добавляем новое правило:

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост
Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост
Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Консольный вариант:

add action=mark-connection chain=forward comment=DSCP_32_mark_skype_connection_except_allow_all dscp=32 new-connection-mark=DSCP_32 passthrough=no src-address-list=!allow_all

У меня маркируется трафик Skype, кроме тех, кто в адрес-листе allow_all - это люди, которым дан полный доступ в интернет - нет смысла маркировать то, что итак доступно.


Теперь у нас приложение маркируется на роутере. Как узнаем? Да просто: заходим на микротик IP -> Firewall -> Connections, фильтруем по нашему Src.address и видим:

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

ОГО! И это подключения только с одного компьютера.....

Осталось разрешать или запрещать, создадим 3 правила на основе access-листа.

Создадим разрешающие правила, правило на source:

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост
Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост
Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Правило на destination отличается от source только в вкладке Advanced:

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Создадим теперь запрещающее правило - все тоже самое, только в Advanced ничего не ставим, а Action -Drop:

Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост
Фильтруем и управляем подключением Skype Mikrotik, Роутер, Настройка, Skype, Фильтрация, Системное администрирование, Администрирование, Длиннопост

Консольный вариант всех трех правил:

add action=accept chain=forward comment=DSCP_32_allow_source_skype_connection_except_allow_skype_for_user connection-mark=DSCP_32 src-address-list=Allow_Skype_for_User
add action=accept chain=forward comment=DSCP_32_allow_destination_skype_connection_except_allow_skype_for_user connection-mark=DSCP_32 dst-address-list=Allow_Skype_for_User
add action=drop chain=forward comment=DSCP_32_reject_skype_connection_except_allow_skype_for_user connection-mark=DSCP_32

Все готово! Для того, чтобы Skype разрешить пользователю доступ в Skype добавляем адрес компьютера пользователя в IP -> Firewall -> Address Lists название листа Allow_Skype_for_User. Для его запрета просто удаляем адрес из списка. Раскатать массово доменными политиками думаю сложности администратору не составит. На этом настройка закончена.

Рад если кому-то пригодится данный мануал.

1
Автор поста оценил этот комментарий

скайп уже хреновый файлообменник

раскрыть ветку
0
Автор поста оценил этот комментарий

Настраиваю маркировку трафика групповыми политиками в вин10 - все в порядке, точно те же групповые политики в вин7 не дают никакого эффекта. В wiresharke dscp по нулям. Подскажите, пожалуйста, если сталкивались - какие еще манипуляции для семерки необходимы?

раскрыть ветку
0
Автор поста оценил этот комментарий

Спасибо, очень много прикольных фич можно реализовать, чет в голову не приходило метить на клиентской тачке!

раскрыть ветку
0
Автор поста оценил этот комментарий

Чуваки, а чего скайпом в корпоративе еще пользуются?

раскрыть ветку
0
Автор поста оценил этот комментарий

а че как с производительностью? Какой микрот? Если внезапно в этой сети будет видеоконференция на 20+ товарищей, ну или просто приспичит одновременно позвонить, железка не захлебнется?

раскрыть ветку