The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"iptables + pptpd"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"iptables + pptpd"  
Сообщение от Алексей email(??) on 19-Мрт-09, 09:41 
Ребят помогите, а то головой уже об стенку размажусь, не могу найти ошибку ...

В общем стоит Debian Lenny. Он у нас с одной сетевой картой с внешним ип, и должен соединиться к другому серверу в другой части страны.


eth0      Link encap:Ethernet  HWaddr 00:13:d4:91:b8:2b
          inet addr:83.49.112.14  Bcast:83.69.212.15  Mask:255.255.255.248
          inet6 addr: fe80::213:d4ff:fe91:b82b/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:336436 errors:0 dropped:0 overruns:0 frame:0
          TX packets:466302 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:37754860 (36.0 MiB)  TX bytes:37970858 (36.2 MiB)
          Interrupt:19 Base address:0xd000

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:16436  Metric:1
          RX packets:33155 errors:0 dropped:0 overruns:0 frame:0
          TX packets:33155 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1434108 (1.3 MiB)  TX bytes:1434108 (1.3 MiB)


root@r0:/script# cat iptables.src
#!/bin/bash

echo "Applying iptables rules ..."

IPT="/sbin/iptables"
DNS="217.67.198.182"
SERVER_IP="83.49.112.14"
DEFAULT_POLICY="DROP"
VPN_SERVER1="77.73.140.46"

# Deleting everything
$IPT -F
$IPT -X


# Allow next:

# Allow unlimited traffic on loopback
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT

# LOG
# $IPT -A INPUT -d $SERVER_IP -j LOG


# DNS
# Allow connection from DNS servers to source ports 1024-65535 to the port 53 on the SERVER
$IPT -A OUTPUT -p udp -s $SERVER_IP --sport 1024: -d $DNS --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
$IPT -A INPUT -p udp -s $DNS --sport 53 -d $SERVER_IP --dport 1024: -m state --state ESTABLISHED -j ACCEPT
$IPT -A OUTPUT -p tcp -s $SERVER_IP --sport 1024: -d $DNS --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
$IPT -A INPUT -p tcp -s $DNS --sport 53 -d $SERVER_IP --dport 1024: -m state --state ESTABLISHED -j ACCEPT


# ICMP
# Allow ICMP
$IPT -A INPUT -p icmp -s 0/0 -d $SERVER_IP -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPT -A OUTPUT -p icmp -s $SERVER_IP -d 0/0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


# SSH
$IPT -A INPUT -p tcp -s 0/0 -d $SERVER_IP --sport 0: --dport 17022 -m state --state NEW,ESTABLISHED -j ACCEPT
$IPT -A OUTPUT -p tcp -s $SERVER_IP -d 0/0 --sport 17022 --dport 0: -m state --state NEW,ESTABLISHED -j ACCEPT


# HTTP
$IPT -A INPUT -p tcp -s 0/0 -d $SERVER_IP --sport 1024: --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
$IPT -A OUTPUT -p tcp -s $SERVER_IP -d 0/0 --sport 80 --dport 1024: -m state --state ESTABLISHED -j ACCEPT
#--- Allow server to download HTTP from internet
$IPT -A OUTPUT -p tcp -s $SERVER_IP -d 0/0 --sport 1024: --dport 80 -j ACCEPT

# PPTPD (VPN)
#iptables -A INPUT -p gre -j ACCEPT
#iptables -A INPUT -m tcp -p tcp --dport 1723 -j ACCEPT

$IPT -A INPUT -p tcp --dport 1723 -j ACCEPT
$IPT -A INPUT -p udp --dport 1723 -j ACCEPT
$IPT -A OUTPUT -p 47 -j ACCEPT
$IPT -A INPUT -p 47 -j ACCEPT
$IPT -A INPUT -p tcp --dport 1723 -j ACCEPT
$IPT -A INPUT -i eth0 -p 47 -j ACCEPT
$IPT -A OUTPUT -o eth0 -p 47 -j ACCEPT
$IPT -A INPUT -i eth0 -p udp --dport 1723 -j ACCEPT
$IPT -A OUTPUT -o eth0 -p udp --sport 1723 -j ACCEPT

#$IPT -N PPTPD
#$IPT -A PPTPD -p tcp -d $SERVER_IP --dport 1723 -m state --state NEW,ESTABLISHED -j ACCEPT
#$IPT -A PPTPD -p gre -d $SERVER_IP -j ACCEPT
#$IPT -A PPTPD -p gre -s $SERVER_IP -j ACCEPT


# DROP everything that could go on
$IPT -A INPUT -j $DEFAULT_POLICY
$IPT -A OUTPUT -j ACCEPT
#$DEFAULT_POLICY
$IPT -A FORWARD -j ACCEPT
#$DEFAULT_POLICY

Это на клиенте Debian Lenny.

Сейчас выдает следующее ...

