Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: HOWTO: Iptables для новичков  (Прочитано 527428 раз)

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

Оффлайн MemFix

  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1320 : 03 Августа 2011, 00:53:30 »
Парни, прошу вашей помощи. третью ночь не сплю. ) вообщем установил на ubuntu server 10.04  squid, dhcp, samba. все работает норм, необходимо открыть порты для почты и пары других приложений. усилиями гугла написал скрипт для iptables. как только его запускаю в локальной сети перестает работать всё(dhcp не раздаёт ip, до сквида не достучаться) ну и соответственно нужные порты не открываются. ))) прошу вашей помощи.с ума схожу уже. ниже скрипт:
#!/bin/sh

ipt="/sbin/iptables -v"


# Непривилегированные порты
upp="1024:65535"
# Исходящие порты, которые надо открыть
acp="21 22 25 80 443 587 993 873 67 68 3128 110 10000"
# Входящие порты, которые надо открыть
acip="21 22 80 10000 137 138 139 445 25 110"

# Интерфейс, смотрящий наружу
eif="eth0"
eip="`ifconfig $eif | grep 'inet addr' | awk '{print $2}' | sed 's/^\w\+://g'`"

# Интерфейс, смотрящий в сеть
iif="eth1"
iip="`ifconfig $iif | grep 'inet addr' | awk '{print $2}' | sed 's/^\w\+://g'`"

# Удалить все существующие правила
$ipt -F
$ipt -t nat -F
$ipt -t mangle -F
$ipt -X
$ipt -t nat -X
$ipt -t mangle -X

# По-умолчанию выбрасывать все пакеты
$ipt -P INPUT DROP
$ipt -P OUTPUT DROP
$ipt -P FORWARD DROP

# Включить NAT.
# Предварительно нужно включить net.ipv4.ip_forward в /etc/sysctl.conf
$ipt -t nat -A POSTROUTING -o $eif -j MASQUERADE
$ipt -A FORWARD -i $iif -o $eif -m state --state NEW,ESTABLISHED -j ACCEPT

# Разрешить любой трафик внутри сети и по обратной петле
$ipt -A INPUT -i $iif -j ACCEPT
$ipt -A OUTPUT -o $iif -j ACCEPT
$ipt -A INPUT -d $iip -j ACCEPT
$ipt -A OUTPUT -d $iip -j ACCEPT
$ipt -A INPUT -i lo -j ACCEPT
$ipt -A OUTPUT -o lo -j ACCEPT

# Разрешить пакеты, идущие по установленному соединению
$ipt -A INPUT   -m state --state ESTABLISHED,RELATED -j ACCEPT
$ipt -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# Защита системы, не вникал
$ipt -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
$ipt -A OUTPUT -p tcp ! --syn -m state --state NEW -j DROP
$ipt -A INPUT -p UDP -s 0/0 --destination-port 138 -j DROP
$ipt -A INPUT -p UDP -s 0/0 --destination-port 113 -j REJECT
$ipt -A INPUT -p UDP -s 0/0 --source-port 67 --destination-port 68 -j ACCEPT 
$ipt -A INPUT -p UDP -j RETURN
$ipt -A OUTPUT -p UDP -s 0/0 -j ACCEPT
$ipt -A INPUT --fragment -p ICMP -j DROP
$ipt -A OUTPUT --fragment -p ICMP -j DROP
$ipt -A INPUT   -m state --state INVALID -j DROP
$ipt -A FORWARD -m state --state INVALID -j DROP

# Разрешить исходящие эхо-сообщения
$ipt -A INPUT -p icmp -m icmp -i $eif --icmp-type source-quench -j ACCEPT
$ipt -A OUTPUT -p icmp -m icmp -o $eif --icmp-type source-quench -j ACCEPT
$ipt -A INPUT -p icmp -m icmp -i $eif --icmp-type echo-reply -j ACCEPT
$ipt -A OUTPUT -p icmp -m icmp -o $eif --icmp-type echo-request -j ACCEPT
# Разрешить входящий ICMP-трафик
#$ipt -A INPUT -p icmp -j ACCEPT
#$ipt -A OUTPUT -p icmp -j ACCEPT

# Разрешить сообщения об ошибках через ICMP
$ipt -A INPUT -p icmp -m icmp -i $eif --icmp-type parameter-problem -j ACCEPT
$ipt -A OUTPUT -p icmp -m icmp -o $eif --icmp-type parameter-problem -j ACCEPT

