Как пользоваться заблокированными для России онлайн-сервисами
Этот пост навеян грустными обстоятельствами, в новостях сообщили, что очередной полезный сервис перестанет предоставлять услуги на территории России — это Notion. К сожалению, не всегда удается найти достойную альтернативу нужному сервису, или миграция из одного сервиса в другой чрезмерно сложна и трудоемка, а то и вообще невозможна.
Хочу поделиться опытом, как вернуть себе доступ и продолжать пользоваться любимыми сервисами вопреки запретам.
Необходимые средства и инструменты
Во-первых, нам понадобится устройство, на которое мы установим sing-box, это может быть старый ноутбук, мини-компьютер или виртуальная машина с минимальными ресурсами. Я опробовал два варианта: виртуальная машина с Debian 12 в Proxmox и Rapsberry pi 4, оба варианта работают отлично, можно выбирать любой из понравившихся.
Во-вторых, нужен арендованный VPS сервер в Европе с установленным proxy. Сам пользуюсь услугами хостера HSHP, из плюсов выделю низкую стоимость аренды и стабильную работу сервиса.
В-третьих, нужен любой терминал.
Подготовительные работы
Предполагаю, что у тебя уже установлен Debian 12 (Ubuntu тоже подойдет). Обновим установленную ОС.
apt update
apt upgrade
На сервере необходимо включить IP Forwarding, иначе сервер не сможет раздавать интернет. Откроем файл /etc/sysctl.conf в любом текстовом редакторе и в конец вставим строку, а после — перезапустим службу для применения изменений.
sudo nano /etc/sysctl.conf
net.ipv4.ip_forward=1
sudo sysctl -p
Теперь настроим работу межсетевого экрана и сохранения внесенных правил в iptables.
sudo iptables -t nat -A PREROUTING -s IP_ПК/32 -p tcp -j REDIRECT --to-port 100
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo systemctl enable netfilter-persistent
sudo systemctl start netfilter-persistent
Последним шагом выполним перезагрузку. На этом предварительная настройка будет завершена и можно переходить к следующему шагу.
Установка и настройка Sing - box
Приступим к установке proxy по официальной инструкции от разработчиков.
sudo curl -fsSL https://sing-box.app/gpg.key -o /etc/apt/keyrings/sagernet.asc
sudo chmod a+r /etc/apt/keyrings/sagernet.asc
echo "deb [arch=`dpkg --print-architecture` signed-by=/etc/apt/keyrings/sagernet.asc] https://deb.sagernet.org/ * *" | \
sudo tee /etc/apt/sources.list.d/sagernet.list > /dev/null
sudo apt-get update
sudo apt-get install sing-box # or sing-box-beta
Пару слов о конфиге.
На входе мы слушаем 100 порт и перенаправляем его на наш proxy, это правило мы прописывали в iptables, также создаем виртуальное сетевое устройство (TUN).
{
"type": "tun",
"interface_name": "tun0",
"domain_strategy": "ipv4_only",
"inet4_address": "172.16.250.1/30",
"mtu": 1500,
"auto_route": true,
"strict_route": false,
"sniff": true,
"sniff_override_destination": true
},
{
"type": "redirect",
"tag": "redirect-in",
"listen": "0.0.0.0",
"listen_port": 100,
"domain_strategy": "ipv4_only",
"sniff": true,
"sniff_override_destination": true
}
На выходе будем использовать транспорт vless, но ты можешь взять любой другой из поддерживаемых протоколов (Shadowsocks, WireGuard, Hysteria и многих других).
{
"type": "vless",
"tag": "vless-out",
"server": "",
"server_port": ,
"uuid": "",
"flow": "xtls-rprx-vision",
"network": "tcp",
"tls": {
"enabled": true,
"insecure": false,
"server_name": "google.com",
"utls": {
"enabled": true,
"fingerprint": "random"
},
"reality": {
"enabled": true,
"public_key": "",
"short_id": ""
}
}
}
В конце используем блок правил, который позволит нам ходить на недоступные из РФ ресурсы через наш VPS, а на российские сервисы — напрямую.
Также на время отладки рекомендую включить логирование, это нужно для понимания, с каких устройств на какие адреса идет подключение.
"log": {
"disabled": false,
"level": "trace",
"output": "/etc/sing-box/sing-box.log",
"timestamp": true
}
Полный конфиг будет выглядеть так.
{
"log": {
"disabled": true,
"level": "trace",
"output": "/etc/sing-box/sing-box.log",
"timestamp": true
},
"dns": {
"servers": [
{
"tag": "google",
"address": "https://8.8.8.8/dns-query"
},
{
"tag": "local",
"address": "192.168.1.1",
"detour": "direct"
},
{
"tag": "block",
"address": "rcode://success"
}
],
"strategy": "ipv4_only"
},
"inbounds": [
{
"type": "tun",
"interface_name": "tun0",
"domain_strategy": "ipv4_only",
"inet4_address": "172.16.250.1/30",
"mtu": 1500,
"auto_route": true,
"strict_route": false,
"sniff": true,
"sniff_override_destination": true
},
{
"type": "redirect",
"tag": "redirect-in",
"listen": "0.0.0.0",
"listen_port": 100,
"domain_strategy": "ipv4_only",
"sniff": true,
"sniff_override_destination": true
}
],
"outbounds": [
{
"type": "vless",
"tag": "vless-out",
"server": "",
"server_port": ,
"uuid": "",
"flow": "xtls-rprx-vision",
"network": "tcp",
"tls": {
"enabled": true,
"insecure": false,
"server_name": "google.com",
"utls": {
"enabled": true,
"fingerprint": "random"
},
"reality": {
"enabled": true,
"public_key": "",
"short_id": ""
}
}
},
{
"type": "direct",
"tag": "direct"
},
{
"type": "block",
"tag": "block"
},
{
"type": "dns",
"tag": "dns-out"
}
],
"route": {
"rules": [
{
"protocol": "dns",
"outbound": "dns-out"
},
{
"ip_is_private": true,
"outbound": "direct"
},
{
"domain_suffix": ".chatgpt.com",
"outbound": "vless-out"
},
{
"rule_set": [
"geoip-ru",
"geosite-ru"
],
"outbound": "direct"
}
],
"rule_set": [
{
"type": "remote",
"tag": "geoip-ru",
"format": "binary",
"url": "https://raw.githubusercontent.com/Chocolate4U/Iran-sing-box-rules/rule-set/geoip-ru.srs"
},
{
"type": "remote",
"tag": "geosite-ru",
"format": "binary",
"url": "https://raw.githubusercontent.com/Chocolate4U/Iran-sing-box-rules/rule-set/geosite-category-ru.srs"
}
],
"final": "vless-out",
"auto_detect_interface": true
}
}
В конце сделаем автозапуск сервиса sing-box и запустим сервис.
sudo systemctl enable sing-box
sudo systemctl start sing-box
Настройка оборудования
Sing - box мы настроили, он готов к работе. Теперь в настройках параметров сети твоего устройства (ПК, ТВ и т.д.) необходимо прописать статический ip адрес, а в качестве шлюза указать адрес устройства или виртуальной машины с установленным sing - box, после этого можно проверять скорость работы YouTube и других сайтов.
Также отмечу важный момент, все государственные порталы и российские сайты будут работать в штатном режиме без необходимости изменения настроек сети.
Заключение
Спасибо, что дочитал статью до конца, надеюсь, было полезно! P.S. Поделись с друзьями и знакомыми, тогда я буду понимать, что такие материалы интересны людям.