pon sgstr debug nodetach
using channel 301
Using interface ppp0
Connect: ppp0 <--> /dev/pts/2
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x8bdcdc85> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x8bdcdc85> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x8bdcdc85> <pcomp> <accomp>]
^CTerminating on signal 2
Child process pptp 77.73.140.46 --nolaunchpppd (pid 32326) terminated with signal 2
Modem hangup
Connection terminated.

Когда в iptabels разрешаю все ppp работает на ура ...

root@r0:/script# pon sgstr debug nodetach
using channel 305
Using interface ppp1
Connect: ppp1 <--> /dev/pts/4
rcvd [LCP ConfReq id=0x1 <asyncmap 0x0> <auth chap MS-v2> <magic 0x494f5673> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x6dbe0fa8> <pcomp> <accomp>]
sent [LCP ConfAck id=0x1 <asyncmap 0x0> <auth chap MS-v2> <magic 0x494f5673> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x6dbe0fa8> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0x6dbe0fa8]
rcvd [LCP EchoReq id=0x0 magic=0x494f5673]
sent [LCP EchoRep id=0x0 magic=0x6dbe0fa8]
rcvd [CHAP Challenge id=0x33 <cf9eba92795831df8825cf85bd7833ec>, name = "pptpd"]
sent [CHAP Response id=0x33 <e1cb82b49b579658e2fad1d9da3b541c00000000000000004a7130bfcf1ad201ed5bbfe7c2f9691a3ec40d3fea27a6eb00>, name = "rootiks"]
rcvd [LCP EchoRep id=0x0 magic=0x494f5673]
rcvd [CHAP Success id=0x33 "S=03B2F00B2ECC417452F274622760AB84A30523D6 M=Access granted"]
CHAP authentication succeeded
sent [CCP ConfReq id=0x1 <mppe +H -M +S -L -D -C>]
rcvd [CCP ConfReq id=0x1 <mppe +H -M +S -L -D -C>]
sent [CCP ConfAck id=0x1 <mppe +H -M +S -L -D -C>]
rcvd [CCP ConfAck id=0x1 <mppe +H -M +S -L -D -C>]
MPPE 128-bit stateless compression enabled
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 83.69.212.14>]
rcvd [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 192.168.1.210>]
sent [IPCP ConfAck id=0x1 <compress VJ 0f 01> <addr 192.168.1.210>]
rcvd [IPCP ConfNak id=0x1 <addr 192.168.1.220>]
sent [IPCP ConfReq id=0x2 <compress VJ 0f 01> <addr 192.168.1.220>]
rcvd [IPCP ConfAck id=0x2 <compress VJ 0f 01> <addr 192.168.1.220>]
Cannot determine ethernet address for proxy ARP
local  IP address 192.168.1.220
remote IP address 192.168.1.210
Script /etc/ppp/ip-up started (pid 32501)
Script /etc/ppp/ip-up finished (pid 32501), status = 0x0


Кто сталкивался с таким ... подскажите чего сможете ...

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

  • iptables + pptpd, Алексей, 12:28 , 19-Мрт-09, (1)  
  • iptables + pptpd, Аноним, 12:36 , 19-Мрт-09, (2)  
    • iptables + pptpd, Алексей, 12:51 , 19-Мрт-09, (3)  
      • iptables + pptpd, Аноним, 13:02 , 19-Мрт-09, (4)  
        • iptables + pptpd, Алексей, 13:08 , 19-Мрт-09, (6)  
      • iptables + pptpd, Аноним, 13:07 , 19-Мрт-09, (5)  
        • iptables + pptpd, Алексей, 13:10 , 19-Мрт-09, (7)  
          • iptables + pptpd, Аноним, 13:16 , 19-Мрт-09, (8)  
            • iptables + pptpd, Аноним, 13:18 , 19-Мрт-09, (9)  
              • iptables + pptpd, Алексей, 13:21 , 19-Мрт-09, (10)  

Сообщения по теме [Сортировка по времени | RSS]


1. "iptables + pptpd"  
Сообщение от Алексей email(??) on 19-Мрт-09, 12:28 
Кто-нибудь?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "iptables + pptpd"  
Сообщение от Аноним (??) on 19-Мрт-09, 12:36 
попробуйте упростить скриптик

#!/bin/sh
LAN_IFACE="eth0"
IPTABLES="/usr/sbin/iptables"

# стандартные действия
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD DROP

# удаляем все имеющиеся правила
$IPTABLES -F
$IPTABLES -F -t nat
$IPTABLES -F -t mangle
$IPTABLES -X
$IPTABLES -X -t nat
$IPTABLES -X -t mangle

# безусловно разрешаем соединения по локальному интерфейсу (loopback, 127.0.0.1)
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT

