August 15, 2011
Mikrotik Firewall / Short Notes + Scripts
Contents …
– session-timeout / idle-timeout / keepalive-timeout
TOP- Block TRACE Route in Mikrotik
1- Secure Services by Firewall Filter Rules
2- Firewall Sample
3- Better approach on blocking Ports
4- howto block Winbox Discovery
5- Filter Rules to Allow/Block VPN Protocol
6- Howto block P2P / Torrents & Downloads using L7/Contents
7- Howto block User via MAC address
8- Script to reboot Router Daily in night at 1:00am
9- Disable/Enable Users using Script and Schedule
10- Update Hotspot walled garden list by fetching text file
11- Disconnect all active PPPoE users
12- Block download based on file SIZE …
13- Monitor WAN link (pppoe-out1) and reconnect (for ptcl 50mb vdsl hang issue)
14- Disable HOTSPOT Users based who donot have comments “PAID”
15- Script to disconnect previously logged user if same id connected with second computer [Hotspot]
16- Radius Offline, enable local ppp secret
17- Download Mikrotik Upgrade package via command in ROS [26/8/2014]
18- Multiple WAN ISP’s link with SAME GATEWAY [03/10-OCT/2014]
19 – Print/Find WAN ip (if you have multiple wan IP assigned on same wan interface] [10th Jan, 2015]
20- Print/Find (pppoe dialer base) WAN IP address [10th Jan, 2015]
21- Mikrotik 10g SFP+ Supported Card [Tested]
22- Login to FBR site IRIS not working with Load Balancing PCC
23- Monitor LOG & email upon admin user logged in
24- Delete BUSY leases from Mikrotik DHCP
25- detecting ROGUE dhcp in LAN
Session-timeout / Idle-timeout / Keepalive-timeout in Mikrotik
– `Session-timeout` is used to disconnect user after specific period of time (like after x seconds/minutes/hours). If user is connected with the router, he will be disconnected either he is using router network or not,
– `idle-timeout` is used to detect, if client is not using Router networks (INTERNET or locally natted hosts).
Reaching timeout user will be logged out, etc.
In other words, idle timeout checks traffic. If user is online but is just not sending./receiving anything, he may reach its idle timeout.
– `keep-alive-timeout` keepalive timeout checks availability. It is used to detect, if user is available and reachable, if check fails client will be dropped out, etc.
keepalive timeout may only be reached if client is physically disconnected or turned off.The default keepalive-timeout value of 10 is OK in most cases. If you set it to 0, the router will not disconnect clients until they explicitly log out or the router is restarted.
TOP- Block TRACEROUTE in Mikrotik
Move above two rules on TOP & done.
0- Change mangle PCC rules by finding comments
Recently I configured a load balancer (PCC base) in Mikrotik RB for a client. For some customized reasons, He wanted to run dst-address as Per-connection-classifier in Day time, & both-address-and-ports in Night time. He had to do this manually on a daily basis, so he asked me if it can be done automatically by the system. To achieve it, I added comments in all MARK CONNECTION (prerouting) mangle rules, like “rule1” “rule2” and so on, then I used following code in scheduled script which actually change the per connection classifier settings only.
The following rules will create a address list which will have your management PC ip address. an then it will allow all ports like WINBOX, FTP, SSH, TELNET from this address list only, and rest of ips wont be able to access these ports.
Now scenario will be like below.
It is strongly advised to DISABLE all Unnecessary Services on the MikroTik Router specially SSH/FTP which is highly used for brute force attacks. Also make sure to change the default services ports to some other number, preferably higher unused ports like 50000 or above or likewise …
This reduces the attack surface of your router the less services there are to attack the less likely your router could be compromised or overloaded 🙂
Remotely Accessible Router Services should be limited to few addresses
This is a simple and very effective way of controlling who can attempt to access the MikroTik router. One could check from which addresses or networks the MikroTik Router would be administered. Then one could create firewall rules that only allow access to the router services from the management networks.
Deny all un wanted inbound Traffic and allow only related traffic (***The best approach***)
By restricting inbound traffic to the router, you can prevent the accidental opening up of services on the router. Also by restricting all types of services except for the services you know about & you want, you prevent any services (that you may not be aware of ) being accessible remotely on the MikroTik router.
A basic Mikrotik Firewall Script to secure MT box from virus and flooding. First copy all contents of below script to notepad, then carefully read it,
The above Rules allows 5 packets per second with a burst of 10 specific to new connections. The mangle rule will put addresses on a list when it exceeds that limit. That way legitimate use isn’t blocked but something like a virus or worm sending out mass amounts will be detected and stopped. It’s a much more elegant solution than blocking a bunch of ports for all users. It also gives you a list of user IPs that need to clean up their pc.
Mikrotik How to block Winbox Discovery + Limit Winbox Access
To hide your mikrotik from being appearing in WINBOX scan negibour list, & to limit WINBOX access from your admin PC only,
Use the Following.
You can Also Disable Network Neighbor Discovery on the interface to which your network users are connected
How-to Allow VPN (PPTP) Connections for Mikrotik VPN Server
PPTP uses the GRE protocol, You have to allow ip PROTOCOL 47 (GRE), not TCP port.
TCP port 1723 is the control connection, while the actual tunnel is GRE (protocol 47).
Make sure these rules are above any general DENY rule.
Howto Block Torrent / P2P
Blockin 100% torrent is impossible as nowadays new torrents application are using encrypted method and its nearly impossible to inspect the SSL traffic. I used Forefront TMG 2010 is capable to inspect SSL traffic at some extents.
However you can block basic torrents access by using following.
Another approach to block P2P, taken from the mikrotik forum, Not personally checked yet. Someone please check and update
Howto Block User MAC address
SCRIPT SECTION
▼
Script to reboot router daily at 1:00am
First add script which ahve command to reboto router, then simply schedule it to run daily in night 1:00am or whatever you like 🙂
▼
Disable/Enable Users using Script and Schedule
▼
Update Hotspot walled garden list by fetching text file
Disconnect all active PPPoE users
Block download based on file SIZE …
I forgot the guy’s name who is from FB, who asked me a question, lets name him Mr. X. The query was > howto block downloads of large files (lets say 5mb or above ) in specific timings (like 8pm-12am).
But the issue is How the router will know the file size before it’s downloaded? The router has no way of knowing how big a connection is… An workaround is to create a Firewall Filter rule that will will allow the first 5MB of a connection through, and once it reaches that, it will start to drop packets. I used it a network in Gulistan-e-Jauhar, and it worked good.
But do remember that that It will also affect streaming, RDP like protocols, VPNs, and any other connection that transfers a large number of bytes.
You can also make a Simple Queue with or without burst, that should slow down the download speed after 5Mb to be crawled in few kbits only
( it will not block based on size)
You can also forward these packets to external proxy like Squid to do the filter base on reply_body_max_size directive. example:
As some1 asked, for squid use this:
I would recommend to GO with Queues and mangle rules, this way nothing will gonna be blocked, but scaling back bandwidth based on how much data has passed through the connection to make downloading large files painful for the cable.net users …
↓
Disable HOTSPOT Users based who donot have comments “PAID”
Mikrotik Hotspot: Script to disconnect previously logged user if same id is used at second device
Mikrotik Script to disconnect hotspot user if its already active in pppoe
You can create a for i loop and add it in netwatch.
Example: (copy paste version)
Download Mikrotik Upgrade package via command in ROS [26/8/2014]
You can use following command to download upgrade package from the mikrotik CLI.
It’s Useful to upgrade old ROS versions like 5.x.
(Following example is for mipsbe CRS series, RB4xx series, RB7xx series, RB9xx series, RB2011 series, SXT, OmniTik, Groove, METAL, SEXTANT)
/tool fetch mode=http url=http://download2.mikrotik.com/routeros/6.18/routeros-mipsbe-6.18.npk
/tool fetch mode=http url=http://download2.mikrotik.com/routeros/5.26/routeros-powerpc-5.26.npk
to check latest version, see following url
18- Multiple WAN ISP’s link with SAME GATEWAY [03/10-OCT/2014]
If you have multiple ISP’s link with SAME gateway, then you can add routes like this.
Note: 1.1.1.1 is ISP gateway, and ether1 and ether2 are the interfaces connected with ISP1 and ISP2.
19- Print/Find WAN ip (if you have multiple wan IP assigned on same wan interface] [10th Jan, 2015]
Note: Change the WAN (ether1) interface if required.
20- Print/Find (pppoe dialer base) WAN IP address [10th Jan, 2015]
21- Script to disconnect all Hotspot Active Users
21 – Mikrotik 10g SFP+ supported card for x86 Box
10 G LAN Card that is working on Mikrotik RouterOS
Move above rules on TOP.
23- Monitor LOG & email upon admin user logged in
Schedule this script to run every few seconds like 10 seconds. This will check if winbox user is logged in, it will send email once, next email will be generated depend on the counter for active users in winbox.
Make sure you have working email configuration in the mikrotik /tools/email section
Result:
24- Delete BUSY leases from Mikrotik DHCP
25- detecting ROGUE dhcp in LAN
DHCP Alerts: If you are running DHCP on your mikrotik, & wan to detect any rogue dhcp on your LAN, you can set alert like below …
Keepalive timeout mikrotik что это
Wed Feb 27, 2013 10:15 pm
Re: PPPoE idle-timeout
Mon Aug 17, 2015 5:04 am
Im on RouterOS v6.28
Re: PPPoE idle-timeout
Mon Aug 17, 2015 7:56 am
keepalive-timeout (time; Default: «10») Defines the time period (in seconds) after which the router is starting to send keepalive packets every second. If there is no traffic and no keepalive responses arrive for that period of time (i.e. 2 * keepalive-timeout), the non responding client is proclaimed disconnected.
Maybe there is keepalive responses coming from the user and the tunnel remains up. Have you checked it?
If yes, I suppose it should work that way.
Edit: the option is in PPP, PPPoE Servers, choose the service and open it, Keepalive Timeout.
Re: PPPoE idle-timeout
Mon Aug 17, 2015 8:32 am
keepalive-timeout (time; Default: «10») Defines the time period (in seconds) after which the router is starting to send keepalive packets every second. If there is no traffic and no keepalive responses arrive for that period of time (i.e. 2 * keepalive-timeout), the non responding client is proclaimed disconnected.
Maybe there is keepalive responses coming from the user and the tunnel remains up. Have you checked it?
If yes, I suppose it should work that way.
I went to PPP > PPPoE Servers >> Clicked on the 1 item it had.
IT shows Keep Alive Timeout as 900.
Then I went to Profiles > default one clicked
Session Timeout is blank and Idle Timeout is 00.10.00.
And then if we ask them to switch off the device, they wont do that too.
Необходимость настройки туннельного VPN-соединения на MikroTik возникает в случаях, когда:
В отличие от обычной сети, где данные передаются открыто и в незашифрованном виде, VPN является защищенным каналом связи. Уровень защиты зависит от типа туннельного протокола, выбранного для соединения.
Так, наименее защищенным считается протокол PPtP, даже его «верхний» алгоритм аутентификации mschap2 имеет ряд проблем безопасности и легко взламывается.
Наиболее безопасным считается набор протоколов IPsec.
Несмотря на укоряющую картинку, иногда смысл в отключении шифрования и аутентификации все же есть. Многие модели MikroTik не поддерживают аппаратное шифрование, и обработка всех процессов, связанных с защитой соединения происходит на уровне CPU. Если безопасность соединения не является для вас критичным моментом, а производительность используемого роутера оставляет желать лучшего, то отключение шифрования можно использовать для разгрузки процессора.
Выбор протокола для VPN на MikroTik
Для настройки соединения по VPN через MikroTik чаще всего используются следующие протоколы:
В сегодняшней статье мы рассмотрим настройку подключения VPN с помощью двух из них, как наиболее часто встречающихся в работе провайдера и системного администратора: PPtP и PPPoE.
VPN через PPtP на MikroTik
Прост в настройке. Для организации туннеля требуется:
Включаем PPtP сервер.
Для этого идем в раздел меню PPP, заходим на вкладку Interface, вверху в перечне вкладок находим PPTP сервер и ставим галочку в пункте Enabled.
Создаем пользователей.
В разделе PPP переходим в меню Secrets и с помощью кнопки «+» добавляем нового пользователя.
В полях Name и Password прописываем, соответственно логин и пароль, который будет использовать пользователь для подключения к туннелю.
в поле Local Address пишем IP-адрес роутера MikroTik, который будет выступать в роли VPN-сервера,
Прописываем правила для Firewall.
Нам нужно открыть 1723 порт для трафика по TCP-протоколу для работы VPN-туннеля MikroTik, а также разрешить протокол GRE.
Точно также добавляем правило для GRE.
На вкладке General аналогично предыдущему прописываем input, а в поле Protocol выбираем gre.
На вкладке Action как и в предыдущем правиле выбираем accept.
Не забываем поднять эти правила в общем списке наверх, поставив ПЕРЕД запрещающими правилами, иначе они не будут работать. В RouterOS Mikrotik это можно сделать перетаскиванием правил в окне FireWall.
Все, PPtP сервер для VPN на MikroTik поднят.
Небольшое уточнение.
В некоторых случаях, когда при подключении необходимо видеть локальную сеть за маршрутизатором, нужно включить proxy-arp в настройках локальной сети.
Для этого идем в раздел интерфейсов (Interface), находим интерфейс, соответствующий локальной сети и на вкладке General в поле ARP выбираем proxy-arp.
Если вам дополнительно нужно получить доступ к расшаренным папкам на компьютерах локальной сети, понадобится также открыть порт 445 для проходящего трафика SMB-протокола, который отвечает за Windows Shared. (Правило forward в брандмауере).
Настройка клиента.
На стороне VPN-клиента настройки состоят только в том, чтобы создать подключение по VPN, указать IP-адрес VPN (PPtP) сервера, логин и пароль пользователя.
VPN через PPPoE на MikroTik
Своей распространенностью в последнее время VPN по протоколу PPPOE обязан провайдерам, предоставляющим широкополосный, в т. ч. беспроводной доступ в интернет.
Протокол предполагает возможность сжатия данных, шифрования, а также характеризуется:
Настройка VPN-сервера PPPoE MikroTik
Настраиваем профили сервера.
Несколько профилей PPPoE-сервера могут понадобиться, если вы провайдер и раздаете интернет по нескольким тарифным пакетам.
Соответственно, в каждом профиле можно настроить разные ограничения по скорости.
Идем в раздел PPP, открываем пункт Profiles и с помощью кнопки «+» создаем новый профиль.
Даем ему понятное нам название, прописываем локальный адрес сервера (роутера), отмечаем опцию Change TCP MSS (корректировку MSS), для того, чтобы все сайты нормально открывались.
Кстати, в некоторых случаях, когда возникают проблемы с открытием некоторых сайтов, при том, что пинги на них проходят, можно сделать по-другому. Корректировку MSS отключаем, а через терминал прописываем на роутере следующее правило:
«ip firewall mangle add chain=forward protocol=tcp tcp-flags=syn tcp-mss=1453-65535 action=change-mss new-mss=1360 disabled=no».
В большинстве случаев это решает проблему.
Далее на вкладке Protocols все отключаем, для улучшения производительности.
Если защищенность соединения для вас важна и производительность маршрутизатора позволяет, то опцию Use Encryption (использовать шифрование) не отключайте.
На вкладке Limits устанавливаем ограничения по скорости, если нужно.
Ставим Yes в пункте Only One, это значит, что два и более абонентов с одним и тем же набором логин/пароль не смогут подключиться к PPPoE-серверу, только один.
Теперь, если необходимо, создаем остальные профили простым копированием (кнопка Copy на предыдущем скриншоте) и меняем имя и ограничение по скорости.
Создаем учетные записи пользователей.
В том же разделе PPP находим пункт меню Secrets.
В нем с помощью кнопки «+» создаем нового пользователя, который будет подключаться к нам по VPN-туннелю.
Заполняем поля Name и Password (логин и пароль, который будет вводить пользователь со своей стороны, чтобы подключиться).
Присваиваем пользователю IP-адрес, который при подключении сервер раздаст абоненту.
Если подключаем несколько пользователей, создаем для каждого из них отдельную учетную запись, меняя имя/пароль и IP-адрес.
Привязываем PPPoE сервер к определенному интерфейсу MikroTik.
Теперь нам необходимо сообщить маршрутизатору, на каком интерфейсе он должен «слушать» входящие подключения от VPN PPPoE клиентов.
Для этого в разделе PPP мы выбираем пункт PPPoE Servers.
Настраиваем NAT для доступа клиентов в интернет.
Мы подняли PPPoE сервер и теперь к нему могут подключаться авторизованные пользователи.
Если нам нужно, чтобы подсоединившиеся по VPN туннелю пользователи имели доступ в интернет, нужно настроить NAT (маскарадинг), или преобразование локальных сетевых адресов.
В разделе IP выбираем пункт Firewall и с помощью кнопки «+» добавляем новое правило.
В поле Chain должно стоять srcnat, что означает, что маршрутизатор будет применять это правило к трафику, направленному «изнутри наружу».
В поле Src. Address (исходный адрес) прописываем диапазон адресов 10.1.0.0/16.
Это означает, что все клиенты с адресами 10.1. (0.0-255.255) будут выходить в сеть через NAT, т. е. мы перечисляем здесь всех возможных абонентов.
Настройка VPN-клиента PPPoE
Если на той стороне VPN туннеля подключение будет происходить с компьютера или ноутбука, то просто нужно будет создать высокоскоростное подключение через PPPoE в Центре управления сетями и общим доступом (для Win 7, Win 8).
Добавляем PPPoE интерфейс.
На вкладке Interface выбираем PPPoE Client и с помощью кнопки «+» добавляем новый интерфейс.
Здесь в поле Interface мы выбираем тот интерфейс роутера Mikrotik, на котором мы организуем VPN-туннель.
Прописываем настройки подключения.
Далее переходим на вкладку Dial Out и вписываем логин и пароль для подключения к VPN туннелю PPPoE.
Настройки аутентификации (галочки в pap, chap, mschap1, mschap2) должны быть согласованы с сервером.
Keepalive timeout mikrotik что это
Ajax Systems
Alfa Network
Edge-Core
Edimax
M5Stack
Escene
GAOKE
HPE Aruba Networks
Info-Sys
ITElite
Keenetic
LigoWave
Точки доступа
Контроллеры для точек доступа
Wi-Fi антенны
Материнские платы
Радиокарты
Беспроводные USB адаптеры
Усилитель сигнала Wi-Fi (репитер)
GPS-трекеры
Блоки питания, РОЕ, инжекторы
Грозозащита
Кабель UTP, FTP, коннекторы
Патч-корды
Патч-Панели
Сетевые компоненты и инструмент
Корпуса
Крепежная фурнитура
Переходники и кабели USB, HDMI, DVI, SATA, 3RCA
Пигтейлы
Удлинители и сетевые фильтры
Неуправляемые коммутаторы
Управляемые коммутаторы
IP телефоны
VoIP шлюзы
IP-ATC
Аксессуары для VoIP-оборудования
IP-камеры
Регистраторы
Аксессуары для видеонаблюдения
Видеодомофоны
Аналоговые видеокамеры
Контроллеры
Датчики
Сетевые карты и адаптеры
Принт-серверы
Сетевые накопители (NAS, DAS)
USB-концентраторы
Универсальные внешние аккумуляторы
Рис. 1. PPP интерфейсы.
PPP Server и PPP Client
PPP (англ. Point-to-Point Protocol) – протокол точка – точка.
С его помощью можно организовать связь между двумя узлами. Но протокол уже не новый и в ETHERNET сетях не применяется.
Ethernét — технология передачи данных, основанная на передаче пакетов между узлами. Её используют мобильные операторы для подключения пользователя к мобильному интернету..
PPTP Server и PPTP Client
L2TP Server и L2TP Client
L2TP (англ. Layer 2 Tunneling Protocol) — это сетевой протокол сочетающий в себе два протокола: L2F (разработчик Cisco) и PPTP (разработчик Microsoft).
OVPN Server и OVPN Client
OpenVPN – это свободная реализация VPN (в отличии от PPTP и L2TP). Не поддерживается OS Windows по умолчанию. Придётся скачивать дополнительное ПО.
PPPoE Server и PPPoE Client
PPPoE (англ. Point-to-point protocol over Ethernet) – ещё один сетевой протокол, протокол канального уровня.
Переходим к настройке PPPoE Server-а.
Рис. 2. Включаем PPPoE сервер.
Для того чтобы включить PPPoE сервер в Mikrotik, необходимо перейти на вкладку PPPoE Server и, как обычно, нажать плюс. После чего появится окно настроек PPPoE Server-a.
Interface – выбираем интерфейс, на котором PPPoE Server будет ожидать подключения от PPPoE Client. Обычно, это сетевой адаптер, который смотрит в локальную сеть.
Max MTU – без изменений.
Default Profile – по умолчанию в Mikrotik ROUTER OS можно выбрать два профиля. Выберем default.
One Session Per Host и Max Sessions – тоже оставим без изменений.
Переходим к Authentication.
Authentication – это протоколы проверки подлинности.
PAP (англ. Password Authentication Protocol) — протокол проверки подлинности, проверяет верны ли отправленные имя и пароль на сервер удалённого доступа.
CHAP (англ. Challenge Handshake Authentication Protocol) — широко распространённый протокол, в нём серверу передается не сам пароль пользователя, а косвенные сведения о нём.
MS-CHAP (англ. Microsoft Challenge Handshake Authentication Protocol) — протокол от разработчиков Microsoft для выполнения проверки подлинности удалённых компьютеров.
PPTP Client
Чтобы добавить PPPTP Client, выполняем все те же простые действия. Нажимаем плюс и в появившемся списке интерфейсов выбираем PPTP Client.
В появившемся окне, если есть желание, можно изменить параметр NAME; остальное оставляем без изменений и переходим на вкладку Dial Out.
Рис. 6. PPTP Client Dial Out.
На вкладке Dial Out в поле Connect To нужно ввести IP адрес PPTP сервера. User и Password – это логин и пароль для подключения к серверу. Все остальное можно оставить так, как есть. Единственное, что еще стоит сделать, это поставить галочку напротив Add Default Route. Это избавит нас от необходимости прописывать маршрут вручную. Нажимаем Apply, смотрим: если в нижнем правом углу статус стал connected, значит мы всё сделали верно.
PPTP Server
PPTP Server – настраивается также просто, как и PPPOE Server.
Жмём кнопку PPTP Server.
В появившемся окне ставим галочку напротив Enabled, жмем ОК. Всё, сервер настроен.
Теперь нужно добавить пользователей для нашего сервера. Переходим в раздел Secrets.
Рис.9. Добавляем пользователя.
Тут всё просто: Name – имя пользователя, Password – пароль. Выбираем профиль или оставляем без изменения. Например, если мы выбрали подсеть 172.16.1.0/24, то Local Address для всех пользователей будет одинаковый 172.16.1.1, а Remote Address у каждого свой. Вот и всё.
Евгений Рудченко специально для asp24
































