Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
Порівняння попередніх версій Попередня ревізія | Наступна ревізія По сторонах наступні версії | ||
mgmikrotik [2019/11/26 10:46] |
mgmikrotik [2022/09/24 14:39] 127.0.0.1 зовнішнє редагування |
||
---|---|---|---|
Рядок 1: | Рядок 1: | ||
+ | ====== Авторизация абонентов через HotSpot сервер при помощи КучаГен ====== | ||
+ | Можно использовать Mikrotik HotSpot для авторизации абонентов через freeradius чем то похоже на логику ISG cisco. | ||
+ | |||
+ | Что может и не может делать Mikrotik. | ||
+ | 1. Можно авторизовать абонентов только если они находятся в одном L2 домене(в одной сети) вместе с Mikrotik. | ||
+ | 2. Идентификатором для микротика является мак адрес.(абонентов будем авторизовать по mac) | ||
+ | 3. Всех неавторизованных абонентов микротик никуда не пускает, | ||
+ | 4. После успешной авторизации если в freeradius были параметры с указанием скоростей Микротик выставит для абонента шейпер. | ||
+ | 5. Можно создавать списки для разрешенных сайтов, | ||
+ | 6. Микротик не может авторизовать по IP | ||
+ | 7. Что-бы применить измененные параметры уже активного абонента его надо переавторизовать | ||
+ | 8. Для отключения, | ||
+ | | ||
+ | Также что-бы это все могло работать целостно и из коробки у вас должен быть настроен [[multigen]] и dhcp-server | ||
+ | |||
+ | Дальше описание пошагово. | ||
+ | ====== Конфигурация Ubilling ====== | ||
+ | |||
+ | Уже должен быть настроен [[multigen|КучаГен]] | ||
+ | |||
+ | Настраиваем биллинг стандартно как и для любых других устройств | ||
+ | |||
+ | в справочнике (сети и услуги) добавляем сети, создаем услуги | ||
+ | |||
+ | {{: | ||
+ | |||
+ | в справочнике (сервер dhcp) создаем нужные нам сети. **ЧТОБЫ РАБОТАЛ DHCP-RELAY** Не забываем поправить файл ubilling/ | ||
+ | < | ||
+ | shared-network ourisp { | ||
+ | |||
+ | {SUBNETS} | ||
+ | |||
+ | subnet " | ||
+ | } | ||
+ | </ | ||
+ | В справочнике (сервера доступа NAS) вешаем на нашу сеть которая будет обслуживаться Микротиком нужный нам тип сервера доступа (Radius) Если у вас микротик обслуживает не одну сеть то для каждой сети создаем свой сервер доступа, | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Пароли с помощью которых наши будущие НАСЫ будут подключаться к Freeradius находятся тут же по нажатию шестеренки их можно увидеть. Далее эти параметры будем вносить в настройки Radius в микротике. Чтобы freeradius перечитал login\pass его надо перезапустить вручную (например //service radiusd restart//). | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Добавим словарь для Mikrotik в файл / | ||
+ | < | ||
+ | $INCLUDE | ||
+ | </ | ||
+ | Для Ubuntu примерно так / | ||
+ | < | ||
+ | $INCLUDE | ||
+ | </ | ||
+ | После чего перезапускаем FreeRADIUS | ||
+ | |||
+ | Добавляем в NAS набор атрибутов, | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | по поводу установки скорости и выбора макроса, | ||
+ | Чтобы мы могли сбрасывать сессий при отключении или смене скорости, | ||
+ | |||
+ | {{: | ||
+ | |||
+ | < | ||
+ | {PRINTF} ' | ||
+ | </ | ||
+ | еще есть вариант отсылать CoA только на изменения скорости , может кому пригодиться , пример переключение день ночь | ||
+ | < | ||
+ | {PRINTF} " | ||
+ | </ | ||
+ | |||
+ | Вот эта конфигурация NAS в текстовом виде для быстрой вставки, | ||
+ | < | ||
+ | eyJvcHRpb25zIjp7ImlkIjoiMyIsIm5hc2lkIjoiMSIsInVzZXJuYW1ldHlwZSI6Im1hYyIsInNlcnZpY2UiOiJwb2Rjb2EiLCJvbmx5YWN0aXZlIjoiMSIsInBvcnQiOiIzNzk5In0sImF0dHJpYnV0ZXMiOnsiOSI6eyJpZCI6IjkiLCJuYXNpZCI6IjEiLCJzY2VuYXJpbyI6ImNoZWNrIiwibW9kaWZpZXIiOiJhY3RpdmUiLCJhdHRyaWJ1dGUiOiJDbGVhcnRleHQtUGFzc3dvcmQiLCJvcGVyYXRvciI6Ijo9IiwiY29udGVudCI6IjEyMzQ1In0sIjEwIjp7ImlkIjoiMTAiLCJuYXNpZCI6IjEiLCJzY2VuYXJpbyI6InJlcGx5IiwibW9kaWZpZXIiOiJhY3RpdmUiLCJhdHRyaWJ1dGUiOiJJZGxlLVRpbWVvdXQiLCJvcGVyYXRvciI6Ij0iLCJjb250ZW50IjoiMzYwMCJ9LCIxMSI6eyJpZCI6IjExIiwibmFzaWQiOiIxIiwic2NlbmFyaW8iOiJyZXBseSIsIm1vZGlmaWVyIjoiYWN0aXZlIiwiYXR0cmlidXRlIjoiQWNjdC1JbnRlcmltLUludGVydmFsIiwib3BlcmF0b3IiOiI9IiwiY29udGVudCI6IjYwMCJ9LCIxMiI6eyJpZCI6IjEyIiwibmFzaWQiOiIxIiwic2NlbmFyaW8iOiJyZXBseSIsIm1vZGlmaWVyIjoiYWN0aXZlIiwiYXR0cmlidXRlIjoiTWlrcm90aWstUmF0ZS1MaW1pdCIsIm9wZXJhdG9yIjoiPSIsImNvbnRlbnQiOiJ7U1BFRURET1dOfU0ifSwiMjkiOnsiaWQiOiIyOSIsIm5hc2lkIjoiMSIsInNjZW5hcmlvIjoicmVwbHkiLCJtb2RpZmllciI6ImFsbCIsImF0dHJpYnV0ZSI6IkZyYW1lZC1JUC1BZGRyZXNzIiwib3BlcmF0b3IiOiI9IiwiY29udGVudCI6IntJUH0ifX0sInNlcnZpY2VzIjp7IjEiOnsiaWQiOiIzIiwibmFzaWQiOiIxIiwicG9kIjoie1BSSU5URn0gJ0ZyYW1lZC1JUC1BZGRyZXNzID0ge0lQfScgfCB7U1VET30gIHtSQURDTElFTlR9IHtOQVNJUH06e05BU1BPUlR9IFwiZGlzY29ubmVjdFwiIHtOQVNTRUNSRVR9IiwiY29hY29ubmVjdCI6IlwvYmluXC90cnVlIiwiY29hZGlzY29ubmVjdCI6IntQUklOVEZ9ICdGcmFtZWQtSVAtQWRkcmVzcyA9IHtJUH0nIHwge1NVRE99ICB7UkFEQ0xJRU5UfSB7TkFTSVB9OntOQVNQT1JUfSBcImRpc2Nvbm5lY3RcIiB7TkFTU0VDUkVUfSJ9fX0= | ||
+ | </ | ||
+ | |||
+ | Либо, если вы как здоровый человек указываете скорость ваших тарифов в килобитах в две стороны, | ||
+ | < | ||
+ | eyJvcHRpb25zIjp7ImlkIjoiMSIsIm5hc2lkIjoiMSIsInVzZXJuYW1ldHlwZSI6Im1hYyIsInNlcnZpY2UiOiJwb2Rjb2EiLCJvbmx5YWN0aXZlIjoiMSIsInBvcnQiOiIzNzk5In0sImF0dHJpYnV0ZXMiOnsiMSI6eyJpZCI6IjEiLCJuYXNpZCI6IjEiLCJzY2VuYXJpbyI6ImNoZWNrIiwibW9kaWZpZXIiOiJhY3RpdmUiLCJhdHRyaWJ1dGUiOiJDbGVhcnRleHQtUGFzc3dvcmQiLCJvcGVyYXRvciI6Ijo9IiwiY29udGVudCI6IjEyMzQ1In0sIjIiOnsiaWQiOiIyIiwibmFzaWQiOiIxIiwic2NlbmFyaW8iOiJyZXBseSIsIm1vZGlmaWVyIjoiYWN0aXZlIiwiYXR0cmlidXRlIjoiSWRsZS1UaW1lb3V0Iiwib3BlcmF0b3IiOiI9IiwiY29udGVudCI6IjM2MDAifSwiMyI6eyJpZCI6IjMiLCJuYXNpZCI6IjEiLCJzY2VuYXJpbyI6InJlcGx5IiwibW9kaWZpZXIiOiJhY3RpdmUiLCJhdHRyaWJ1dGUiOiJBY2N0LUludGVyaW0tSW50ZXJ2YWwiLCJvcGVyYXRvciI6Ij0iLCJjb250ZW50IjoiNjAwIn0sIjQiOnsiaWQiOiI0IiwibmFzaWQiOiIxIiwic2NlbmFyaW8iOiJyZXBseSIsIm1vZGlmaWVyIjoiYWN0aXZlIiwiYXR0cmlidXRlIjoiTWlrcm90aWstUmF0ZS1MaW1pdCIsIm9wZXJhdG9yIjoiPSIsImNvbnRlbnQiOiJ7U1BFRURNUkx9In0sIjUiOnsiaWQiOiI1IiwibmFzaWQiOiIxIiwic2NlbmFyaW8iOiJyZXBseSIsIm1vZGlmaWVyIjoiYWxsIiwiYXR0cmlidXRlIjoiRnJhbWVkLUlQLUFkZHJlc3MiLCJvcGVyYXRvciI6Ij0iLCJjb250ZW50Ijoie0lQfSJ9LCI2Ijp7ImlkIjoiNiIsIm5hc2lkIjoiMSIsInNjZW5hcmlvIjoiY2hlY2siLCJtb2RpZmllciI6ImFsbCIsImF0dHJpYnV0ZSI6IkF1dGgtVHlwZSIsIm9wZXJhdG9yIjoiOj0iLCJjb250ZW50IjoiQWNjZXB0In19LCJzZXJ2aWNlcyI6eyIxIjp7ImlkIjoiMSIsIm5hc2lkIjoiMSIsInBvZCI6IntQUklOVEZ9ICdGcmFtZWQtSVAtQWRkcmVzcyA9IHtJUH0nIHwge1NVRE99ICB7UkFEQ0xJRU5UfSB7TkFTSVB9OntOQVNQT1JUfSBcImRpc2Nvbm5lY3RcIiB7TkFTU0VDUkVUfSIsImNvYWNvbm5lY3QiOiJcL2JpblwvdHJ1ZSIsImNvYWRpc2Nvbm5lY3QiOiJ7UFJJTlRGfSAnRnJhbWVkLUlQLUFkZHJlc3MgPSB7SVB9JyB8IHtTVURPfSAge1JBRENMSUVOVH0ge05BU0lQfTp7TkFTUE9SVH0gXCJkaXNjb25uZWN0XCIge05BU1NFQ1JFVH0ifX19 | ||
+ | </ | ||
+ | ====== Конфигурация Mikrotik ====== | ||
+ | |||
+ | Представим, | ||
+ | - Нужен микротик с прошивкой не ниже v6 | ||
+ | - Абонентские устройства должны видеть интерфейс на котором мы будет поднимать HotSpot по L2 потому-что авторизовать мы их будет по MAC | ||
+ | - **В примере мы используем сторонний dhcp поэтому на микротике надо настроить dhcp-relay**. | ||
+ | - Настройка в картинках .. | ||
+ | |||
+ | Заходим ip - hotspot создаем сервер hotspot вешаем на интерфейс смотрящий на абонентов | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Поле профиль, | ||
+ | В поле login timeout устанавливаем время через которое микротик будет пробовать переавторизовывать неавторизованных абонентов. | ||
+ | |||
+ | Правим профиль сервера , ставим login by: mac и использовать радиус? | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Все пользователи при авторизации будут использовать значения таймаутов и всего остального из профиль пользователя Default изменения в нем применяются для всех хотспотов но переопределяются значениями из радиус, | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Добавляем в Walled Garden IP List адреса разрешенные нашим абонентам без авторизации и денег, адрес лист нужно предварительно создать в ip - firewall - address List, чтоб не насиловать фаервол дополнительными правилами можно тут что надо запрещать или разрешать. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | Открываем настройки Radius вписываем наши параметры полученные при настройки КучаГен пароль для нас NAS (справочнике сервера доступа NAS) так же чтоб мы могли получать команды Pod\CoA надо не забыть поставить галочку для входящих соединений и указать порт в примере 3799 (его-же вписывали в настройках NAS сервера выше) | ||
+ | |||
+ | {{: | ||
+ | |||
+ | По итогу мы должны видеть наших все абонентов авторизованных и не авторизованных во вкладке hosts, туда попадают все устройства которые отправили хоть один пакет в сторону микротика. Во вкладке Active попадают только авторизованные для которых в радиусе нашлась правильная пара login\pass. Чтобы заставить абонента пройти процедуру переаторизацию (получить новые параметры) его надо удалять из Hosts. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | В биллинге можем видеть сессии пользователей при условии что мы отправляем accounting | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ====== Перенаправление отключенных/ | ||
+ | HotSpot умеет это прекрасно делать так что не чего выдумывать не надо, а требуется как минимум поправить один файл login.html на микротике (понятно что перенаправить без боли мы можем только http трафик, | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Привести его к такому содержимому, | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | $(if chap-id) | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | $(endif) | ||
+ | < | ||
+ | <form name=" | ||
+ | <input type=" | ||
+ | </ | ||
+ | <script language=" | ||
+ | <!-- | ||
+ | | ||
+ | //--> | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | вообще там очень много вариаций которыми можно корректировать поведение системы хот спот и при желании можно получать много всяких данных еще до авторизации и после, но об этом уже в официальной доке [[https:// | ||
+ | ====== Статистика Mikrotik ====== | ||
+ | |||
+ | Mikrotik ccr1036 - начинает сдыхать при трафике больше + - 2.8G наличие или отсутствие на нем Nat почти не влияет. (это около 3к авторизованных абонентов) | ||
+ | |||
+ | Mikrotik ccr1072 - до предела еще не дошли, пережевывает 4G 3800-4500 авторизованных проц до 55% .(пока проблем нет но уже похоже подходит к концу еще мегов 500-1000 думаю прожует) | ||
+ | |||
+ | **Подключены в сеть одним 10G портом, | ||
+ | |||
+ | Mikrotik ccr1072 - тупо как NAT в него стекается трафик от NAS`оф c разных сетей натит в разные пулы и так далее. Натит 15 гиг проц до 43% проблем нет. | ||
+ | |||
+ | Из полезного: | ||
+ | |||
+ | много ресурсов отжирает правила созданные по умолчанию хотспотом (заворот на себя 53 порта) | ||
+ | поэтому создаем в шедулер правило которое будет его убивать при запуске микротика , если перезапустить хот спот руками то не забываем убить правило в фаерволе. | ||
+ | |||
+ | < | ||
+ | /system scheduler | ||
+ | add name=dns on-event=": | ||
+ | \n/ip firewall nat remove [find dynamic dst-port=\" | ||
+ | \n/queue simple | ||
+ | ftp, | ||
+ | </ | ||
+ | |||
+ | так-же увеличиваем очередь шейпера (default-small) примерно так | ||
+ | < | ||
+ | /queue type | ||
+ | set 9 pfifo-limit=200 | ||
+ | </ | ||
+ | |||
+ | Если у вас на микротике дохрена абонов то не забываем увеличить время жизни ARP записи от стандартных 30сек до хотя бы 1-2 минуты иначе можно получить бродкастовый шторм не плохой. |