Сообщество - GNU/Linux

GNU/Linux

1 151 пост 15 631 подписчик

Популярные теги в сообществе:

65

Ответ на пост «CloudFlare WARP + WireGuard через NetworkManager»1

Вы в очень скором времени обнаружите, что заворачивая весь домашний трафик через впн, станут недоступны часть внутрироссийских ресурсов которые либо решили закуклится внутри страны, либо в какой то момент ДДОСов отключили доступность и забыли откатить, либо просто имеют кривых админов-проектировщиков, которые сделали херню. Так же, поскольку вы используете публичный сервис, многие сайты на своей стороне добавили в блоклист по разным причинам подсети сервиса. Следовательно, вам понадобится внятный механизм маршрутизации с возможностью писать эксклюды. Кинетик в этом смысле, достаточно хороший инструмент, т.к имеет возможность отдавать клиентам разные профили + имеет возможность сбоку поставить Entware, где возможно реализовать работающие механизмы удобного маршрутизирования.

И, при всем уважении, VPS с односкриптовой установкой WG там, гораздо проще. Дополнительно, когда вам потребуется какой-то еще протокол, вы сможете это сделать. И дополнительно, все что массово-публичное, в первую очередь попадает под идиотизм РКН и прочих организаций.

93

CloudFlare WARP + WireGuard через NetworkManager1

Долгое время пользовался ssh-туннелем для «разблокировки» некоторых сетевых ресурсов, доступ к которым был ограничен для IP Российского диапазона (ну, драйверы там скачать с сайта производителя, и т.п.).

Но — всему приходит конец. Моему терпению — тоже. Надоело постоянно переключать потребителей на работу через прокси (privoxy), чтобы завернуть трафик в socks-прокси туннеля. TOR стали прикручивать, что привело к очень долгому поиску мостов. И лень моя победила (в очередной раз).

Очевидно — нужен был способ попроще, да ещё — без особых затрат. Ставить VPN сервер (в том или ином виде) на VPS — хотелось ещё меньше, чем кидать туннель. Всякие платные прокси (типа Mullvad) — они удобны, позволяют выбрать «точку выхода», но — надо изыскивать возможность их оплатить. Бесплатные — обычно, работают так себе.

Тут я вспомнил, что есть же CloudFlare и его WARP, причем — в бесплатной версии, да со всей мощью клаудфлэровских серверов, да без ограничений скорости, да ещё и — должен, теоретически, работать через нативный клиент WireGuard. «Надо попробовать» — подумал Штирлиц.

Настройка WARP в Linux

В целом, процесс достаточно понятный, на современных системах — проблем быть не должно (на современных — это где Network Manager поддерживает WireGuard, иначе — можно и через консоль поднимать/гасить интерфейс VPN, но это менее удобно).

  • Сгенерировать конфиг для WARP — консольной утилитой или онлайн-генератором на её базе. Ещё есть неофициальный CLI, мне он не пригодился.

  • Полученный конфиг можно сунуть в /etc/wireguard/ и попробовать поднять через systemctl start wg-quick@название-конфига.conf. Но вряд ли это заработает, конфиг придется править.

Конфиг WireGuard для WARP

А чтобы не править его, передергивая интерфейс вручную из консоли, — проще сразу добавить в Network Manager. Подобрать рабочие настройки там, затем — перенести в конфиг. И получить основной (через графический интерфейс) и резервный (из консоли) способы работы с WARP. Чем и займёмся.

Настройка Network Manager

Тут всё тоже несложно: ПКМ на аплете менеджера — Соединения VPN — Настроить VPN — WireGuard — ‘+’ (добавить новое соединение).

Дальше настроить по картинке (скопировать значения из файла конфига):

CloudFlare WARP + WireGuard через NetworkManager IT, Linux, Android, VPN, Wireguard, Cloudflare, Длиннопост

Но вот адрес для Endpoint придется поподбирать — на разных провайдерах работают разные IP. Я прошелся по адресам с 162.159.193.0 по 162.159.193.10, пока не нашел работающий.

В целом — соединение уже должно работать (надо только Address в Параметры IPv4 вписать, как ниже показано), проверить можно через 2ip.ru. Вот такая картина у меня:

CloudFlare WARP + WireGuard через NetworkManager IT, Linux, Android, VPN, Wireguard, Cloudflare, Длиннопост

Подключается не всегда с первого раза, бывает, нужно несколько раз вкл/выкл VPN.

Google DNS и Wire Guard WARP

