ChromeBook + OpenVPN (через Developer Mode)
Описание
ChromeOS изначально ограничивает доступ к системе и не позволяет использовать OpenVPN в полном объёме.
Решение — включение Developer Mode и запуск OpenVPN вручную через shell.
Контекст
Используется, когда:
- стандартный VPN-клиент ChromeOS не подходит;
- требуется кастомный OpenVPN-конфиг;
- необходим полный контроль над параметрами подключения.
⚠️ Риски
⚠️ Все действия выполняются на ваш страх и риск
- включение Developer Mode приводит к полной очистке устройства;
- отключается проверка целостности системы (rootfs verification);
- увеличивается attack surface (поверхность атаки);
- возможны проблемы с обновлениями ChromeOS.
Решение
1. Включение Recovery Mode
Hold Esc + Refresh + Power2. Переход в Developer Mode
Ctrl + D → EnterПосле этого:
- устройство будет очищено;
- система перезагрузится.
3. Вход в систему
- вводим аккаунт;
- заходим в систему.
4. Доступ к shell
Открываем терминал:
CTRL + ALT + TДалее:
shell5. Отключение защиты rootfs
Проверяем диски:
fdisk -lОтключаем проверку:
sudo /usr/share/vboot/bin/make_dev_ssd.sh --remove_rootfs_verification --partitions 1 \
&& sudo /usr/share/vboot/bin/make_dev_ssd.sh --remove_rootfs_verification --partitions 3(в зависимости от разметки может потребоваться перебор разделов)
6. Перезагрузка
reboot7. Установка OpenVPN
ChromeOS не содержит OpenVPN по умолчанию в shell-окружении.
Устанавливаем пакет:
sudo emerge openvpnПримечание: в некоторых версиях ChromeOS установка пакетов может быть недоступна. В таком случае используется chroot или Crostini (Linux container).
8. Подготовка конфигурации OpenVPN
Создаём конфигурационный файл:
mkdir -p /home/chronos/user/ovpn
vi /home/chronos/user/ovpn/ovpn.confПример минимального конфига:
client
dev tun
proto tcp
remote ovpn.server.org 443
persist-key
persist-tun
auth-user-pass loginpass.txt
remote-cert-tls server
cipher AES-256-CBCСертификаты и ключи добавляются отдельно:
- ca.crt
- client.crt
- client.key
или встраиваются в конфиг через блоки <ca>, <cert>, <key>.
9. Запуск OpenVPN
Открываем терминал:
CTRL + ALT + Tshell
sudo openvpn --config /home/chronos/user/ovpn/ovpn.confПроверка
- устанавливается VPN-сессия;
- появляется маршрут к внутренним сетям;
- доступ к ресурсам проходит через туннель.
Ограничения
- решение не является штатным;
- требует ручного запуска;
- может ломаться после обновлений ChromeOS;
- не подходит для массового использования.