$ipt -A INPUT -p icmp -m icmp -i $eif --icmp-type source-quench -j ACCEPT
$ipt -A OUTPUT -p tcp -m tcp -o $eif --dport 113 --sport $upp -j ACCEPT
$ipt -A INPUT -p tcp -m tcp -i $eif --dport $upp --sport 113 -j ACCEPT ! --syn
$ipt -A INPUT -p tcp -m tcp -i $eif --dport 113 -j DROP

# Открыть исходящие порты
for outp in $acp; do
    $ipt -A OUTPUT -p tcp -m tcp -o $eif --dport $outp --sport $upp -j ACCEPT
    $ipt -A FORWARD -p tcp -m tcp -i $iif -o $eif --dport $outp -j ACCEPT
    $ipt -A INPUT -p tcp -m tcp -i $eif --dport $upp --sport $outp -j ACCEPT ! --syn
done

# finger, whois, gorper, wais, traceroute
$ipt -A INPUT -p tcp -m tcp -i $eif --dport $upp --sport 20 -j ACCEPT
$ipt -A OUTPUT -p tcp -m tcp -o $eif --dport 20 --sport $upp -j ACCEPT ! --syn
$ipt -A OUTPUT -p tcp -m tcp -o $eif --dport $upp --sport $upp -j ACCEPT
$ipt -A INPUT -p tcp -m tcp -i $eif --dport $upp --sport $upp -j ACCEPT ! --syn
$ipt -A OUTPUT -p tcp -m tcp -o $eif --dport 23 --sport $upp -j ACCEPT
$ipt -A INPUT -p tcp -m tcp -i $eif --dport $upp --sport 23 -j ACCEPT ! --syn
$ipt -A OUTPUT -p tcp -m tcp -o $eif --dport 79 --sport $upp -j ACCEPT
$ipt -A INPUT -p tcp -m tcp -i $eif --dport $upp --sport 79 -j ACCEPT ! --syn
$ipt -A OUTPUT -p tcp -m tcp -o $eif --dport 43 --sport $upp -j ACCEPT
$ipt -A INPUT -p tcp -m tcp -i $eif --dport $upp --sport 43 -j ACCEPT ! --syn
$ipt -A OUTPUT -p tcp -m tcp -o $eif --dport 70 --sport $upp -j ACCEPT
$ipt -A INPUT -p tcp -m tcp -i $eif --dport $upp --sport 70 -j ACCEPT ! --syn
$ipt -A OUTPUT -p tcp -m tcp -o $eif --dport 210 --sport $upp -j ACCEPT
$ipt -A INPUT -p tcp -m tcp -i $eif --dport $upp --sport 210 -j ACCEPT ! --syn
$ipt -A OUTPUT -p udp -m udp -o $eif --dport 33434:33523 --sport 32769:65535 -j ACCEPT

# Открыть входящие порты
for inp in $acip; do
    $ipt -A INPUT -p tcp -m tcp --dport $inp --sport $upp -i $eif -d $eip -j ACCEPT
    $ipt -A OUTPUT -p tcp -m tcp --sport $inp --dport $upp -o $eif -s $eip -j ACCEPT
done


######
# SAVE #
# В разделе SAVE сохраняется конфиг, что бы после перезагрузки шлюза#
# настройки iptables восстановились автоматически. #
######
iptables-save > /etc/iptables.rules



« Последнее редактирование: 03 Августа 2011, 01:09:18 от MemFix »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1321 : 03 Августа 2011, 01:43:32 »
1. Читать правила форума. Причём бегом.
2. Показывать вывод iptable-save. Мы вам не онлайн-интерпретаторы скриптов.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн MemFix

  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1322 : 03 Августа 2011, 09:20:52 »
