Керівництво по Mullvad VPN

Повне керівництво по Mullvad VPN в Linux

Історія Mullvad

Mullvad VPN – це комерційне шведське програмне забезпечення для здійснення послуги електронного зв’язку типу VPN з відкритим вихідним кодом (GPLv3), розроблений у 2009 році компанією Amagicom AB, чия назва розшифровується з шумерського ama-gi як «свобода». Слово “mullvad” у шведській мові означає – “кріт”. Штаб-квартира компанії знаходиться у місті Гетеборг, Швеція. Засновники – Daniel Berntsson та Fredrik Strömberg, які на початках самотужки підтримували проєкт – від сапорту до пентесту. Їм також належить розробка токена безпеки – Tillitis. На офіційному сайті опублікована директива власників, у якій вони зобов’язуються дотримуватись чесності та прозорості, а головним напрямом ставлять – зробити цензуру та стеження недоцільними.

Додаток Mullvad VPN неодноразово проходив зовнішні аудити. Зокрема, з 2018 по 2025 рр. перевірки здійснили флагманські пентестерські компанії Cure53, Atredis, X41 D-Sec та Assured. Ними були виявлені вразливості середнього рівня важкості, а також деякі витоки DNS, які спеціалісти Mullvad швидко усунули.

Після початку повномасштабної війни росії проти України, компанія Mullvad надала 10 000 безкоштовних ключів доступу до свого сервісу людям, які зазнають цензури. Представниками компанії було зазначено, що Роскомнадзор активно блокує інакомислячих й будь-які згадки про злочини “путінської армії”.

18 квітня 2023 року стався інцидент – поліція прийшла з обшуком в центральний офіс Mullvad у Гетеборзі. Це сталося в рамках розслідування кіберзлочину поліцією Німеччини. Незважаючи на це, їм не вдалось отримати жодної компрометуючої інформації і вони пішли з нічим, адже сервери Mullvad відповідно до своєї політики не зберігають ідентифікаційних даних.

Офіс Mullvad VPN
Офіс Mullvad VPN в Гетеборгу, Швеція.

В 2024 році фахівці Mullvad заявили, що платформа Android розкриває DNS, навіть при увімкненому VPN та опції “Block connection without VPN”. Витік відбувається на рівні операційної системи через функцію getaddrinfo, яку використовують різні додатки для перевірки підключення, наприклад браузер Google Chrome. В результаті цього, конфіденційність користувачів може бути під загрозою. Провайдер через витів DNS може з’ясувати які веб-сайти ви переглядаєте. Офіційно цей витік не залежить від додатка Mullvad VPN, а від Android. Досі ця вразливість не була виправлена, а отже сам факт використання Android вже несе в собі ризики втрати конфіденційності. Розробники Mullvad радять використовувати чистий Android без вкраплень Гугла, наприклад GrapheneOS.

Mullvad є партнерами Mozilla та одним з найбільших донатерів протоколу WireGuard, здійснюючі регулярні пожертви. До речі, Mullvad планують припинити підтримку протоколу OpenVPN 15 січня 2026 року.

Детальніше про історію компанії Mullvad тут.

Особливості Mullvad VPN

Переваги:

  • Відсутнє зберігання логів і реєстрація будь-яких користувацьких даних: трафік, метадані, IP-адреси, позначки часу. Відсутнє профілювання і будь-які автоматизовані системи обробки даних. Повна відкритість і прозорість політики захисту даних відповідно GDPR, Європейської конвенції з прав людини та Загальної декларації з прав людини. Шведська юрисдикція є відносно поміркованою, поважає права людини і не зобов’язує провайдерів шпигувати за користувачами. Хоча, у разі посилення будь-якого тиску, компанія Mullvad готова переїхати в інші країни або вжити додаткових заходів;
  • Вичерпна проєктна документація з детальним технічним описом та довідкою;
  • Стабільна швидкість, мінімальна кількість розривів;
  • Велика кількість VPN-серверів різного типу у різних локаціях;
  • Повна підтримка протоколу WireGuard;
  • Повна підтримка протоколу OpenVPN (буде призупинено 15.01.2026);
  • Підтримка алгоритмів шифрування AES-256 GCM, RSA-4096, SHA-512, Pergect Forward Secrecy;
  • Захист від витоків DNS, IPv6, підтримка режимів Kill Switch та Lockdown Mode;
  • Підтримка режиму Split Tunneling для вибіркового з’єднання поза VPN-тунелем;
  • Підтримка моста-з’єднання Shadowsocks для обходу цензури;
  • Підтримка різноманітних режимів обфускації трафіка: DAITA (Defence against AI-guided Traffic Analysis), Quantum Resisstence, Multihop;
  • Підтримка різних портів для з’єднання TCP/UDP;
  • Наявність власного блокувальника реклами Ads Blocker;
  • Можливість самостійного керування DNS;
  • Доступність через Onion-сервіс;
  • Підтримка різних платформ: Windows, Linux, macOS;
  • Наявність додатка у різних репозиторіях: Google Play, F-Droid, Apple Store, Github;
  • Власний десктопний і мобільний додатки;
  • Власний додаток Mullvad CLI (розгортається через десктопний);
  • Власний додаток до веб-браузера Mullvad Proxy (тільки Firefox);
  • Власна пошукова система Mullvad Leta (на базі Google і Brave Search);
  • Власний інтернет-браузер Mullvad Browser на базі TOR;
  • Підтримка різних способів оплати: ваучерами (доставка по пошті), криптою (є Monero), банківськими картками та переказами, PayPal, Swish, Stripe;
  • Захищена email-комунікація з технічною підтримкою Mullvad з допомогою PGP шифрування.
