Не работает на MacOS (M1)
error: unknown target CPU 'apple-m1'
Это в каком случае вылезает ? Пробовали запускать бинари из binaries/mac64 ? Они собираются как сдвоенные (x86_64+aarch64), но мне не на чем проверять arm часть
В любом случае достаточно легко самому собрать make -C /opt/zapret mac Система сама должна подтянуть компилятор. Ничего устанавливать не надо
Это при выполнении скрипта install_easy.sh А какие именно бинарнники запускать, их там 3?
Любые tpws без параметров
Спасибо, разобрался Правда кажется не помогает с дискордом. Ютуб тоже не работает к сожалению
У меня эта ошибка возникла, когда MacOS заблокировала запуск ip2net и прочего. Давал разрешения через Privacy & Security, потом запустил install_easy.sh из /opt/zapret, в который он себя сам скопировал. HTTP/HTTPS заработали, ~~UDP - нет~~ (и не должен был).
Я не знаток макоси, но логично было предположить, что с введением ARM архитектуры они постараются закрутить требования к подписи. Как их отключать сами ищите
Есть ли на MacOS для ARM требования на подпись исполняемых файлов ? ChatGPT сказал: ChatGPT
Да, в macOS для ARM (Apple Silicon) есть требования на подпись исполняемых файлов, такие как и на других архитектурах (например, x86_64). Это часть системы безопасности macOS, известной как Gatekeeper.
Основные моменты:
Подпись кода (Code Signing): Это обязательное требование для большинства приложений и исполняемых файлов на macOS. Программы должны быть подписаны действительным сертификатом, выданным Apple, для того чтобы они могли быть запущены без дополнительных предупреждений о безопасности.
Gatekeeper: Этот механизм проверяет подпись кода перед запуском приложения. Приложения, не подписанные или подписанные недействительным сертификатом, могут быть заблокированы, если настройки безопасности системы разрешают только проверенные приложения.
Notarization: В дополнение к подписи кода, с 2019 года Apple ввела процесс notarization. Это дополнительная проверка, при которой приложение, даже если оно подписано, отправляется в Apple для анализа на наличие вредоносного ПО. Это стало обязательным для распространения приложений вне Mac App Store.
Таким образом, если вы собираете исполняемые файлы для macOS, включая приложения для ARM-архитектуры, вам нужно будет их подписывать и, возможно, пройти процесс notarization, если вы хотите, чтобы они корректно запускались на системах пользователей без дополнительных ошибок или предупреждений безопасности.системах пользователей без дополнительных ошибок или предупреждений безопасности.
Кое-где пишут, что надо для arm подписывать self-signed. Может кто-нибудь прояснить этот вопрос имеет ли смысл подписывать self-signed, влияет ли это на что-то, упрощает ли ? Подписывает ли brew executables ? Может есть какие-то локации, откуда проверки нет. Например, /usr/local/bin ?
Кое-где пишут, что надо для arm подписывать self-signed. Может кто-нибудь прояснить этот вопрос имеет ли смысл подписывать self-signed, влияет ли это на что-то, упрощает ли ? Подписывает ли brew executables ? Может есть какие-то локации, откуда проверки нет. Например, /usr/local/bin ?
- Разве на макос работает запрет, байдпи и т.п.? Там же проблема была какая-то с устаревшей версией FreeBSD
- Можно запускать не подписанные бинари после снятия их с карантина
xattr -d com.apple.quarantine zapret.dmg
Работает только с tpws, dvtws не работает по причине выпиливания ipdivert
dvtws не работает по причине выпиливания ipdivert
Не изучал NetworkExtension, можно ли там модифицировать сетевые пакеты?
Подскажите, получилось ли в итоге обойти блокировку Discord для MacOC M1? Или даже пытаться не стоит К сожалению, использование любых прокси или впн сильно урезает скорость и стабильность сети + большая задержка
Не изучал NetworkExtension, можно ли там модифицировать сетевые пакеты?
Быстренько посмотрел. Сложное API. Решает несколько иные задачи. Разделение на разные процессы разного уровня sandbox. Обьектно-ориентированный язык.
Все это похоже на один большой гемор натягивания совы на глобус
Чтобы безболезненно поднять pktws мне нужен хэндлер, на который сыпятся пакеты уровня L3, а на выходе я решаю дропать их или пропускать. that's all. Мой процесс должен мочь слать raw пакеты уровня L3 (не L2 ! конструирование L2 это тоже большой гемор и несовместимости). С этим на BSD тоже есть проблемы немаленькие, вероятно наследованные darwin, так что я использую тот же ipdivert и для raw отсылки. Но как раз это и убрали
@bol-van
Все это похоже на один большой гемор натягивания совы на глобус
Дааа, проще ведь виндивертом хватать все подряд, лезть в пакеты и пытаться узнать домен сайта. Тут главное ECH не забыть включить, чтобы точно всё сработало.
С этим на BSD тоже есть проблемы немаленькие, вероятно наследованные darwin
Через набор утилит унаследовала, не иначе.
на который сыпятся пакеты уровня L3
Всё просто - не нужно искать "лёгкие" пути. Завтра в окнах отзовут подпись виндиверта. И что теперь, будем через тестовый режим сидеть?
То, что "линукс" поддерживает всякую небезопасную хрень, не означает что это норма и это нужно использовать. Наоборот, это нужно избегать. Не нужно пытаться использовать говно из "линукса" в сборках для других систем. И ради бога, не нужно использовать уродство под названием mingw.
Ну так берите и пишите раз такой умный
Ну так берите и пишите раз такой умный
Я УЖЕ написал. И не увидел ничего сложного ни в винапи, ни в перехвате днс.
Мне тут уже пишут, подсказывают, что api, которое используется запретом на линуксе, уже deprecated. Карета в тыкву...
NFQUEUE не deprecated. deprecated только старые функции для работы с ним из libnetfilter_queue. Это касается только user-mode интерфейса, kernel интерфейс не поменялся. Теоретически может перестать собираться с новыми версиями libnetfilter_queue, но со старыми будет работать. И переписать не так и сложно, суть то не меняется.
В BSD ipdivert - не deprecated.
А если вам хочется мучаться на уровне L2 - то пишите это сами. Я не хочу. Потому что там надо учитывать особенности разных типов адаптеров, мак адреса, самому разгребать таблицы роутинга и прочее. то, что должна делать ОС, а не изобретать велосипед. И потом ловить массу репортов почему у меня не завелось на таком-то адаптере, при таких-то условиях, на новой версии ядра
И если хочется переписать виндиверт, подписать его от юридического лица за тыщи баксов, тоже - вперед !
Ну так берите и пишите раз такой умный
Я УЖЕ написал. И не увидел ничего сложного ни в винапи, ни в перехвате днс.
помоги работяге, я просто хочу нормально пользоваться дискордом, сможешь поделиться со мной?
Самое конструтивное, что может сделать этот товарищ, это или сделать свое собственное решение, или если он хочет помочь с zapret, написать код, реализующий очередь пакетов с возможными дропами и raw отсылку какими-то другими более совершенными методами. Если знает как. Если это будет хорошо работать, я добавлю в проект
Я УЖЕ написал.
Забыл ссылку на репу дать
Забыл ссылку на репу дать
помоги работяге, я просто хочу нормально пользоваться дискордом, сможешь поделиться со мной?
Дам, когда Apple обновит свою пиратскую копию FreeBSD.
Там же проблема была какая-то с устаревшей версией FreeBSD
Шутка) На самом деле у нас проприетарная тусовка.
на уровне L2
Первая же ссылка в гугле обещает возможность потрогать IP пакеты: https://git.zx2c4.com/wintun/about/
Если меня не обманывают, то для макоси есть некий "utun".
Я бы даже на mingw согласился, ей богу, только бы никаких дивертов не было. Ими ты убиваешь даже теоретическую возможность портировать все это дело на мобилы.
чтобы что-то дернуть в tun, нужно делать прослойку псевдо-VPN меняется конфигурация сетевых интерфейсов, рероутится трафик и все , абсолютно все идет через этот tun что создает тормоза и все так же тянет за собой 3rdparty драйвера ядра
мне бы не понравилось, если бы какая-то софтина лезла бы в мои интерфейсы, что-то добавляла туда. это тяжелое вмешательство в систему, совршенно в данном случае не оправданное а windivert делает точечно как раз то, что нужно то, что сделано в linux или BSD изначально
и все так же тянет за собой 3rdparty драйвера ядра
Только для окон.
что создает тормоза
это тяжелое вмешательство в систему
Сомневаюсь.
Тут автору нужно для себя решить: 1) залочиться на диверты; 2) терпеть попаболь с поддерживанием 100500 способов перехвата пакетов; 3) выбрать что-то одно, что работает везде (это не диверты).
Если бы я был автором, я бы выбрал третий вариант. Аргументы про тормоза и непрозрачность для меня выглядят надуманными. Но я не автор, поэтому я могу лишь ждать и наблюдать.
У меня нет проблем с перехватом пакетов. Текущее решение считаю оптимальным, есть только проблема с macos
у меня проблемы с установкой на макос на м1 "полечились" снятием флага карантина с файлов в /binaries/mac64
команды типа (я на самом деле использовал абсолютный путь, но тут для наглядности так):
xattr -d com.apple.quarantine ./binaries/mac64/ip2net
xattr -d com.apple.quarantine ./binaries/mac64/mdig
xattr -d com.apple.quarantine ./binaries/mac64/tpws
после этого easy install не ругался на apple-m1
может быть имеет смысл добавить в сетап? для apple-silicon архитектур как минимум?
если грамотно отладите - добавлю мне не на чем
код должен распознавать архитектуру
если грамотно отладите - добавлю мне не на чем
код должен распознавать архитектуру
на макос же не работает запрет, байдпи, о чем речь идет?
tpws работает
у меня проблемы с установкой на макос на м1 "полечились" снятием флага карантина с файлов в /binaries/mac64 после этого easy install не ругался на apple-m1
ты можешь помочь мне с установкой? если это лечит дискорд мне это очень поможет, могу даже заплатить