Сервер Ubuntu и клиент OpenVPN, ДОСТУП по SSH!

у меня есть экземпляр в облаке Google, на нем запущен сервер ubuntu 18.04 LTS, я настраиваю openvpn, и как только я подключаюсь, он выкидывает меня из SSH . Я использую nordvpn, я знаю, что переадресация портов не разрешена, но есть ли способ заставить его работать с моим исходным IP-адресом для ssh?

МОЙ ОБЩЕСТВЕННЫЙ IP-адрес: 35.246.229.999 Мой eth0: 10.156.0.39 и loopback: 127.0.0.1

и IP VPN предположим, 89.9.8.1 (я сомневаюсь, что это необходимо сейчас)

Как это настроить? Мне нужно что-то сделать с IP-маршрутом, я просто не могу понять! Весь этот шлюз по умолчанию, подсети, я нуб, может ли кто-нибудь помочь мне настроить это?

0
задан 28 December 2019 в 05:43

1 ответ

Я никоим образом не являюсь экспертом по Ubuntu или Linux, но в последнее время много изучал это, и у меня есть решение, которое мне очень подходит.

Перед подключением к VPN-клиенту получите информацию о сети виртуальной машины.

ifconfig

ens4      Link encap:Ethernet  HWaddr 42:01:0a:8a:00:04  
          inet addr:10.138.0.4  Bcast:10.138.0.4  Mask:255.255.255.255
          inet6 addr: fe80::4001:aff:fe8a:4/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1460  Metric:1
          RX packets:1981508 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1035619 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:12219837340 (12.2 GB)  TX bytes:3879977314 (3.8 GB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:56603 errors:0 dropped:0 overruns:0 frame:0
          TX packets:56603 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:30401852 (30.4 MB)  TX bytes:30401852 (30.4 MB)

Обратите внимание на адаптер и IP-адрес, так как GCP подключен, вам нужно будет получить подсеть непосредственно с портала GCP.

Image 1

Изображение 1.

Как только у вас есть информация об IP/сети, начинается работа.

  1. Создайте резервную копию таблицы маршрутов и добавьте VPNBypass в существующую таблицу.

    судо су
    cp /etc/iproute2/rt_tables /etc/iproute2/rt_tables_orig
    эхо "250 vpnbypass" >> /etc/iproute2/rt_tables
    выход
    

    Используйте cat /etc/iproute2/rt_tables для подтверждения обхода записи в rt_table.

    Прежде чем продолжить, убедитесь, что запись существует.

  2. Обновите таблицу vpnbypass, чтобы обойти VPN для связи в подсети

    Обратите внимание, что я использую имя подсети и Ethernet, чтобы добавить правило в таблицу vpnbypass

    sudo ip rule add from 10.138. 0.0/20 table vpnbypass #Разрешить связь из подсети
    sudo ip rule add to 10.138.0.0/20 table vpnbypass #Разрешить связь с подсетью
    sudo ip rule добавить в таблицу 169.254.169.254 vpnbypass # Разрешить связь со службой метаданных
    sudo ip route add table vpnbypass to 10.138.0.0/20 dev ens4 # Выбор маршрута для таблицы vpnbypass
    sudo ip route add table vpnbypass по умолчанию через 10.138.0.1 dev ens4 #выбор шлюза
    
  3. Подключитесь к VPN, соединение не должно прерываться. Вы можете использовать curl ipinfo.io, чтобы подтвердить, что вы используете VPN.

ДОПОЛНИТЕЛЬНО

Вы можете отредактировать файл rc.local, чтобы обеспечить повторное применение конфигурации при перезагрузке.

sudo vi /etc/rc.local

Добавьте следующие строки в файл

sudo ip rule add from 10.138.0.0/20 table vpnbypass #Allow communication from Subnet
sudo ip rule add to 10.138.0.0/20 table vpnbypass  #Allow communication to Subnet
sudo ip rule add to 169.254.169.254 table vpnbypass  #Allow communication to Metadata Service
sudo ip route add table vpnbypass to 10.138.0.0/20 dev ens4 #Selecting route for vpnbypass table
sudo ip route add table vpnbypass default via 10.138.0.1 dev ens4 #selecting gateway
-1
ответ дан 3 January 2020 в 07:59

Другие вопросы по тегам:

Похожие вопросы: