Skip to content

Instantly share code, notes, and snippets.

@selivan
selivan / cf-update-all-zones-settings.sh
Last active April 3, 2025 05:33
Script to update some settings for all zones on a Cloudflare account. Default: disable TLS ECH(Encrypted Client Hello).
#!/bin/bash
ACCOUNT_EMAIL="$1"
GLOBAL_API_KEY="$2"
OPTION="${3:-ech}"
VALUE="${4:-off}"
if [ -z "${ACCOUNT_EMAIL}" ] || [ -z "${GLOBAL_API_KEY}" ]; then
echo "Usage: $0 CLOUDFLARE_ACCOUNT_EMAIL CLOUDFLARE_GLOBAL_API_KEY [OPTION] [VALUE]"
echo
@selivan
selivan / cf-update-all-zones-settings.sh
Last active March 23, 2025 17:41
Script to disable TLS ECH(Encrypted Client Hello) on all zones for a Cloudflare account
#!/bin/bash
ACCOUNT_EMAIL="$1"
GLOBAL_API_KEY="$2"
OPTION="${3:-ech}"
VALUE="${4:-off}"
if [ -z "${ACCOUNT_EMAIL}" ] || [ -z "${GLOBAL_API_KEY}" ]; then
echo "Usage: $0 CLOUDFLARE_ACCOUNT_EMAIL CLOUDFLARE_GLOBAL_API_KEY [OPTION] [VALUE]"
echo "Set specified setting for all zones for given account"
DIRECT IP
geoip:private
geoip:ru
geoip:by
DIRECT DOMAIN
geosite:category-gov-ru
domain:ru
#!/bin/bash
sudo sh -c 'echo :WSLInterop:M::MZ::/init:PF > /usr/lib/binfmt.d/WSLInterop.conf'
sudo /lib/systemd/systemd-binfmt
@selivan
selivan / update-cf-dns.sh
Last active June 3, 2024 13:59
Bash script to update CloudFlare DNS record. Required credentials: DNS zone id, API token.
#!/bin/bash
if [ -z "$1" -o -z "$2" -o -z "$3" -o -z "$4" ]; then
echo "Usage: $0 <zone id> <auth token> <dns record name> <value> [proxied true|false (default: false)] [dns record type (default: A)] [ttl(default: 1=auto)]"
exit 1
fi
type curl > /dev/null && type jq > /dev/null || { echo "curl or jq not found"; exit 1; }
ZONE_ID="$1"
geosite:category-gov-ru
domain:ru
domain:su
domain:xn--p1ai
domain:by
domain:xn--90ais
domain:detectportal.firefox.com
domain:msftconnecttest.com
domain:captive.apple.com
domain:yandex.net
#!/bin/sh
# Accept all traffic first to avoid ssh lockdown via iptables firewall rules #
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
# Flush All Iptables Chains/Firewall rules #
iptables -F
# Delete all Iptables Chains #
geoip:ru,
geoip:by,
geosite:category-gov-ru,
domain:ru,
domain:su,
domain:xn--p1ai,
domain:by,
domain:xn--90ais,
domain:detectportal.firefox.com,
domain:msftconnecttest.com,
@echo off
:: https://privacy.sexy — v0.12.4 — Tue, 03 Oct 2023 15:55:39 GMT
:: Ensure admin privileges
fltmc >nul 2>&1 || (
echo Administrator privileges are required.
PowerShell Start -Verb RunAs '%0' 2> nul || (
echo Right-click on the script and select "Run as administrator".
pause & exit 1
)
exit 0
@selivan
selivan / render-jinja-template.py
Created March 5, 2021 22:04
Python3 script to render jinja2 template. Requirements: pip install jinja2
#!/usr/bin/env python3
from jinja2 import Template
import sys
if len(sys.argv) < 3:
print(f'Usage: sys.argv[0] template_file output_file')
template_file = sys.argv[1]
out_file = sys.argv[2]