aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
AgeCommit message (Expand)AuthorFilesLines
2023-03-06... and update the logo in notificationsGravatar Christian Hesse1-1/+1
2023-02-17README: add a paragraph for scheduled automatic updatesGravatar Christian Hesse1-2/+4
2023-02-17README: move configuration down, make it a separate paragraphGravatar Christian Hesse1-21/+33
2023-02-13README: give hint about converting line endingsGravatar Christian Hesse1-0/+5
2023-01-31introduce telegram-chat•••Druvis from Mikrotik produced a video "MikroTik Telegram bot - Chat with your Router?". He shows his script to chat with a Router via Telegram bot to send it commands: https://youtu.be/KLX6j3sLRIE This script is kind of limited and has several issues... 🥴 Let's make it robust, usable, multi-device capable and just fun! 😁 (Sadly Mikrotik has a policy to not allow links in Youtube comments. Thus my comment with several hints was removed immediately. If anybody is in contact with Druvis... Please tell him about this script!) change-90Gravatar Christian Hesse1-0/+1
2023-01-11use arrows with emoji representation•••We had... ◀ Go back to main README ▲ Go back to top ... and switch to... ⬅️ Go back to main README ⬆️ Go back to top Gravatar Christian Hesse1-1/+1
2023-01-11README: install custom script from routeros-scripts-customGravatar Christian Hesse1-4/+1
2023-01-10README: add linked custom scripts & modulesGravatar Christian Hesse1-0/+20
2022-12-19README: RouterOS v7 path syntax•••Missed one in b6ddc5968e7a3393bb6e9b0c0ccf96379efc62b4... Gravatar Christian Hesse1-1/+1
2022-11-17README: link to Github pull requestsGravatar Christian Hesse1-1/+3
2022-10-31README: copy *relevant* configuration onlyGravatar Christian Hesse1-1/+1
2022-10-20README: update notification•••---- ✂️ ---- 📌 News and configuration changes The configuration version on MikroTik increased to 85, current configuration may need modification. Please review and update global-config-overlay, then re-run global-config. Changes: ● Support for e-mail notifications moved to a module. It is installed automatically if required. ● Dropped 'netwatch-syslog', filtering in firewall is advised. ---- ✂️ ---- Gravatar Christian Hesse1-1/+1
2022-09-25drop 'learn-mac-based-vlan' and 'manage-umts'•••This was undocumented and scripts did never catch up with general quality expectations, for example global-config and global functions were not used. If you need the code get it from git history. 😜 Gravatar Christian Hesse1-4/+0
2022-09-25drop 'netwatch-syslog'•••To filter in firewall you should use something like this: /ip/firewall/filter/add action=reject chain=output out-interface-list=WAN port=514 protocol=udp reject-with=icmp-admin-prohibited; /ip/firewall/filter/add action=reject chain=forward out-interface-list=WAN port=514 protocol=udp reject-with=icmp-admin-prohibited; change-85Gravatar Christian Hesse1-1/+0
2022-09-25introduce 'mod/notification-email', split off from global-functionschange-84Gravatar Christian Hesse1-0/+1
2022-07-11... and another oneGravatar Christian Hesse1-1/+1
2022-07-07README: show a sample news and changes notificationGravatar Christian Hesse1-0/+5
2022-06-28README: How to remove a script...Gravatar Christian Hesse1-0/+12
2022-06-15drop script 'rotate-ntp'•••For RouterOS 6.x a separate package 'ntp' exists. This adds server functionality, but allows ip addresses for the client only. I added the script 'rotate-ntp' to update addresses from names... Now with RouterOS 7.x there's no extra package and the limitation does no longer exist. So let's just drop the script. This adds migration code, that... * removes the script from configuration * removes a scheduler from configuration * sets the configured ntp pool name for ntp client change-81Gravatar Christian Hesse1-1/+0
2022-05-12README: RouterOS v7 path syntaxGravatar Christian Hesse1-30/+17
2022-05-05README: installing custom scripts & modulesGravatar Christian Hesse1-0/+23
2022-03-30introduce backup-partitionchange-79Gravatar Christian Hesse1-0/+1
2022-02-21add doc/mod/scriptrunonceGravatar Christian Hesse1-0/+1
2022-02-20add doc/mod/ipcalcGravatar Christian Hesse1-0/+1
2022-02-20add doc/mod/inspectvarGravatar Christian Hesse1-0/+1
2022-02-20add doc/mod/notification-matrixGravatar Christian Hesse1-0/+1
2022-02-20add doc/mod/notification-telegramGravatar Christian Hesse1-0/+1
2022-02-11README: put hint into block quoteGravatar Christian Hesse1-2/+2
2022-02-10introduce firmware-upgrade-rebootchange-77Gravatar Christian Hesse1-0/+1
2022-01-14README: drop hint on branch 'routeros-v7'Gravatar Christian Hesse1-18/+3
2022-01-14README: install correct global-config-overlay for RouterOS v6branch-routeros-v6Gravatar Christian Hesse1-2/+7
2022-01-06rename script upload-backup -> backup-uploadGravatar Christian Hesse1-1/+1
2022-01-06rename script email-backup -> backup-emailGravatar Christian Hesse1-1/+1
2022-01-06rename script cloud-backup -> backup-cloudGravatar Christian Hesse1-1/+1
2022-01-03introduce netwatch-dnschange-72Gravatar Christian Hesse1-0/+1
2022-01-03README: convert screenshots to AVIFGravatar Christian Hesse1-11/+11
2022-01-03README: convert Telegram group qr code to AVIFGravatar Christian Hesse1-1/+1
2021-12-30README: add a qr code to join Telegram groupGravatar Christian Hesse1-0/+3
2021-12-13README: changes for RouterOS v6change-71Gravatar Christian Hesse1-0/+12
2021-12-07global-config: load overlay automaticallyGravatar Christian Hesse1-2/+2
2021-12-07README: changes for RouterOS v7change-70Gravatar Christian Hesse1-0/+14
2021-11-18README: no capitals here...Gravatar Christian Hesse1-1/+1
2021-11-16reintroduce global-waitchange-68Gravatar Christian Hesse1-0/+1
2021-11-15shorten modules directory name (global-functions.d -> mod)change-67Gravatar Christian Hesse1-2/+2
2021-11-15bridge-port-to-default -> global-functions.d/bridge-port-tochange-66Gravatar Christian Hesse1-1/+1
2021-11-12add global-functions.d/bridge-port-vlanchange-65Gravatar Christian Hesse1-0/+5
2021-09-21README: add a note about date and timeGravatar Christian Hesse1-0/+4
2021-09-21README: use real screenshots...•••... and make sure copy-and-paste with code does not fail. Also end all commands with a semicolon for Github copy button. Gravatar Christian Hesse1-27/+41
2021-05-18drop certificate DST Root CA X3•••Let's Encrypt planned the transition to ISRG's root certificate ("ISRG Root X1") on July 8, 2019, but postponed several times. Finally they found another solution: A certificate 'ISRG Root X1', but cross-signed with 'DST Root CA X3' and with a livetime that exceeds that of the root CA. This is said to work for most operating system where root certificate authorities are just 'trust anchors'. I doubt this is true for RouterOS, where certificates are just imported into the certificate store. So let's migrate to 'ISRG Root X1' now. Gravatar Christian Hesse1-12/+4
2021-05-17add 'ipsec-to-dns'change-51Gravatar Christian Hesse1-0/+1
2021-05-07README: use svg logoGravatar Christian Hesse1-1/+1
2021-04-28README: add logoGravatar Christian Hesse1-0/+2
2021-03-04global-config-overlay: remove magic•••This allows to drop the ignore flag. Gravatar Christian Hesse1-4/+0
2021-02-22We have a Telegram group!change-45Gravatar Christian Hesse1-0/+7
2021-02-21README: swap stars and forksGravatar Christian Hesse1-1/+1
2021-02-18global: drop script 'global-wait'•••All scripts wait for the global functions on their own now. change-44Gravatar Christian Hesse1-1/+0
2021-02-18README: fix typoGravatar Christian Hesse1-1/+1
2020-12-18README: drop Let's Encrypt Authority X3Gravatar Christian Hesse1-18/+3
2020-12-17README: also import Let's Encrypt certificate "R3"Gravatar Christian Hesse1-9/+24
2020-11-01README: optional scheduler to update scripts automaticallyGravatar Christian Hesse1-0/+5
2020-10-23ospf-to-leds: introduce script to visualize ospf state via ledschange-34Gravatar Christian Hesse1-0/+1
2020-10-15README: link to global-configGravatar Christian Hesse1-2/+2
2020-10-15global-config: do not define mail addresses by defaultGravatar Christian Hesse1-3/+3
2020-08-13fix typo: botton -> buttonGravatar Christian Hesse1-1/+1
2020-07-15add 'log-forward', drop 'early-errors'change-23Gravatar Christian Hesse1-1/+1
2020-07-14README: be more explicit on file nameGravatar Christian Hesse1-1/+1
2020-07-14global-config: dropped $ScriptUpdatesIgnore, use ignore flag in commentchange-22Gravatar Christian Hesse1-0/+4
2020-06-19explicitly name the license•••Copyright (C) 2013-2020 Christian Hesse <mail@eworm.de> This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. https://www.gnu.org/licenses/#GPL https://www.gnu.org/licenses/gpl.html https://www.gnu.org/licenses/gpl.md Gravatar Christian Hesse1-1/+15
2020-05-04README: warn about deprecated commands in presentationGravatar Christian Hesse1-0/+3
2020-05-04README: expect recent RouterOS•••RouterOS 6.43 can be considered obsolete these days. Gravatar Christian Hesse1-6/+3
2020-04-19add script 'early-erros'Gravatar Christian Hesse1-0/+1
2020-03-30add links GitHub batchesGravatar Christian Hesse1-3/+3
2020-03-30add GitHub batches from shields.io•••https://shields.io/category/social Gravatar Christian Hesse1-0/+4
2020-03-27README: add section 'Available Scripts' and link documentationGravatar Christian Hesse1-0/+44
2020-03-26README: unify markupGravatar Christian Hesse1-2/+4
2020-03-23completely replace script-updates with $ScriptInstallUpdatechange-14Gravatar Christian Hesse1-6/+2
2020-03-20convert initial commands from script to page•••This is not intended for installation... Gravatar Christian Hesse1-1/+1
2020-01-29README: update instructions to use $ScriptInstallUpdatechange-11Gravatar Christian Hesse1-7/+9
2019-11-05README: fix typo and wordingGravatar Christian Hesse1-1/+1
2019-09-12introduce global-config-overlaychange-9Gravatar Christian Hesse1-7/+7
2019-09-11README: add just one scheduler for global scriptsGravatar Christian Hesse1-3/+2
2019-08-30add info about past contributionsGravatar Christian Hesse1-0/+2
2019-08-30README: add contribute section, including donate optionGravatar Christian Hesse1-1/+19
2019-08-30use shorter url for my repositoryGravatar Christian Hesse1-3/+3
2019-08-30README: add valid script to schedulerGravatar Christian Hesse1-6/+6
2019-04-30global-functions: $CertificateAvailable: fetch by CommonName•••Now that we have a proper $UrlEncode function... Fetch certificates by CommonName. Also remove the PEM after import. Gravatar Christian Hesse1-1/+1
2019-04-01README: add hint on features for specific scriptsGravatar Christian Hesse1-0/+3
2019-04-01README: drop hint on old branch•••Now that release channel 'long-term' is at 6.43.x... Gravatar Christian Hesse1-3/+0
2019-03-12link the presentation from MUM Europe 2019 in ViennaGravatar Christian Hesse1-0/+7
2019-01-04global: variable names are CamelCase••• ___ _ ___ __ / _ )(_)__ _ / _/__ _/ /_ / _ / / _ `/ / _/ _ `/ __/ /____/_/\_, / /_/ \_,_/\__/ _ __ /___/ _ __ | | / /___ __________ (_)___ ____ _/ / | | /| / / __ `/ ___/ __ \/ / __ \/ __ `/ / | |/ |/ / /_/ / / / / / / / / / / /_/ /_/ |__/|__/\__,_/_/ /_/ /_/_/_/ /_/\__, (_) /____/ RouterOS has some odd behavior when it comes to variable names. Let's have a look at the interfaces: [admin@MikroTik] > / interface print where name=en1 Flags: D - dynamic, X - disabled, R - running, S - slave # NAME TYPE ACTUAL-MTU L2MTU 0 RS en1 ether 1500 1598 That looks ok. Now we use a script: { :local interface "en1"; / interface print where name=$interface; } And the result... [admin@MikroTik] > { :local interface "en1"; {... / interface print where name=$interface; } Flags: D - dynamic, X - disabled, R - running, S - slave # NAME TYPE ACTUAL-MTU L2MTU 0 RS en1 ether 1500 1598 ... still looks ok. We make a little modification to the script: { :local name "en1"; / interface print where name=$name; } And the result: [admin@MikroTik] > { :local name "en1"; {... / interface print where name=$name; } Flags: D - dynamic, X - disabled, R - running, S - slave # NAME TYPE ACTUAL-MTU L2MTU 0 RS en1 ether 1500 1598 1 S en2 ether 1500 1598 2 S en3 ether 1500 1598 3 S en4 ether 1500 1598 4 S en5 ether 1500 1598 5 R br-local bridge 1500 1598 Ups! The filter has no effect! That happens whenever the variable name ($name) matches the property name (name=). And another modification: { :local type "en1"; / interface print where name=$type; } And the result: [admin@MikroTik] > { :local type "en1"; {... / interface print where name=$type; } Flags: D - dynamic, X - disabled, R - running, S - slave # NAME TYPE ACTUAL-MTU L2MTU Ups! Nothing? Even if the variable name ($type) matches whatever property name (type=) things go wrong. The answer from MikroTik support (in Ticket#2019010222000454): > This is how scripting works in RouterOS and we will not fix it. To get around this we use variable names in CamelCase. Let's hope Mikrotik never ever introduces property names in CamelCase... *fingers crossed* Gravatar Christian Hesse1-1/+1
2019-01-03global-{config,functions}: move variables, make independentGravatar Christian Hesse1-1/+3
2019-01-02README: add link to scroll upGravatar Christian Hesse1-0/+2
2018-12-20global-functions: make $CertificateAvailable work on CommonName•••This should prevent endless certificate switching for Let's Encrypt cross-signed intermediate certificates. Gravatar Christian Hesse1-1/+1
2018-12-20README: add Root CA certificate DST Root CA X3•••This is used by Let's Encrypt to cross-sign. Gravatar Christian Hesse1-4/+12
2018-12-18README: add initial commands for copy and pasteGravatar Christian Hesse1-0/+9
2018-10-16README: do not print the certificates but count themGravatar Christian Hesse1-5/+4
2018-10-16README: download certificates from repositoryGravatar Christian Hesse1-18/+5
2018-10-09README: now that we need three scripts... download and add in loopGravatar Christian Hesse1-3/+1
2018-10-09add global-functionsGravatar Christian Hesse1-0/+1
2018-09-14README: add more general certificate informationGravatar Christian Hesse1-3/+9