Вопрос или проблема
Я хочу поделиться VPN-соединением, используя ноутбук с Linux в качестве точки доступа WiFi. Я также хотел установить защиту от утечек, чтобы при отключении VPN доступ к интернету блокировался. Это сработало для меня после использования следующих правил UFW:
sudo ufw default deny incoming
sudo ufw default deny outgoing
sudo ufw allow in OpenVPN
sudo ufw allow out OpenVPN
sudo ufw allow out on tun0 from any to any
sudo ufw allow in on tun0 from any to any
Мне нужно было использовать профиль OpenVPN для приложения с включенными портами UDP 1194 и 53, потому что провайдер VPN не предоставляет статический IP для подключения, поэтому он должен быть разрешен OpenVPN.
Когда UFW включен, эти правила работают так, как я хотел, но в этом случае точка доступа WiFi блокируется, что означает, что телефон, пытающийся подключиться к точке доступа, зависает на «Получение IP-адреса…»
UFW по умолчанию блокирует маршрутизацию, верно? Поэтому я попытался просто разрешить маршрутизацию, установив:
sudo ufw default allow routed
Однако это не помогло…
Текущие правила:
Статус: активен
Ведение журнала: включено (низкий)
По умолчанию: запрещено (входящее), запрещено (исходящее), разрешено (маршрутизируемое)
Новые профили: пропустить
Куда Действие Откуда
-- ------ ----
53,1194/udp (OpenVPN) РАЗРЕШИТЬ ВХОД Везде
Везде на tun0 РАЗРЕШИТЬ ВХОД Везде
53,1194/udp (OpenVPN (v6)) РАЗРЕШИТЬ ВХОД Везде (v6)
Везде (v6) на tun0 РАЗРЕШИТЬ ВХОД Везде (v6)
53,1194/udp (OpenVPN) РАЗРЕШИТЬ ИСХОД Везде
Везде РАЗРЕШИТЬ ИСХОД Везде на tun0
53,1194/udp (OpenVPN (v6)) РАЗРЕШАТЬ ИСХОД Везде (v6)
Везде (v6) РАЗРЕШИТЬ ИСХОД Везде (v6) на tun0
Мои интерфейсы:
enp6s0, wlp2s0, tun0
Какое правило/настройка я мог бы использовать, чтобы разблокировать WiFi-точку доступа в брандмауэре UFW?
Ответ или решение
Чтобы разрешить использование WiFi Hotspot в UFW для совместного использования VPN-соединения с телефоном, необходимо внести изменения в настройки UFW и конфигурацию маршрутизации. Давайте разберем шаги, которые помогут вам достичь этой цели.
Шаг 1: Убедитесь, что UFW активен
Сначала убедитесь, что UFW действительно активен и его статус можно проверить с помощью команды:
sudo ufw status verbose
Шаг 2: Настройка правил UFW
Ваши текущие правила UFW уже почти готовы, но давайте добавим необходимые изменения для разрешения доступа к WiFi Hotspot:
- Разрешите трафик от интерфейса WiFi Hotspot. Если ваш интерфейс WiFi называется
wlp2s0
, вам нужно разрешить входящий и исходящий трафик на этом интерфейсе.
sudo ufw allow in on wlp2s0
sudo ufw allow out on wlp2s0
- Также разрешите переадресацию трафика между интерфейсами:
sudo ufw allow in on wlp2s0 from any
sudo ufw allow out on wlp2s0 to any
Шаг 3: Настройка маршрутизации
Для того чтобы маршрутизировать трафик из Hotspot через VPN, вам нужно убедиться, что маршрутизация включена. Откройте файл /etc/ufw/sysctl.conf
и убедитесь, что следующая строка не закомментирована:
net/ipv4/ip_forward=1
Если она закомментирована, раскомментируйте ее, убрав символ #
перед строкой.
Шаг 4: Перезапустите UFW
После внесения изменений необходимо перезапустить UFW для применения новых правил:
sudo ufw disable
sudo ufw enable
Шаг 5: Настройка "Killswitch"
Убедитесь, что у вас настроена возможность блокировки соединения при отключении VPN. Ваши правила для этого имеют правильную структуру, однако добавьте следующее:
sudo ufw route allow in on wlp2s0 out on tun0
sudo ufw route allow in on tun0 out on wlp2s0
Шаг 6: Проверка соединения
Теперь попробуйте подключить свой телефон к Hotspot и проверьте, работает ли соединение. Если всё настроено правильно, ваш телефон должен успешно получить IP-адрес и иметь доступ к интернету через подключение VPN вашего ноутбука.
Заключение
Если вы столкнетесь с проблемами, убедитесь, что другие конфигурации сетевых интерфейсов не мешают установлению соединения. Также учитывайте, что некоторые VPN-провайдеры могут ограничивать определенные подключения, и это также может стать причиной проблем с подключением. При необходимости обратитесь к документации вашего VPN-поставщика для получения дополнительной информации о поддерживаемых конфигурациях.
Если у вас будут дальнейшие вопросы или потребуется дополнительная помощь, не стесняйтесь обращаться!