LINUX.ORG.RU

Избранные сообщения imul

Нужен совет по железу(контроллеру) для RAID5.

Форум — Linux-hardware

Ситуация - есть 6 hdd по 18тб и два по 12 - живут на вин10, заполнены практически полностью, свободно по 1тб. Есть желание сделать Raid 5, пока ещё не до конца определился на GNU/Linux или на TrueNAS. Есть понимание что надо докупить ещё 3 диска по 18тб - на их основе создать RAID5 и потихоньку диск за диском туда перевозить данные и подключать освободившиеся в raid с расширением пула. Те 8 hdd живущие сейчас на Винде - в мать по количеству sata разъемов не умещались, пришлось докупить какой-то нонейм контроллер расширения sata на дополнительные 16 сата разъемов, что бы винда видела все диски. Вот такой: https://sl.aliexpress.ru/p?key=uXg2rmu

Всё ок видит, правда если вместо выключения пк отправить в сон систему - то 50/50 диски на этом нонеймм контроллере не проснуться - помогает только перезагрузка системы. Мелочи. Вооот

Вопрос - подойдёт ли такой sata контроллер для моих желаний в RAID5 или лучше использовать что то надёжное и что именно. Я бы вообще не заморачивался с контроллером так как , насколько я могу судить можно RAID и без контроллера нынче собрать, только програмно? Но если много дисков, я так понимаю такой приблуды в домашних условиях, без профессионального серверного железа, не избежать. И вообще можете подсказать какие комплектующие используется при создании пула Raid5 состоящего из большого количества дисков? Возможно если хватит здоровья и жизни потихоньку увеличу количество дисков в пуле до максимального 16 штук. И не хотелось бы в дальнейшем, лет через 5-7, сидеть и думать как масштабироваться без потери данных. Уж лучше все на берегу решить

Если есть советы и рекомендации куда ткнутся с такими мыслями и где почитать - ткните носом пожалуйста.

Уже не по теме но - я домашний хомяк. Сервера видел только в ютубе ) До сих пор не понимаю каким железом в серверах поддерживается огромное количества дисков в стойках. Смотрел на сетевые материнки - ну нет же там такого количества разъемов на 30-40 hdd )) И каким образом там реализована безопасность хранения данных. Где про это почитать? ))

 

tatar221
()

Вышло обновление мощного одноплатника Radxa Rock 5b+

Новости — Hardware and Drivers
Группа Hardware and Drivers

Вышла новая, улучшенная версия мощного одноплатного компьютера (SBC, Single Board Computer) Radxa Rock 5b+ на чипсете RK3588 и с поддержкой NVME SSD.

Этот одноплатник может использоваться как удачное и дешёвое решение для экспериментов и разработки. 8Гб-версия с доставкой в Россию будет стоить около 110$.

После покупки можно сразу установить загрузчик EDK2, который позволит устанавливать любой дистрибутив под ARM64, включая Debian 12 bookworm.

 , , edk2

bbest
()

Перестал работать Wireguard

Форум — Admin

Здравствуйте. Сегодня днем Wireguard сначала стал очень медленно работать, потом вообще все сдохло и перестало подключаться. Я пробовал посылать UDP-пакеты через nping (быть может как-то не так?), ничем не помогло. Нашел форк официального клиента Wireguard - AmnesiaWG, но как я там ни игрался с параметрами, ничего не работает. Я так и не понял с AmnesiaWG, надо ли менять что-то на стороне сервера? Подскажите, пожалуйста, в каком направлении думать, это очень для меня критично. Спасибо большое

P.S. Дом.ру СПБ + МТС СПБ

UPD: проблему решил поднятием Vless+Reality

 ,

thm
()

Ergo Framework 3.0

Новости — Open Source
Группа Open Source

Ergo Framework – это реализация идей, технологий и шаблонов проектирования из мира Erlang на языке программирования Go. Он построен на акторной модели, сетевой прозрачности и наборе готовых компонентов для разработки. Это значительно упрощает создание сложных и распределенных решений, обеспечивая при этом высокий уровень надежности и производительности.

( читать дальше... )

>>> Подробности

 ,

ergo
()

Где найти документацию на формат вывода команды ip addr?

Форум — General

Читаю man ip, читаю man ip-address, читаю ip addr help.

