Користувальницькькі налаштування

Налаштування сайту


microtik

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Наступна ревізія
Попередня ревізія
microtik [2022/09/24 14:39]
127.0.0.1 зовнішнє редагування
— (поточний)
Рядок 1: Рядок 1:
-====== Эта реализация считается устаревшей и не поддерживается с релиза 0.4.3 ======  
-**используйте [[mikrotikapi|Управление MikroTik через API]]** 
- 
-====== Использование Mikrotik в роли NAS ====== 
-Одним из популярных способов терминации пользователей на Mikrotik является использование последнего как DHCP-Relay с последующим шейпингом и ассоциацией IP+MAC там же. Ubilling начиная с версии 0.2.6 умеет напрямую общаться с Mikrotik с целью контроля вышеуказанных задач налету.  
- 
- 
-===== Подготовка ===== 
- 
-1. Генерируем ключ без пароля для пользователя ubilling 
-  # cd docs/mikrotik/ 
-  # sh ssh_keygen.sh ubilling 
-  # cp dsakey.ubilling /etc/stargazer/ 
-  
-2. Добавляем пользователя ubilling на Mikrotik  
-  [admin@MikroTik] > user add name=ubilling group=write 
-   
-3. Заливаем публичный файл ключей на Mikrotik 
-  # ftp 172.17.0.5 
-  # Connected to 172.17.0.5. 
-  220 MikroTik FTP server (MikroTik 4.5) ready 
-  Name (172.17.0.5:nightfly): admin 
-  331 Password required for admin 
-  Password: 
-  230 User admin logged in 
-  Remote system type is UNIX. 
-  ftp> put dsakey.ubilling.pub 
-  local: dsakey.ubilling.pub remote: dsakey.ubilling.pub 
-  500 'EPSV': command not understood 
-  227 Entering Passive Mode (172,17,0,5,220,47). 
-  150 Opening ASCII mode data connection for '/dsakey.ubilling.pub' 
-  226 ASCII transfer complete 
-  599 bytes sent in 00:00 (70.39 KB/s) 
-  ftp> quit  
-  221 Closing 
-   
-4. Вешаем только что залитый ключ на пользователя Mikrotik 
-  [admin@MikroTik] > user ssh-keys import file=dsakey.ubilling.pub user=ubilling 
- 
-5. Убеждаемся что все прошло нормально и ключ импортнулся 
-    ssh -l ubilling  -i /etc/stargazer/dsakey.ubilling  172.17.0.5  "/system resource print" 
- 
- 
-===== Настройка Ubilling ===== 
-1. Утаскиваем обработчик для Mikrotik-direct куда нужно: 
-  # cp mk_push /etc/stargazer/ 
-  # chmod a+x /etc/stargazer/mk_push 
-   
-2. Уносим определялку сервера доступа куда бы вы думали?: 
-  # cp presets/stargazer/GetNasIP /etc/stargazer/ 
-  # chmod a+x /etc/stargazer/GetNasIP 
-  # cp presets/stargazer/GetNasType /etc/stargazer/ 
-  # chmod a+x /etc/stargazer/GetNasType 
-правильно, тоже куда нужно.\\ 
- 
-3. Засовываем следующие заготовки в OnConnect и OnDisconnect  
- 
-**/etc/stargazer/OnConnect** 
-<code> 
-# detect correct NAS ip by user login 
-NASIP=`/etc/stargazer/GetNasIP ${LOGIN}` 
- 
-#arp fix 
-/etc/stargazer/mk_push ${NASIP} "/ip arp add address=${IP} disabled=no interface=[интерфейс_абонентской_сети] mac-address=${MAC} comment=${LOGIN}" 
-#second way 
-#/etc/stargazer/mk_push ${NASIP} "/ip arp set static ${IP} ${MAC} comment=${LOGIN}" 
- 
-#allow  
-/etc/stargazer/mk_push ${NASIP} "/ip firewall address-list add address=${IP} disabled=no list=ALLOW comment=${LOGIN}" 
- 
-#adding shaper queue 
-/etc/stargazer/mk_push ${NASIP} "/queue simple add burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s direction=both disabled=no interface=all limit-at=${UPSPEED}k/${SPEED}k max-limit=${UPSPEED}k/${SPEED}k name=${LOGIN} parent=none priority=8 queue=default-small/default-small target-addresses=${IP} total-queue=default-small" 
-</code> 
-\\ 
-**/etc/stargazer/OnDisconnect** 
-<code> 
-# detect correct NAS ip by user login 
-NASIP=`/etc/stargazer/GetNasIP ${LOGIN}` 
- 
-#arp cleanup 
-/etc/stargazer/mk_push ${NASIP} "/ip arp remove [find comment=${LOGIN}]" 
-#second way: /ip arp set static ${IP} 00:00:00:00:00:00 comment=${LOGIN} 
- 
-#deny 
-/etc/stargazer/mk_push ${NASIP} "/ip firewall address-list remove [find comment=${LOGIN}]" 
- 
-#delete shape queue 
-/etc/stargazer/mk_push ${NASIP} "/queue simple remove [find name=${LOGIN}]" 
-</code> 
- 
-===== Настройка сенсора NetFlow на Mikrotik ===== 
-Если мы желаем вести учет трафика на NAS делаем следующее:\\ 
-1. Убеждаемся что stargazer использует cap_nf для подсчета трафика (он является умолчальным при установке Ubilling)\\ 
-2. Настраиваем сенсор netflow: 
-  [admin@MikroTik] > ip traffic-flow set enabled=yes 
-  [admin@MikroTik] > ip traffic-flow target add address=[айпишка_сервера_ubilling]:42111 version=5 
-  [admin@MikroTik] > ip traffic-flow set interfaces=[интерфейс_на_котором_считать] active-flow-timeout=20m inactive-flow-timeout=15s cache-entries=4k enabled=yes 
- 
-===== Обеспечение привязки IP+MAC ===== 
-В норме для обеспечения резервирования IP абонента его MAC адресом используется конструкция  
-  "/ip arp add address=[IP_абонента] disabled=no interface=[интерфейс_абонентской_сети] mac-address=[MAC_абонента] comment=[логин_абонента]" 
- 
-Для обеспечения единообразия имен интерфейсов указываемых в скриптах OnConnect/OnDisconnect рекомендуется объединить эти интерфейсы в одинаково именованый бридж следующим способом: 
-  [admin@MikroTik] > /interface bridge add  
-  [admin@MikroTik] > /interface bridge port add interface=ether1 bridge=bridge1 
- 
-делать это следует единоразово 
-   
-===== Контроль доступа ===== 
- В норме, если не производиться дополнительного контроля доступа на сервере c FreeBSD/Linux, следует объявить запрет доступа по умолчанию для всех пользователей на Mikrotik 
-  [admin@MikroTik] >  /ip firewall filter add action=drop chain=forward disabled=no src-address-list=!ALLOW  
-   
-===== DHCP-Relay ===== 
-Настраиваем перенаправление всех DHCP запросов на сервер с Ubilling для интерфейсов, смотрящих в сторону пользователей на Mikrotik приблизительно так как показано на рисунке ниже. Это нужно для того, чтобы гибко управлять опциями выдаваемыми DHCP пользователям со стороны сервера.\\ 
-{{ :mtdhcprelay.png? |}} 
- 
-===== Управление DHCP сервером Mikrotik ===== 
-Если протащить DHCP трафик до пользователей находящихся за NAS Mikrotik является затруднительным, вы можете попробовать управлять DHCP сервером на Mikrotik напрямую из OnConnect 
- 
-  /etc/stargazer/mk_push ${NASIP}  "/ip dhcp-server lease remove [find address=${IP}]" 
-  /etc/stargazer/mk_push ${NASIP}  "/ip dhcp-server lease add address=${IP} disabled=no mac-address=${MAC} server=server1" 
- 
- 
-===== Сервера доступа разных типов ===== 
-Если вы желаете использовать в своей сети сервера доступа разных типов(rscriptd, Mikrotik итд) , вы можете использовать определение типа сервера доступа при помощи GetNasType для обертки разных обработчиков.\\ 
- 
-Пример использования для Mikrotik Direct (доступ к Mikrotik по ssh):\\ 
- 
-<code> 
-NASTYPE=`/etc/stargazer/GetNasType ${LOGIN}` 
-if [ "$NASTYPE" = "mtdirect" ] 
-then 
-# здесь обработка событий OnConnect/OnDisconnect на Mikrotik  (см. Выше) 
-fi 
- 
-</code> 
- 
-===== Редирект на страницу пользователя ===== 
- 
-<code> 
-/ip firewall nat chain=srcnat action=masquerade protocol=tcp src-address-list=deny dst-port=80  
-/ip firewall nat chain=dstnat action=dst-nat to-addresses=IP-билинга to-ports=80 protocol=tcp src-address-list=deny dst-port=80 
-</code> 
- 
-на дефолтном виртуалхосте сервера на которй происходит перенаправление пользователя из Mikrotik, должен висеть JS редирект вида: 
-<code php> 
-<script type="text/javascript"> 
-<!-- 
-window.location = "http://статистика_пользователя" 
-//--> 
-</script> 
-</code> 
  
microtik.1664019551.txt.gz · Востаннє змінено: 2022/09/24 14:39 повз 127.0.0.1