Сервер 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
и VPN ip предположим 89.9.8.1 (сомневаюсь, что это нужно сейчас)
Ну как это настроить? Мне нужно что-то сделать с IP-маршрутом, я просто не могу понять! Весь этот шлюз по умолчанию, подсети, я нуб, может кто-нибудь помочь мне настроить это?
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.
Как только у вас будет информация об IP/ сети, работа начнется.
Создайте резервную копию таблицы маршрутов и добавьте VPNBypass в существующую таблицу.
sudo su cp /etc/iproute2/rt_tables /etc/iproute2/rt_tables_orig echo "250 vpnbypass" >> /etc/iproute2/rt_tables exit
Использовать
cat /etc/iproute2/rt_tables
для подтверждения входа в обходrt_table
.Прежде чем продолжить, убедитесь, что запись находится здесь.
Обновите таблицу vpnbypass, чтобы обойти VPN для связи в подсети
Обратите внимание, что я использую имя подсети и Ethernet, чтобы добавить правило в таблицу vpnbypass.
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
Подключитесь к своему 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