Показаны сообщения с ярлыком vpn. Показать все сообщения
Показаны сообщения с ярлыком vpn. Показать все сообщения

понедельник, 18 ноября 2019 г.

Domoticz. Уведомления в телеграм через VPN

Ага, спасибо Роскомнадзору.
Посвящается всем тем, кто настроил Domoticz на отправку уведомлений через телеграм и удивился, почему уведомления не прилетают. Да потому что https://api.telegram.org прикрыл РКН.
И тут я начинаю понимать, что иметь свой VPS-сервер за 3 бакса с выделенным IP другой страны, уже не роскошь, а необходимость. 
Раз. Настраиваем любой VPN-сервер, я использовал Pritunl. Через веб-морду в pritunl создадим нового пользователя, качаем ovpn-профиль и копируем его содержимое в настройки нового подключения прямо через веб-морду keenetic'а
Два. Добавляем маршруты для https://api.telegram.org.
2ip.ru показал, что t.me занимает IP-диапазон 149.154.164.0 - 149.154.167.255
Что соответствует маске /22 или 255.255.252.0
В поле "Адрес шлюза" указываем IP который получил keenetic в VPN-сети. 
Проверяем через браузер 
Ага, пошло. Теперь проверяем из Domoticz. Настраиваем секцию "Telegram" и жмем Тест. Прилетело - хорошо, нет читаем журнал событий и смотрим что не так.
Преимущества прямых маршрутов том, что через VPN-подключение идёт только трафик на api.telegram.org. Всё остальное летит напрямую. 

пятница, 23 ноября 2018 г.

Padavan. Переадресация портов через VPN

Столкнулся с небольшой проблемой с пробросом портов через VPN соединение. А конкретно, хотел получать доступ к web-интерфейсам камер видеонаблюдения и sonoff'ам с любого устройства в VPN-сети.
До этого приходилось подключаться к raspberry через xrdp и запускать браузер чтобы попасть в web-морду девайсов. Фу.

Схема сети такая (надеюсь доходчиво, рисую впервые)

Собственно, действующие лица
10.0.0.1 - внутренний IP-адрес роутера
10.0.10.9 - IP-адрес роутера в VPN-сети
10.0.0.201 - IP-адрес sonoff'а в локальной сети

Подключаемся к консоли роутера через ssh и набираем
iptables -t nat -A PREROUTING -d 10.0.10.9 -p tcp -m tcp --dport 10201 -j DNAT --to-destination 10.0.0.201:80
iptables -t nat -A POSTROUTING -d 10.0.0.201 -p tcp -m tcp --dport 80 -j SNAT --to-source 10.0.0.1
iptables -t nat -A OUTPUT -d 10.0.10.9 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.0.0.201
iptables -I FORWARD 1 -i tun0 -o br0 -d 10.0.0.201 -p tcp -m tcp --dport 80 -j ACCEPT
И проверяем в браузере клиента VPN-сети

Сохраним изменения в таблицах маршрутизации, чтобы они не пропали после перезагрузки роутера.
iptables-save

вторник, 9 октября 2018 г.

Padavan. Подключение 4G-модема

Вот где функционал меня поразил в padavan'е, так это в части подключения и настройки 4G-модема. В моём случае, это huawei e3372h-153. Настройка за одну минуту.

Вставляем модем, ждём 10 секунд пока загрузится. Переходим в меню Дополнительно>Приложение USB>Модем


Настройки APN для оператора МТС:
Точка доступа (APN): internet.mts.ru
PIN-код: (по-умолчанию он отключен, оставляем поле пустым)
Имя пользователя: mts
Пароль: mts

Активируем переключатель "Включить USB-модем?" и радуемся доступу в интернет.

Можно переходить к настройке VPN-клиента для доступа к VPN-сети.

Жаль только, что не удалось добиться стабильной работы модема через USB-порт. К несчастью, Nexx WT3020 выдает на порт всего 500мА и при не хватке питания, модем перезагружается. Пришлось ставить USB-хаб с внешним питанием.

пятница, 28 сентября 2018 г.

Hosts. Несколько IP для одного хоста

Это скорее так, заметка.
Когда объединил все компы в одну VPN, встал вопрос как запомнить все эти IP адреса в разных подсетях. Решается все через файлы
Windows - %windir%\system32\drivers\etc\hosts
Ubuntu - etc/hosts

Пример в Windows
10.0.0.10 vaio # Мой домашний сервер
10.0.10.4         vaio # VPN-адрес VAIO
10.0.0.100 pi # Мини-сервер pi
10.0.10.8         pi # VPN-адрес pi

Теперь всегда можно достучаться до сервера по имени.

Чтобы настроить подобное в телефоне на Android, для редактирования файла hosts требуются права root.

вторник, 11 сентября 2018 г.

Pritunl. Установка и настройка в Ubuntu 16.04

Решил наконец связать все устройства в разных домах в одну сеть, при помощи pritunl. Никаких проблем с установкой, а тем более с настройкой и добавлением новых клиентов. Купил для этих целей VPS-сервер за 2,5$ в месяц с выделенным IP-адресом. Как бонус, можно настроить отдельную подсеть для своего VPN-сервера.

Установка pritunl сервера на Ubuntu 16.04
apt update && apt upgrade -y && apt dist-upgrade -y
Необходимые пакеты на будущее
apt install mc nano git curl -y
И сразу корректно настроим время и часовой пояс
dpkg-reconfigure tzdata
Выбираем Europe>Moscow.
sudo tee -a /etc/apt/sources.list.d/mongodb-org-3.6.list << EOF
deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse
EOF
sudo tee -a /etc/apt/sources.list.d/pritunl.list << EOF
deb http://repo.pritunl.com/stable/apt xenial main
EOF
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7568D9BB55FF9E5287D586017AE645C0CF8E292A
sudo apt update
sudo apt --assume-yes install pritunl mongodb-org
sudo systemctl start pritunl mongod
sudo systemctl enable pritunl mongod
Перезагружаемся и переходим на страницу https://ip-address


Возвращаемся в консоль и вводим команду
pritunl setup-key
Вставляем сгенерированный ключ в поле Enter Setup Key, жмем Save.

Получаем сертификат Let's Encrypt
Останавливаем в консоли апач
service apache2 stop
В настройках сервера через веб-морду в поле Web Console Port переназначаем порт на любой акромя 443 или 80, вписываем наше доменное имя в поле "Lets Encrypt Domain".
Запускаем апач
service apache2 start
Жмем Save.
Теперь подключение защищено SSL-сертификатом.

Доменное имя получил на nic.ru, всего 179 рублей в год.

Чтобы весь трафик ходил через VPS-сервер, т.е. с его IP-адреса


Если надо просто объединить всех в одну сеть, оставляем одну Virtual Network 10.0.9.0/24 к примеру

Если не удается увидеть устройства внутри одной сети, проверь настройки IP на каждой машине. На windows были проблемы с автоматическим получением IP-адреса через DHCP. Pritunl-клиент писал, что адрес получен 10.0.8.4, но вот в сетевых подключениях был 169.43.23.231. Помогла банальная перезагрузка клиентской машины.

И вообще, очень часто помогает передернуть сетевое подключение TAP - Windows Adapter.

Установка Pritunl в Ubuntu 18.04 практически ни чем не отличается