Jump to content

velikijzhuk

Forum Members
  • Posts

    15
  • Joined

  • Last visited

Posts posted by velikijzhuk

  1. Ну всё же просто донельзя=)))) IP вымышленные, совпадения случайны бла бла бла

    Есть значит у меня сеть небольшая 192.168.1.0/24 (На микротике. В сети есть VPN сервер на Ubuntu 192.168.1.7) внешний ip пусть будет 1.1.1.1

    Есть 2 филиала 

    192.168.2.0/24 Speedster внешний ip пусть будет 2.2.2.2

    192.168.3.0/24 Speedster внешний ip пусть будет 3.3.3.3

    Решили как-то дать им доступ к NAS (192.168.1.8), ну и собственно дали.

    Тут мне понадобилось залазить по RDP на компы филиалов, но не суть

    Они подключаются Speedster'ами к Ubuntu (L2TP/IPSec) получают IP 10.20.30.2 и 10.20.30.3

    Собственно доступ у них есть к 192.168.1.0/24, маршрут DNSMASQ отдаёт.

    Чтоб заработало доступ в сети филиалов

    На Ubuntu должно быть net.ipv4.ip_forward = 1

    Скриптик при подключении /etc/ppp/ip-up.d/ppp-route

    #!/bin/bash
    
    IP=$PPP_REMOTE
    
    IFS=. read IP1 IP2 IP3 IP4 <<< "$IP"
    
    case $IP4 in
            2 | 3)
                    ip route add 192.168.$IP4.0/24 via 10.20.30.$IP4 dev $PPP_IFACE
    ;;
    esac
    
    exit 0

    Скриптик при отключении /etc/ppp/ip-down.d/ppp-route

    #!/bin/bash
    
    IP=$PPP_REMOTE
    
    IFS=. read IP1 IP2 IP3 IP4 <<< "$IP"
    
    case $IP4 in
            2 | 3)
                    ip route delete 192.168.$IP4.0/24 via 10.20.30.$IP4 dev $PPP_IFACE
    ;;
    esac
    
    exit 0

    Далее в Firewall'е

    ufw route allow in on eth0 from 192.168.1.0/24 out on ppp+

    ufw route allow in on ppp+ from 10.20.30.0/24 out on eth0

     

    Затем маркируем в микротике пакеты на адреса 192.168.2.0/24 и 192.168.3.0/24 и добавляем маршрут через ubuntu

    Скрытый текст

    981162403_2022-11-2816_08_41.thumb.png.30de27bd1e9b7573cf53d3ba7a240c64.png

    120884477_2022-11-2816_09_02.thumb.png.a9da1355ef20dd7d5a25bbba6dfc424c.png

    В кинетиках в фаерволе разрешаем всё через vpn TCP, UDP, ICMP

    Скрытый текст

    Имеем доступ к микроту который как свитч пашет

    1789786176_2022-11-2816_11_20.thumb.png.9bb63301453293ac17818def57fb78a6.png

    И принтеру

    87526401_2022-11-2816_13_50.thumb.png.e3ca45cda3d9c17f43db8215e97deb32.png

    Также работает SMB

  2. Ну и на последок DNSMASQ

    В /etc/default/dnsmasq добовляем строчку

    DNSMASQ_OPTS="-p 0"

    Это отключит DNS

    nano /etc/dnsmasq.d/dncp-vpn.conf

    Пишем

    except-interface=lo,ens3
    no-dhcp-interface=lo,ens3
    listen-address=192.168.75.1
    
    dhcp-authoritative
    log-dhcp
    log-facility=/var/log/dnsmasq.log
    
    dhcp-range=192.168.75.1,static
    
    dhcp-option=1,255.255.255.0
    dhcp-option=6,8.8.8.8,8.8.4.4
    dhcp-option=101,"Asia/Sakhalin"
    dhcp-option=100,"SBT-11"
    dhcp-option=2,0x00009AB0
    dhcp-option=121,195.82.146.0/23,192.168.75.1,104.21.83.43/32,192.168.75.1,172.67.212.135/32,192.168.75.1
    dhcp-option=249,195.82.146.0/23,192.168.75.1,104.21.83.43/32,192.168.75.1,172.67.212.135/32,192.168.75.1

    Сохраняем

    listen-address это local ip из /etc/xl2tpd/xl2tpd.conf

    lo и ens3 имена интерфейсов которые ifconfig показывает

    option249 для виндовых клиентов, вдруг кто с винды L2TP захочет

    systemctl restart dnsmasq

    Переподключаемся к L2TP смотрим как нам прилетели маршруты до rutracker'а

    • Upvote 1
  3. Теперь

    L2TP

    Если не настраивали IKEv2, то делаем все также как и у IKEv2, до генерации сертификата.

    Затем под root (sudo -i)

    nano /etc/ipsec.conf

    Там пишем если нет

    config setup
            charondebug="ike 0, knl 0, cfg 0"
            uniqueids=no
    
    conn base
            dpdaction=clear
            dpddelay=30s
            fragmentation = yes

    Если есть, то не пишем.

    Потом дописываем

    conn l2tp
            also=base
            dpdtimeout=90s
            keyexchange=ikev1
            ike=aes256-sha256-modp4096
            esp=aes256-sha256-modp4096
            type=transport
            leftauth=psk
            rightauth=psk
            leftsubnet=%dynamic[/1701]
            rightsubnet=%dynamic
            mark=%unique
            auto=add

    Сохраняем.

    Открываем options.xl2tpd

    nano /etc/ppp/options.xl2tpd

    Пишем

    auth
    nodefaultroute
    mtu 1280
    mru 1280
    lock
    noipx
    proxyarp
    local
    require-mschap-v2
    refuse-pap
    refuse-chap
    refuse-mschap
    ms-dns 8.8.8.8
    ms-dns 8.8.4.4
    logfile /var/log/ppp/xl2tpd.log

    Сохраняем

    Открываем xl2tpd.conf

    nano /etc/xl2tpd/xl2tpd.conf

    Пишем

    [global]
    port = 1701
    listen-addr = %ВНЕШНИЙ_IP_СЕРВЕРА%
    auth file = /etc/ppp/chap-secrets
    access control = no
    ipsec saref = no
    force userspace = yes
    debug network = no
    debug packet = no
    debug state = no
    debug tunnel = no
    
    [lns default]
    exclusive = yes
    ip range = 192.168.75.100-192.168.75.131
    assign ip = yes
    hidden bit = no
    local ip = 192.168.75.1
    length bit = yes
    require authentication = yes
    unix authentication = no
    name = L2TPServer
    pppoptfile = /etc/ppp/options.xl2tpd
    ppp debug = no

    local ip

    ip range

    По вкусу

    name тоже

    Открываем chap-secrets

    nano /etc/ppp/chap-secrets

    Добавляем пользователей

    User1		L2TPServer		"SuPeR_Pass1"	*
    UserStatic	L2TPServer		"12345678"		192.168.75.2

    User1 будет получать ip из пула ip range

    UserStatic будет с  IP 192.168.75.2

    L2TPServer это name из xl2tpd.conf

    В ipsec.secrets добавляем PSK

    %any %any : PSK "pq0nCRuh2tF1KwXLrtxlOA=="

    Сгенерировать можно так

    openssl rand -base64 16

    Почти всё

    Настроим firewall

    ufw allow 500,4500/udp
    ufw route allow in on ppp+ from 192.168.75.0/24 out on ens3

    ens3 имя сетевухи которая смотрит во внешний мир

    Порт 1701 не надо открывать

    В before.rules после *nat добовляем

    :POSTROUTING ACCEPT [0:0]
    -A POSTROUTING -s 192.168.75.0/24 -o ens3 -j MASQUERADE

    Включаем net.ipv4.ip_forward = 1 как и у IKEv2

    ufw disable
    ufw enable 
    systemctl restart strongswan xl2tpd 

    ====================

    В роутере

    62666372_2022-11-2812_45_36.thumb.png.2267c94b04746e84eeadc39ab4f583e6.png

    Добавляем маршруты. 

  4. Доброго времени суток. Решил поделится инструкцией как сделать L2TP/IPSec и/или IKEv2 VPN сервер.

    Я использовал VPS от ihor (не сочтите за рекламу) самый минимальный (1 ядро, 512RAM, 5Gb диск), система Ubuntu 16.04.7 LTS Server. Ставил через VNC с образа. 

    В общем приступим.

    Как только загрузилась свежеустановленная Ubuntu делаем под root (sudo -i)

    apt-get update
    apt-get upgrade

    Ждём пока все обновится и затем ставим нужные пакеты

    apt-get install xl2tpd strongswan strongswan-pki dnsmasq mc nano

    Если l2tp ненадо, можно не ставить xl2tpd и dnsmasq

    Когда все поставилось начинаем настраиваться

    Открываем

    nano /etc/default/ufw

    Смотрим чтобы там было

    Цитата

    DEFAULT_INPUT_POLICY="DROP"

    DEFAULT_FORWARD_POLICY="DROP"

    Если ACCEPT, то меняем.

    Далее делаем

    ufw allow openssh
    ufw enable

    Если что есть VNC=)

    IKEv2

    mv /etc/ipsec.conf ipsec.conf.orig
    touch /etc/ipsec.conf
    chmod 644 /etc/ipsec.conf

    Делаем сертификат можно не под root

    mkdir -p ~/pki/{cacerts,certs,private}
    chmod 700 ~/pki
    pki --gen --type rsa --size 4096 --outform pem > ~/pki/private/ca-key.pem
    
    pki --self --ca --lifetime 3650 --in ~/pki/private/ca-key.pem \
        --type rsa --dn "CN=MY SUPER VPN ROOT CA" --outform pem > ~/pki/cacerts/ca-cert.pem
    
    pki --gen --type rsa --size 4096 --outform pem > ~/pki/private/server-key.pem
    
    pki --pub --in ~/pki/private/server-key.pem --type rsa \
        | pki --issue --lifetime 1460 \
            --cacert ~/pki/cacerts/ca-cert.pem \
            --cakey ~/pki/private/ca-key.pem \
            --dn "CN=server_domain" --san server_domain \
            --flag serverAuth --flag ikeIntermediate --outform pem \
        >  ~/pki/certs/server-cert.pem
    
    
    lifetime 1460 - 4 года. Тут можно по вкусу 365, 730 и т.д.
    Если domaina нету то делаем так
    Вместо
    --dn "CN=server_domain" --san server_domain
    Пишем
    --dn "CN=IP address" --san @IP_address --san IP_address
    
    

    Сертификаты и ключи готовы копируем в нужное место под root

    cp -r ~/pki/* /etc/ipsec.d/

    Также копируем себе на компик ca-cert.pem

    Далее открываем конфигурации ipsec тоже под root

    nano /etc/ipsec.conf

    И пишем там 

    Цитата

     

    config setup

            charondebug="ike 0, knl 0, cfg 0"

            uniqueids=no

     

    conn base

            dpdaction=clear

            dpddelay=30s

            fragmentation = yes

     

    conn ikev2

            also=base

            compress=no

            type=tunnel

            keyexchange=ikev2

            forceencaps=yes

            rekey=no

            left=%any

            leftid=@server_domain

            leftid=IP_address

            leftcert=server-cert.pem

            leftsendcert=always

            leftsubnet=0.0.0.0/0

            right=%any

            rightid=%any

            rightauth=eap-mschapv2

            rightsourceip=192.168.65.0/24

            rightdns=8.8.8.8,8.8.4.4

            rightsendcert=never

            eap_identity=%identity

            ike=chacha20poly1305-sha512-curve25519-prfsha512,aes256gcm16-sha384-prfsha384-ecp384,aes256-sha1-modp1$

            esp=chacha20poly1305-sha512,aes256gcm16-ecp384,aes256-sha256,aes256-sha1,3des-sha1!

            auto=add

     

    leftid оставляем какой-то один доменное имя или IP

    rightsourceip подсеть с которой будут выдаваться IP адреса клиентам

      rightdns=8.8.8.8,8.8.4.4 - Можно любые другие

    Сохраняемся и открываем под root ipsec.secrets

    nano /etc/ipsec.secrets

    Там пишем

    Цитата

     

    : RSA "server-key.pem"

    user1 EAP "password1"

     

    Где user1 имя пользователя, а password1 пароль этого пользователя.

    Под root настраиваем firewall

    ufw allow isakmp
    ufw allow ipsec-nat-t

    или 

    ufw allow 500,4500/udp

    Далее в nano открываем before.rules

    nano /etc/ufw/before.rules

    Находим *nat и пешем

    *nat
    :POSTROUTING ACCEPT [0:0]
    -A POSTROUTING -s 192.168.65.0/24 -o ens3 -j MASQUERADE
    COMMIT

    Находим *mangle

    -A FORWARD --match policy --pol ipsec --dir in -s 192.168.65.0/24 -o ens3 -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1361:1536 -j TCPMSS --set-mss 1360

    И наконец *filter

    После # End required lines

    *filter
    :ufw-before-input - [0:0]
    :ufw-before-output - [0:0]
    :ufw-before-forward - [0:0]
    :ufw-not-local - [0:0]
    # End required lines <--- тут
    
    #IKEv2
    -A ufw-before-forward --match policy --pol ipsec --dir in --proto esp -s 192.168.65.0/24 -j ACCEPT
    -A ufw-before-forward --match policy --pol ipsec --dir out --proto esp -d 192.168.65.0/24 -j ACCEPT
    #END IKEv2

    Сохраняемся

    Теперь открываем в nano sysctl.conf

    nano /etc/sysctl.conf

    Находим там

    "net.ipv4.ip_forward = "

    ставим 1

    Если в начале стоит #, удаляем

    Получается 

    Цитата

    net.ipv4.ip_forward = 1

    Делаем 

    sysctl -p
    
    #Рестартим firewall
    
    ufw disable
    ufw enable

    Рестартим strongswan

    systemctl restart strongswan

    ==================================

    Заходи в наш любимый Keenetic

    Интернет-->Другие подключения

    В разделе VPN-подключения создаём новое

    1476437072_2022-11-2811_31_43.thumb.png.329e610c017f2b521d483ebf8ab609c1.png

    Нажимаем кнопку Импорт из файла и выбираем ca-cert.pem который скопировали себе на компик.

    Сохраняемся ждем пару секунд, пишем маршруты до адресов/подсетей к которым надо ходить через vpn

  5. Добрый день.

    Есть телик Ростелеком. Подключен через ADSL. Чтоб приставка была в домашней сети прописал интерфейсу Bridge3

    ip dhcp client class-id sml723x-rt

    Всё работает, всё хорошо, но после перезагрузки у бриджа в running-config'е нет ip dhcp client class-id sml723x-rt, в startup-config'е строчка есть.

    Что не так?

  6. 1 час назад, r13 сказал:

    @velikijzhuk Описывайте проблему развернуто, из вашей одной фразы ничего не понятно.

    Да вроде как мог описал.

    У меня 2 подключения. IPoE и PPTP. Через IPoE (основное) я могу подключиться  к  vpn серверу. Через PPTP (резервное) - не могу. Можно ли как-то что то сделать чтоб работало через резервное соединение?

  7. Если у меня 2 соединения ISP и PPTP к резервному (PPTP) не получается подключиться. Можно как-то поправить?

    [I] Dec  1 17:26:30 ipsec: 10[CFG] selected proposal: IKE:3DES_CBC/HMAC_SHA1_96/PRF_HMAC_SHA1/MODP_1024/# 
    [I] Dec  1 17:26:30 ipsec: 10[IKE] sending DPD vendor ID 
    [I] Dec  1 17:26:30 ipsec: 10[IKE] sending FRAGMENTATION vendor ID 
    [I] Dec  1 17:26:30 ipsec: 10[IKE] sending NAT-T (RFC 3947) vendor ID 
    [I] Dec  1 17:26:31 ipsec: 11[IKE] old path is not available anymore, try to find another 
    [I] Dec  1 17:26:31 ipsec: 11[IKE] looking for a route to 85.202.xxx.xxx ... 
    [I] Dec  1 17:26:31 ipsec: 16[IKE] received retransmit of request with ID 0, retransmitting response 
    [I] Dec  1 17:26:32 ipsec: 07[IKE] received retransmit of request with ID 0, retransmitting response 
    [I] Dec  1 17:26:35 ipsec: 14[IKE] old path is not available anymore, try to find another 
    [I] Dec  1 17:26:35 ipsec: 14[IKE] looking for a route to 85.202.xxx.xxx ... 
    [I] Dec  1 17:26:35 ipsec: 12[IKE] received retransmit of request with ID 0, retransmitting response 
    [I] Dec  1 17:26:39 ipsec: 10[IKE] old path is not available anymore, try to find another 
    [I] Dec  1 17:26:39 ipsec: 10[IKE] looking for a route to 85.202.xxx.xxx ... 
    [I] Dec  1 17:26:43 ipsec: 08[IKE] old path is not available anymore, try to find another 
    [I] Dec  1 17:26:43 ipsec: 08[IKE] looking for a route to 85.202.xxx.xxx ... 
    [I] Dec  1 17:26:47 ipsec: 11[IKE] old path is not available anymore, try to find another 
    [I] Dec  1 17:26:47 ipsec: 11[IKE] looking for a route to 85.202.xxx.xxx ... 
    [I] Dec  1 17:26:51 ipsec: 09[IKE] old path is not available anymore, try to find another 
    [I] Dec  1 17:26:51 ipsec: 09[IKE] looking for a route to 85.202.xxx.xxx ...

     

  8. Что-то у меня всё вообще странно

    При подключении к L2TP на Ultra2 нет доступа к устройствам в домашней сети причём к некоторым есть.

    На саму ультру могу зайти 10.0.0.1

    10.0.0.2 - открывается веб интерфейс устройства.

    10.0.0.3 и 10.0.0.4 - ни чего не открывается

    nat и interface Home есть в конфиге

    По PPTP всё хорошо. Что может быть не так?

     

    self-test (1).txt

  9. У USB DSL в IGMP Proxy можно выбрать только сам USBDSL и USBDSL/PVC0, PVC1 не появляется в списке.

    Ultra 2

     

    Скрытый текст

    Снимок экрана 2017-11-14 в 23.07.36.png

    ===

    Если у проводного провайдера авторизация PPTP, то при создании нового VPN заменяется PPTP0.

    И наоборот если настроить VPN, а  потом авторизацию у прова исчезает VPN.

  10. У меня примерно так: 

    Есть провайдер 1 - EoIP, есть провайдер 2 - Локалка + PPTP (резерв), есть VDS - StrongSwan настроен L2TP/IPSec, еще есть Keenetic Plus DSL на нём только ТВ от ростелика, но да пусть стоит себе. Всё это добро крутится на Ultra II :17_heart_eyes:

    В общем пока я не прописал PPTP подключению ip mtu 1434  и L2TP0 1368, раз в 00:05:16 рвалось L2TP/IPSec, потом само перезапускалось. Прописал так потому, что L2TP идёт через PPTP. Может чушь нагородил :)

    Ещё на VDS когда в options.xl2tpd стояло mtu 1200, mru 1200 (как много статей советует) тоже рвалося,  mtu 1368 работает не рвется, что через провайдера 1, что через 2.

    PS может PPTP не надо было мтu менять.

    111.png

×
×
  • Create New...