Нигде не написано, какие конкретно данные показывает утилита IP и в каком формате. Вот например:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
    link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff

Вначале идет номер интерфейса, нумерация с единицы. Это можно понять.

Затем имя интерфейса.

Затем нечто в угловых скобках «<...>». То ли то ли это текущее состояние интерфейса, то ли это возможные состояния интерфейса, то ли там намешаны и возможные «флаги», и текущие. В общем что это? Где найти описание всех возможных значений, применяемых в угловых скобках?

Далее идет поток каких-то ключевых слов. Есть подозрение, что они организованы в пары (имя значение), но подтверждения этой теории в документации не нашел. И даже если это ключ-значение, то что они значат? Возможное (настроенное) состояние? Текущее состояние? Все вперемешку? Где официально найти что значат сами параметры, их описание и возможные значения (mtu, qdisc, state, group, qlen, может еще что)?

Вот, например, имеются строки:
"<LOOPBACK,UP,LOWER_UP> ... state UNKNOWN"
или
"<BROADCAST,MULTICAST,UP,LOWER_UP> ... state DOWN

Что сие значит? Интерфейс поднят или нет? В угловых скобках есть и UP и какой-то LOWER_UP, но в state написано UNKNOWN или DOWN. Как это понимать?

 , , ,

Xintrea
()

Блокировка Ютуб. На кого повлияло?

Форум — Talks

РКН блокирует ютуб с августа. Уже без ВПН ничего не посмотришь. Это раз. Второе, заметил что даже моего приложения android коснулось, не может законектиться к удаленному серверу, reset by peer. Через ВПН - ОК. Что за херня? Или мне показалось?


Перемещено leave из admin

 , , ,

gobot
()

Как пользоваться ByeDPI для Android? Раззамедление YouTube

Форум — Talks

Наконец-то и мой провайдер стал резать YouTube. В поисках бесплатных OpenSource альтернатив VPN, я нашел такое:

Способ есть, протестил лично на своих девайсах:
(Работает по той же технологии, что и на пк GoodbyeDPI)

1. Качаете программу ByeDPI с гитхаба
https://github.com/dovecoteescapee/ByeDPIAndroid

2. Устанавливаем, включаем (при включении она запросит подключение впн). Ютуб работает. Вот так вот просто.

⚡️ Гайд, как пофиксить ютуб на Windows: https://t.me/modden_yt/1521

P.S. Ясное дело, есть впн, но бесплатный впн некачественный, а платный стоит денег. Так что, вот ответ тем, кто напишет про впн.


Ну окей. Поставил Obtainium, а через него ByeDPI for Android. Запускаю, нажимаю Connect. Пишет Connected. В Termux через ifconfig вижу, что создался интерфейс tun0. И дальше что?

Каким образом траффик Youtube должен завернуться на этот интерфейс?

Андроид, если что, не рутованный.

Искал-искал что где надо настраивать, везде в интернетах какая-то жесть. Наконец нашел следующее:

https://androidow.com/program/internet/3084-byedpi-ubiraem-zamedlenija-youtub...

Там написано:

Откройте ByeDPI после установки и перейдите к настройкам. Поменяйте VPN на Proxy. Альтернатива нажмите на шестерёнку в правом верхнем углу, во вкладке General выберите Mode и нажмите Proxy.

Активизация ByeDPI

После настройки активируйте ByeDPI. Программа начнет работать в фоновом режиме, обеспечивая обход замедлений и оптимизацию скорости соединения.

Проверка работы

Запустите YouTube на вашем Android TV или Google TV и оцените улучшение скорости воспроизведения видео. ByeDPI должен устранить все замедления и обеспечить плавный просмотр.


То есть, надо вместо режима VPN включить режим Proxy. Переключаю. Туннель пропадает. ByeDPI пишет что «Proxy is up 127.0.0.1:1080».

И дальше что делать?

Как траффик клиента YouTube завернуть на этот прокси?

UPD: Решение здесь: Настройки ByeDPI for Android для восстановления работы YouTube

 ,

Xintrea
()

Замедление YouTube в РФ и yt-dlp

Форум — Talks

