
У меня есть клиент SMB, на котором мне нужно установить решение VPN. У меня есть один сервер CentOS с 3 сетевыми подключениями, одно из которых — подключение к Интернету через маршрутизатор. У него адрес 10.xxx (NAT-преобразуется маршрутизатором), второе подключение — к 192.168.3.x, а третье — к 192.168.4.x. Я хочу, чтобы сотрудники SMB могли подключаться к серверу из Интернета, когда они в дороге, и могли получать доступ к своим сетевым ресурсам, как будто они находятся за офисными компьютерами.
Предполагается, что VPN-сервер (то есть машина Centos) будет пропускать весь VPN-трафик через брандмауэр.
Я бы постарался сформулировать вопросы как можно более общим образом:
- Каким должен быть IP-адрес клиентов? (мы не используем DHCP в сети).
- Как заставить сервер/клиент решать, к какой сети он должен принадлежать, на основе IP-адреса? (Я имею в виду версии 4.x или 3.x).
- Лучше ли размещать решение VPN на стороне маршрутизатора, хотя маршрутизатор не обладает такой же мощностью, как сервер (я знаю, что VPN подразумевает шифрование и дешифрование)?
Я хотел бы получить общее представление о конфигурации, которую необходимо реализовать как на клиентах, так и на сервере.
Как видно из названия, я планирую использовать OpenVPN.
Обновлять:
Чтобы прояснить вопрос, я хочу, чтобы работники малого бизнеса могли подключаться к своей домашней сети через Интернет и получать доступ к ресурсам сети, находясь в любой точке мира.
решение1
Итак, после трех вечеров мне удалось установить и правильно настроить его в тестовой среде, поэтому здесь я могу опубликовать некоторые подсказки и советы по результатам своих исследований и, надеюсь, ответить на свои вопросы.
Первое, что вам следует сделать, это получить пример файла конфигурации для вашего решения OpenVPN-сервер/клиент, это значительно облегчит вам жизнь. Вы можете получить эти файлы на машине Linux здесь./usr/share/doc/openvpn/sample-config-files/
(если у вас возникнут проблемы с их поиском, просто сделайте это find / -name client.conf
) и скопировать их в /etc/openvpn/
, а затем следуйте замечательной инструкции.гидс сайта OpenVPN, требуется внести всего 3 изменения в файл примера, и все готово.
Чтобы ответить на мои вопросы:
Сервер OpenVPN по сути создает собственную сеть, которая не является частью текущих сетей, к которым он подключен, поэтому ваш клиент автоматически получает IP-адрес из этой сети от сервера OpenVPM, и для того, чтобы ваш клиент мог подключиться к другим сетям, подключенным к серверу OpenVPN, вы добавляете в файл конфигурации сервера эту строку
push "route 192.168.3.0 255.255.255.0"
для каждой сети, с которой вы хотите, чтобы клиент взаимодействовал. Таким образом, когда ваш клиент подключается к серверу, он получает обновленную сервером таблицу маршрутизации и может взаимодействовать с машинами в указанной сети.см. ответ 1.
Я протестировал его с простым маршрутизатором DD-WRT с возможностями сервера OpenVPN, но он кажется медленным, когда у вас больше 3 пользователей, поэтому лучше получить