LINUX.ORG.RU
решено ФорумAdmin

Вопрос по Openvpn


0

1

есть комп с белым ip , на нем поднят openvpn (server.conf) также есть eth0 - подключена локальная сеть сеть - 192.168.4.52, tun0-10.8.0.1

port 1194
proto tcp
dev tun
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
key /etc/openvpn/easy-rsa/keys/server.key
dh /etc/openvpn/easy-rsa/keys/dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.4.0 255.255.255.0"
client-to-client
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3

настройки фаервола 
#!/bin/bash
#этот модуль позволяет работать с ftp в пассивном режиме
modprobe nf_conntrack_ftp
#очистка цепочек
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -t nat -F PREROUTING
iptables -t nat -F POSTROUTING
iptables -t mangle -F
#Запрет всего
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#включение логов iptables
#iptables -I OUTPUT -o eth0 -j LOG
#префиксы сообщений iptables
#iptables -A INPUT -p tcp  -j LOG --log-prefix "input tcp"
#iptables -A INPUT -p icmp -j LOG --log-prefix "input icmp"
#логи входящих tcp udp icmp
#iptables -A INPUT -j LOG --log-level 4


#разрешаем все входящие пакеты на интрефейс замыкания на себя иначе ничего не работает 
iptables -A INPUT -i lo -j ACCEPT
#РАЗРЕШЕНЫ ТОЛЬКО ВХОДЯЩИЕ СОЗДАННЫЕ НАШИМИ ИСХОДЯЩИМИ
iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p UDP -m state --state ESTABLISHED,RELATED -j ACCEPT
#Правила повышающие безопасность
#Блочим входящие tcp соединения не syn пакетом (либо ошибка либо атака)
iptables -I INPUT -m conntrack --ctstate NEW -p tcp ! --syn -j DROP
iptables -I INPUT -m conntrack --ctstate NEW,INVALID -p tcp --tcp-flags SYN,ACK SYN,ACK -j REJECT
#разрешаем любые входящие и исходящие по icmp
iptables -A INPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
#Разрешаем доступ по tcp  порт 1194 - vpn совсех интерфейсов 
iptables -A INPUT  -p tcp  --dport 1194 -j ACCEPT
#Разрешаем маскарадинг
iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to-source 85.26.185.8
#разрешаем  транзитные  пакеты с vpn сервака в нет 
iptables -A FORWARD -i ppp0 -o tun0 -p tcp --dport 1194 -j ACCEPT

Файл натроек клиента client.ovpn

client
dev tun
proto tcp
remote белыйip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
ns-cert-type server
comp-lzo
verb 3

Подключение с клиента к серверу проходит, ping на 192.168.4.52 и 10.8.0.1 идут , но дальше в локалку нет,где накосячил не пойму ?

★★

Последнее исправление: drac753 (всего исправлений: 2)
Ответ на: комментарий от drac753

на сервере Openvpn

root@debtest:/etc/network/if-pre-up.d# route -n 
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.64.64.64     0.0.0.0         255.255.255.255 UH    0      0        0 ppp0
10.8.0.2        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
192.168.4.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.3.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
10.8.0.0        10.8.0.2        255.255.255.0   UG    0      0        0 tun0
0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 ppp0

drac753 ★★
() автор топика

может маскарад надо сделать

vinnni
()
Ответ на: комментарий от drac753

в таблесах разреши форвардинг, как было сказано выше и просто на каждом хосте
route add -net 10.8.0.0/24 gw 10.8.0.1
такой роут может не создаться. там у openvpn бывают нюансы. это уже совсем другая история

flant ★★★★
()
Ответ на: комментарий от drac753

в локальной сети интернет шлюз = шлюз с openvpn ? если нет, тогда приписывай на каждом компе роуты до конечной сети через адрес локального openvpn сервера т.е (10.8.0.Х), соответственно в другой сети тоже самое

edyard
()
Ответ на: комментарий от drac753

тогда смотри трассировку с обоих концов, что бы узнать где затык, вполне возможно пингуемый компьютер не знает через какой шлюз ответить

edyard
()
Ответ на: комментарий от drac753

еще в ccd напиши push «route 192.168.52.0 255.255.255.0» (что бы клиент знал что за сервером есть сеть 192.168.52.X ) iroute 192.168.Х.0 255.255.255.0 (опционально, если нужно что бы сервер знал что за клиентом есть Х сеть)

edyard
()
Ответ на: комментарий от edyard

понял проблема была в форвардинге добавил правила

iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT
и всё заработало

drac753 ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.