Как многие, вероятно, слышали, с недавних пор работа youtube в России замедлилась. СМИ в основном говорят, что это проблемы оборудования самого гугла, другие связывают со всё приблиющейся блокировкой. Небезызвестный @ValdikSS рассказал (не тут, на другом форуме), что почти все провайдеры замедляют ютьюб по домену *.googlevideo.com. При этом фильтр пока не применяется к IP-адресам Google, в том числе к IP-адресам кеширующих серверов Google Global Cache. «Это либо техническая ошибка, либо особенность, которую не учли, […] Технических проблем в работе оборудования, конечно же, никаких нет».

Какова бы ни была истинная причина, похоже, проблема эта с нами надолго.

Лично у меня, как ни странно, воспроизведение видео на самом сайте ютуба не тормозит совсем. Почти. Один раз было, но не знаю, из-за этого или нет. Также не знаю, есть ли тут связь или просто совпадение, но не тормозят в основном всякие околонаучные, околотехнические, научпоп и тому подобные видео, а то, которое тормозило было про популярную компьютерную игрушку.

Но вот скачивание с помощью yt-dlp, как оказалось, тормозит нещадно. Скорость пляшет между 40 и 200 KiB/s, что ни в какие ворота, особенно для многогигабайтных видео.

Посему первый банальный вопрос: У всех так же? Или может кого тормоза миновали, или наоборот и на сайте тоже тормозит?

Думал, что проблему можно обойти, если качать не с самого youtube.com, а с piped.video. Но оказалось, что с него тормоза ровно такие же. Так что второй вопрос: Почему так? Разве через piped.video не проксируется всё, и тормоза в РФ не должны быть побоку? Или сам piped.video тоже в РФ, и он теперь вообще у всех тормозит? или?.. В общем, у кого есть понимание на этот счёт?

Для себя пока проблему решил с помощью очевидного --proxy "socks5://127.0.0.1:5222". Но у меня VPN медленный, сам по себе реальную скорость скачивания с ютуба выдаёт в 5–10 MiB/s, а хотелось бы как раньше, побыстрее. Понятно, что проблема решается покупкой другого VPN, рассчитанного именно на хорошую скорость скачивания, а не самого дешёвого VPS, который я, собственно, и юзаю, ибо для просмотра сайтиков в обход блокировки (и пары других нужд, к теме не относящихся) его хватает за глаза. Но может кто-то решил эту проблему как-то иначе? Есть какие-то лайфхаки, сайты, проксирующие видео с ютуба по типу piped.video, только быстрые, или ещё что-то?

N.B.: Если вы живёте не в РФ, и поэтому у вас всё зашибись, я очень рад за вас, сообщать об этом в этой теме в очередной раз не обязательно. Как и о том, что «ютуб не нужен» — об этом тоже все курсе, но всё же иногда там бывают полезные, интересные или нужные видео, начиная от лекций, заканчивая музыкальными клипами.

Перемещено maxcom из linux-org-ru

 , ,

CrX
()

Что должен знать специалист ИБ на старте

Форум — Security

Здравствуй, ЛОР. Собственно, вопрос в топике. Хотелось бы узнать и для атакующей (пентест), и для защищающей стороны.

Если я хочу стать специалистом с нуля, с чего мне начинать?

П.с ВУЗ не предлагать, так как в планах есть, однако хотелось бы прийти туда, уже зная на что делать упор и параллельно учиться.

 

KrasnoGlazik
()

Как убрать шатание камеры в фильмах?

Форум — Talks

Есть какое-нибудь готовое решение, просто чтобы разик прогнать фильтр, и камера больше не шатается? Современные режиссеры-постановщики злоупотребляют этим приемом.

 

Irma
()

HDR - почти победа

Форум — Talks

В nixos-24.05 завезли plasma-6 а она, как вы знаете, умеет в HDR.

И вот казалось-бы все звёзды сошлись, и счастье настало. Но не тут-то было. Кратко говоря железо умеет в hdr а активация соответствующей галочки в центре управления делает забавное зелёное дерьмо. На этом моменте тему можно закрывать отписываться ниже «афтар лох» и идти дальше по своим важным делам.

Не хочу сказать что я вовсе не расстроился. Однако потом прошло ещё пару дней я начитывался в связанных темах и вот если сделать такую магию:

> kscreen-doctor output.HDMI-A-1.hdr.enable
> kscreen-doctor output.HDMI-A-1.sdr-brightness.400
> kscreen-doctor output.HDMI-A-1.wcg.disable

То мы #ВНЕЗАПНО имеем HDR!

