vlad49 Posted January 17, 2023 Share Posted January 17, 2023 Требуется подключиться к офисной сети по IPSec (по общему ключу), причем таким образом, чтобы весь трафик отправлялся в это соединение - включая локальную сеть и интернет. При этом на роутере нужно выключить NAT - доступ в интернет также осуществляется через маршрутизатор офисной сети. А также из офисной сети должны быть прозрачно видны все устройства за кинетиком. К сожалению, с наскока настроить это на кинетике не получилось: Офисный ipsec-сервер честно выдает leftsubnet 0.0.0.0/0, однако кинетик отказывается принимать такое значение. А в настройках IPSec можно задать минимальную маску /4 - что к сожалению не годится. Через IPSec должен пойти весь трафик. Неизвестно, каким образом выключить NAT на кинетике. Есть ли вариант решения этой задачи? Другие туннели использовать к сожалению не получится. Пока кроме как поставить mikrotik в разрыв больше ничего в голову не приходит. Не думал, что кинетик не умеет такой простой функционал. Выбрали его из-за wifi-функционала и как раз навороченных vpn-опций. Quote Link to comment Share on other sites More sharing options...
gaaronk Posted January 17, 2023 Share Posted January 17, 2023 Офисный ipsec-сервер на чем настроен? Quote Link to comment Share on other sites More sharing options...
krass Posted January 17, 2023 Share Posted January 17, 2023 25 минут назад, gaaronk сказал: Офисный ipsec-сервер на чем настроен? Предположу что микрот... Quote Link to comment Share on other sites More sharing options...
vlad49 Posted January 17, 2023 Author Share Posted January 17, 2023 53 минуты назад, gaaronk сказал: Офисный ipsec-сервер на чем настроен? Strongswan на linux. Вот конфиг: left = xx.xx.xx.xx right = %any authby = psk leftid = user@router.server.local rightid = root@user.server.local leftsubnet = 0.0.0.0/0 rightsubnet = 192.168.57.0/24 type = tunnel ike = aes256-aes192-aes128-sha256-sha384-modp2048-modp3072-modp4096-modp8192,aes128gcm16-sha384-x25519! esp = aes256-aes192-aes128-sha256-sha384-modp2048-modp3072-modp4096-modp8192,aes128gcm16-sha256-sha384-x25519! auto = add Здесь 192.168.57.0 - внутренняя сеть кинетика. Он прекрасно подключается к этому серверу, однако кроме локалки, которую ему укажешь в свойствах IPsec-подключения (с минимальной маской /4) ничего в туннель отправлять не хочет. А ведь надо ему как-то сказать, чтобы еще трафик в этом туннеле не натился.. Микрот стоял до этого, с ним всё работало. Но wifi в нем никакой. Не хочется теперь городить зоопарк из роутеров. Quote Link to comment Share on other sites More sharing options...
gaaronk Posted January 18, 2023 Share Posted January 18, 2023 Сделайте на кинетике маршрут в сторону Интернет только для адреса /32 вашего сервера Постройте GRE туннель, его и пошифруйте IPSec'ом И уже в GRE туннель настройте маршрут по умолчанию. Настройку линукса и кинетика могу подсказать если что - пишите в личку. 1 Quote Link to comment Share on other sites More sharing options...
vlad49 Posted January 18, 2023 Author Share Posted January 18, 2023 3 часа назад, gaaronk сказал: Постройте GRE туннель, его и пошифруйте IPSec'ом Большое спасибо за совет, все получилось. Сделал туннель ipip. Только осталось два момента: - IPSec работает только в режиме ikev1. А вот ikev2 ни в какую не захотел работать. Подозреваю, что дело в опции "ID интерфейса" у кинетика. Куда его указать в ipsec.conf? Strongswan ругается "no matching peer configs found xx.xx.xx.xx[IPIP0] .. xx.xx.xx.xx[IPIP0]". - NAT отключается только глобально на кинетике (no nat Home). Это означает, что в случае падения туннеля никакого интернета через публичный интерфейс не будет. Есть ли возможность настроить отключение ната только на интерфейсе ipip? Quote Link to comment Share on other sites More sharing options...
gaaronk Posted January 18, 2023 Share Posted January 18, 2023 Для автотуннеля на IPIP интерфейсе, со стороны Strongswan описывайте так leftauth=psk leftid=userfqdn:IPIP0 leftsubnet=%dynamic[ipip] right=%any rightauth=psk rightid=userfqdn:IPIP0 rightsubnet=%dynamic[ipip] ipsec.secrets @@IPIP0 @@IPIP0 : PSK "<ключ>" Вот так, с двумя собачками. NAT no nat Home и потом ip static Home <интерфейс к провайдеру> у меня ip static Home PPPoE0 1 Quote Link to comment Share on other sites More sharing options...
gaaronk Posted January 18, 2023 Share Posted January 18, 2023 И на кинетике на интерфейсе выставит как минимум ipsec proposal lifetime 172800 ipsec transform-set lifetime 86400 потому что после четырех пересогласований ESP SA кинетик туннель полностью перестраивает с нуля. это бага. в 4.0 уже пофикшена А на strongswan ikelifetime=48h keyexchange=ikev2 keyingtries=1 lifetime=30h inactivity=10m rekeyfuzz=0% margintime=5m type=transport 1 1 Quote Link to comment Share on other sites More sharing options...
dotcom Posted January 18, 2023 Share Posted January 18, 2023 Присоединюсь к вопросу тунель на на strongswan под linux keenetik как клиент устаналивает соединение, но маршруты с сервера не берет вообще никакие, руками если на кинетике маршруты писать все работает. На телефоне/маке все отлично, утройство забирает предлагаемые маршруты с сервера. Так и должно быть? ipsec.conf на linux leftsubnet=74.119.76.0/22, 69.171.224.0/19, .... Quote Link to comment Share on other sites More sharing options...
gaaronk Posted January 18, 2023 Share Posted January 18, 2023 это Site-to-Site VPN или кинетик настроен как VPN-подключения? что говорит вывод команды show ipsec ? Quote Link to comment Share on other sites More sharing options...
dotcom Posted January 18, 2023 Share Posted January 18, 2023 (edited) клиент-сервер. домашний кинетик по впн соединяется с сервером/gw в европе и часть запрещенного трафика с домашней сети роутит туда (config)> show ipsec ipsec_statusall: Status of IKE charon daemon (strongSwan 5.9.7, Linux 4.9-ndm-5, mips): uptime: 10 seconds, since Jan 18 16:51:55 2023 worker threads: 4 of 9 idle, 5/0/0/0 working, job queue: 0/0/0/0, scheduled: 5 loaded plugins: charon ndm-pem random save-keys nonce x509 pubkey pkcs7 pem openssl pkcs8 xcbc cmac hmac ctr attr kernel-netlink resolve socket-default stroke vici updown eap-identity eap-md5 eap-mschapv2 eap-dynamic eap-radius eap-peap xauth-generic xau th-eap error-notify systime-fix unity counters Listening IP addresses: 100.126.99.131 192.168.100.1 10.1.30.1 10.10.10.2 Connections: IKE0: 0.0.0.0/0, ::/0...1x5.105.108.x7 IKEv2, dpddelay=30s IKE0: local: [%any] uses EAP_MSCHAPV2 authentication with EAP identity 'dt' IKE0: remote: [%any] uses public key authentication IKE0: child: dynamic === 0.0.0.0/0 TUNNEL, dpdaction=start Security Associations (1 up, 0 connecting): IKE0[1]: ESTABLISHED 9 seconds ago, 100.126.99.131[100.126.99.131]...1x5.105.108.x7[1x5.105.108.x7] IKE0[1]: IKEv2 SPIs: f3da0d06c7c5c5aa_i* e27d9569107cca71_r, rekeying in 7 hours IKE0[1]: IKE proposal: AES_CBC=256/HMAC_SHA1_96/PRF_HMAC_SHA1/MODP_1024 IKE0{1}: INSTALLED, TUNNEL, reqid 1, ESP in UDP SPIs: c7417d09_i cb49d880_o IKE0{1}: CHACHA20_POLY1305, 0 bytes_i, 0 bytes_o, rekeying in 7 hours IKE0{1}: 10.10.10.2/32 === 179.60.192.0/22 185.60.216.0/22 185.89.216.0/22 204.15.20.0/22 ...........{и так далее} маршруты что дает сервер клиенту, но в show ip route их нет IKE keys: 490s ago, value:b02e5d537e5b6f4e,f8dbf42582b9bc1a,6911c7cc69f7dba8ff37a4b649f5678448fbb843747a09246956b3ff6738f3c2,583bb8eaae6cd1bfd2dbf0029c13bcd943aa3873b2f55fe97182e424e1e021e5,"AES-CBC-256 [RFC3602]",a9f48c4511f5f4786eeda2f943260fd614a7dcff,5db5e7c876696624bfca5674464f350934511805,"HMAC_SHA1_96 [RFC2404]" 138s ago, value:1fb843bab4298485,c02cdde859f4a29d,fd5c1e1e4b47f4745a21b539f931a2f6f8e6372a888cc2fc11454eb0214f9375,4b04288746f637a1f65429cb347e99ebe428e33b0996938b517af3ff72a4c502,"AES-CBC-256 [RFC3602]",7e530a77bba2f01fca989c8ac3a0837e3ba32614,6c67f49f620b1f72cd25e9e72d352ff2aef4dada,"HMAC_SHA1_96 [RFC2404]" 10s ago, value:f3da0d06c7c5c5aa,e27d9569107cca71,288d702b703b7392b2c7141a274b77c915640a7a87ce3c72fc3142126ca9fe3f,7ce45395467ed3a9b95b0d4761dc70238e520a1eb151f4df5a8c0c6c0808c149,"AES-CBC-256 [RFC3602]",f3951d85f723305b8ab52b1daaebb4caa105c30b,fc1ac943203a8ed4cf331c412c4d99dba3fa8b92,"HMAC_SHA1_96 [RFC2404]" SA keys: Edited January 18, 2023 by dotcom Quote Link to comment Share on other sites More sharing options...
vlad49 Posted January 18, 2023 Author Share Posted January 18, 2023 7 часов назад, gaaronk сказал: leftid=userfqdn:IPIP0 Вот за решение этого ребуса отдельное спасибо! Сейчас работает на static ip в режиме ikev1, но скоро нужно будет на динамик ставить, обязательно попробую. Надеюсь заработает Quote Link to comment Share on other sites More sharing options...
gaaronk Posted January 18, 2023 Share Posted January 18, 2023 В dynamic по другому немного. Пишите, подскажу Quote Link to comment Share on other sites More sharing options...
gaaronk Posted January 19, 2023 Share Posted January 19, 2023 16 hours ago, dotcom said: клиент-сервер. домашний кинетик по впн соединяется с сервером/gw в европе и часть запрещенного трафика с домашней сети роутит туда (config)> show ipsec А еще можно вывод show ip route show ip route table 248 Quote Link to comment Share on other sites More sharing options...
dotcom Posted January 19, 2023 Share Posted January 19, 2023 44 minutes ago, gaaronk said: А еще можно вывод show ip route show ip route table 248 вот. маршруты прописанные руками (через впн на внешку) с кинетика убрал, т.е состояние базовое, как будто клиент первый раз подключился (config)> show ip route ================================================================================ Destination Gateway Interface F Metric ================================================================================ 0.0.0.0/0 100.126.0.1 ISP U 0 10.1.30.0/24 0.0.0.0 Guest U 0 100.126.0.0/17 0.0.0.0 ISP U 0 1x5.105.108.x7/32 100.126.0.1 ISP U 0 192.168.100.0/24 0.0.0.0 Home U 0 194.186.70.210/32 100.126.0.1 ISP U 0 194.186.70.214/32 100.126.0.1 ISP U 0 (config)> show ip route table 248 Network::RoutingTable: Routing table is empty. (config)> попутно протестил что маршруты от сервера указанные в leftsubnet при этом конфиге получают только android и мак, и скорее всего линукс клиенты тоже. Но windows и keenetic нет. в англ. сегменте часто натыкался что в базе на ipsec нельзя скидывать маршруты клиенту, но по факту криво-косо работает Quote Link to comment Share on other sites More sharing options...
gaaronk Posted January 19, 2023 Share Posted January 19, 2023 Тут такое дело. Strongswan (а в кинетике он) получает от удаленного сервера сети. для этих сетей вставляет IPSec SA в ядро. Не знаю как в кинетике, а в shell их можно посмотреть через ip x p ip x s Далее по идее клиенту не нужны маршруты. Он отправляет трафик по маршруту по умолчанию (в сторону интернет), ядро видит что трафик попадает под критерий IPSec SA, и уже само их шифрует, туннелирует и тд. А какие маршруты вы пишите? И странно что в выводе пустая секция SA keys: Quote Link to comment Share on other sites More sharing options...
dotcom Posted January 19, 2023 Share Posted January 19, 2023 8 minutes ago, gaaronk said: Тут такое дело. Strongswan (а в кинетике он) получает от удаленного сервера сети. для этих сетей вставляет IPSec SA в ядро. Не знаю как в кинетике, а в shell их можно посмотреть через ip x p ip x s ну судя по show ipsec на кинетике он получает это подсети с сервера, только трафик в них не отправляет, как впрочем и винда 26 minutes ago, gaaronk said: А какие маршруты вы пишите? И странно что в выводе пустая секция SA keys: Да, SA keys пустой. вот маршруты которые хочу клиенту отдать, это фб+инст leftsubnet=204.15.20.0/22, 185.89.216.0/22, 185.60.216.0/22, 179.60.192.0/22, 173.252.64.0/18, 157.240.0.0/16, 147.75.208.0/20, 142.251.36.33, 129.134.0.0/16, 103.4.96.0/22, 102.132.96.0/20, 74.119.76.0/22, 69.171.224.0/19, 69.63.176.0/20, 66.220.144.0/20, 45.64.40.0/22, 31.13.96.0/19, 31.13.64.0/19, 31.13.24.0/21, 178.62.9.171 Quote Link to comment Share on other sites More sharing options...
gaaronk Posted January 19, 2023 Share Posted January 19, 2023 Вот это " маршруты прописанные руками (через впн на внешку) с кинетика убрал" Что было прописано? скриншот или вывод show ip route ? В свойствах VPN клиента стоит "Использовать для выхода в интернет" ? Quote Link to comment Share on other sites More sharing options...
dotcom Posted January 19, 2023 Share Posted January 19, 2023 (edited) Пробовал и с использовать для выхода и без, сейчас не стоит. при установленной галочке он игнорирует подключение и все идет через дефолтный шлюз, если иное не указанно в маршруте(указаны ниже) который я руками забиваю на кинетике (config)> show ip route ================================================================================ Destination Gateway Interface F Metric ================================================================================ 0.0.0.0/0 100.126.0.1 ISP U 0 5.45.77.201/32 0.0.0.0 IKE0 U 0 10.1.30.0/24 0.0.0.0 Guest U 0 31.13.24.0/21 0.0.0.0 IKE0 U 0 31.13.64.0/19 0.0.0.0 IKE0 U 0 31.13.96.0/19 0.0.0.0 IKE0 U 0 37.1.206.186/32 0.0.0.0 IKE0 U 0 45.64.40.0/22 0.0.0.0 IKE0 U 0 66.220.144.0/20 0.0.0.0 IKE0 U 0 69.63.176.0/20 0.0.0.0 IKE0 U 0 69.171.224.0/19 0.0.0.0 IKE0 U 0 74.119.76.0/22 0.0.0.0 IKE0 U 0 100.126.0.0/17 0.0.0.0 ISP U 0 102.132.96.0/20 0.0.0.0 IKE0 U 0 103.4.96.0/22 0.0.0.0 IKE0 U 0 129.134.0.0/16 0.0.0.0 IKE0 U 0 147.75.208.0/20 0.0.0.0 IKE0 U 0 157.240.0.0/16 0.0.0.0 IKE0 U 0 173.252.64.0/18 0.0.0.0 IKE0 U 0 178.62.9.171/32 0.0.0.0 IKE0 U 0 179.60.192.0/22 0.0.0.0 IKE0 U 0 185.60.216.0/22 0.0.0.0 IKE0 U 0 185.89.216.0/22 0.0.0.0 IKE0 U 0 1x5.105.108.x7/32 100.126.0.1 ISP U 0 192.168.100.0/24 0.0.0.0 Home U 0 194.186.70.210/32 100.126.0.1 ISP U 0 194.186.70.214/32 100.126.0.1 ISP U 0 204.15.20.0/22 0.0.0.0 IKE0 U 0 Edited January 19, 2023 by dotcom Quote Link to comment Share on other sites More sharing options...
gaaronk Posted January 19, 2023 Share Posted January 19, 2023 Понятно. Кинетик использует routed-based vpn с vti И маршруты прописывает не strongswan, а обвязка. Видимо да, не умеют и надо писать руками. Quote Link to comment Share on other sites More sharing options...
dotcom Posted January 19, 2023 Share Posted January 19, 2023 9 minutes ago, gaaronk said: Понятно. Кинетик использует routed-based vpn с vti И маршруты прописывает не strongswan, а обвязка. Видимо да, не умеют и надо писать руками. в любом случае спасибо за помощь, буду копать в другую сторону Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.