Вывод коамнды netstat -a
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 instagram.com:memcache  0.0.0.0:*               LISTEN
tcp        0      0 b12srv:www-http         0.0.0.0:*               LISTEN
tcp        0      0 b12srv:ssh              0.0.0.0:*               LISTEN
tcp        0      0 instagram.co:postgresql 0.0.0.0:*               LISTEN
tcp        0      0 b12srv:https            0.0.0.0:*               LISTEN
tcp        0      0 b12srv:https            10.8.0.6:43162          TIME_WAIT
tcp        0      0 b12srv:https            10.8.0.6:43164          TIME_WAIT
tcp        0      0 instagram.com:34742     instagram.com:memcache  TIME_WAIT
tcp        0      0 instagram.com:34746     instagram.com:memcache  TIME_WAIT
tcp        0      0 instagram.com:34724     instagram.com:memcache  TIME_WAIT
tcp        0      0 b12srv:https            10.8.0.18:37712         TIME_WAIT
tcp        0      0 instagram.com:34748     instagram.com:memcache  TIME_WAIT
tcp        0      0 instagram.com:34734     instagram.com:memcache  TIME_WAIT
tcp        0      0 instagram.com:34728     instagram.com:memcache  TIME_WAIT
tcp        0      0 instagram.com:34744     instagram.com:memcache  TIME_WAIT
tcp        0      0 b12srv:https            10.8.0.6:43170          TIME_WAIT
tcp        0      0 b12srv:https            10.8.0.18:37716         TIME_WAIT
tcp        0      0 instagram.com:34732     instagram.com:memcache  TIME_WAIT

Откуда инстаграм появился на сервере? Доступ на сервер есть только из локалки, сам сервер ходит в интернет через роутер.

Сервер используется как файлохранилище с удаленным доступом.
В общем решение такое. Конфиг сервера:
port 53
proto udp
dev tun

server 10.8.0.0 255.255.255.0
;ifconfig-pool-persist ipp.txt

push "autolocal def1 bypass-dhcp"
push "route 192.168.0.0 255.255.255.0"
push "route 192.168.8.0 255.255.255.0"

ca /etc/openvpn/certs/ca.crt
cert /etc/openvpn/certs/servername.crt
key /etc/openvpn/certs/servername.key
dh /etc/openvpn/certs/dh2048.pem

keepalive 10 120
remote-cert-tls client
tls-auth /etc/openvpn/certs/ta.key
cipher AES-256-CBC

persist-key
persist-tun

;compress lz4-v2
;push "compress lz4-v2"
;max-clients 100

status /var/log/openvpn-status.log
log /var/log/openvpn.log
verb 4

explicit-exit-notify 1
key-direction 0

Убрал только redirect-gateway.

Вся проблема была в Networkmanager-е или его плагине для openvpn. Если запускать напрямую
sudo openvpn /etc/openvpn/client/client.conf
все сразу работает - интернет напрямую, локальный трафик к серверу и его подсетям через впн.

Скрипт из второго поста тоже нужен.

indeviral, спасибо.
Перед уходом пришла мысль вместо Networkmanager-а попробовать родной клиент openvpn. Положил файлы ключей в нужные места и запустил
sudo openvpn /etc/openvpn/client/client.conf
На ПК интернет заработал мимо впн. Сервер доступен по 10.8.0.1 и 192.168.8.23. Осталось разобраться с нулевой подсетью. Но это уже завтра как вернусь на работу.

route_nopull пока не добавлял.
indeviral
это вроде лишнее, до запуска openvpn есть?
Нет, до запуска только это
default via 192.168.43.1 dev wlp2s0 proto dhcp metric 600
192.168.43.0/24 dev wlp2s0 proto kernel scope link src 192.168.43.246 metric 600

indeviral
верните push "route 192.168.0.0 255.255.255.0" и проверьте "С андроида" доступ в эту подсеть.
На андроиде так же есть интернет, пингуется только сервер по 10.8.0.1 и 192.168.8.23. На нулевую подсеть доступа нет, ни пинга, ни через веб-интерфейс.

На ПК интернета нет, локалка как с андроида.
Номер порта ни на что не влияет. А 53 порт дает доступ в интернет с бесплатных вайфаев с авторизацией не проходя авторизацию. На время экпериментов сменю на стандартный 1194.

Убрал пуши, отключил скрипт, перезапустил весь сервер.

С ПК интернета нет. Сервер пингуется по белому айпи, по 10.8.0.1 и 192.168.8.23, в подсеть 192.168.0.* доступа нет.
ip route
default via 10.8.0.9 dev tun0 proto static metric 50
default via 192.168.43.1 dev wlp2s0 proto dhcp metric 600
10.8.0.1 via 10.8.0.9 dev tun0 proto static metric 50
10.8.0.9 dev tun0 proto kernel scope link src 10.8.0.10 metric 50
178.205.142.189 via 192.168.43.1 dev wlp2s0 proto static metric 600
192.168.43.0/24 dev wlp2s0 proto kernel scope link src 192.168.43.246 metric 600
192.168.43.1 dev wlp2s0 proto static scope link metric 600

