Так как вопросы по спискам приватности не прекращаются, люди наступают на одни и те жи грабли, а некоторые и вовсе считают, что эти списки мало на что пригодны, недостаточно гибкие и т.п., я решил написать с примерами как ими пользоваться. Мы расмотрим несколько примеров применения и несколько способов решения поставленных задач используя Mirand’у. |
В основном требуется решить три типа задач:
Далее по тексту вместо “списков приватности” часто буду писать “приват листы” или просто “списки”, ну привычнее так мне (=
Итак, погнали.
Теперь расмотрим более детально организацию приват листов.
Чтобы открыть редактор приват листов нужно зайти в меню статусов нужного Jabber аккаунта, выбрать “Списки приватности” и в подменю пункт “Редактор списков” – скриншот #00.
Появится окно редактора, которое разито на две секции: слева имеющиеся списки приватности, справа правила для выбранного списка приватности – скриншот #01.
В правом верхнем углу находятся иконки переключения режимов, по дефолту стоит “Простой режим” – он чем то напоминает настройки Игнора в миранде, в окне сразу показывается весь ростер [контакт лист] и можно флажками задать нужные правила.
Но давайте переключимся в “Расширенный режим” [правая иконка вида] – скриншот #02, он более удобный имхо, отражаются только сами правила и ничего лишнего, к тому же можно настроить порядок выполения правил, а это, как я уже говорил выше – важно.
В нижнем левом углу расположены иконки управления приват листами:
Тут следует упомянуть разницу в “Активировать” и “По умолчанию”, если сделать приват лист name1 “Активным”, но “По умолчанию” будет выставлен приват лист name2, то после первого же реконекта активируется name2, а до этого будет работать спокойно name1.
Поэтому если хотите чтобы нужный приват лист работал постоянно, то нужно отметить обоими флагами нужный список.
Давайте создадим новый список приватности и назовём его “adblock plus” (=
Для этого нажать внизу на нижнюю крайнюю инконку в виде плюса “+” и зададим имя в появишемся окне – скриншот #03.
Теперь добавим правило, так как пустой список сохранить нельзя, заодно и разберём окно добавления.
Под списком правил есть иконки:
Выбираем “Добавить правило”, появляется окно “Правило приватности”, расcмотрим его подробно – скриншот #04, по сути оно являет собой условие:
Если, варианты:
На самом деле тут можно писать не только Jabber ID, но и просто домен сервера, например jabber.org или домен конференций conference.jabber.org или даже ID пользователя из конференции room@conference.jabber.org/Nick
При вариантах JID и Группа в выпадающем списке напротив уже можно выбрать те ID и группы, которые есть в ростере.
Тогда, варианты:
Следующие типы событий:
Давайте полностью забаним контакт username@jabber.org, это будет выглядеть так – скриншот #05:
Теперь можно сохранить наш новый список приватности “adblock plus”, и можно сделать его “активным” и/или “по умолчанию”, если нужно.
На этом мы закончим с теорией и перейдём к практике.
Чтобы стать невидимым для контакта/группы/сервера, нужно всего лишь запретить iq запросы и Исходящее присутствие. Рассмотрим 2 варианта:
1. Невидимость полная с исключениями для некоторых контактов.
Cоздадим новый список приватности и назовём его “full inviz”.
в принципе, можно было бы написать и так:
но в данном случае это не важно.
Теперь правило исключения нужно переместить Выше правила запрета, иначе оно просто теряет смысл и не будет работать.
тоже помещаем его выше правила Запрета всего и сохраняем.
Удобно например на работе, чтобы не мешали, ну или наооборот о рабочих контактов прикрыться
тоже помещаем его выше правила Запрета всего и сохраняем.
Сохраним список приватности и сделаем его “По умолчанию” [не надо делать его “активным” сразу] – скриншот #10, теперь нужно выполнить реконект этой учетки в миранде.
Важный момент. Если не сделать реконект, а просто Активировать список приватности для невидимости, то выйдет следущее:
для всех контактов, которые были в сети на тот момент, вы так и будуте висеть в онлайне [с поледним статутом, который был у вас на тот момент], а для только что подключившихся контактов вы будете уже в инвизе.Поэтому, надо сначало уйти в Offline, тем самым послав всему ростеру статус что вы вышли, а потом заново зайти/приконектится, т.е. сделать Реконект, автоматом Активируется приват лист с флагом “По умолчанию” и теперь уже для всех вы будете невидимыми, кроме тех контактов, которые сами добавили в исключения.
2. Выброчная невидимость для нескольких контактов.
Давайте создадим список приватности и назовём его “inviz” [или как вам удобно, это не имеет значения].
В данном случае идём от обратного, делаемся невидимыми только для нескольких контактов: username@jabber.org и nickname@jabbus.org
Добавляем для них правила – скриншот #11, скриншот #12:
и
Сохраняем список приватности, ставим флаг “По умолчанию” для него и делаем реконект.
скриншот #13 – готово, список “inviz” стал активным, теперь мы для этих двух контактов невидимы.
Расмотрим опять же два случая, в первом будем банить всех и делать исключения, во втором случае будем банить тока определённые контакты, сервера.
1. Баним всех и добавляем нужные контакты в исключения.
Данный варинт удобен чтобы прикрыться от флуд атаки на нужное время.
Создаём приват лист и именуем его.. например “banall”.
Добавляем правила:
Передвигаем правило исключения выше правила с баном, иначе оно не будет иметь смысла.
Сохраням новый список и установим флаги “По умолчанию” и “Активный”, делаем реконект.
Готово, теперь тот кто не авторизован полностью идёт лесом, вы ничего не будуте получать от лиц в не ростера, также и не увидите запросов авторизации.
Сурово, просто, но со вкусом.
По желанию можно добавить нужные серверы конференций в исключения – скриншот #16:
и/или только определённые комнаты – скриншот #17:
также ставим эти правила выше правила с баном, примерно так – скриншот #18
Можно было конечно ввиде исключений добавить в условия нужные группы в ростере, ну или контакты, а не подписку, тут уж смотря что надо, да и быстрее так.
2. Баним избранно, сегодня мы в хорошем настроении (=
нужно забанить два контакта 324324234@jabber.org и ololol@jabber.org, а также сервер xmpp.org и пользователя Маша1992 в конференции flame@conference.jabber.org
Открываем уже созданный приват лист “adblock plus”.
скриншот #19, скриншот #20, скриншот #21, скриншот #22
порядок правил в данном случае не важен – скриншот #23.
Сохраням список и установим флаги “По умолчанию” и “Активный”, делаем реконект – Готово.
Понятно, что с таким подходом нужно знать врага “в лицо”, злоумышленник может начать ддосит своим бредом ваш мозг с другого JID’a.
III. Запрет запросов: версии клиента/времени/пинга/etc
Бывает нужно скрыть версию клиента или другую информацию, это тоже реально сделать через приват листы, надо только запретить iq запросы для нужных контактов/групп/серверов/конференций:
Сохраням список и установим флаги “По умолчанию” и “Активный”, делаем реконект – Готово: скриншот #29.
iq запросы тоже могут использоваться как метод DDoS атаки кстати, причём скрытой, так как пользователь не видит этих запросов, но можно открыть XML-консоль чтобы промониторить сей момент.
Нужно зайти в меню статусов нужного Jabber аккаунта -> Службы -> XML Консоль и отметить в фильтре Запросы: скриншот #30, скриншот #31.
Естественно можно задавать любые названия спискам приватности и совмещать различные правила в пределах одного списка, главное соблюдать очерёдность правил, чтобы одно не перекрывало другое.
На этом закругляюсь, так как думаю примеров достаточно и всё довольно подробно.
You can follow any responses to this entry through the RSS 2.0 feed.
Children of koRn
July 8th, 2011 at 5:38 pm
Добрый день, для этого нужно перейти по ссылке https://muscari.icarrot.rocks:5281/register/ – добавте сертификат в исключения, после чего откроется страница с управлением аккаунтами.
Pavlushka
July 8th, 2011 at 3:33 pm
Слышал, что ваш сервер джаббер очень стабилен. Скажите пожалуйста, как мне получить учетную запись на вашем сервере?
Children of koRn
June 26th, 2011 at 2:02 pm
Привет. Хехе ну есть “About” типа, не суть в принципе, поченжил (:
Audi
June 25th, 2011 at 9:10 pm
Привет. Уж не знаю, куда написать. Смени пожалуйста адрес ссылки “Audiophile’s Software” на http://audiophilesoft.ru
Блог Ивана Осипова » Ejabberd 2.1.6: осторожно, mod_privacy!
January 6th, 2011 at 2:48 pm
[…] о списках приватности очень хорошо написано тут) и часто запрещают iq-запросы. На этом этапе начиная с […]