Netgate SG-1000 microFirewall

Author Topic: pfSense+VPN по 80 порту для определенных сайтов  (Read 672 times)

0 Members and 1 Guest are viewing this topic.

Offline Tolyan63

  • Newbie
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Всем доброго времени суток. Наткнулся в интернетах на интересную вещь про Микротик, и захотелось узнать можно ли реализовать на pfSense.
Мысль такова:
на данный момент имеем pfSense 2.4.1 на виртуальной машине Hyper-V , работает как шлюз. Подключение к провайдеру по PPPoE.
Возможно ли поверх wan  создать подключение к какому нибудь серверу VPN чтобы клиенты находившиеся за pfSense (во внутренней сети) при попытке выйти на определенный ресурс по 80 порту запрос шел по VPN.
То есть если пользователь в адресной строке указывает какой-либо адрес (goggle.ru yandex.ru) он просто идет по wan, а если пользователь идет на сайт из определенного списка (rutracker.org nnm-club.name) запрос шел уже через VPN.
Реально ли такое организовать ?
Зы, pfsense используется в домашней сети вместо роутера.
Зы.Зы. Я совсем новичок в pfsense

Offline pigbrother

  • Hero Member
  • *****
  • Posts: 1807
  • Karma: +228/-2
    • View Profile
Если коротко - да.
Чуть длиннее.
1. Настраиваем VPN.
2. Если это Open VPN - назначаем соединению интерфейс.
3. Узнаем IP нужных сайтов.
4. Создаем из этих IP алиас
5. Создаем на LAN правило выше, чем "Default allow LAN to any rule"
в правиле:
Source - LAN net
Destination - алиас с вашими IP сайтов.
порты можно не указывать - any
жмем кнопку Advanced Options
Gateway меняем с default на шлюз вашего VPN.
 

Offline werter

  • Hero Member
  • *****
  • Posts: 5183
  • Karma: +248/-15
    • View Profile
Доброго.
Есть нюансы. Если ваш пров-р блокирует доступ к опред. ресурсам на уровне dns, то и запросы dns прийдется заворачивать в туннель.

Quote
(rutracker.org nnm-club.name) запрос шел уже через VPN.
Пользуйтесь анонимайзерами. Есть же Opera turbo и куча готовых дополнений для chrome, firefox. Это проще.

Offline Tolyan63

  • Newbie
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Пользуйтесь анонимайзерами. Есть же Opera turbo и куча готовых дополнений для chrome, firefox. Это проще.
Понимаю что проще, но хочется попробовать именно таким образом обходить все блокировки, не переключая всякие расширения.

 Поэтому и прошу у знающих людей помощи)

Если коротко - да.
Чуть длиннее.
1. Настраиваем VPN.
2. Если это Open VPN - назначаем соединению интерфейс.
3. Узнаем IP нужных сайтов.
4. Создаем из этих IP алиас
5. Создаем на LAN правило выше, чем "Default allow LAN to any rule"
в правиле:
Source - LAN net
Destination - алиас с вашими IP сайтов.
порты можно не указывать - any
жмем кнопку Advanced Options
Gateway меняем с default на шлюз вашего VPN.
 

а можно все еще длиннее? я что то даже не нашел как создать VPN  как клиента.....

Offline pigbrother

  • Hero Member
  • *****
  • Posts: 1807
  • Karma: +228/-2
    • View Profile
а можно все еще длиннее? я что то даже не нашел как создать VPN  как клиента.....

Длиннее - это пости сделать вместо вас. ;)

Pfsense поддерживает как VPN-клиентов OpenVPN, L2TP и IPsec.
Ваш VPN-провайдер должен поддерживать что-то из них и иметь образцы настроек под разные ОС\роутеры. Этих образцов обычно достаточно, чтобы настроить клиента в pfSense.

OpenVPN настраивается тут:
VPN-OpenVPN-Clients

после создания OpenVPN - интерфейс назначается\включается  в
Interfaces-Assign-Available network ports.

L2TP - тут:
Interfaces-Assign-PPPs
после создания L2TP - назначается\включается  в
Interface-Assign-Available network ports.

Важное замечание. При создании L2TP привязывайте его к LAN. В прежних версиях была ошибка - при привязке L2TP к WAN pfSense уходил в циклическую перезагрузку. И справлена ли она теперь - не знаю. 

Offline Tolyan63

  • Newbie
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile

Длиннее - это пости сделать вместо вас. ;)



Не то чтобы за нас сделать, но помощь Ваша нужна и важна)) Для этого я думаю мы и пользуемся форумом, чтобы новички как я, могли получить помощь, у Вас - знатоков))

Настроил OpenVPN, захожу status OpenVPN показывает Local address и прочие. Иду в Available network ports:
создаю новой интерфейс
OPT1  ovpnc1
включаю его , делаю рестарт службы OpenVPN и захожу Status Gateways там появляется интерфейс OPT1 IP адреса, вроде все как нужно. но у меня перестает работать интернет , до создания  правил я даже не добирался еще.
Где моя ошибка?

для теста использую этот ресурс

Зы. Спасибо Вам за помощь

Offline pigbrother

  • Hero Member
  • *****
  • Posts: 1807
  • Karma: +228/-2
    • View Profile
Попробуйте для начала настроить Open VPN для единственного клиента, под Windows, например. Убедитесь, что он может ходить в интернет с новым IP. Зафиксируйте правильные настройки, для pfSense они мало будут отличаться.

Open VPN настолько богат возможностями и их настройками, что ошибок избежать трудно.