iptables.save
# Generated by iptables-save v1.4.4 on Tue Aug  2 21:08:19 2011
*mangle
:PREROUTING ACCEPT [12086:10787642]
:INPUT ACCEPT [12002:10776560]
:FORWARD ACCEPT [72:10462]
:OUTPUT ACCEPT [12962:11096913]
:POSTROUTING ACCEPT [13030:11108358]
COMMIT
# Completed on Tue Aug  2 21:08:19 2011
# Generated by iptables-save v1.4.4 on Tue Aug  2 21:08:19 2011
*nat
:PREROUTING ACCEPT [53:3559]
:POSTROUTING ACCEPT [6:1150]
:OUTPUT ACCEPT [156:11050]
[142:9440] -A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Tue Aug  2 21:08:19 2011
# Generated by iptables-save v1.4.4 on Tue Aug  2 21:08:19 2011
*filter
:INPUT ACCEPT [1598:139806]
:FORWARD ACCEPT [11:560]
:OUTPUT ACCEPT [1329:452002]
[4077:276351] -A INPUT -i eth1 -j ACCEPT
[0:0] -A INPUT -d 192.168.0.1/32 -j ACCEPT
[4:200] -A INPUT -i lo -j ACCEPT
[7912:10499111] -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
[2:116] -A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
[2:522] -A INPUT -p udp -m udp --dport 138 -j DROP
[0:0] -A INPUT -p udp -m udp --dport 113 -j REJECT --reject-with icmp-port-unreachable
[0:0] -A INPUT -p udp -m udp --sport 67 --dport 68 -j ACCEPT
[0:0] -A INPUT -p udp -j RETURN
[0:0] -A INPUT -p icmp -f -j DROP
[0:0] -A INPUT -m state --state INVALID -j DROP
[0:0] -A INPUT -i eth0 -p icmp -m icmp --icmp-type 4 -j ACCEPT
[0:0] -A INPUT -i eth0 -p icmp -m icmp --icmp-type 0 -j ACCEPT
[0:0] -A INPUT -i eth0 -p icmp -m icmp --icmp-type 12 -j ACCEPT
[0:0] -A INPUT -i eth0 -p icmp -m icmp --icmp-type 4 -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 113 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --dport 113 -j DROP
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 21 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 22 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 25 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 80 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 443 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 587 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 993 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 873 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 67 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 68 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 3128 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 110 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 10000 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 20 --dport 1024:65535 -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 23 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 79 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 43 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 70 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 210 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 21 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 22 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 80 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 10000 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 137 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 138 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 139 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 445 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 25 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 110 -j ACCEPT
[33:2394] -A FORWARD -i eth1 -o eth0 -m state --state NEW,ESTABLISHED -j ACCEPT
[39:8068] -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
[0:0] -A FORWARD -m state --state INVALID -j DROP
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 21 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 22 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 25 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 80 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 443 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 587 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 993 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 873 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 67 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 68 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 3128 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 110 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 10000 -j ACCEPT
[7661:10655334] -A OUTPUT -o eth1 -j ACCEPT
[0:0] -A OUTPUT -d 192.168.0.1/32 -j ACCEPT
[4:200] -A OUTPUT -o lo -j ACCEPT
[10:560] -A OUTPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
[93:6754] -A OUTPUT -p udp -j ACCEPT
[0:0] -A OUTPUT -p icmp -f -j DROP
[0:0] -A OUTPUT -o eth0 -p icmp -m icmp --icmp-type 4 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p icmp -m icmp --icmp-type 8 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p icmp -m icmp --icmp-type 12 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 113 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 21 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 22 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 25 -j ACCEPT
[5021:381240] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 80 -j ACCEPT
[12:2053] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 443 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 587 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 993 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 873 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 67 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 68 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 3128 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 110 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 10000 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 20 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 23 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 79 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 43 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 70 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 210 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p udp -m udp --sport 32769:65535 --dport 33434:33523 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 21 --dport 1024:65535 -j ACCEPT
[100:37608] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 22 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 80 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 10000 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 137 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 138 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 139 --dport 1024:65535 -j ACCEPT
[2:112] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 445 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 25 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 110 --dport 1024:65535 -j ACCEPT
COMMIT
# Completed on Tue Aug  2 21:08:19 2011

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1323 : 03 Августа 2011, 09:26:43 »
Ещё бы убрать эту простынку под спойлер и показать ifconfig с раскладкой

Оффлайн MemFix

  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1324 : 03 Августа 2011, 10:05:39 »
eth0      Link encap:Ethernet  HWaddr 00:11:85:e1:42:c4 
          inet addr:192.168.1.4  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::211:85ff:fee1:42c4/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:43 errors:0 dropped:0 overruns:0 frame:0
          TX packets:93 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6689 (6.6 KB)  TX bytes:15458 (15.4 KB)
          Interrupt:20