ЧИТАЙТЕ ТАКОЖ:  Керування MySQL у командному рядку Linux

Недоліки:

  • Можливе перенавантаження серверів і коливання швидкості;
  • Іноді спостерігаються часті розриви з’єднання;
  • Відсутня переадресація портів;
  • VPN не оптимізований для онлайн-стрімінгу.

Встановлення Mullvad VPN в Linux

Для початку використання Mullvad VPN необхідно здійснити реєстрацію облікового запису на офіційному сайті. Вона може відбуватися повністю анонімно, наприклад через Onion-адресу. Підтримується оплата криптовалютою (Monero, Bitcoin, Bitcoin Cash). Від користувачів не вимагається вказувати жодних ідентифікаційних даних. Після реєстрації, ви отримуєте персональний 16-ти значний номер, за яким здійснюватиметься авторизація в додатку. Вартість послуги – €5 на місяць. Діє ліміт на кількість одночасного користування – в 1 обліковому записі дозволяється не більше 5-ти пристроїв.

Реєстрація в Mullvad VPN
Створення облікового запису Mullvad VPN
Обліковий запис Mullvad VPN
Керування обліковим записом Mullvad VPN

Щоб почати користування VPN, необхідно встановити клієнт Mullvad VPN в ОС Linux. Це можна зробити наступним чином:

Ubuntu / Debian

# Download the Mullvad signing key
sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc https://repository.mullvad.net/deb/mullvad-keyring.asc

# Add the Mullvad repository server to apt
echo "deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable stable main" | sudo tee /etc/apt/sources.list.d/mullvad.list

# Install the package
sudo apt update
sudo apt install mullvad-vpn

# Uninstall
sudo apt purge mullvad-browser
sudo rm /etc/apt/sources.list.d/mullvad.list

Arch Linux

  • yay -S mullvad-vpn-bin – встановити пакет;
  • yay -Sy – оновити пакети;
  • yay -R mullvad-vpn-bin – видалити пакет.

Додатково для видалення:

Optionally remove logs & cache:
sudo rm -rf /var/log/mullvad-vpn/
sudo rm -rf /var/cache/mullvad-vpn/

Optionally remove config:
sudo rm -rf /etc/mullvad-vpn/

Optionally remove app settings:
rm -rf ~/.config/Mullvad\ VPN/

Optionally remove auto-launcher:
rm ~/.config/autostart/mullvad-vpn.desktop

На замітку: Mullvad VPN можна також використовувати через сторонні GUI/CLI клієнти, наприклад Wireguard / OpenVPN, завантаживши файли конфігурації в панелі керування обліковим записом і додавши їх у відповідний додаток.

Команди керування Mullvad VPN через CLI

