Strongswan, служба доступа, работающая на том же сервере, что и сервер IPsec.

Вопрос или проблема

Я настраиваю IPsec VPN для нескольких удаленных клиентов к одному серверу. Конечная цель состоит в том, чтобы все клиенты могли общаться только с сервером и получать доступ к портам на сервере для доступа к услугам. Моя текущая конфигурация назначает клиентам хорошие IP-адреса, однако я не могу получить доступ к IP-адресу сервера или к любым открытым портам на нем. Что я неправильно настроил?

Конфигурация сервера

conn ikev2-vpn
    auto=add
    compress=no
    type=tunnel
    keyexchange=ikev2
    fragmentation=yes
    forceencaps=yes
    dpdaction=clear
    dpddelay=300s
    rekey=no
    left=[SERVER]
    leftid=[SERVER]
    leftcert=server-cert.pem
    leftsendcert=always
    leftsourceip=10.10.10.1
    leftsubnet=10.10.10.1/24
    right=%any
    rightid=%any
    rightauth=eap-mschapv2
    rightsourceip=10.10.10.2/24
    rightdns=8.8.8.8
    rightsendcert=never
    eap_identity=%identity
    ike=chacha20poly1305-sha512-curve25519-prfsha512,aes256gcm16-sha384-prfsha384-ecp384,aes256-sha1-modp1024,aes128-sha1-modp1024,3des-sha1-modp1024!
    esp=chacha20poly1305-sha512,aes256gcm16-ecp384,aes256-sha256,aes256-sha1,3des-sha1!

Конфигурация клиента

conn ikev2-rw
    right=vpn.fpmr.nl
    # Это должно соответствовать значению `leftid` в конфигурации вашего сервера
    rightid=[SERVER]
    rightsubnet=0.0.0.0/0
    rightauth=pubkey
    leftsourceip=%config
    leftid=[ID]
    leftauth=eap-mschapv2
    eap_identity=%identity
    auto=start

Большое спасибо.

Ответ или решение

Решение проблемы с доступом на сервер в конфигурации Strongswan IPsec VPN

Введение

Настройка VPN через IPsec с использованием Strongswan — это эффективный способ предоставить удалённым клиентам безопасный доступ к ресурсам сервера. Однако иногда возникают проблемы, которые могут быть связаны с конфигурацией как на стороне сервера, так и на стороне клиента. В данном случае мы обсудим возможные ошибки и решение проблемы доступа к серверу для удалённых клиентов.

Основные аспекты конфигурации

Ваш текущий конфигурационный файл для сервера и клиента выглядит достаточно хорошо на первый взгляд. Однако, есть несколько ключевых моментов, которые могут влиять на доступ пользователей к IP-адресу сервера и его открытым портам.

  1. Настройка leftsubnet и rightsubnet:

    • Убедитесь, что вы правильно определили подсети для серверной и клиентской стороны. В вашем настройке у сервера указана leftsubnet=10.10.10.1/24, что ограничивает доступ клиентов только к адресу 10.10.10.1. Вы можете попробовать изменить leftsubnet на более обширную подсеть, например, leftsubnet=10.10.10.0/24, чтобы клиенты могли обращаться ко всем IP-адресам в этой подсети.
  2. Правила маршрутизации:

    • Убедитесь, что маршрутизация на вашем сервере настроена правильно. Вам может понадобиться добавить правила iptables (если они используются), чтобы разрешить трафик от клиентов к серверу. Например:
      iptables -A INPUT -i ipsec0 -j ACCEPT
      iptables -A FORWARD -i ipsec0 -j ACCEPT
  3. Проверка NAT:

    • Если сервер работает за NAT, может потребоваться включить IP forwarding и настроить MASQUERADE:
      echo 1 > /proc/sys/net/ipv4/ip_forward
      iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  4. Порты и сервисы:

    • Убедитесь, что необходимые порты на сервере открыты и доступны для входящего трафика. Вы можете использовать nmap или telnet для проверки доступности портов.
  5. Логи:

    • Используйте логи для отладки. Strongswan имеет хороший механизм логирования, который может помочь определить, почему соединение не проходит. Убедитесь, что уровень логирования достаточно высокий:
      charon {
      filelogger {
          default { priv,auth }
          configuration { filelog }
          log_level = 2
      }
      }

Заключение

Для успешного устранения неполадок и настройки доступа клиентов к вашему серверу через IPsec VPN с использованием Strongswan, необходимо внимательно рассмотреть конфигурации на стороне сервера и клиента, правила маршрутизации, а также настройки iptables. Старайтесь активно использовать логи, чтобы выявлять и анализировать любые ошибки, возникающие при подключении. Следуя этим рекомендациям, вы сможете обеспечить доступ клиентов к необходимым ресурсам на сервере и настроить безопасное подключение к вашим сервисам.

Оцените материал
Добавить комментарий

Капча загружается...