#SSH
$IPTABLES -A INPUT -p tcp -m state --state NEW --dport 22 -m recent --update --seconds 20 -j DROP
$IPTABLES -A INPUT -p tcp -m state --state NEW --dport 22 -m recent --set -j ACCEPT
#DNS
$IPTABLES -A INPUT -p UDP -s 0/0  --dport 53 -j ACCEPT
$IPTABLES -A INPUT -p UDP -s 0/0 --sport 53 -j ACCEPT
#ICMP
$IPTABLES -A INPUT -p ICMP -j ACCEPT

$IPTABLES -A INPUT -p ALL -i $LAN_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "iptables + pptpd"  
Сообщение от Алексей email(??) on 19-Мрт-09, 12:51 
Хм ..

Скрипт упрощенный, просто не до сказал, что до этого у меня все цепочки были закрыты, в связи с этим и стоят много не нужных правил ан первый взгляд ...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "iptables + pptpd"  
Сообщение от Аноним (??) on 19-Мрт-09, 13:02 
>Хм ..
>
>Скрипт упрощенный, просто не до сказал, что до этого у меня все
>цепочки были закрыты, в связи с этим и стоят много не
>нужных правил ан первый взгляд ...

1723 порт на инпут надо открывать когда к вам коннектятся, а не вы

вот как привел я -- должно работать

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "iptables + pptpd"  
Сообщение от Алексей email(??) on 19-Мрт-09, 13:08 
Блин ну где вот такие люди как вы били ... я то уже веру в жизнь потерял ... Спасибо огромное ... Я все равно сделал по своему так как мне нельзя открывать столько всего ))) Но спасибо ребят ...
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "iptables + pptpd"  
Сообщение от Аноним (??) on 19-Мрт-09, 13:07 
>Хм ..

так же из лога я вижу что вы _тупо_ ничего не получаете от удаленного ppp
(имеются одни send,  rsv не наблюдаются)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "iptables + pptpd"  
Сообщение от Алексей email(??) on 19-Мрт-09, 13:10 
>>Хм ..
>
>так же из лога я вижу что вы _тупо_ ничего не получаете
>от удаленного ppp
>(имеются одни send,  rsv не наблюдаются)

Да это я тоже видел и поэтому и написал, что ен вижу своей ошибки ...
Решается все просто, ставим sport и вуаля ... все отлично ...

# PPTPD (VPN)
$IPT -A INPUT -p tcp -s $VPN_SERVER1 -d $SERVER_IP --sport 1723 -j ACCEPT
$IPT -A INPUT -p gre -s $VPN_SERVER1 -d $SERVER_IP -j ACCEPT

$IPT -A OUTPUT -d $VPN_SERVER1 -s $SERVER_IP -j ACCEPT

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "iptables + pptpd"  
Сообщение от Аноним (??) on 19-Мрт-09, 13:16 
>[оверквотинг удален]
>Да это я тоже видел и поэтому и написал, что ен вижу
>своей ошибки ...
>Решается все просто, ставим sport и вуаля ... все отлично ...
>
># PPTPD (VPN)
>$IPT -A INPUT -p tcp -s $VPN_SERVER1 -d $SERVER_IP --sport 1723 -j
>ACCEPT
>$IPT -A INPUT -p gre -s $VPN_SERVER1 -d $SERVER_IP -j ACCEPT
>
>$IPT -A OUTPUT -d $VPN_SERVER1 -s $SERVER_IP -j ACCEPT

а имеет ли смысл играться с аутпут если оно у вас по умолчанию асепт
($IPT -A OUTPUT -j ACCEPT)


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "iptables + pptpd"  
Сообщение от Аноним (??) on 19-Мрт-09, 13:18 
>[оверквотинг удален]
>># PPTPD (VPN)
>>$IPT -A INPUT -p tcp -s $VPN_SERVER1 -d $SERVER_IP --sport 1723 -j
>>ACCEPT
>>$IPT -A INPUT -p gre -s $VPN_SERVER1 -d $SERVER_IP -j ACCEPT
>>
>>$IPT -A OUTPUT -d $VPN_SERVER1 -s $SERVER_IP -j ACCEPT
>
>а имеет ли смысл играться с аутпут если оно у вас по
>умолчанию асепт
>($IPT -A OUTPUT -j ACCEPT)

пардон - ключ не тот :)))

ОК! работает и славно

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "iptables + pptpd"  
Сообщение от Алексей email(??) on 19-Мрт-09, 13:21 
>[оверквотинг удален]
>>>
>>>$IPT -A OUTPUT -d $VPN_SERVER1 -s $SERVER_IP -j ACCEPT
>>
>>а имеет ли смысл играться с аутпут если оно у вас по
>>умолчанию асепт
>>($IPT -A OUTPUT -j ACCEPT)
>
> пардон - ключ не тот :)))
>
>ОК! работает и славно

Это у меня в упрощенном варианте он все принимает и отсылает ... я просто поступенчато делаю фаервол, а вообще он принимает и отдает только то что нужно и ничего лишнего ...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру