Я хочу соединить два удаленных сайта через безопасный туннель точка-точка. Я использую OpenVPN, но он немного ненадежный и действительно больше подходит для подключения большого количества пользователей, чем для связи точка-точка.
У Redhat есть несколько хороших встроенных скриптов для построения туннелей Point to Point IPSEC, но я не нашел ничего похожего в Ubuntu.
Любые инструкции о том, что здесь использовать и как это делать? Я хотел бы сделать его максимально простым, но при этом иметь базовую безопасность PSK.
ssh 4.3+ может создавать правильные туннели VPN. tun0 и все такое.
Предполагая следующие сетевые настройки:
Ваш публичный IP: 192.168.1.1
Ваша частная сеть: 192.168.50.0/24
Удаленный общедоступный IP-адрес: 192.168.2.1
Удаленная частная сеть: 192.168.51.0/24
1) Установите StrongSwan с помощью «sudo apt-get install strongswan»
2) Настройте секретный ключ с помощью sudo vim /etc/ipsec.secrets:
192.168.1.1 192.168.2.1: PSK "секретный_пароль"
3) Настройте маршруты с помощью "sudo vim /etc/ipsec.conf":
соучастник
слева = 192.168.1.1
справа = 192.168.2.1
authby = секрет
ike = 3des-sha1-modp1024
esp = 3des-sha1
pfs = да
auto = start
conn local_to_partner
leftsubnet = 192.168.1.1 / 32
rightubnet = 192.168.51.0 / 24
также = партнер
conn partner_to_local
leftsubnet = 192.168.50.0 / 24
rightubnet = 192.168.2.1 / 32
также = партнер
Вы можете использовать openVPN для получения конфигурации сайта для сайта. Вам нужно будет настроить каждую из машин Linux как маршрутизаторы и создать статические маршруты во внутренних сетях, чтобы указать на машины Linux. Вот базовый дизайн:
У каждой локальной сети должна быть собственная IP-подсеть:
LAN1: 192.168.1.0/24
LAN2: 192.168.2.0/24
Скажем, IP-адреса такие:
ПК1 192.168.1.10
GW1 192.168.1.1
Linux1 192.168.1.100
--- подключен через VPN к другой сети с адресом 192.168.2.101
ПК2 192.168.2.10
GW2 192.168.2.1
Linux2 192.168.2.100
если вы создаете статические маршруты в каждом из своих маршрутизаторов, чтобы указать на другую локальную сеть, вы сможете достичь того, что ищете:
Маршрут по GW1:
Назначение 192.168.2.0/24
Шлюз: 192.168.1.100
Рут на GW2:
Назначение 192.168.1.0/24
Шлюз: 192.168.2.100
Затем, когда ПК1 пингует ПК2, пакет будет перенаправлен на шлюз по умолчанию 192.168.1.1, который перешлет его на Linux-машину (1.100), которая отправит его через туннель в LAN2.
Вы можете использовать SSH Tunnel
особенность для этого. Если у вас уже настроен SSH (очень вероятно), это будет намного проще, чем альтернативы для простого подключения двух хостов.
Я бы также предложил использовать функцию туннелей SSH. Его легко настроить, и, поскольку вы упомянули о запуске ubuntu, есть даже Диспетчер туннелей SSH.
Почему вы не можете использовать то, что работает с Redhat, в другой системе Linux? В глубине души это не разные ОС.
Позвольте мне подробнее остановиться на этом.
Раньше я использовал IPSEC для туннелирования всего трафика между двумя сайтами, и это было несложно настроить даже без инструментов для этого. Если есть сценарии, которые работают с Redhat, не могли бы вы просто украсть их и запустить на других вариантах Linux? Конечно, они не так уж и непохожи.
Я продвинулся намного дальше, используя пакеты openswan и strongswan. У меня все еще нет туннеля, но, похоже, я хочу использовать эти инструменты. Оба варианта довольно плохо документированы, и кажется, что существует большое количество вариантов без явных причин использовать один вместо другого.
Итак, переосмыслим. Кто-нибудь успешно установил openswan / strongswan на Ubuntu с помощью ubuntu debs? Любые советы относительно «IKE против IKE2», «Метод шифрования», «Конфигурация PSK», динамическое изменение порта и т. Д.
Спасибо..
OpenVPN действительно является одним из наиболее распространенных, наиболее понятных и задокументированных методов для подобного связывания хостов серверов.