From LinuxBender @ HN
Create /etc/modprobe.d/nf_conntrack.conf:
options nf_conntrack expect_hashsize=256400 hashsize=256400
And then in /etc/sysctl.conf:
From LinuxBender @ HN
Create /etc/modprobe.d/nf_conntrack.conf:
options nf_conntrack expect_hashsize=256400 hashsize=256400
And then in /etc/sysctl.conf:
#!/bin/sh | |
set -e | |
require() { | |
if ! command -v "$1" > /dev/null 2>/dev/null ; then | |
>&2 echo "$1 utility not found!" | |
exit 1 | |
fi | |
} |
global | |
log /dev/log local0 | |
log /dev/log local1 notice | |
chroot /var/lib/haproxy | |
stats socket /run/haproxy/admin.sock mode 660 level admin | |
stats timeout 30s | |
user haproxy | |
group haproxy | |
daemon |
#!/usr/bin/env python | |
import sys | |
from Crypto.PublicKey import RSA | |
from fractions import gcd | |
if __name__ == '__main__': | |
if len(sys.argv) != 2: | |
print >> sys.stderr, "Usage: %s <RSA privatekey file>" % sys.argv[0] | |
exit(2) |
# /lib/systemd/system/openvswitch-ipsec.service | |
[Unit] | |
Description=Open vSwitch IPsec daemon | |
Requires=openvswitch-switch.service | |
After=openvswitch-switch.service | |
[Service] | |
Type=forking | |
PIDFile=/run/openvswitch/ovs-monitor-ipsec.pid | |
ExecStart=/usr/share/openvswitch/scripts/ovs-ctl \ |
Сегодня 12 августа 2023 года
Метод, описанный в данной статье, создан для борьбы с китайским файерволом, который, начиная с 2019 года, учился блокировать зашифрованный трафик (протокол Shadowsocks) на основе анализа длины первого пакета соединения и энтропию его полезной нагрузки. Более подробно про этот метод блокировки описан в статье Роскомсвободы: https://roskomsvoboda.org/post/chinese-firewall/.
Метод XTLS-Reality отличается от других методов обхода блокировки тем, что определение свой/чужой сервером Xray происходит на этапе так называемого TLS-рукопожатия, когда клиент и сервер обмениваются сообщениями ClientHello. Подробнее про TLS-рукопожатия написано здесь: https://tproger.ru/articles/tls-handshake-explained/. Так вот, когда цензор стучится в этот сервер и пытается методом active probing проверить сервер, последний отправляет цензора на совершенно реальный и безобидный сайт, поддерживающий TLS1.3, и цензол получает настоящие данные этого сайта.
Данный гайд написан новичком для новичков. Я в гайде
{ ipcalc -j -d 0.0.0.0-167.235.232.135 ; ipcalc -j -d 167.235.232.137-223.255.255.255 ; } | jq -r -s 'map(.DEAGGREGATEDNETWORK) | flatten | join(",")' | |
0.0.0.0/1,128.0.0.0/3,160.0.0.0/6,164.0.0.0/7,166.0.0.0/8,167.0.0.0/9,167.128.0.0/10,167.192.0.0/11,167.224.0.0/13,167.232.0.0/15,167.234.0.0/16,167.235.0.0/17,167.235.128.0/18,167.235.192.0/19,167.235.224.0/21,167.235.232.0/25,167.235.232.128/29,167.235.232.137/32,167.235.232.138/31,167.235.232.140/30,167.235.232.144/28,167.235.232.160/27,167.235.232.192/26,167.235.233.0/24,167.235.234.0/23,167.235.236.0/22,167.235.240.0/20,167.236.0.0/14,167.240.0.0/12,168.0.0.0/5,176.0.0.0/4,192.0.0.0/3 |
Sometimes we need to add redundancy to some service or server which happen to be a public-facing entry point of our infrastructure. For example, imagine we want to add a high availability pair for a load balancer which sits on the edge of network and forwards traffic to alive backend servers.
┌─────────────┐
│ │
┌─────►│ Backend 1 │
│ │ │
│ └─────────────┘
template remote { | |
template("${ISODATE} ${LEVEL} ${MSGHDR}${MESSAGE}\n"); | |
}; | |
destination d_sorted { | |
file( | |
"/var/log/remote/${PROGRAM}/${C_YEAR}_${C_MONTH}_${C_DAY}_${C_HOUR}.log" | |
create-dirs(yes) | |
template(remote) | |
time_zone("UTC") |
#!/bin/bash | |
set -euo pipefail | |
treshold=${HIGH_WATER_PCT:-85} | |
cleanup_dir=${DIR:-/var/log/remote/} | |
fraction=${DELETE_FRACTION:-0.5} | |
( | |
if ! flock -n 9 ; then |