Но радость была бы не полной, если бы не ещё одна чудесная возможность WireGuard — он позволяет для соединения легко поменять адрес DNS сервера. Это не защитит от утечки DNS на сто процентов, но позволяет обойти блок, выставляемый на некоторых ресурсах на основе географической принадлежности DNS сервера (а клаудфлэровский — в Москве).

В настройки IPv4 надо вписать гугловый DNS, в настройки IPv6 — можно по аналогии (IPv6-адрес DNS ищется в гугле же), а можно и обойтись только IPv4.

CloudFlare WARP + WireGuard через NetworkManager IT, Linux, Android, VPN, Wireguard, Cloudflare, Длиннопост

WireGuard Google public DNS

Итого

Вот теперь «разблокировка» должна работать нормально.

Из плюсов — VPN включается сразу на уровне системы, приложения ходят через него. Не надо, как в случае с ssh-туннелем, заворачивать приложения для работы с через туннель.

Второй плюс — ровно тем же способом можно включить WARP на Android. Клиент WireGuard под Android есть (ставил из F-Droid), надо только поправить сгенерированный конфиг по аналогии (как в заметке), затем — импортировать его в клиенте на телефоне. Всё!

Следующим шагом — можно настроить подключение WARP на роутере, чтобы всю внутреннюю сеть пускать в интернет через VPN. Я на своём Keenetic планирую так и сделать, но это «уже совсем другая история».

Показать полностью 3
3

Wine - Вирус или нет ?

Захотел я сегодня потестировать новый wine 8.2 для запуска разных программ под linux.
И тут при попытке скачать браузер пишет, зачем вирус качаешь ?
ОС: Ubuntu 22.10, браузер мозила и хром оба ругаются.
Пытался скачать с официального сайта.
У всех так же или мне надо систему проверять ?

upd:По многочисленным вопросам, исходники нужны для эксперимента с отдельной файловой системой в файле.
Хочу сделать файл с переносимым набором программ, сразу настроенным. Чтоб при переходе с одного дистр. на другой не настраивать заново всё.
По сути при переходе в новом дистр. просто монтирую файл как файловую систему и у меня сразу все программы настроены и готовы к работе.
Подумываю собрать blfs.

Wine - Вирус или нет ? Linux, Wine, Firefox, Google Chrome, Длиннопост
Wine - Вирус или нет ? Linux, Wine, Firefox, Google Chrome, Длиннопост
Wine - Вирус или нет ? Linux, Wine, Firefox, Google Chrome, Длиннопост
Показать полностью 3
34

Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg, вторая серия

Начало цифрового рукоблудия тут: Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg

Спасибо @Dristofor, который навеял мне мысль про более изящное решение.

В thunar можно добавлять кастомные пункты в контекстное меню (Правка - Особые действия), после чего путь к файлам, имена выделенных файлов и что там надо передаются в качестве параметров в программу обработчик. А еще есть комплект программ ImageMagick, где есть консольная команда convert, которая всякие форматы изображений конвертирует друг в друга с синтаксисом типа convert SOURCE RESULT. То есть, по итогу, задача - выцепить из параметров скрипта имена конвертируемых файлов без расширений, и с полным путем конвертировать их в файлы с теми же именами в новом формате. Причем, не перепиливая скрипт под новый формат каждый раз.

Реализация:

#!/bin/bash

#convertany.sh [result_format] [path] [filename1 filename2...]

#для использхования с imagemagick

i=1

for counter in "$@" #цикл с перебором параметров запуска скрипта

do

if [ ! $i -eq 1 ] && [ ! $i -eq 2 ] #дурацкое решение, ниже объясню

then

source="$2""/""${counter}"; #вылепить полное имя файла из 2-го параметра и имени файла

result="${source%.*}"".""${1}" #поменять расширение в полном имени на параметр 1

convert "$source" "$result" #конвертировать, собсна

fi

i=$((i+1));

done

Что все это значит:

Скрипт вызывается с параметрами: 1-желаемое расширение, в формат которого конверируется файл; 2- путь к конвертиируемым файлам; начиная с 3-го параметра - имена файлов в обрабатываемой папке. Все параметры прогоняются через цикл, в котором игнорируются 1 и 2 параметры, а из коротких имен файлов лепятся длинные имена с новым и старым расширением, которые подставляются в команду конвертера imagemagick. Почему-то условный переход на сравнение $counter $1 и $2 у меня не заработал, так что я засунул костыль ввиде счетчика, извинити. Изначально я хотел просто запрашивать пачку длинных имен файлов, но потом узнал, что длина командной строки в линухе ограничена 4кб, и выбрал вариант покороче.

