@zuart
... уже и не знаю, нуп, похоже ...

Как запретить изменение настроек клиентам OpenVPN?

Приветствую профи. Нужна помощь по OpenVPN.
Суть:
- каждый юзер подключается к серверу OpenVPN с использованием своего сертификата (сертификаты генерятся с паролем)
- в настройках сервера каждому юзеру выделяется свой IP-адрес
- в настройках сервисов подсети, куда попадают клиенты у каждого сервиса есть пул IP-адресов, которым можно использовать этот сервис

Нужно каким-то образом исключить возможность клиентам подменять свой IP-адрес, который ему выставляется сервером (либо выкидывать/не пускать в подсеть в принципе). Потенциально такая вероятность существует, т.к. юзерам дается файл настроек подключения, в который они теоретически могут добавить свои директивы, в том числе задать свой IP-адрес (который может быть выделен для другого юзера) и получить доступ к неположенным сервисам.

Помогите, плз, решить проблему.
  • Вопрос задан
  • 286 просмотров
Решения вопроса 1
@Cr3w
Чисто в теории через iptables можно попробовать разрулить.
Написать скрипт, который при подключении/отключении клиента (параметры client-connect и client-disconnect) будет добавлять метку к пакетам с этого ip (iptables -t mangle -A INPUT -s ${IP} -j MARK --set-mark 0x???). Метка в зависимости от $common_name. Соответственно iptables изначально настроить авторизацию доступа до ресурсов через метки (iptables -t filter -A FORWARD -i tun0 -m mark --mark 0x??? -d ip_ресурса -j ACCEPT) и в принципе можно убирать статическую привязку клиентов по ip. При дисконнекте удалять правила.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
ky0
@ky0
Миллиардер, филантроп, патологический лгун
А зачем вы выдаёте клиентам сетевые конфиги, если можно пушить их с сервера с помощью ccd? Если клиент поменяет IP-адрес на интерфейсе, у него просто пакеты ходить не будут.
Ответ написан
@mureevms
Интересный вопрос. Мне кажется, что в данной формулировке никак.
Я бы решил задачу добавлением второго (третьего...n) инстанса OpenVPN с аналогичными настройками и отличием только в подсети. Ну и порт тоже придется изменить у каждого последующего инстанса. Клиентам раздавать\ограничивать доступ до сервисов из нужных подсетей, а не IP адресов, как это сделано в текущий момент. Т.е. при смене адреса клиентом он будет ограничен правилами подсети и смена адреса потеряет смысл.
Ответ написан
Комментировать
gbg
@gbg Куратор тега Системное администрирование
Любые ответы на любые вопросы
Ваша задача не имеет решения - всегда найдется хитрый юзер с патченным клиентом, который плевать хотел на ваши запреты.
Разграничение доступа по адресам смысла не имеет - для этого есть другие средства, TLS, вот это вот все.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы