Настройка pptp

Автор ViktorY, 26 ноября 2016, 08:55:27

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

ViktorY

Добрый день!
Недавно пришлось знакомиться с debian:) на практике поэтому знания не глубокие.
Имею шлюз на debian, через него пользователи ходят в интернет. Там же есть vlan. Надо настроить удаленное подключение. Установил pptpd и настроил согласно инструкциям, но подключиться могу только при отключении firewall. Поддержка gre включена так как из локалки по pptp к другому внешнему серверу подключаются. У меня пара вопросов
1. Какое правило в iptables может блокировать подключение или какое правило нужно написать чтобы подключение состоялось.
и
2. При подключении я могу пинговать только сервер, а компьютеры в локалке недоступны. Что нужно сделать чтобы после подключения получить доступ к ресурсам локальной сети?
Благодарю за помощь.

ogost

Какая версия дистрибутива? Какие правила прописаны? Пинг откуда куда? Как устроена сеть? Не сочтите за грубость, но и мы не телепаты.

ViktorY

#2
Дистрибутив 3.16.0-4-686-pae #1 SMP Debian 3.16.36-1+deb8u1 (2016-09-03) i686 GNU/Linux

Правила в iptables
Открыть содержимое (спойлер)

LAN_IP=192.168.0.1
LAN_IFACE=eth1

vlan="192.168.4.0/24"

