LINUX.ORG.RU

OpenVPN и ограничение доступа пользователю по ip

 ,


0

2

Всем привет! Вопрос такой: пользователю предоставлен доступ к сети вида (192.168.1.0) через OpenVPN. Возможно средствами OpenVPN (в конфиге на сервере) ограничить этому пользователю доступ ко всем ресурсам сети (вклюючая веб интерфейсы), кроме одного ip (192.168.1.50)?


Фразу

пользователю предоставлен доступ к сети

надо «расшифровать», важны подробности. «Через OpenVPN» - ничего не поясняет, так как не прилагаются ни конфигурация сервера, ни конфигурация пользователя.

anonymous
()

Выдай ему маршрут не 192.168.1.0/24, а 192.168.1.50/32. Правда, если на том конце не дибил, это не поможет.

Anoxemian ★★★★★
()
Ответ на: комментарий от anonymous

Сервер:

config openvpn 'vpnsrv'

option enabled '1'

option dev 'ovpns0'

option port '1194'

option proto 'udp'

option comp_lzo 'yes'

option keepalive '10 120'

option persist_key '1'

option persist_tun '1'

option ca '/etc/openvpn/ca.crt'

option cert '/etc/openvpn/my-server.crt'

option key '/etc/openvpn/my-server.key'

option dh '/etc/openvpn/dh2048.pem'

option tls_auth '/etc/openvpn/tls-auth.key 0'

option mode 'server'

option tls_server '1'

option topology 'subnet'

option route_gateway 'dhcp'

option client_to_client '1'

option cipher AES-256-CBC

option user 'nobody'

option group 'nogroup'

option 'ifconfig_pool_persist' '/etc/openvpn/ipp.txt'

option log_append '/tmp/openvpn.log'

option status '/tmp/openvpn-status.log'

option verb 3

option dev_type 'tun'

option server '192.168.200.0 255.255.255.0'

list push 'comp-lzo yes' list push 'persist-key'

list push 'persist-tun'

list push 'topology subnet'

list push 'route 192.168.1.0 255.255.255.0'

Клиент:

client

dev tun

proto udp

fast-io

remote ip

remote-cert-tls server

nobind

persist-key

persist-tun

comp-lzo no

verb 3

key-direction 1

cipher

AES-256-CBC

auth-nocache

NewNew
() автор топика
Ответ на: комментарий от slowpony

Спасибо большое, так заработало! А вот ещё вопрос, если нужно чтобы у всех был доступ к подсети 192.168.1.0/24, а у одного только к 192.168.1.50, пробовал так:

Сервер:

list push 'route 192.168.1.0 255.255.255.0'

Каталог пользователя /etc/openvpn/ccd:

push 'route 192.168.1.50 255.255.255.255' ifconfig-push 192.168.200.10 255.255.255.0

Но что-то не работает.

NewNew
() автор топика
Ответ на: комментарий от NewNew

Это уже очень шаткие костыли получаются: убираем пуши с сервера совсем, а клиентам генерируем и раздаем config.ovpn каждому свой. Проблемы ну прям очевидные на выходе - никто не мешает клиенту добавить руками какой он хочет маршрут и получить в итоге доступ. Поэтому лучше по старинке, таблесами на целевом хосте ограничь, кому можно, а кому нельзя.

slowpony ★★★★★
()
Ответ на: комментарий от slowpony

Спасибо. Тоже уже думал насчёт iptables, но до сих пор руки до них недошли (да и не особо в них разбираюсь).

NewNew
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.