С андроида есть интернет мимо впн, но локалка сервера не доступна. Сервер пингуется только по 10.8.0.1.
ip route
10.8.0.4/30 dev tun0 proto kernel scope link src 10.8.0.6
10.208.253.180/30 dev rmnet_data1 proto kernel scope link src 10.208.253.181
192.168.43.0/24 dev wlan0 proto kernel scope link src 192.168.43.1
Клиенты не в одной сети с сервером.

ВПН нужен только для доступа к локальным ресурсам сервера.
И еще. На сервере запускается такой скрипт, чтобы у клиентов работал интернет:
#!/bin/sh
DEV='ens3'
PRIVATE=10.8.0.0/24

if [ -z "$DEV" ]; then
    DEV="$(ip route | grep default | head -n 1 | awk '{print $5}')"
fi

sysctl net.ipv4.ip_forward=1

iptables -I FORWARD -j ACCEPT

iptables -t nat -I POSTROUTING -s $PRIVATE -o $DEV -j MASQUERADE

Без него ни у кого не работает интернет.
Мучаюсь с этим вопросом почти месяц, так и не смог добиться результата.

Есть собственный сервер на арче с белым ip. На нем запущен OpenVPN сервер. Есть 7 клиентов (ПК на арче, смарты на андроиде), которые подключаются к этому серверу. На ПК через Networkmanager с плагином openvpn, на смартах через родное приложение от OpenVPN. Все работает.

На сервере две локалки 192.168.0.* и 192.168.8.*.

Вопрос: как настроить впн так, чтобы запросы от клиентов к серверу шли через впн, а трафик в интернет шел без впн? На сервере канал на отдачу всего 2 Мбит по тарифу (на деле чуть ниже). Просмотр ютуба или загрузка больших файлов через впн идет очень медленно. Поэтому хотелось направить интернет мимо впн.

В основном советуют убрать из конфига сервера строку redirect-gateway. При этом если с ПК зайти на сайт 2ip.ru показывает ip сервера, а со смарта показывает ip его провайдера (в моем случае ip МТСа). Но если делать тест скорости с любога клиента на speedtest.net скорость получается как через впн соединение. На сервере видно, что канал в это время загружается.

Конфиг клиентов:
client
remote *.*.*.*
port 53
dev tun
proto udp
resolv-retry infinite
nobind

persist-key
persist-tun

;mute-replay-warnings

remote-cert-tls server
cipher AES-256-CBC
verb 3
key-direction 1

Конфиг сервера:
port 53
proto udp
dev tun

server 10.8.0.0 255.255.255.0
;ifconfig-pool-persist ipp.txt

ca /etc/openvpn/certs/ca.crt
cert /etc/openvpn/certs/servername.crt
key /etc/openvpn/certs/servername.key
dh /etc/openvpn/certs/dh2048.pem

push "redirect-gateway autolocal def1 bypass-dhcp"
push "route 192.168.0.0 255.255.255.0"
push "route 192.168.8.0 255.255.255.0"

keepalive 10 120
remote-cert-tls client
tls-auth /etc/openvpn/certs/ta.key
cipher AES-256-CBC

persist-key
persist-tun

;compress lz4-v2
;push "compress lz4-v2"
;max-clients 100

status /var/log/openvpn-status.log
log /var/log/openvpn.log
verb 4

explicit-exit-notify 1
key-direction 0

На сервере
ip route
default via 192.168.8.1 dev enp2s0
10.8.0.0/24 via 10.8.0.2 dev tun0
10.8.0.2 dev tun0 proto kernel scope link src 10.8.0.1
192.168.8.0/24 dev enp2s0 proto kernel scope link src 192.168.8.23

На клиенте ПК
ip route
default via 10.8.0.9 dev tun0 proto static metric 50
default via 192.168.43.1 dev wlp2s0 proto dhcp metric 600
10.8.0.1 via 10.8.0.9 dev tun0 proto static metric 50
10.8.0.9 dev tun0 proto kernel scope link src 10.8.0.10 metric 50
178.205.142.189 via 192.168.43.1 dev wlp2s0 proto static metric 600
192.168.0.0/24 via 10.8.0.9 dev tun0 proto static metric 50
192.168.8.0/24 via 10.8.0.9 dev tun0 proto static metric 50
192.168.43.0/24 dev wlp2s0 proto kernel scope link src 192.168.43.246 metric 600
192.168.43.1 dev wlp2s0 proto static scope link metric 600

На клиенте андроид
ip route
10.8.0.4/30 dev tun0 proto kernel scope link src 10.8.0.6
10.208.253.180/30 dev rmnet_data1 proto kernel scope link src 10.208.253.181
192.168.43.0/24 dev wlan0 proto kernel scope link src 192.168.43.1
Решение:
проблема была в Networkmanager-е или его плагине для openvpn. Если запускать напрямую
sudo openvpn /etc/openvpn/client/client.conf
все сразу работает - интернет напрямую, локальный трафик к серверу и его подсетям через впн.
Приглашение ввести логин появляется?
Да, во время обновления ядра была ошибка из-за отсутствующего Бут раздела и ядро грузилось старое.
vasek
уже у 2-го человека пропадает запись в fstab
За неделю до обновления и проблемы с фстаб, я подключил новый диск на 1 ТБ. В системе опознался, но разделы на нем ещё не были созданы. Возможно в этом причина?