Керування додатком VPN можна здійснювати повністю в режимі командного рядка. Ось перелік команд:

  • mullvad account login XXXXXXXXXXXXXX – авторизація в обліковому записі;
  • mullvad account get – інформація по обліковому запису;
  • mullvad account list-devices – інформація по зареєстрованим пристроям в обліковому записі;
  • mullvad relay list – список VPN-серверів для підключення;
  • mullvad relay sey location se mma – задати налаштування з’єднання з будь-яким сервером заданої геолокації;
  • mullvad relay set location se-mma-wg-001 – задати налаштування з’єднання з конкретним сервером;
  • mullvad connect – встановити з’єднання за заданими налаштуваннями;
  • mullvad disconnect – від’єднатися від VPN-сервера;
  • mullvad reconnect – перепідключитися;
  • mullvad relay update – оновити список VPN-серверів;
  • mullvad status -v – показати інформацію по налаштуваннях VPN-з’єднання;
  • mullvad tunnel get – інформація по налаштуванню VPN-тунелю;
  • mullvad auto-connect set off – вимкнути автоматичний запуск додатку Mullvad (буде також відключений автоматичний запуск GUI, set on – включити);
  • mullvad lan set allow – зробити доступною зв’язок з локальною мережею;
  • mullvad lockdown-mode set on – включити режим блокування інтернету без VPN;
  • mullvad tunnel set ipv6 on – включити підтримку IPv6;
  • mullvad-exclude <program> – запустити Split Tunneling (робота додатків поза мережею VPN);
  • mullvad-exclude curl https://am.i.mullvad.net/connected – тестування інтернет-з’єднання через curl без VPN;
  • mullvad dns set default --block-ads --block-trackers --block-malware --block-gambling --block-adult-content – встановити блокування реклами на рівні DNS;
  • mullvad dns set custom 1.1.1.1 – вказати свій DNS-сервер;
  • mullvad dns set default – повернути усі налаштування DNS до по замовчуванню;
  • mullvad custom-list new Favorites – створити власний список VPN-серверів для підключення;
  • mullvad custom-list edit add Favorites se-mma-wg-001 – додати конкретний сервер до улюбленого списку;
  • mullvad custom-list edit remove Favorites se-mma-wg-001 – вилучити конкретний сервер із улюбленого списку;
  • mullvad relay set custom-list Favorites – встановити улюблений список серверів до підключення;
  • mullvad custom-list delete Favourites – вилучити заданий список серверів;
  • mullvad custom-list list – переглянути кастомні списки серверів;
  • mullvad factory-reset – скинути усі налаштування до “заводських”;
  • mullvad relay set tunnel-protocol wireguard – встановити протокол VPN на Wireguard;
  • mullvad relay set tunnel-protocol openvpn – встановити протокол VPN на OpenVPN;
  • mullvad relay set tunnel wireguard --protocol tcp – активувати Wireguard-тунель по TCP порту;
  • mullvad relay set tunnel wireguard --ip-version ipv6 – активувати Wireguard-з’єднання через IPv6;
  • mullvad obfuscation set mode udp2tcp – включити TCP-обфускацію для Wireguard;
  • mullvad obfuscation set mode auto – включити автоматичну обфускацію трафіка для Wireguard;
  • mullvad obfuscation set mode shadowsocks – увімкнути режим Shadowsocks;
  • mullvad tunnel set wireguard --quantum-resistant on – керування обфускацією трафіка Quantum Resistence на Wireguard;
  • mullvad tunnel set wireguard --daita on – керування обфускацією трафіка DAITA на Wireguard;
  • mullvad relay set tunnel wireguard --use-multihop on – активувати режим Multihop на Wireguard;
  • mullvad relay set tunnel wireguard entry location dk cph dk-cph-wg-001 && mullvad relay set location se-got-wg-001 – встановити вхідну і вихідну точки під’єднання в режимі Multihop;
  • mullvad bridge set location nl ams – активувати режим Bridge (міст) за конкретною локацією для Shadowsocks;
  • mullvad bridge list – переглянути список усіх мостів;
  • mullvad bridge set state on – включити Bridge-з’єднання через Shadowsocks;
  • mullvad bridge get – показати інформацію по Bridge-з’єднанню;
  • mullvad bridge set custom set shadowsocks --cipher <CIPHER> <REMOTE_IP> <REMOTE_PORT> <PASSWORD> – задати конфігурацію з’єднання Shadowsocks, наприклад mullvad bridge set custom set shadowsocks --cipher aes-256-gcm 185.213.154.117 443 mullvad
  • mullvad tunnel set wireguard rotate-key – оновити / згенерувати ключ Wireguard;
  • mullvad tunnel set wireguard --rotation-interval 72 – задати інтервал оновлення ключів Wireguard кожних 72 години (3 дня).
ЧИТАЙТЕ ТАКОЖ:  Командний рядок Linux: універсальний довідник для адмінів і хакерів

Логування і діагностика Mullvad VPN

  • mullvad-problem-report collect --output report.log – зібрати логи помилок;
  • /etc/mullvad-vpn/ – розташування налаштувань додатку Mullvad VPN в JSON:
    • account-history.json – дані по історії облікового запису;
    • device.json – дані по пристроя облікового запису;
    • settings.json – налаштування облікового запису в JSON.
  • /var/cache/mullvad-vpn/ – кешовані дані Mullvad VPN:
    • relays.json – кешовані дані по серверам;
    • target-start-state.json – статус серверів;
    • version-info.json – інформація по версії клієнта Mullvad VPN.
  • /var/run/mullvad-vpn – розташування даних RPC-сервера Mullvad.
  • $XDG_CONFIG_HOME/Mullvad VPN/gui_settings.json – файл конфігурації Mullvad GUI Desktop на базі Electron.

Додаткові посилання і джерела

  1. Mullvad VPN Docs
  2. Mullvad Help Center
  3. Mullvad Policies
  4. Mullvad Blog
  5. Mullvad: Total Surveillance [PDF]
  6. Mullvad: First Steps Online Privacy
  7. Mullvad: Privacy is Universal Right
  8. Mullvad VPN on Reddit
  9. Mullvad VPN on GitHub
  10. Mullvad VPN on Linkedin
  11. Mullvad on Youtube
  12. Mullvad on Mastodon
  13. Mullvad VPN on X (Twitter)
  14. Freedome Hacker. Interview with Mullvad VPN
  15. Wikipedia. Mullvad.
  16. Wikipedia. Comparsion VPN.
  17. PrivacyTools. Best Privacy VPN.
  18. Mullvad CLI Commands
  19. Mullvad CLI Wireguard

Автор: © Konrad Ravenstone, KR. Laboratories Research

Konrad Ravenstone// про автора

Кібермольфар, хакер, лінуксоїд, дослідник безпеки в KR. Labs Research

Сподобалася стаття? Поділитися в соцмережах:
KR. Labs Research
Рекомендоване:
Те, що я пропоную — є певною альтернативою VPN-з’єднанню. У…