eth1      Link encap:Ethernet  HWaddr 00:e0:52:aa:88:8c 
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:16 Base address:0x1000

lo        Link encap:Локальная петля (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:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:480 (480.0 B)  TX bytes:480 (480.0 B)

eth0 смотрит в инет
eth1 локальная сеть

# Generated by iptables-save v1.4.4 on Tue Aug  2 21:08:19 2011
*mangle
:PREROUTING ACCEPT [12086:10787642]
:INPUT ACCEPT [12002:10776560]
:FORWARD ACCEPT [72:10462]
:OUTPUT ACCEPT [12962:11096913]
:POSTROUTING ACCEPT [13030:11108358]
COMMIT
# Completed on Tue Aug  2 21:08:19 2011
# Generated by iptables-save v1.4.4 on Tue Aug  2 21:08:19 2011
*nat
:PREROUTING ACCEPT [53:3559]
:POSTROUTING ACCEPT [6:1150]
:OUTPUT ACCEPT [156:11050]
[142:9440] -A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Tue Aug  2 21:08:19 2011
# Generated by iptables-save v1.4.4 on Tue Aug  2 21:08:19 2011
*filter
:INPUT ACCEPT [1598:139806]
:FORWARD ACCEPT [11:560]
:OUTPUT ACCEPT [1329:452002]
[4077:276351] -A INPUT -i eth1 -j ACCEPT
[0:0] -A INPUT -d 192.168.0.1/32 -j ACCEPT
[4:200] -A INPUT -i lo -j ACCEPT
[7912:10499111] -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
[2:116] -A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
[2:522] -A INPUT -p udp -m udp --dport 138 -j DROP
[0:0] -A INPUT -p udp -m udp --dport 113 -j REJECT --reject-with icmp-port-unreachable
[0:0] -A INPUT -p udp -m udp --sport 67 --dport 68 -j ACCEPT
[0:0] -A INPUT -p udp -j RETURN
[0:0] -A INPUT -p icmp -f -j DROP
[0:0] -A INPUT -m state --state INVALID -j DROP
[0:0] -A INPUT -i eth0 -p icmp -m icmp --icmp-type 4 -j ACCEPT
[0:0] -A INPUT -i eth0 -p icmp -m icmp --icmp-type 0 -j ACCEPT
[0:0] -A INPUT -i eth0 -p icmp -m icmp --icmp-type 12 -j ACCEPT
[0:0] -A INPUT -i eth0 -p icmp -m icmp --icmp-type 4 -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 113 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --dport 113 -j DROP
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 21 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 22 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 25 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 80 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 443 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 587 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 993 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 873 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 67 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 68 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 3128 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 110 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 10000 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 20 --dport 1024:65535 -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 23 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 79 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 43 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 70 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -i eth0 -p tcp -m tcp --sport 210 --dport 1024:65535 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 21 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 22 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 80 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 10000 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 137 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 138 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 139 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 445 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 25 -j ACCEPT
[0:0] -A INPUT -d 192.168.1.4/32 -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 110 -j ACCEPT
[33:2394] -A FORWARD -i eth1 -o eth0 -m state --state NEW,ESTABLISHED -j ACCEPT
[39:8068] -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
[0:0] -A FORWARD -m state --state INVALID -j DROP
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 21 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 22 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 25 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 80 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 443 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 587 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 993 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 873 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 67 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 68 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 3128 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 110 -j ACCEPT
[0:0] -A FORWARD -i eth1 -o eth0 -p tcp -m tcp --dport 10000 -j ACCEPT
[7661:10655334] -A OUTPUT -o eth1 -j ACCEPT
[0:0] -A OUTPUT -d 192.168.0.1/32 -j ACCEPT
[4:200] -A OUTPUT -o lo -j ACCEPT
[10:560] -A OUTPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
[93:6754] -A OUTPUT -p udp -j ACCEPT
[0:0] -A OUTPUT -p icmp -f -j DROP
[0:0] -A OUTPUT -o eth0 -p icmp -m icmp --icmp-type 4 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p icmp -m icmp --icmp-type 8 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p icmp -m icmp --icmp-type 12 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 113 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 21 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 22 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 25 -j ACCEPT
[5021:381240] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 80 -j ACCEPT
[12:2053] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 443 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 587 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 993 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 873 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 67 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 68 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 3128 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 110 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 10000 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 20 ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 23 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 79 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 43 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 70 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 210 -j ACCEPT
[0:0] -A OUTPUT -o eth0 -p udp -m udp --sport 32769:65535 --dport 33434:33523 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 21 --dport 1024:65535 -j ACCEPT
[100:37608] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 22 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 80 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 10000 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 137 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 138 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 139 --dport 1024:65535 -j ACCEPT
[2:112] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 445 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 25 --dport 1024:65535 -j ACCEPT
[0:0] -A OUTPUT -s 192.168.1.4/32 -o eth0 -p tcp -m tcp --sport 110 --dport 1024:65535 -j ACCEPT
COMMIT
# Completed on Tue Aug  2 21:08:19 2011


Оффлайн klif

  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1325 : 04 Августа 2011, 06:07:45 »
Настраиваю домашний роутер, есть проблема с iptables:
(Нажмите, чтобы показать/скрыть)

с данными настройками не могу зайти на некоторые сайты (habrahabr.ru) , просто висит.
А вот с таким нормально работает:
(Нажмите, чтобы показать/скрыть)

В чем может быть косяк ?

Оффлайн serjpart

  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1326 : 04 Августа 2011, 07:42:02 »
Всем здрасти. Подскажите как настроить rdp,  с дома хочу заходить на рабочий комп. что на шлюзе нужно прописать? шлюз на убунте

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1327 : 04 Августа 2011, 08:27:41 »
В чем может быть косяк ?

*filter
...
:OUTPUT DROP [0:0]
В некоторых кругах считается, что это всегда влечёт за собой ошибку (собственно, обычно это подтверждается)

sudo iptables -P OUTPUT ACCEPT
Пользователь решил продолжить мысль 04 Августа 2011, 08:29:36:

Хотя подумав.. я понял, что дело в MTU
sudo iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Пользователь решил продолжить мысль 04 Августа 2011, 08:35:13:
с дома хочу заходить на рабочий комп. что на шлюзе нужно прописать? шлюз на убунте
Нужно пробросить порт 3389. Как именно? Для этого нужно чуть побольше сведений, а именно, как построена сеть.
Но я бы не стал высовываться "голым задом" в интернет. Лучше создать vpn и работать внутри неё безо всяких "пробросов".
« Последнее редактирование: 04 Августа 2011, 08:35:13 от fisher74 »

Оффлайн serjpart

  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1328 : 04 Августа 2011, 08:39:58 »
знать бы ещё как(

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1329 : 04 Августа 2011, 08:43:59 »
знать бы ещё как(
Пробростить примерно так  (раз уж мы в теме про таблесы)
sudo iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 3389-j DNAT --to-destination 192.168.15.6
sudo iptables -A FORWARD -d 192.168.15.6 -p tcp --dport 3389 -j ACCEPT
Про всё остальное предлагаю продолжить в Вашей теме.
« Последнее редактирование: 04 Августа 2011, 14:24:41 от fisher74 »

Оффлайн klif

  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1330 : 04 Августа 2011, 12:27:29 »

Хотя подумав.. я понял, что дело в MTU
sudo iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

А можно немного подробнее ?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1331 : 04 Августа 2011, 12:28:57 »
Что подробнее? команду разложить? Для этого Iptables Tutorial есть

Оффлайн klif

  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1332 : 04 Августа 2011, 12:31:05 »
Что подробнее? команду разложить? Для этого Iptables Tutorial есть

Как MTU влияет на доступ к сайту.

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1333 : 04 Августа 2011, 12:38:16 »
TCP-пакеты длиной 1500 не могут пролезть через туннель, в котором максимальная длина пакета 1492 (или того меньше) по понятным причинам.
« Последнее редактирование: 04 Августа 2011, 12:40:04 от fisher74 »

Оффлайн klif

  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1334 : 04 Августа 2011, 12:47:43 »
TCP-пакеты длиной 1500 не могут пролезть через туннель, в котором максимальная длина пакета 1492 (или того меньше) по понятным причинам.

но на другие сайты он меня пускает! По  ifconfig для  ppp0 MTU 1492.
 

 

Страница сгенерирована за 0.042 секунд. Запросов: 25.