3x-ui это удобная централизованная панель управления клиентами Shаdоwsоcks-а - созданного для oбхoда цeнзуpы.
Её основные фичи:
- Мониторинг состояния системы.
- Мониторинг подключенных клиентов.
- Поддержка многопользовательской и многопротокольной работы.
- Статистика трафика, ограничение трафика и ограничение времени работы для каждого клиента.
- Поддерживает применение SSL-сертификата для домена в один клик и его автоматическое продление (при наличии домена).
- Мониторинг подключенных клиентов.
- Поддержка многопользовательской и многопротокольной работы.
- Статистика трафика, ограничение трафика и ограничение времени работы для каждого клиента.
- Поддерживает применение SSL-сертификата для домена в один клик и его автоматическое продление (при наличии домена).
1. Установка на linux сервер.
apt update && apt upgrade -y |
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh) |
В конце очень быстрой установки, мы получим логин и пароль.
Либо, мы сами вводом свои данные "логин-пароль-порт".
2. Получаем SSL на панель
Расскажу от 3 способах получить SSL, первый, встроен в скрипт 3X-UI. Поэтому начнем с него.
2.1. Через X-UI:
напишем команду в консоли:
x-ui |
Переходим в панель 3X-UI по адресу yourdomain.com:2053(или тот порт, который вы указали при установке). В разделе Panel Settings прописываем пути к сертификатам SSL:
/root/.acme.sh/your_domain_ecc/fullchain |
/root/.acme.sh/your_domain_ecc/your_domain |
2.2. Через Cloudflare. Прилинковываем наш домен к Cloudflare и выпускаем сертификат на 15 лет через их сервис
2.3. Через Acme:
apt install cron && apt install socat |
curl https://get.acme.sh | sh -s email=mail@mail.com |
mkdir -p /var/lib/certs/ |
~/.acme.sh/acme.sh --set-default-ca --server letsencrypt --issue --standalone \ -d DOMAIN \ --key-file /var/lib/certs/key.pem \ --fullchain-file /var/lib/certs/fullchain.pem |
Добавляем наши полученные сертификаты в панель 3X-UI, вместе с доменом.
3. Создаем VPN профайлы
3.1 ShadowsocksПереходим на вкладку Inbounds > Add Inbound
Remark — любое рандомное название
Protocol — shadowsocks
Нажимаем Create
3.2 VLЕSS + Rеаlity
Remark — любое рандомное название
Protocol — vless
Port — 443
Ниже, где Transparent Proxy ставим галочку на Reality
uTLS — Chrome
Dest — microsoft.com:443
Server Names — microsoft.com,www.microsoft.com
И нажать кнопку Get New Key > Create
3.3 Если у вас занят 443 порт, то пользуем альтернативу: VLESS/VMESS no 443
Порт — пусто (по умолчанию)
Безопасность — TLS
Протокол передачи — TCP
Сертификат — сертификат с панели, который мы ранее выпустили
uTLS — random
Ну и вы можете сами экспериментировать с протоколами )
4. Безопасность сервера
4.1 Защитим сервер от взлома через брутфорс:
apt install fail2ban -y && apt install ufw -y && apt install nano -y |
touch /etc/fail2ban/jail.local && nano /etc/fail2ban/jail.local |
[sshd] enabled = true filter = sshd action = iptables[name=SSH, port=ssh, protocol=tcp] logpath = /var/log/auth.log findtime = 600 maxretry = 3 bantime = 43200 |
Нажимаем ctlr + x, далее Y и enter, чтобы сохранить.
4.2 Отключаем двухсторонний пинг
Чтобы улучшить нашу маскировку, отключим пинг
nano /etc/ufw/before.rules |
Меняем концовку следующего выражения с ACCEPT на DROP:
4.3 Включаем фаервол
Чтобы включить фаервол, нужно заранее выписать все используемые порты на сервере, для этого мы установим netstat и посмотрим какие порты нужно открыть:
apt install net-tools |
netstat -ntlp | grep LISTEN |
Смотрите порты, которые идут после 0.0.0.0:порт или IP_адрес вашего_сервера:порт, например:
0.0.0.0:993
76.20.7.12:53:::22
Их необходимо открыть в UFW или через панель управления вашим сервером/хостингом.
Смотря как это реализовано у вас.
Например:
ufw allow 22/tcp && ufw allow 443 && ufw allow 40000 && ufw enable |
Подтверждаем через Y + Enter
Напоследок очистимся и перезагрузимся:
apt update && apt upgrade -y && apt autoclean -y && apt clean -y && apt autoremove -y && reboot |
Теперь можно отсканировать QR код в панели управления и пользоваться vрn на Shаdоwsоcks на вашем устройстве.