> kscreen-doctor -o
Output: 1 HDMI-A-1
        enabled
        connected
        priority 1
        HDMI
        Modes:  0:2560x1440@144*!  1:3840x2160@60  2:3840x2160@60  3:3840x2160@50  4:2560x1440@120  5:2560x1440@60  6:1920x1200@144  7:1920x1080@120  8:1920x1080@120  9:1920x1080@60  10:1920x1080@60  11:1920x1080@60  12:1920x1080@60  13:1920x1080@60  14:1920x1080@50  15:1920x1080@50  16:1600x1200@144  17:1680x1050@60  18:1280x1024@75  19:1280x1024@60  20:1440x900@144  21:1280x960@60  22:1280x800@144  23:1152x864@75  24:1280x720@60  25:1280x720@60  26:1280x720@60  27:1280x720@50  28:1024x768@75  29:1024x768@70  30:1024x768@60  31:800x600@75  32:800x600@72  33:800x600@60  34:800x600@56  35:720x576@50  36:720x576@50  37:720x480@60  38:720x480@60  39:720x480@60  40:720x480@60  41:640x480@75  42:640x480@73  43:640x480@67  44:640x480@60  45:640x480@60  46:640x480@60  47:720x400@70  48:1600x1200@60  49:1280x1024@60  50:1024x768@60  51:1920x1200@60  52:1280x800@60  53:2560x1440@60  54:1920x1080@60  55:1600x900@60  56:1368x768@60  57:1280x720@60
        Geometry: 0,0 2560x1440
        Scale: 1
        Rotation: 1
        Overscan: 0
        Vrr: incapable
        RgbRange: unknown
        HDR: enabled
                SDR brightness: 450 nits
                SDR gamut wideness: 50%
                Peak brightness: 456 nits
                Max average brightness: 456 nits
                Min brightness: 0.0549 nits             Brightness factor: 100%
        Wide Color Gamut: disabled
        ICC profile: none
        Color profile source: sRGB

Насколько я понял характерно «зеленит» этот самый "Wide Color Gamut" который и нужно выключить командой kscreen-doctor output.HDMI-A-1.wcg.disable. Что это за зверь я распарсил плохо. И изучая форумы по данной проблеме, насколько я понял, именно с ним и остались главные проблемы. И нет в plasma-6.1 это тоже пока-что не починили.

После активации hdr в самой плазме абсолютно всё без нареканий!

firefox работает без косяков но и hdr в нём до путя ещё не доведён. В тытрубе сответственно тоже разницы, особо, не видно.

В mpv примеры явно проигрываются с видимой разницей. Однако не все корректно - вот тут хз от чего. Возможно из-за отсутствия этого самого "Wide Color Gamut".

В steam игры не видят HDR. А в сессию gamescope меня не пустило и выяснять причины я не стал.

Как говорится держу в курсе.

 , , , ,

init_6
()

whisper.cpp 1.6.0

Новости — Разработка
whisper.cpp 1.6.0
Группа Разработка

15 мая состоялся выпуск 1.6.0 высокопроизводительной системы автоматического распознавания речи whisper.cpp, реализующей модель Whisper от OpenAI на языках C и C++, и распространяемой по лицензии MIT.

Список изменений:

  • добавлена опция --flash-attn для ускорения обработки данных на устройствах с CUDA и Metal;
  • более высокая производительность на архитектуре ppc64;
  • исправлена ошибка обработки регулярного выражения в консольной утилите-примере main.

>>> Подробности

 , , , ,

dataman
()

Удалённый доступ за NAT

Форум — Admin

Привет!

Есть ноутбук (которым пользуется родственник), на нём установлен calculate linux.

Находиться он будет за NAT (модем+маршрутизатор+точка доступа, раздаёт интернет по WiFI), который я не имею возможности администрировать (порт там пробросить или что-то такое). Кстати, не уверен, есть ли там белый IP, не помню.

Хочется иметь туда доступ по SSH… чтобы иметь возможность обновлять ПО, в первую очередь такие вещи как ядро (исправления уязвимостей) и браузер (тоже уязвимости и чтобы сайты не ломались, если долго, то есть годами не обновлять, бывает что современный сайт просто перестаёт открываться).

Какой-нибудь демон может установить… который бы устанавливал соединение, по которому я мог бы туда попадать?