Далее, скрипт у нас, конечно, помечен, как исполнимый, imagemagick установлен. Ковыряем настройки Особых действий в Thunar:

Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg, вторая серия Linux, Программирование, Linux mint, Командная оболочка bash, Конвертер, Длиннопост
Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg, вторая серия Linux, Программирование, Linux mint, Командная оболочка bash, Конвертер, Длиннопост

Соответственно, после имя_скрипта.sh и перед %d%N вписываем то расширение, для получения которого мы все это теребим. После заполнения всего этого в настройках, выбираем пачку файлов картинок (причем, можно разного формата), тыкаем в контекстном меню на свежевылупившийся пункт, получаем новые гифки или что там заказывали.

Ньюанс. Во-первых, ранние версии imagemagick (у меня 6-я) не умеют обрабатывать, например, .heic; что оно ест, можно узнать командой "convert -help". Далее, как я понимаю, в поздних версиях вместо convert пишут magick, соответственно, команду в скрипте надо поменять. Ну и, в моем случае, для обработки .heic`ов, нужен сторонний конвертер heif-convert из пакета libheif-examples; вписывается вместо "convert", работает с тем же синтаксисом, в настройках Особых действи тунара надо указать шаблон имени файла *.heic и Появляться, если содержит Другие файлы.

Как оно лепится к наутилусу, я без понятия, но - почти уверен - не сильно сложнее.

Показать полностью 2
47

Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg

UPD я улудшил Скрипт для массового выборочного конвертирования форматов файлов в Ubuntu, например, heic в jpg, вторая серия

В общем, у меня айфон и убунта. Не самое удобное сочетание, но, если ты однажды перешел на Линукс, значит - у тебя уже изначально предрасположенность к танцам с бубном вокруг компьютера. С помощью Warpinator'а перекидывание файлами с ноутбука на телефон и обратно наладилось, а после того, как в пыльном углу образовался nas-сервер из старого ноутбука - процесс стал непринужденным. Однако, выяснился ньюанс - фотки на гейфоне пишутся почему-то в странненьком формате .heic, а весь остальной мир предпочитает жпг. Причем, он выяснился, когда мне надо было заслать в налоговую два-три десятка фотогорафий документов. И онлайн-конвертеры почему-то адекватно при этом не работали. В общем. ВЫЗОВ ПРИНЯТ. За неадекватное для поставленной задачи время (чет типа полдня) было порождено решение в виде баш-скрипта:

#!/bin/bash

IFS=$'\n'

read -r -d '' -a array < <( xclip -selection clipboard -out && printf '\0' )

for element in "${array[@]}"

do

strlen=${#element} #дляна имени файла с расширением

pathlen=`expr $strlen - 4` #длина имени без последних 4 символов heic

path=`expr substr $element 1 $pathlen` #имя файла без расширения (первые "все - 4" символы)

jpg=$path"jpg" #прилепить новое расширение

heif-convert "$element" "$jpg" #тут можно вкорячить любой конвертер

done

Соответственно, для работы баш-скрипта нужны пакеты xclip и libheif-examples. Теперь - что вообще происходит: xclip - консольная утилита для работы с буфером обмена. heif-convert - команда из пакета libheif-examples, которая конветртирует файл из имя.хейф в имя.жпг. После того, как все пакеты установлены и вся лабуда скопипащена в файл скрипта с расширением .sh, который помечен, как исполнимый, делается следующее: в тунаре (кстати, не знаю, будет ли работать в наутилусе) выделяются подопытные файлы, копируются в буфер обмена. Далее, хоткеем или консолью запускается скрипт. Далее, оно делает копии скопированных в буфер файлов в новом формате с теми же именами в той же папке. Подробно: после копирования из тунара файлов в буфере оказывается кучка строк типа такого:

/home/username/123/IMG_0144.HEIC

/home/username/123/IMG_0145.HEIC

/home/username/123/IMG_0146.HEIC

первые 2 строки после бин-баш - чтение содержимого буфера обена в массив переменных, где каждая переменная - полное имя файла. Затем - перебор элементов массива (полных имен файлов), замена расширения на конце и впихивание "исходного_имени_и_расширения" и "конечного_имени_и_расширения" в непосредственно команду конвертера. Больше всего гемора было с поиском рабочего решения по чтению буфера в массив. Из плюсов получившегося поделия - с учетом распространенности в линухе консольных конвертеров файлов с синтаксисом типа КОНВЕРТЕР "ИЗ_ЭТОГО" "В_ЭТО", этот скрипт непринужденно может быть перепилен под любой подобный конвертер. Удобно же. Вроде.

Показать полностью
Отличная работа, все прочитано!