MikroTik-scripts: Detectie van een onbekende DHCP-server op het netwerk

Detectie van een onbekende DHCP-server op het netwerk configureren en een melding naar Telegram of e-mail sturen. De naam van de DHCP-interface waarop de server wordt gevonden, de IP- en MAC-adressen van het niet-geautoriseerde apparaat worden verzonden.

Soms doet zich een situatie voor wanneer een medewerker een persoonlijke router met een geactiveerde DHCP-server verbindt met het lokale netwerk van het bedrijf, wat problemen kan veroorzaken bij het verkrijgen van nieuwe IP-adressen van apparaten op het lokale netwerk. Problemen verschijnen mogelijk niet onmiddellijk, maar na het verstrijken van de lease van IP-adressen.

Voor een snelle melding van het verschijnen van een ongeautoriseerde DHCP-server in het lokale netwerk, gebruikt u de instelling Alerts in de instellingen van de DHCP-server.

Artikel in andere talen:
?? – MikroTik Scripts: Discover Unknown DHCP Server on the Network
?? – MikroTik Скрипты: Обнаружение неизвестного DHCP сервера в сети
?? – Scripts MikroTik: Descubre un servidor DHCP desconocido en red
?? – Scripts MikroTik: Découverte d’un serveur DHCP inconnu sur le réseau
?? – MikroTik-Skripte: Erkennen Sie unbekannte DHCP-Server im Netzwerk

Creëer alert

Initiële variabelen:

  • Interface: bridge1-lan – DHCP-server interface name;
  • Valid Servers: 64:D1:54:52:6C:36 – MAC-adres van de DHCP-server interface (bridge1-lan);
  • Alert Timeout: 10 minuten – interval voor het controleren van een niet-geautoriseerde DHCP-server en het verzenden van een melding.

Een waarschuwing instellen:

[IP] -> [DHCP Server] -> [Alerts] -> [+] -> [Interface: bridge1-lan] -> [Valid Servers: 64:D1:54:52:6C:36] -> [Alert Timeout: 00:10:00]

Ik raad aan om een ​​apart script te bellen om de melding te verzenden in plaats van de scripttekst in het Alert. Scripts op één plaats plaatsen [System] -> [Scripts] verbetert de bruikbaarheid van het apparaat dan het plaatsen van scripts in bepaalde apparaatinstellingen.

Script-oproepcode:

/system script run DiscoverUnknownDHCPServer
Creëer een DHCP-server waarschuwing

Script: detecteer een onbekende DHCP-server en stuur een bericht naar Telegram

Om een ​​Telegram-bericht te verzenden, gebruik ik een functieaanroep – MikroTik-scripts: Een bericht naar Telegram sturen (functie)

Voorbeeld van Telegram-meldingen van MHelp.pro
Voorbeeld van een Telegram-bericht van MHelp.pro – er is een onbekende DHCP-server gevonden

Laten we een script maken:

[System] -> [Scripts] -> [+] -> [Name: DiscoverUnknownDHCPServer] -> [Policy: read, write, polisy, test]

Scriptcode:

# Find DHCP Alert 
:local CurrentTime [/system clock get time];
:local MsgID [/log find where message ~"dhcp alert" time =$CurrentTime];
:local MsgText [/log get number=$MsgID message];

# Send Telegram Message
:local DeviceName [/system identity get name];
:local MessageText "\F0\9F\94\B4 <b>$DeviceName: UNKNOWN DHCP SERVER FOUND! </b> Info: $CurrentTime $MsgText";
:local SendTelegramMessage [:parse [/system script  get MyTGBotSendMessage source]];
$SendTelegramMessage MessageText=$MessageText;
MikroTik-scripts: detectie van een onbekende DHCP-server op het netwerk

Script: detecteer een onbekende DHCP-server en stuur een bericht naar e-mail

Om een ​​Telegram-bericht te verzenden, gebruik ik een functieaanroep – MikroTik-scripts: E-mail en bestand naar e-mail verzenden (functie)

Voorbeeld van een e-mail melding van MHelp.pro
Voorbeeld-e-mail van MHelp.pro – onbekende DHCP-server gedetecteerd

Laten we een script maken:

[System] -> [Scripts] -> [+] -> [Name: DiscoverUnknownDHCPServer] -> [Policy: read, write, polisy, test]

Dit script gebruikt geen bestandsupload, dus de parameter FileName is ingesteld op een lege waarde “”.

Scriptcode:

# Find DHCP Alert 
:local CurrentTime [/system clock get time];
:local MsgID [/log find where message ~"dhcp alert" time =$CurrentTime];
:local MsgText [/log get number=$MsgID message];

# Send Email
:local DeviceName [/system identity get name];
:local Time [/system clock get time];
:local Date [/system clock get date];

:local SendTo "mail@mail.com";
:local Subject "\F0\9F\94\B4 CRITICAL: $DeviceName [$Date $Time] UNKNOWN DHCP SERVER FOUND!";
:local MessageText "$MsgText";
:local FileName "";

:local SendEmail [:parse [/system script get SendEmailFunction source]];
$SendEmail SendTo=$SendTo TextMail=$MessageText Subject=$Subject FileName=$FileName;
Script: detecteer een onbekende DHCP-server en stuur een e-mailbericht

Script op één regel

Stuur meldingen over een onbekende DHCP-server naar Telegram:

/tool fetch url="https://api.telegram.org/bot<BotToken>/sendMessage\?chat_id=<GroupID>&text=Unknown DHCP server on interface: $interface (IP: $address, MAC:$"mac-address")" keep-result=no;

Een onbekende DHCP-server melding naar e-mail verzenden:

/tool e-mail send to=dest_mail@mail.com server=[:resolve "smtp.mail.com"] port=465 start-tls=tls-only user="my_mail@mail.com" password="Pa$$woRD"  from="my_mail@mail.com" subject="$[/system identity get name] UNKNOWN DHCP SERVER FOUND!" body="Unknown DHCP server on interface: $interface (IP: $address, MAC:$"mac-address")"

? In dit artikel werd besproken hoe het uiterlijk van een onbekende DHCP-server op het lokale netwerk kan worden gedetecteerd (een probleem in kleine netwerken) en hoe u een melding in Telegram of e-mail kunt verzenden. Ik hoop dat een snelle manier om achter een ongeautoriseerde DHCP-server op het lokale netwerk te komen, u in staat zal stellen sneller te reageren en uw werk gemakkelijker te maken. Als u echter problemen ondervindt tijdens het instellen, kunt u in de opmerkingen schrijven. Ik zal proberen te helpen.

Het script wordt gecontroleerd: hAP ac lite [RouterBOARD 952Ui-5ac2nD], RouterOS 6.47.8 (stabiel).

Plaats een reactie