Раньше я что-то такое делал на связке ipv6+ddns, но потом что-то оно перестало работать, так и не разобрался, из-за чего.

Может есть ещё какие-то варианты, которые мне в голову не пришли?

Как вариант - чтобы человек сам запустил какую-то программу, дал мне доступ к экрану, где я смог бы открыть консоль (хотя лучше и без этого)… что нынче даёт такую возможность?

ОТВЕТ: zerotier именно то, что искал, круто, что есть такой продукт, да ещё и бесплатная версия, шикарно.

P.S. ssh-j.com тоже классная штука, подкупает тем, что можно скинуть человеку в чат «запусти пару команд чтобы я к тебе смог подключиться», не надо демон настраивать.

 , , ,

BattleCoder
()

аналог chatgpt на зюзероутере?

Форум — Talks

собственно сабж товарищи. Никто не встречал какой-то опенсорс платформы, которую можно было бы самому обучать для своих нужд? я понимаю что самом врядли обучишь до уровня опенаи, но всетаки было бы интересно попробовать

 ,

mrdeath
()

Как запретить пользователю делать смену пользователя?

Форум — Security

Интересует не запрет запуска 'su', а полный запрет на уровне системных вызовов.

 , , ,

teod0r
()

Хочу написать скриншотер

Форум — Talks

Привет. Увидел новость про скриншотер и решил написать свой с минимальным набором функций.
Там куча проблем граблей с wayland. На чем писать чтобы не было зависимости от оконного менеджера? QT, GTK, boost?
Начну как лабораторки по учебе а потом может и линукс примут пакетом.

 , , , ,

TheNewDragon
()

Сделал Read-Only прокси в ЛОР через Yggdrasil

Форум — Linux-org-ru

Собсна, сабж. На следующих URI 404:

  • /login.jsp;
  • /register.jsp;
  • /add.jsp.

Что ещё заблокировать и как к этому относится администрация? При необходимости могу перестать проксировать ЛОР в Ygg. Адрес и домен прокси: http://[300:eaff:7fab:181b::e621]:1643, http://lor.skunk.conf

Конфиги:

nginx.conf:

        server {
                listen [300:eaff:7fab:181b::e621]:1643;
                listen [300:eaff:7fab:181b::e621];
                        
                server_name lor.skunk.conf;
                        
                location / {
                        proxy_http_version 1.1;
                        proxy_pass https://www.linux.org.ru/;
                        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                        proxy_set_header X-Real-IP $remote_addr;
                        include nginx_lor.conf;
                }
        }

nginx_lor.conf:

proxy_set_header Accept-Encoding "";
sub_filter_once off;
sub_filter 'https://www.linux.org.ru/' 'http://$server_addr/';
sub_filter_types *;
sub_filter '<script' '<!-- <script';
sub_filter '</script>' '</script> -->';
sub_filter '<img src="/adv/qrator-box.png" width="250" style="max-width: 100%; height: auto" alt="Protected by Qrator">' '';
sub_filter '<a href="https://www.linux.org.ru/register.jsp">Регистрация</a>' '';
sub_filter '<a id="loginbutton" href="https://www.linux.org.ru/login.jsp">Вход</a>' '';
if ($uri ~ "login") {
        return 404;
}
if ($uri ~ "register") {
        return 404;
}
if ($uri ~ "add") {
        return 404;
}

Галерею потом починю, сейчас мне лень этим заниматься.

 , , ,

ZSkunk
()

Вышел srsRAN 4G 23.11 — OpenSource-реализация стека 4G/LTE

Новости — Open Source
Группа Open Source

Проект software radio systems Radio Access Network или srsRAN нацелен на реализацию стеков 4G/LTE и 5G. Ранее проект известен был как srsLTE.

( читать дальше... )

>>> Подробности

 ,

Root-msk
()

Wireguard туннель (Вопрос в пробросе портов и получение IP)

Форум — Admin

Здравствуйте. Имеется три вопроса.

Первый вопрос:
У меня имеется домашний сервер, который находится за NAT.
Есть VDS сервер с внешним IP адресом (123.123.123.123).
Стоит WireGuard туннель между серверами. VDS сервер имеет IP 10.66.66.1 а домашний сервер 10.66.66.2
Хочу спросить, правильно ли я настроил iptables чтобы при обращении на внешний ip трафик свободно ходил к серверу за NAT туда и обратно? Или нужно что-то добавить?

