Hide.me CLI - это клиент VPN для использования с Eventure Ltd. Hide.me VPN Service на основе протокола Wireguard. Функции клиента включают в себя:
Тодо:
Вы можете клонировать это хранилище и запустить:
go build -o hide.me
В качестве альтернативы, загрузите последнюю сборку из раздела релизов.
Источники и бинарные выпуски содержат простые сценарии установки и удаления. Hide.me CLI устанавливается в каталоге /opt/hide.me. Помимо копирования файлов hide.me в /пт /hide.me, не выполняются изменения в системе.
Когда распределение на основе SystemD обнаруживается, установщик ссылается на файл блока шаблона, который можно использовать для создания подключений.
Вы можете построить пакет, используя Pkgbuild, предоставленную в упаковке/Archlinux/(требуется git clone --recurse-submodules ) или от https://aur.archlinux.org/packages/hide-client/
Построить:
makepkg && sudo pacman -U hide-client-0.9.1-1-any.pkg.tar.zst
Обратите внимание, что пакет Archlinux изменяет местоположения по умолчанию установленных файлов на /usr/bin/hide.me для Binary, /etc/hide.me/accessToken.txt для AccessToken, /usr/share/hide.me/CA.pem для сертификата и /usr/lib/systemd/system/hide.me@service для системы Systemd.
Wireguard является одним из самых безопасных и простых решений для туннеля VPN в отрасли. Его легко настроить и использовать до тех пор, пока не требуется никакого обмена открытым ключом Wireguard над небезопасной средой (такой как Интернет). Любой вид обмена общедоступными ключами Wireguard выходит за рамки спецификации провода.
Сложная задача обмена открытым ключом и тайных ключей переговоров по небезопасной среде, как правило, обрабатывается:
HIDE.ME реализация проволочных законопроектов HTTPS (TLS) для обмена:
Аутентификация для всех операций требует использования доступа. Доступен-это просто двоичный каплей, который криптографически привязан к учетной записи Hide.me.
Соединение с сервером hide.me vpn устанавливается на этих шагах:
В отличие от многих других решений, Hide.me CLI не использует какую -либо технологию брандмауэра Linux (IPTables, NFTABLES или EBPF). Вместо того, чтобы полагаться на платформы IP -фильтрации Linux, Hide.me CLI селективно направляет трафик, настраивая специальную таблицу маршрутизации и набор правил базы данных политики маршрутизации. Маршруты черной дыры в вышеупомянутой таблице маршрутизации отбрасывают весь трафик, если только он не соответствует одному из следующих условий:
Этот режим работы позволяет пользователям установить свои собственные политики брандмауэра, с которыми Hide.me CLI не будет мешать.
Инструкции по использованию могут быть напечатаны с помощью HIDE.ME CLI без каких -либо параметров.
Usage:
./hide.me [options...] <command> [host]
...
Hide.me пользовательский интерфейс CLI довольно прост. Доступно только три команды:
command:
token - request an Access-Token (required for connect)
connect - connect to a vpn server
conf - generate a configuration file to be used with the -c option
categories - fetch and dump filtering category list
service - run in remotely controlled service mode
Чтобы подключиться к VPN-серверу, с помощью VPN-сервера необходимо запросить ток для доступа. Запрос с доступом выдается командой Token . В целях аутентификации может использоваться доступе, выпущенный любым сервером с любым другим сервером hide.me VPN. Когда сервер выпускает токен доступа к тому, что токен должен храниться в файле. Имя файла по умолчанию для Access-Token-это "accesstoken.txt".
После того, как доступ к доступу на месте его можно использовать для запросов на подключение . Уверяющие токены доступа обновляются автоматически.
hide.me cli не обязательно должен быть вызван с кучей параметров командной строки. Вместо этого файл конфигурации в формате YAML может использоваться для указания всех параметров. Для создания такого файла конфигурации может использоваться команда Conf .
Для целей фильтрации DNS (SmartGuard) можно получить список категорий фильтрации с командой категорий
Hide.me CLI можно запустить в режиме обслуживания . При запуске в режиме обслуживания, Hide.me CLI просто обнаруживает интерфейс REST для управления. Контроллер отвечает за настройку соединений, активацию переключения убийств или любую другую операцию. Адрес интерфейса REST настраивается через опцию -CADDR.
Обратите внимание, что есть несколько вариантов, которые настраиваются только через файл конфигурации. Такие варианты:
host:
fqdn, short name or an IP address of a hide.me server
Required when the configuration file does not contain it
Имя хоста конечной точки Hide.me REST может быть указано как полностью квалифицированное доменное имя (nl.hide.me), короткое имя (NL) или IP -адрес. Нет никакой гарантии, что конечная точка REST будет соответствовать конечной точке проволоки.
-4 Use IPv4 tunneling only
Ограничьте все операции протокола IP до IPv4. Несмотря на то, что сервер будет предоставлять адресации IPv4 и IPv6 только адреса IPv4, установлены правила IPv4 и маршруты IPv4. Защита от утечки/убийства работает только на трафик IPv4. Поток трафика IPv6 остается необеспеченным.
ПРЕДУПРЕЖДЕНИЕ : Эта опция ухудшает безопасность и должна использоваться только тогда, когда это безопасно, например, когда на клиентской машине отключен стек IPv6. Пожалуйста, не используйте его иначе, потому что могут произойти утечки IPv6.
-6 Use IPv6 tunneling only
Ограничьте все операции протокола IP до IPv6. Несмотря на то, что сервер будет предоставлять адресации IPv4 и IPv6 только адреса IPv6, установлены правила IPv6 и маршруты IPv6. Защита от утечки/убийства работает только для трафика IPv6. Поток трафика IPv4 остается необеспеченным.
Предупреждение : эта опция ухудшает безопасность и не должна использоваться, если клиент не желает туннели только трафика IPv6.
-b filename
resolv.conf backup filename (default "")
Hide.me cli сохраняет резервную копию /etc/resolv.conf в памяти. В дополнение к тому, что резервное копирование hide.me CLI может резко заканчивать /etc/resolv.conf к файлу, указанному по этой опции.
-c filename
Configuration filename
Используйте файл конфигурации с именем «имя файла».
-ca string
CA certificate bundle (default "CA.pem")
Во время переговоров TLS необходимо проверить сертификат сервера VPN. Эта опция позволяет указать альтернативный файл пакета сертификатов CA.
-caddr address
Control interface listen address (default "@hide.me")
Установите адрес управления режимом службы. Hide.me cli, по умолчанию, слушает на абстрактном сокете unix hide.me
-ccert certificate
Control interface certificate file
Установите сертификат управления режимом службы x509 в формате PEM
-ckey key
Control interface key file
Установите интерфейс управления режимом службы в формате PEM в формате PEM
-d DNS servers
comma separated list of DNS servers used for client requests (default "209.250.251.37:53,217.182.206.81:53")
По умолчанию, Hide.me Cli использует Hide.me, работающие DNS -серверы для разрешения имен серверов VPN при запросе токена или во время запросов подключения. Набор серверов DNS, используемых для этих целей, может быть настроен с этой опцией.
-dpd duration
DPD timeout (default 1m0s)
Чтобы определить, остановилось ли соединение, как правило, из -за проблем с сетью, Hide.me CLI периодически проверяет состояние соединения. Период проверки может быть изменен с помощью этой опции, но не может быть выше минуты.
-i interface
network interface name (default "vpn")
Используйте эту опцию, чтобы указать имя сетевого интерфейса для создания или использования.
-l port
listen port
Укажите порт прослушивания для зашифрованного трафика провода.
-m mark
firewall mark for wireguard traffic (default 0 - no packet marks)
Установите брандмауэр, отмечайте модуль ядра проволочной планы, на которых будет отмечать свои пакеты.
-p port
remote port (default 432)
Удаленный порт конечной точки REST может быть изменен с помощью этой опции.
-pf
enable dynamic port-forwarding technologies (uPnP and NAT-PMP)
Динамический порт-переход по умолчанию отключен. Используйте эту опцию, чтобы включить его для конкретной попытки подключения. В качестве альтернативы, порт-переход может быть включен, добавив суффикс @PF в имя пользователя при запросе токена. Такие жетоны активируют порт-перемещение при каждой попытке подключения, и вы не должны использовать эту опцию при их использовании.
-r table
routing table to use (default 55555)
Установите таблицу маршрутизации для использования для общего трафика и механизма защиты утечки.
-R priority
RPDB rule priority (default 10)
Установите приоритет установленных правил RPDB. Hide.me CLI использует преимущества маршрутизации политики, установив правило RPDB (по одному на IP -протокол), чтобы привлечь трафик в выбранную таблицу маршрутизации и обеспечить защиту от утечки IP.
-s networks
comma separated list of networks (CIDRs) for which to bypass the VPN
Список разделенных сетей, то есть сети, для которых трафик не должен быть туннелирован над VPN.
-t string
access token filename (default "accessToken.txt")
Имя файла, который содержит доступе.
-u username
hide.me username
Установите hide.me имя пользователя.
Hide.me CLI поддерживает фильтрацию на основе DNS (SmartGuard). Следующие параметры управления DNS фильтрация:
-forceDns
force tunneled DNS handling on hide.me servers
Активировать перенаправление DNS на сервере hide.me VPN, так что каждый запрос UDP или DNS -DNS был обработан с помощью этого сервера hide.me vpn
-whitelist dns names
comma separated list of allowed dns names
Суффиксы DNS, которые будут обойти любой фильтционный двигатель (сняты подстановочные знаки)
-blacklist dns names
comma separated list of filtered dns names
Имена DNS, которые будут отфильтрованы
-noAds
filter ads
Активирует рекламную фильтрацию на основе SmartGuard
-noCategories categories
comma separated list of filtered content categories
Активирует мелкозернистую фильтрацию SmartGuard. Список категорий избранных с командой категорий
-noIllegal kind
filter illegal kind (content, warez, spyware, copyright)
Активирует грубый уровень фильтрации нелегального содержания, Warez, Spyware и Matursyed Material
-noMalicious
filter malicious destinations
Активирует фильтрацию злонамеренных хостов, веб -сайтов или доменов
-noMalware
filter malware
Активирует фильтр вредоносных программ. Любой хостинг или распределение вредоносных программ должен быть отфильтрован
-noRisk level
filter content according to risk level (possible, medium, high)
Активирует фильтр риска
-noTrackers
filter trackers
Активирует фильтр отслеживания
-pg age
apply a parental guidance style age filter (12, 18)
Активирует фильтр в стиле родительского руководства в соответствии с данным возрастным ограничением. Неуместное содержание будет отфильтрован
-safeSearch
force safe search with search engines
Обеспечивает соблюдение режима SafeSearch с поддерживаемыми поисковыми системами (Google, Bing)
Hide.me CLI может использоваться автономным или в качестве системы SystemD. Использование Hide.me CLI в качестве службы SystemD позволяет использовать преимущества разрешения зависимости SystemD, мониторинга и различных функций упрочнения.
Скрипт установщика ссылается на файл шаблона файла [email protected] для вас, или вы можете вручную связать файл шаблона, запустив:
SystemCtl Link hide.me@service
Для управления соединениями можно использовать следующие команды:
| Операция | Командование |
|---|---|
| Создать соединение | SystemCtl включить hide.me@server |
| Запустить соединение | SystemCtl start hide.me@server |
| Остановите соединение | SystemCtl Stop Hide.me@server |
| Удалить соединение | SystemCtl Отключить hide.me@server |
Сервер - это имя сервера, имя группы или IP -адрес.
Дополнительные параметры командной строки в команде hide.me connect , запускаемой службой SystemD, могут быть помещены в переменную OPTIONS= Configuration в /opt/hide.me/config .
Служба стартапа считается успешным, когда соединение с Head.me Server полностью установлено.
Hide.me CLI - лучший выбор для настольных ПК, но может быть неуместным для маршрутизаторов или встроенных устройств. Для тех небольших устройств мы разработали набор пепельных сценариев (в сценариях/ каталоге):
В заголовке каждого сценария вы найдете примеры использования.
Функциональность этих сценариев является основной, то есть они приведут вас в подключение/отключение, но не будут следить за вашим соединением. Такого ограниченного набора функций может быть достаточно, чтобы использовать Hide.me с маршрутизаторами, которые имеют свои собственные методы мониторинга и провал.
Каждый сценарий был проверен на маршрутизаторах на основе OpenWRT с последней стабильной прошивкой (19.07.7) и поддержкой проводов. Предварительные условия, которые должны быть установлены OPKG, являются:
Если вы хотите внести свой вклад в этот проект, прочитайте руководство по взносу.