Сёння тэхналогіі VPN і проксі-сервераў карыстаюцца ўсё большым попытам. Карыстальнікі выкарыстоўваюць іх для бяспечнага доступу ў Інтэрнэт, абыходу цэнзуры і абароны ад знешніх пагроз. Пры падключэнні да такога сервера ўвесь ваш трафік праходзіць праз зашыфраваны тунэль, і сервер становіцца вашым шлюзам у сетку.
Класічныя пратаколы, такія як OpenVPN або WireGuard, добра працуюць у стабільных умовах, але часта пакутуюць ад падзення хуткасці пры дрэнным злучэнні з высокай стратай пакетаў (мабільныя сеткі, грамадскі Wi-Fi, краіны са строгай цэнзурай). Вось тут і ўступаюць у гульню сучасныя пратаколы, такія як Hysteria2 і TUIC. Яны пабудаваны на базе QUIC, прапаноўваючы высокую хуткасць, нізкую затрымку і эфектыўную абфускацыю трафіку, як звычайны HTTPS (HTTP/3).
Hysteria2 выкарыстоўвае алгарытм "Brutal", які агрэсіўна выкарыстоўвае даступную прапускную здольнасць. TUIC (версія 5) характарызуецца мінімальнымі накладнымі выдаткамі, выдатнай падтрымкай UDP і ўстанаўленнем злучэння 0-RTT.
У гэтым артыкуле мы разгледзім наладу сервера на Ubuntu/Debian і падключэнне з Windows.
Што вам спатрэбіцца: VPS з Ubuntu 22.04/24.04 або Debian 12, root-доступ і IP-адрас сервера. Дамен не патрабуецца.
Падключэнне да сервера
Windows (PuTTY): адкрыйце PuTTY, увядзіце IP-адрас ВАШАГА_СЕРВЕРА ў якасці хаста, 22 у якасці порта і ўвайдзіце ў сістэму як root з паролем з электроннай пошты вашага VPS-правайдэра.
Linux/macOS (тэрмінал):
ssh root@YOUR_SERVER_IP
Усе каманды ніжэй выконваюцца на серверы ў гэтым жа сеансе.
Падрыхтоўка сервера (Ubuntu / Debian)
Уключыць пераадрасацыю IP-адраса
Гэта дазваляе серверу перасылаць кліенцкія пакеты далей у Інтэрнэт.
nano /etc/sysctl.conf
Увядзіце або прыдумайце пароль (выкарыстоўвайце толькі англійскія літары і лічбы, без прабелаў).
Знайдзіце і раскаментуйце (выдаліце сімвал # у пачатку) або дадайце наступны радок:
net.ipv4.ip_forward=1
Захавайце файл (Ctrl+O, Enter) і выйдзіце (Ctrl+X). Ужыйце змены без перазагрузкі:
sysctl -p
Налада NAT (маскарад)
Гэты параметр дазваляе кліентам атрымліваць доступ да Інтэрнэту праз ваш сервер, выкарыстоўваючы яго IP-адрас.
Даведайцеся назву вашага знешняга сеткавага інтэрфейса (той, які выходзіць у Інтэрнэт):
ip link show
Звычайна гэта eth0, ens3 або enp1s0. Скапіруйце або запомніце яго, а затым дадайце правіла маскіроўкі ў iptables — заменіце eth0 на сваю ўласную назву інтэрфейса:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Захаванне правілаў iptables
Каб правілы не скідаліся пасля перазагрузкі сервера, іх трэба захаваць.
apt update
apt install iptables-persistent -y
netfilter-persistent save
Падчас усталёўкі можа з'явіцца запыт на захаванне бягучых правілаў IPv4/IPv6 — адкажыце «Так» абодва разы.
Налада брандмаўэра (UFW)
Мы адразу адкрываем усе патрэбныя парты, таму няма неабходнасці вяртацца да гэтага кроку пазней: 22 для SSH (калі прапусціць яго, сервер будзе заблакаваны), 443/udp для Hysteria2 і 8443/udp для TUIC.
apt install ufw -y
ufw allow 22/tcp
ufw allow 443/udp
ufw allow 8443/udp
ufw --force enable
ufw status
У выніковым запісе каманды ufw status павінны быць паказаны актыўныя ўсе тры правілы.
Істэрыя2
Усталёўка сервера Hysteria2
chmod +x hysteria-linux-amd64
mv hysteria-linux-amd64 /usr/local/bin/hysteria
hysteria version
Пераканайцеся, што вывад версіі адлюстроўваецца без памылак — гэта пацвярджае правільнасць працы бінарнага файла.
Стварэнне самападпісанага SSL-сертыфіката
Нам патрэбныя ўласныя ключы шыфравання для абароны трафіку паміж вашым камп'ютарам і серверам. Паколькі ў нас няма дамена, мы згенеруем самападпісаны сертыфікат, тэрмін дзеяння якога складае 365 дзён. Таму вам пазней трэба будзе ўключыць у кліенце опцыю «Прапусціць праверку сертыфіката».
mkdir -p /etc/hysteria
chmod 755 /etc/hysteria
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/hysteria/private.key \
-out /etc/hysteria/cert.crt \
-subj "/CN=YOUR_SERVER_IP"
ls -la /etc/hysteria/
Павінны быць пералічаны як cert.crt, так і private.key.
Стварэнне файла канфігурацыі
nano /etc/hysteria/config.yaml
Устаўце наступны код, замяніўшы YOUR_PASSWORD сваім уласным паролем (толькі англійскія літары і лічбы, без прабелаў):
listen: :443
tls:
cert: /etc/hysteria/cert.crt
key: /etc/hysteria/private.key
auth:
type: password
password: "YOUR_PASSWORD"
masquerade:
type: proxy
proxy:
url: https://cloudflare.com
rewriteHost: true
Блок маскіроўкі прымушае сервер выглядаць як звычайны вэб-сайт, калі хтосьці адкрывае яго IP-адрас у браўзеры, замест таго, каб выяўляць прыкметы проксі-сервера.
Захаваць (Ctrl+O, Enter) і выйсці (Ctrl+X).
Налада аўтазапуску
nano /etc/systemd/system/hysteria.service
Файл сістэмнага блока для аўтазапуску Hysteria2.
[Unit]
Description=Hysteria2 Server
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/hysteria server --config /etc/hysteria/config.yaml
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now hysteria.service
systemctl status hysteria.service
Статус павінен паказваць актыўны (працуе). Калі кансоль "затрымалася" ў рэжыме прагляду журнала, націсніце Q, каб выйсці з яго.
TUIC версія 5
Загрузка і ўстаноўка TUIC
mkdir -p /usr/local/sbin/tuic
Праверце даступныя рэлізы:
curl -s https://api.github.com/repos/tuic-protocol/tuic/releases | grep -Po '"tag_name": "\K[^"]*' | head -10
Спампуйце бінарны файл сервера — заменіце нумар бягучай версіі на 1.0.0:
wget https://github.com/tuic-protocol/tuic/releases/download/1.0.0/tuic-server-1.0.0-x86_64-unknown-linux-gnu \
-O /usr/local/sbin/tuic/tuic-server
chmod +x /usr/local/sbin/tuic/tuic-server
/usr/local/sbin/tuic/tuic-server --version
Стварэнне самападпісанага сертыфіката для TUIC
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /usr/local/sbin/tuic/privkey.pem \
-out /usr/local/sbin/tuic/fullchain.pem \
-subj "/CN=YOUR_SERVER_IP"
ls -la /usr/local/sbin/tuic/
Генерацыя UUID
apt install uuid-runtime -y
uuidgen
Скапіруйце атрыманы UUID — ён спатрэбіцца вам як у канфігурацыі сервера ніжэй, так і ў наладах кліента.
Стварэнне файла канфігурацыі
Гатовы файл config.json для сервера TUIC:
nano /usr/local/sbin/tuic/config.json
{
"server": "[::]:8443",
"users": {
"YOUR_UUID": "YOUR_TUIC_PASSWORD"
},
"certificate": "/usr/local/sbin/tuic/fullchain.pem",
"private_key": "/usr/local/sbin/tuic/privkey.pem",
"congestion_control": "bbr",
"alpn": ["h3"],
"log_level": "warn"
}
Мы выкарыстоўваем тут порт 8443, таму што 443 ужо заняты Hysteria2. Заменіце YOUR_UUID на значэнне з кроку 4.3, а YOUR_TUIC_PASSWORD — на свой уласны пароль.
Захаваць (Ctrl+O, Enter) і выйсці (Ctrl+X).
Тэставанне ручнога запуску
/usr/local/sbin/tuic/tuic-server -c /usr/local/sbin/tuic/config.json
Калі памылак няма, канфігурацыя правільная. Спыніце яе з дапамогай Ctrl+C і перайдзіце да налады аўтазапуску.
Налада аўтазапуску
nano /etc/systemd/system/tuic-server.service
[Unit]
Description=TUIC Server
After=network.target nss-lookup.target
[Service]
User=root
WorkingDirectory=/usr/local/sbin/tuic
ExecStart=/usr/local/sbin/tuic/tuic-server -c config.json
Restart=on-failure
RestartPreventExitStatus=1
RestartSec=5
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now tuic-server.service
systemctl status tuic-server.service
Статус павінен паказваць актыўны (працуе).
Зараз на серверы паралельна працуюць два найлепшыя і найхутчэйшыя сучасныя пратаколы, абодва маскіруюцца пад звычайны трафік QUIC/HTTPS: Hysteria2 на стандартным порце 443/udp і TUIC v5 на порце 8443/udp.
Падключэнне з Windows
Усталёўка Hiddify
Спампуйце і ўсталюйце Hiddify для Windows з афіцыйнага сайта: https://hiddify.com. Націсніце кнопку «Далей» / «Усталяваць». Калі з'явіцца Windows SmartScreen, абярыце «Дадатковая інфармацыя» → «Запусціць у любым выпадку».
Профіль Hysteria2
Націсніце + (Новы профіль) → "Ручны ўвод" → пратакол Hysteria2 і запоўніце:
|
Поле |
значэнне |
|
Імя профілю |
Мой сервер Hysteria2 |
|
Адрас |
IP-адрас_ВАШАГА_СЕРВЕРА |
|
Port |
443 |
|
пароль |
пароль з кроку 3.3 |
|
SNI |
IP-адрас_ВАШАГА_СЕРВЕРА |
|
Прапусціць праверку сертыфіката |
On |
Патрабуецца ўключыць опцыю «Прапусціць праверку сертыфіката», бо сертыфікат самападпісаны — за ім няма даверанага цэнтра сертыфікацыі.
Профіль TUIC v5
Націсніце + (Новы профіль) → «Ручны ўвод» → пратакол TUIC і запоўніце:
|
Поле |
значэнне |
|
Імя профілю |
Мой сервер TUIC |
|
Адрас |
IP-адрас_ВАШАГА_СЕРВЕРА |
|
Port |
8443 |
|
UUID |
UUID з кроку 4.3 |
|
пароль |
пароль з кроку 4.4 |
|
Кантроль затораў |
bbr |
|
SNI |
IP-адрас_ВАШАГА_СЕРВЕРА |
|
Прапусціць праверку сертыфіката |
On |
Падключэнне і праверка
Выберыце профіль, а затым націсніце вялікую круглую кнопку «Падключыцца». Статус павінен змяніцца на «Падключана».
Каб пераканацца, што трафік сапраўды праходзіць праз ваш сервер, адкрыйце ў браўзеры любую службу праверкі IP-адраса — паказаны адрас павінен супадаць з YOUR_SERVER_IP.
Conclusion
Пасля выканання гэтага кіраўніцтва на вашым серверы будуць паралельна працаваць два высакахуткасныя пратаколы наступнага пакалення: Hysteria2 на порце 443/UDP і TUIC v5 на порце 8443/UDP. Абодва пратаколы маскіруюць перадаваны трафік пад стандартнае зашыфраванае злучэнне QUIC (HTTP/3), што забяспечвае стабільнае злучэнне нават на надзвычай нестабільных каналах.
Настроеныя профілі можна выкарыстоўваць не толькі ў Windows, але і імпартаваць у мабільную праграму Hiddify для Android або iOS з падобнымі наладамі.
Калі ў вас узнікнуць праблемы з падключэннем, спачатку праверце статус службы з дапамогай каманды systemctl status hysteria.service (або tuic-server.service), пераканайцеся, што правілы брандмаўэра актыўныя (ufw status), і яшчэ раз праверце, ці правільна ўведзены IP-адрас, UUID і паролі. Звярніце ўвагу: выдадзеныя самападпісаныя сертыфікаты дзейнічаюць 365 дзён, таму роўна праз год іх трэба будзе абнавіць з дапамогай той жа каманды openssl req.