Quote
для теста использую этот ресурс
Ваш trust.zone не пускает без регистрации даже на страницу с документацией.

Если вы еще не успели оплатить его услуги - и нужен надежный зарубежный ресурс - смените его на, например этот,

вот как на нем выглядит нужная вам информация:
https://rus.privateinternetaccess.com/pages/client-support/pfsense.

Или этот:
https://airvpn.org/topic/17444-how-to-set-up-pfsense-23-for-airvpn/
и т.д.

Сразу скажу - эти инструкции в чистом виде вам могут не подойти, но общее представление составить помогут. По ним весь трафик заворачивается в VPN.
« Last Edit: November 22, 2017, 01:24:18 pm by pigbrother »

Offline werter

  • Hero Member
  • *****
  • Posts: 5183
  • Karma: +248/-15
    • View Profile
Доброго.
Не то чтобы за нас сделать, но помощь Ваша нужна и важна))
Цикл статей по настройке пф https://nguvu.org/. Там и про опенвпн есть. В закладки.

Offline Tolyan63

  • Newbie
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
всем доброго времени суток. Не могу ни как правильно создать VPN-OpenVPN-Clients. Подскажите пожалуйста:
использую для пробы и тд ресурс http://www.vpnbook.com/freevpn
взял для пробы конфиг:

client -это я думаю обозначения  клиент
dev tun0 - режим работы
proto udp - протокол
remote 37.187.158.97 53 -сервера и порт
remote fr1.vpnbook.com 53 -сервера и порт
resolv-retry infinite
nobind
persist-key
persist-tun
auth-user-pass метод авторизации , запрашивать логин\пароль
comp-lzo
verb 3
cipher AES-128-CBC -тип шифрования
fast-io
pull
route-delay 2
redirect-gateway

Собственно остальное куда вписывать ?
не поднимается у меня соединения когда захожу в Status\OpenVPN

Помогите пожалуйста разобраться ...

Offline werter

  • Hero Member
  • *****
  • Posts: 5183
  • Karma: +248/-15
    • View Profile
Доброго.
Скрины того, что настраивали. Логи покажите.

Offline Tolyan63

  • Newbie
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Re: pfSense+VPN по 80 порту для определенных сайтов
« Reply #10 on: December 16, 2017, 08:54:07 am »
Скрины того что вписал в настройки








Offline werter

  • Hero Member
  • *****
  • Posts: 5183
  • Karma: +248/-15
    • View Profile
Re: pfSense+VPN по 80 порту для определенных сайтов
« Reply #11 on: December 16, 2017, 09:28:31 am »
У вас стоит галка на Automatic generate tls key. Снимите ее. Внесите key, к-ый предоставляет провайдер. Он в файле настроек -----BEGIN RSA PRIVATE KEY-----
Директивы в Advanced configuration разделяются ; , а не новой строкой (там об этом написано)
Оставьте в Advanced configuration только pull; route-delay 2; redirect-gateway
Поставьте галку на UDP fast i\o
Send\Receive buffer 512 KiB (поиграться в процессе)
Verbosity level 3\5

И да. Redirect-gateway в Advanced configuration завернет весь трафик в туннель.

Offline Tolyan63

  • Newbie
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Re: pfSense+VPN по 80 порту для определенных сайтов
« Reply #12 on: December 17, 2017, 02:04:32 am »
У вас стоит галка на Automatic generate tls key. Снимите ее. Внесите key, к-ый предоставляет провайдер. Он в файле настроек -----BEGIN RSA PRIVATE KEY-----
Спасибо
Теперь я так понимаю в поле TLS Key я вставляю из файла настроек ключ начинающийся с -----BEGIN RSA PRIVATE KEY-----
но тогда появляется ниже поле Shared Key которое уже заполнено, при попытке сохранить настройки, ругается на "The field 'TLS Key' does not appear to be valid"
Что я опять делаю не так ?



Offline werter

  • Hero Member
  • *****
  • Posts: 5183
  • Karma: +248/-15
    • View Profile
Re: pfSense+VPN по 80 порту для определенных сайтов
« Reply #13 on: December 17, 2017, 03:24:03 am »
Доброго.
Похоже, что мой промах. Попробуйте галку c TLS вообще снять.
https://forum.pfsense.org/index.php?topic=131255.0
https://forum.pfsense.org/index.php?topic=130713.0
https://forum.pfsense.org/index.php?topic=105810.0
« Last Edit: December 17, 2017, 03:29:36 am by werter »

Offline Tolyan63

  • Newbie
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Re: pfSense+VPN по 80 порту для определенных сайтов
« Reply #14 on: December 17, 2017, 06:01:44 am »
Доброго.
Похоже, что мой промах. Попробуйте галку c TLS вообще снять.
https://forum.pfsense.org/index.php?topic=131255.0
https://forum.pfsense.org/index.php?topic=130713.0
https://forum.pfsense.org/index.php?topic=105810.0
Спасибо за помощь!, воспользовался другим ресурсом vpn подключение поднялось, единственное не понимаю зачем копии правил нужны в Firewall\NAT\Outbound? если я отдельно правила для lan с указанием шлюза создаю
Сейчас так
Firewall\NAT\Outbound


а в разделе правил создал два правила, одно все через pppoe_gateway, второе на запрещенные сайты через opnvpn


На данный момент все работает как и хотел, трафик ходит на прямую, кроме перечня ресурсов, которые я добавил в алиас.
Все верно мной сделано ? или что то не так ?