Skip to content

Instantly share code, notes, and snippets.

@dhcgn
dhcgn / routerboard.sh
Last active October 6, 2023 23:45
Add Cloudflare IPs to Mikrotik Routerboard
/ip firewall address-list
add list=CF address=173.245.48.0/20
add list=CF address=103.21.244.0/22
add list=CF address=103.22.200.0/22
add list=CF address=103.31.4.0/22
add list=CF address=141.101.64.0/18
add list=CF address=108.162.192.0/18
add list=CF address=190.93.240.0/20
add list=CF address=188.114.96.0/20
add list=CF address=197.234.240.0/22
@egeneralov
egeneralov / linux.sh
Last active April 21, 2025 22:16
linux to mikrotik ip tunnel
ip tunnel add ipip local ${linux_ip} remote ${mikrotik_ip} mode ipip
ip link set ipip up
ip addr add 192.168.3.1/30 dev ipip
iptables -t mangle -A POSTROUTING -o ipip -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
iptables -t nat -A POSTROUTING -s 192.168.3.0/30 -o ${linux_output_iface} -j MASQUERADE
@Bert-Proesmans
Bert-Proesmans / qos-all.auto.rsc
Last active March 22, 2025 06:02
Mikrotik Routerboard QOS script
# Creation Date: November 3, 2018
:local Version "2.0"
:local LASTUPDATE "05/10/2019"
# Tested with RouterOS 6.43.4
#
# Mikrotik script to implement QoS on internet connections.
# The script makes use of Address Lists, Firewall rules (Mangle) for connection tagging, and Queue Trees.
# The script will remove applied rules from previous runs before applying.
#
@mrl22
mrl22 / move-storage.sh
Last active July 24, 2025 05:12
Bash script to move storage of all Proxmox Virtual Machines to different storage
#!/bin/sh
movefrom='micronssd'
moveto='wdredpro'
for vm in $(qm list | awk '{print $1}' | grep -Eo '[0-9]{1,3}');
do
for storage in $(qm config $vm | grep $movefrom: | awk '{print $1}' | grep -Eo '[a-z0-9]+');
do
echo Moving VM$vm Storage $storage
@tavinus
tavinus / acme-proxmox-dynu.md
Last active March 18, 2025 20:49
Using acme.sh on the proxmox host (with Dynu DNS)

Proxmox + acme.sh

Using acme.sh on the proxmox host to generate Letsencrypt certificates

With this we show how to use acme.sh instead of the original Letsencrypt interface.

Acme.sh is just a Bash script that can run on pretty much any *nix environment.
It is quite simple but also quite powerfull.

In this guide I will use the cheap and good Dynu service to configure a domain.

@rlex
rlex / gist:2ec8562c4642032600e3e4c8a5acac4b
Created April 4, 2018 13:42
Mikrotik <-> Linux GRE/IPSec, strongswan
config setup
charondebug="ike 2, knl 2, cfg 2, net 2, esp 2, dmn 2, mgr 2"
conn %default
# keyexchange=ikev2
conn mikrotik-1
# Try connect on daemon start
auto=start
@mingderwang
mingderwang / gist:94205de855af7c60cafa88564ea6abd7
Created March 5, 2017 08:08
hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused by another repository pushing hint: to the same ref. You may want to first integrate the remote changes hint: (e.g., 'git pull ...') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details.
$ git pull origin master //run this first, then
$ git push origin master
@beeman
beeman / remove-all-from-docker.sh
Created November 15, 2016 03:04
Remove all from Docker
# Stop all containers
docker stop `docker ps -qa`
# Remove all containers
docker rm `docker ps -qa`
# Remove all images
docker rmi -f `docker images -qa `
# Remove all volumes
@ViktorNova
ViktorNova / rotate-video.sh
Created August 8, 2016 21:33
Rotate a video with FFmpeg (100% lossless, and quick)
$INPUTVIDEO='input.mp4'
$OUTPUTVIDEO='output.mp4'
ffmpeg -i $INPUTVIDEO -metadata:s:v rotate="-90" -codec copy $OUTPUTVIDEO