Использую такие правила:
iptables -t nat -A PREROUTING -d 123.123.123.123 -p tcp -m multiport –dports 1338,8083,80,443,3306 -j DNAT –to-dest 10.66.66.2
iptables -t nat -A PREROUTING -d 123.123.123.123 -p udp -m multiport –dports 1338,8083,80,443,3306 -j DNAT –to-dest 10.66.66.2
iptables -t nat -A POSTROUTING -s 10.66.66.2 -j MASQUERADE

Правда почему-то MASQUERADE в итоге прописано два, убрать возможно какой нужно?
root@vds:~# iptables -t nat -L POSTROUTING –line-numbers Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
1 MASQUERADE all – 10.66.66.2 anywhere
2 MASQUERADE all – anywhere anywhere

Второй вопрос:
На домашнем сервере стоит веб сервер (HestiaCP) и когда клиент заходит на сайт его IP определяется как 10.66.66.2, что я сделал не так?
Что возможно поменять, чтобы отображался именно IP клиента?

Третий вопрос:
Читал в интернете, что нужно добавлять еще такие правила:
iptables -t nat -A POSTROUTING -s 10.66.66.2 -p tcp -m multiport –sports 1338,8083,80,443,3306 -j SNAT –to-source 123.123.123.123
iptables -t nat -A POSTROUTING -s 10.66.66.2 -p udp -m multiport –sports 1338,8083,80,443,3306 -j SNAT –to-source 123.123.123.123
Их так же нужно добавлять или нет? Так как к примеру в проблеме с получением IP адреса клиента они мне не помогли.
Буду благодарен за ответы.

 ,

carambarass
()

Wireguard + Shadowsocks

Форум — Admin

Нужна помощь в правильной настройке связки Wireguard/Shadowsocks для обфускации канала Wireguard. Клиент имеет прямое соединение с WG/SS-сервером (без роутера). По различным статьям интернетов удалось сделать следующее:

Установка сервисов сервера (Ubuntu 22)
$ wget https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
$ chmod +x wireguard-install.sh
$ ./wireguard-install.sh

$ apt install shadowsocks-libev
Конфиги сервера
  • Wireguard - /etc/wireguard/wg0.conf
[Interface]
Address = 10.66.66.1/24,fd42:42:42::1/64
ListenPort = <wg_port>
PrivateKey = WGGXx8...
PostUp = iptables -I INPUT -p udp --dport <wg_port> -j ACCEPT
PostUp = iptables -I FORWARD -i enp0s7 -o wg0 -j ACCEPT
PostUp = iptables -I FORWARD -i wg0 -j ACCEPT
PostUp = iptables -t nat -A POSTROUTING -o enp0s7 -j MASQUERADE
PostUp = ip6tables -I FORWARD -i wg0 -j ACCEPT
PostUp = ip6tables -t nat -A POSTROUTING -o enp0s7 -j MASQUERADE
PostDown = iptables -D INPUT -p udp --dport <wg_port> -j ACCEPT
PostDown = iptables -D FORWARD -i enp0s7 -o wg0 -j ACCEPT
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT
PostDown = iptables -t nat -D POSTROUTING -o enp0s7 -j MASQUERADE
PostDown = ip6tables -D FORWARD -i wg0 -j ACCEPT
PostDown = ip6tables -t nat -D POSTROUTING -o enp0s7 -j MASQUERADE

### Client 1
[Peer]
PublicKey = PXEAaW...
PresharedKey = GYSqh4...
AllowedIPs = 10.66.66.2/32,fd42:42:42::2/128
  • Shadowsocks - /etc/shadowsocks-libev/config.json
{
    "server": "0.0.0.0",
    "server_port":<ss_port>,
    "password":"<ss_password>",
    "mode":"tcp_and_udp",
    "method":"chacha20-ietf-poly1305",
    "timeout":300
}
Запуск сервисов сервера
$ systemctl restart shadowsocks-libev.service
$ wg-quick up wg0

$ systemctl status wg-quick@wg0.service
$ systemctl status shadowsocks-libev.service

…………………………………………….

Установка клиента (Debian)
$ sudo apt install wireguard shadowsocks-libev

