aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
AgeCommit message (Collapse)AuthorFilesLines
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-chatchange-90Gravatar Christian Hesse1-0/+1
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!)
2023-01-11use arrows with emoji representationGravatar Christian Hesse1-1/+1
We had... ◀ Go back to main README ▲ Go back to top ... and switch to... ⬅️ Go back to main README ⬆️ Go back to top
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 syntaxGravatar Christian Hesse1-1/+1
Missed one in b6ddc5968e7a3393bb6e9b0c0ccf96379efc62b4...
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 notificationGravatar Christian Hesse1-1/+1
---- ✂️ ---- 📌 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. ---- ✂️ ----
2022-09-25drop 'learn-mac-based-vlan' and 'manage-umts'Gravatar Christian Hesse1-4/+0
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. 😜
2022-09-25drop 'netwatch-syslog'change-85Gravatar Christian Hesse1-1/+0
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;
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'change-81Gravatar Christian Hesse1-1/+0
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
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...Gravatar Christian Hesse1-27/+41
... and make sure copy-and-paste with code does not fail. Also end all commands with a semicolon for Github copy button.
2021-05-18drop certificate DST Root CA X3Gravatar Christian Hesse1-12/+4
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.
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 magicGravatar Christian Hesse1-4/+0
This allows to drop the ignore flag.
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'change-44Gravatar Christian Hesse1-1/+0
All scripts wait for the global functions on their own now.
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 licenseGravatar Christian Hesse1-1/+15
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
2020-05-04README: warn about deprecated commands in presentationGravatar Christian Hesse1-0/+3
2020-05-04README: expect recent RouterOSGravatar Christian Hesse1-6/+3
RouterOS 6.43 can be considered obsolete these days.
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.ioGravatar Christian Hesse1-0/+4
https://shields.io/category/social
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 pageGravatar Christian Hesse1-1/+1
This is not intended for installation...
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 CommonNameGravatar Christian Hesse1-1/+1
Now that we have a proper $UrlEncode function... Fetch certificates by CommonName. Also remove the PEM after import.
2019-04-01README: add hint on features for specific scriptsGravatar Christian Hesse1-0/+3
2019-04-01README: drop hint on old branchGravatar Christian Hesse1-3/+0
Now that release channel 'long-term' is at 6.43.x...
2019-03-12link the presentation from MUM Europe 2019 in ViennaGravatar Christian Hesse1-0/+7
2019-01-04global: variable names are CamelCaseGravatar Christian Hesse1-1/+1
___ _ ___ __ / _ )(_)__ _ / _/__ _/ /_ / _ / / _ `/ / _/ _ `/ __/ /____/_/\_, / /_/ \_,_/\__/ _ __ /___/ _ __ | | / /___ __________ (_)___ ____ _/ / | | /| / / __ `/ ___/ __ \/ / __ \/ __ `/ / | |/ |/ / /_/ / / / / / / / / / / /_/ /_/ |__/|__/\__,_/_/ /_/ /_/_/_/ /_/\__, (_) /____/ 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*
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 CommonNameGravatar Christian Hesse1-1/+1
This should prevent endless certificate switching for Let's Encrypt cross-signed intermediate certificates.
2018-12-20README: add Root CA certificate DST Root CA X3Gravatar Christian Hesse1-4/+12
This is used by Let's Encrypt to cross-sign.
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
2018-09-14README: rename and verify certificatesGravatar Christian Hesse1-3/+11
2018-09-13fix typosGravatar Christian Hesse1-1/+1