INET_IP=xx.xx.xx.xx
INET_IFACE=eth0
   
    #set default policy to drop
    iptables -P INPUT DROP
    iptables -P FORWARD DROP
    iptables -P OUTPUT DROP
    #flush tables
    iptables -t nat -F
    iptables -t mangle -F
    iptables -F
    #enable loopback interface
    iptables -A INPUT -i lo -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
    iptables -A OUTPUT -o lo -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT

    #enable established sessions
    iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT

    #########
    # INPUT #
    #########

    ## любой пакет идущий на не разрешенный порт блокируется с ip адресом отправившим его на 120 секунд,
    ## на 120 секунд блокируется все пакеты с этого ip, тем самым предотвращается сканирование портов
    iptables -A INPUT -i $INET_IFACE -m recent --rcheck --seconds 120 --name FUCKOFF -j DROP
    iptables -A INPUT -i $INET_IFACE -p tcp -m multiport ! --dports 1723,8443,80,8080,7000,7001,7002 -m recent --set --name FUCKOFF -j DROP

    #local
    iptables -A INPUT -i $LAN_IFACE -j ACCEPT
   
    #dns
    iptables -A INPUT -p tcp --dport 53 -j ACCEPT
    iptables -A INPUT -p udp --dport 53 -j ACCEPT

    #icmp
    iptables -A INPUT -p icmp --icmp-type echo-reply -m limit --limit 1/s -j ACCEPT
    iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
    iptables -A INPUT -p icmp --icmp-type time-exceeded -m limit --limit 1/s -j ACCEPT
    iptables -A INPUT -p icmp --icmp-type destination-unreachable -m limit --limit 1/s -j ACCEPT
   
    #gre
    iptables -A INPUT -p gre -j ACCEPT

    #openvpn подключение к серверу VPN
    iptables -A INPUT -i $INET_IFACE -p udp --dport 1194 -j ACCEPT
    iptables -A INPUT -i $INET_IFACE -p udp --dport 1723 -j ACCEPT

    # для отладки
    iptables -A INPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level 4 --log-prefix "IPT INPUT packet died: "

    ###########
    # FORWARD #
    ###########

    iptables -A FORWARD -i $LAN_IFACE -p icmp -j ACCEPT
    iptables -A FORWARD -p gre -j ACCEPT
    iptables -A FORWARD -i eth0 -p tcp --dport 1723 -j ACCEPT
    iptables -A FOREARD -i eth0 -p tcp --dport 8443 -j ACCEPT
    iptables -A FORWARD -i eth0 -p tcp --dport 80 -j ACCEPT
    iptables -A FORWARD -i eth0 -p tcp --dport 8080 -j ACCEPT
    iptables -A FORWARD -i eth0 -p tcp --dport 7000 -j ACCEPT
    iptables -A FORWARD -i eth0 -p tcp --dport 7001 -j ACCEPT
    iptables -A FORWARD -i eth0 -p tcp --dport 7002 -j ACCEPT

    iptables -I FORWARD 1 -i eth0 -o vlan2 -d 192.168.4.5 -p tcp -m tcp --dport 8443 -j ACCEPT
    iptables -I FORWARD 1 -i eth0 -o vlan2 -d 192.168.4.5 -p tcp -m tcp --dport 80 -j ACCEPT
    iptables -I FORWARD 1 -i eth0 -o vlan2 -d 192.168.4.5 -p tcp -m tcp --dport 8080 -j ACCEPT
    iptables -I FORWARD 1 -i eth0 -o vlan2 -d 192.168.4.5 -p tcp -m tcp --dport 22 -j ACCEPT

    iptables -t filter -A FORWARD -s 192.168.4.0/24 -d 192.168.0.0/24 -j DROP

    iptables -A FORWARD -d 0/0 -s $vlan -j ACCEPT
   

    # нат
    iptables -A FORWARD -i $LAN_IFACE -j ACCEPT
   
    #проброс
    iptables -A FORWARD -i $INET_IFACE -o $LAN_IFACE -p tcp -d 192.168.0.251 --dport 7000 -j ACCEPT
    iptables -A FORWARD -i $INET_IFACE -o $LAN_IFACE -p tcp -d 192.168.0.252 --dport 7001 -j ACCEPT
    iptables -A FORWARD -i $INET_IFACE -o $LAN_IFACE -p tcp -d 192.168.0.253 --dport 7002 -j ACCEPT

   

    # для отладки
    iptables -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level 4 --log-prefix "IPT FORWARD packet died: "


    ###########
    # OUTPUT #
    ###########
    iptables -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level 4 --log-prefix "IPT OUTPUT packet died: "



    #######
    # NAT #
    #######

    #проброс порта
    iptables -t nat -A PREROUTING -p tcp -m tcp -d $INET_IP --dport 13578 -j DNAT --to-destination 192.168.0.101:3389
    iptables -t nat -A PREROUTING -p tcp -m tcp -d $INET_IP --dport 13579 -j DNAT --to-destination 192.168.0.6:3389
    iptables -t nat -A PREROUTING -p tcp -m tcp -d $INET_IP --dport 8443 -j DNAT --to-destination 192.168.4.5:8443
    iptables -t nat -A PREROUTING -p tcp -m tcp -d $INET_IP --dport 80 -j DNAT --to-destination 192.168.4.5:80
    iptables -t nat -A PREROUTING -p tcp -m tcp -d $INET_IP --dport 8080 -j DNAT --to-destination 192.168.4.5:8080
    iptables -t nat -A PREROUTING -p tcp -m tcp -d $INET_IP --dport 7000 -j DNAT --to-destination 192.168.0.251:7000
    iptables -t nat -A PREROUTING -p tcp -m tcp -d $INET_IP --dport 7001 -j DNAT --to-destination 192.168.0.252:7000
    iptables -t nat -A PREROUTING -p tcp -m tcp -d $INET_IP --dport 7002 -j DNAT --to-destination 192.168.0.253:7000

    #нат
    iptables -t nat -A POSTROUTING -s 192.168.0.0/23 -p all -o $INET_IFACE -j SNAT --to-source $INET_IP
    iptables -t nat -A POSTROUTING -s 192.168.4.0/24 -p all -o $INET_IFACE -j SNAT --to-source $INET_IP
    iptables -t nat -A POSTROUTING -s $vlan -j MASQUERADE
    iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

    iptables -t mangle -A POSTROUTING -p tcp --tcp-flags SYN,RST SYN -o $INET_IFACE -j TCPMSS --clamp-mss-to-pmtu

[свернуть]

ogost

имейте совесть, убирайте под тэг спойлер ваши простыни! a

ViktorY

Неужели никто ничем не поможет?

endru

модуль ip_gre включен?
modprobe ip_gre
скрипт по настройке iptables - Это не сам iptables. показывай вывод команды iptables-save

и раз уж работаешь с сетью, учись диагностировать узкие места. есть tcdump, посмотри на каком этапе режется соединение!
и показывай заодно netstat -ntl
Цитата: ViktorY от 08 декабря 2016, 04:37:39iptables -A INPUT -i $INET_IFACE -p udp --dport 1723 -j ACCEPT
так gre работает по udp или tcp?