- Get build utilities (mk-build-deps) -
$ sudo apt install pkg-config gettext build-essential autoconf \
    libtool libpcre3-dev asciidoc xmlto libev-dev libudns-dev \
    automake libmbedtls-dev libsodium-dev git libc-ares-dev \
    devscripts equivs

- Get Shadowsocks sources -
$ git clone --recurse-submodules https://github.com/shadowsocks/shadowsocks-libev.git

- Build Shadowsocks -
$ cd shadowsocks-libev
$ ./autogen.sh
$ dpkg-buildpackage -b -us -uc

- Install Shadowsocks -
$ sudo dpkg -i ../shadowsocks-libev*.deb
Конфиги клиента
  • Wireguard - /etc/wireguard/wg0-client.conf
[Interface]
PrivateKey = gOfC03...
Address = 10.66.66.2/32,fd42:42:42::2/128
DNS = 1.1.1.1,1.0.0.1

[Peer]
PublicKey = JE0hSg...
PresharedKey = GYSqh4...
Endpoint = 127.0.0.1:1080
AllowedIPs = 0.0.0.0/0,::/0
  • Shadowsocks - /etc/shadowsocks-libev/config.json
{
    "server":"<ip_server>",
    "server_port":<ss_port>,
    "local_address": "0.0.0.0",
    "local_port":1080,
    "password":"<ss_password>",
    "mode":"tcp_and_udp",
    "method":"chacha20-ietf-poly1305",
    "tunnel_address": "127.0.0.1:<wg_port>",
    "timeout":300
}
Запуск клиента
$ sudo wg-quick up wg0-client
$ sudo ip route add <ip_server> via 192.168.8.1 dev eth0

$ sudo ss-tunnel -v -c /etc/shadowsocks-libev/config.json

... check Wireguard state
$ sudo wg

* FIXES *

... [FIX: wg-quick not found]
$ sudo apt install resolvconf

... [FIX: RTNETLINK answers: Permission denied]
# edit /etc/sysctl.conf :
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0

$ sudo sysctl -p

* ПРОБЛЕМЫ *

  1. Не определяется исходящая скорость клиента (от клиента в сеть) на speedtest.net. При этом входящая скорость максимально возможная (12 - 22 MB/s)
  2. Wireshark у клиента на интерфейсе wg0-client, ловит кучу битых пакетов
...    xx.xx.xx.xx 10.66.66.2    TCP    212    [TCP Spurious Retransmission] 443 → 34852 [ACK] Seq=2737 Ack=518 Win=28160 Len=160 TSval=165036359 TSecr=1700846827
...    10.66.66.2    xx.xx.xx.xx    TCP    64    [TCP Dup ACK 223#2] 34852 → 443 [ACK] Seq=645 Ack=4246 Win=65536 Len=0 TSval=1700847089 TSecr=165035936 SLE=2737 SRE=2897
... xx.xx.xx.xx    10.66.66.2    TCP    52    [TCP Previous segment not captured] 443 → 34816 [FIN, ACK] Seq=4246 Ack=606 Win=28160 Len=0 TSval=165036378 TSecr=1700846830
...    10.66.66.2    xx.xx.xx.xx    TCP    64    [TCP Dup ACK 338#1] 50268 → 443 [ACK] Seq=605 Ack=1 Win=65536 Len=0 TSval=1700848614 TSecr=165037871 SLE=4105 SRE=4247
...    xx.xx.xx.xx    10.66.66.2    TCP    1420 [TCP Out-Of-Order] 443 → 50268 [ACK] Seq=1369 Ack=605 Win=28672 Len=1368 TSval=165037871 TSecr=1700848332 [TCP segment of a reassembled PDU]
...    10.66.66.2    xx.xx.xx.xx    TCP    1500 [TCP Retransmission] 34838 → 443 [ACK] Seq=2001 Ack=4495 Win=65536 Len=1448 TSval=1700847448 TSecr=165036628
...
... fd42:42:42::1 fd42:42:42::2    ICMPv6 128 Destination Unreachable (no route to destination)
  1. В консоли Shadowsocks множество сообщений вида:
INFO: [udp] remote_recv_recvfrom fragmentation, MTU at least be: 1602
INFO: [udp] remote_recv_sendto fragmentation, MTU at least be: 1547
Разработчики не придают этому значения.
  1. И как однозначно определить что Shadowsocks действительно накрывает канал Wireguard ?

 ,

Leo25
()