Здравствуйте, скажу честно первый раз настраиваю на сервере CentOS 7 сервер OpenVPN. Раньше настраивал, но на более автоматических системах - pfsense. Главная задача OpenVPN давать подключенному клиенту доступ у интернет, доступ к локальной сети за сервером не нужен.
схема такая:
сервер AzureMicrosoft - CentOS7 (поэтому использование команды ping невозможно)- на нем настроен OpenVPN сервер к нему подключаются пользователи и через него ходят в интернет. OpenVPN настраивал по статьям -
https://serveradmin.ru/nastroyka-openvpn-na-centos-7/
http://notessysadmin.com/quickstart-openvpn-server
сначала нашел первую, потом добавил доступ в интернет через вторую.
Конфигурация сервера:
#Порт работы программы
port 1199
#Протокол работы
proto udp
#Тип туннеля
dev tun
#Сертификаты работы сервера
ca /etc/openvpn/ca.crt
cert /etc/openvpn/server.crt
key /etc/openvpn/server.key
dh /etc/openvpn/dh.pem
#Сеть туннеля между двумя точками
server 10.0.20.0 255.255.255.0
#Локальная подсеть подключение (к которой подключаемся)
#route 10.0.0.0 255.255.255.0
#Настройка роутера по умолчанию для клиента (подключение к интернету)
#push redirect-gateway
#Передача статического маршрута клиентам
push "route 10.0.0.0 255.255.255.0"
#Файл с записями соответствий client - ip
ifconfig-pool-persist ipp.txt
#Подключения между клиентами
client-to-client
#Директория с индивидуальными настройками клиентов
client-config-dir /etc/openvpn/ccd
#Общие параметры OPENVPN сервера
cipher BF-CBC
tls-server
keepalive 10 120
comp-lzo
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
verb 3
Индивидуальный файл настроек клиента на сервере (/etc/openvpn/ccd/clientOVPN):
iroute 10.0.0.0 255.255.255.0
push "redirect-gateway"
Файл конфигурации на клиенте (Windows 10 - для теста):
dev tun
proto udp
remote NAMESERVER.ru
port 1199
client clientOVPN
resolv-retry infinite
ca ca.crt
cert clientOVPN.crt
key clientOVPN.key
persist-key
persist-tun
comp-lzo
iptables сервера (некоторые строки излишни - уже не знал что и делать применял обе статьи):
[root@CentOS7OVPN admroot]# iptables -n -L -v --line-numbers
Chain INPUT (policy DROP 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 8 676 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
2 2424 309K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
3 1 52 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:56147
4 2 84 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:1199
5 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:1198
6 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
7 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
8 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:5060
9 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:5061
10 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:5060
11 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:5061
12 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpts:10000:20000
13 0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:4569
14 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:5038
15 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 0
16 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 3
17 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 11
18 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 8
19 0 0 ACCEPT all -- tun+ * 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy DROP 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 1651 97397 ACCEPT all -- tun+ * 0.0.0.0/0 0.0.0.0/0
2 0 0 ACCEPT all -- eth0 tun0 0.0.0.0/0 0.0.0.0/0
3 0 0 ACCEPT all -- tun0 eth0 0.0.0.0/0 0.0.0.0/0
4 0 0 ACCEPT all -- * * 10.0.20.0/24 0.0.0.0/0
5 0 0 ACCEPT all -- * * 0.0.0.0/0 10.0.20.0/24
Chain OUTPUT (policy ACCEPT 456 packets, 65277 bytes)
num pkts bytes target prot opt in out source destination
1 8 672 ACCEPT all -- * tun+ 0.0.0.0/0 0.0.0.0/0
Nat не знаю как вывести, применял команды:
iptables -t nat -A POSTROUTING -s 10.20.0.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
Интерфейсы:
[root@CentOS7OVPN admroot]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.4 netmask 255.255.255.0 broadcast 10.0.0.255
inet6 fe80::20d:3aff:fe23:6a4b prefixlen 64 scopeid 0x20<link>
ether 00:0d:3a:23:6a:4b txqueuelen 1000 (Ethernet)
RX packets 2711 bytes 368203 (359.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2354 bytes 221623 (216.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 76 bytes 6144 (6.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 76 bytes 6144 (6.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
tun0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
inet 10.0.20.1 netmask 255.255.255.255 destination 10.0.20.2
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 100 (UNSPEC)
RX packets 1656 bytes 97817 (95.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 8 bytes 672 (672.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Все отлично подключается, но интернета нет, внутри канала пинги идут в обе стороны, но как только подключается, интернет у клиента отваливается.
Таблица роутинга у клиента:
PS C:\Users\butakov> route print
===========================================================================
Список интерфейсов
8...44 87 fc e6 68 4e ......Qualcomm Atheros AR8131 PCI-E Gigabit Ethernet Controller (NDIS 6.30)
5...00 ff 65 9a b2 49 ......HMA TAP-Windows Adapter V9
11...00 ff c4 b6 62 c4 ......TAP-Windows Adapter V9
1...........................Software Loopback Interface 1
===========================================================================
IPv4 таблица маршрута
===========================================================================
Активные маршруты:
Сетевой адрес Маска сети Адрес шлюза Интерфейс Метрика
0.0.0.0 0.0.0.0 10.0.20.5 10.0.20.6 35
10.0.20.0 255.255.255.0 10.0.20.5 10.0.20.6 35
10.0.20.4 255.255.255.252 On-link 10.0.20.6 291
10.0.20.6 255.255.255.255 On-link 10.0.20.6 291
10.0.20.7 255.255.255.255 On-link 10.0.20.6 291
52.166.78.225 255.255.255.255 192.168.0.8 192.168.0.252 25
127.0.0.0 255.0.0.0 On-link 127.0.0.1 331
127.0.0.1 255.255.255.255 On-link 127.0.0.1 331
127.255.255.255 255.255.255.255 On-link 127.0.0.1 331
192.168.0.0 255.255.0.0 On-link 192.168.0.252 281
192.168.0.252 255.255.255.255 On-link 192.168.0.252 281
192.168.255.255 255.255.255.255 On-link 192.168.0.252 281
224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 10.0.20.6 291
224.0.0.0 240.0.0.0 On-link 192.168.0.252 281
255.255.255.255 255.255.255.255 On-link 127.0.0.1 331
255.255.255.255 255.255.255.255 On-link 10.0.20.6 291
255.255.255.255 255.255.255.255 On-link 192.168.0.252 281
===========================================================================
Постоянные маршруты:
Сетевой адрес Маска Адрес шлюза Метрика
0.0.0.0 0.0.0.0 192.168.0.8 По умолчанию
===========================================================================
Подсобите пожалуйста.