LinuxForum.Fans
Тема

Как в файле!!! iptables описать nat проброс портов.

Автор: stinggga 16 сообщений 5242 просмотров
#387506

Всем, привет.

Уважеаемые, форумчане подскажите как в файле!!! iptables описать nat проброс портов.

Так можна командой

text
iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp --dport 64888 -j DNAT --to-destination 127.0.0.1:3306
iptables -t nat  -A POSTROUTING -d 127.0.0.1 -p tcp -m tcp --dport 3306 -j SNAT --to-source 192.168.0.1

Но интересует именно ручное редактирование vi редактором.

Как организовать синтаксис и в какой части файла ?

Спасибо

#387507
"stinggga" написал:
Так можна командой
iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp --dport 64888 -j DNAT --to-destination 127.0.0.1:3306
iptables -t nat -A POSTROUTING -d 127.0.0.1 -p tcp -m tcp --dport 3306 -j SNAT --to-source 192.168.0.1

Но интересует именно ручное редактирование vi редактором.
text
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING -d 192.168.0.1/32 -p tcp -m tcp --dport 64888 -j DNAT --to-destination 127.0.0.1:3306
-A POSTROUTING -d 127.0.0.1/32 -p tcp -m tcp --dport 3306 -j SNAT --to-source 192.168.0.1
COMMIT
#387509

после commit там где идут открытие input портов ?

#387510
"stinggga" написал:
после commit там где идут открытие input портов ?

Да.
Ручное редактирование файла необязательно.
Введите нужные вам команды

text
iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp --dport 64888 -j DNAT --to-destination 127.0.0.1:3306
iptables -t nat  -A POSTROUTING -d 127.0.0.1 -p tcp -m tcp --dport 3306 -j SNAT --to-source 192.168.0.1

Убедитесь, что всё работает нужным вам образом.
Выполните

text

iptables-save > /etc/iptables

Правила, используемые в данный момент, сохранятся в файл /etc/iptables.

#387511

Да я понимаю, но именно надо так.

service iptable restart
Error
Применяются правила брандмауэра iptables: iptables-restore v1.3.5: Can't set policy `INPUT' on `ACCEPT' line 84: Bad built-in chain name

#387512

Может что не правильно делаю ?

text
cat /etc/sysconfig/iptables
# Generated by iptables-save v1.3.5 on Tue Mar 25 12:22:54 2014
*filter
:INPUT ACCEPT [73:7682]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [80:15706]

-A INPUT -s 192.168.0.111 -j ACCEPT

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# pop3 and smtp -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT -A INPUT -p tcp -m tcp --dport 110 -j ACCEPT -A INPUT -p tcp -m tcp --dport 143 -j ACCEPT

#open dns -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT

#open port to connect to MYSQL -A INPUT -m tcp -p tcp --dport 3306 -j ACCEPT

#Samba -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 137 -j ACCEPT -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 138 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT

#open web from adress -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT #-A INPUT -p tcp --destination-port 80 -m iprange --src-range 192.168.1.0-192.168.1.200 -j ACCEPT

-A INPUT -p tcp --dport 22 -j ACCEPT

#open FTP -A INPUT -m tcp -p tcp --dport 21 -j ACCEPT -A INPUT -m tcp -p tcp --dport 20 -j ACCEPT -A INPUT -m tcp -p tcp --dport 64000:65535 -j ACCEPT

-A INPUT -m tcp -p tcp --dport 40000:40500 -j ACCEPT

-A INPUT -p tcp --dport 1521 -j ACCEPT

-A INPUT -p udp --dport 40543 -j DROP -A OUTPUT -p udp --dport 40543 -j DROP

#open pptp VPN server -A INPUT -i eth0 -p gre -j ACCEPT -A INPUT -i eth0 -m tcp -p tcp --dport 1723 -j ACCEPT -A FORWARD -i ppp+ -o eth0 -j ACCEPT -A FORWARD -i eth0 -o ppp+ -j ACCEPT

# TEST -A INPUT -p TCP -i eth0 --dport 21 -s 192.168.1.0/24 -m state --state NEW -j ACCEPT

-P INPUT DROP #-P FORWARD DROP -P OUTPUT ACCEPT

COMMIT # Completed on Tue Mar 25 12:22:54 2014

############################################## !!!!!!!!!!!!!!!!! *nat :PREROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] -A PREROUTING -d 192.168.0.1/32 -p tcp -m tcp --dport 64888 -j DNAT --to-destination 127.0.0.1:3306 -A POSTROUTING -d 127.0.0.1/32 -p tcp -m tcp --dport 3306 -j SNAT --to-source 192.168.0.1

#387513
"stinggga" написал:
cat /etc/sysconfig/iptables

Лучше

text
nl /etc/sysconfig/iptables
#387514
text
1  # Generated by iptables-save v1.3.5 on Tue Mar 25 12:22:54 2014
     2  *filter
     3  :INPUT ACCEPT [73:7682]
     4  :FORWARD ACCEPT [0:0]
     5  :OUTPUT ACCEPT [80:15706]

6 -A INPUT -s 192.168.0.111 -j ACCEPT

7 -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

8 # pop3 and smtp 9 -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT 10 -A INPUT -p tcp -m tcp --dport 110 -j ACCEPT 11 -A INPUT -p tcp -m tcp --dport 143 -j ACCEPT

12 #open dns 13 -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT 14 #close dns 15 #-A INPUT -p udp --dport 53 -j DROP

16 #open port to connect to MYSQL 17 -A INPUT -m tcp -p tcp --dport 3306 -j ACCEPT

18 #Samba 19 -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 137 -j ACCEPT 20 -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 138 -j ACCEPT 21 -A INPUT -s 192.168.1.0/24 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT 22 -A INPUT -s 192.168.1.0/24 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT

23 #open web from adress 24 -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 25 #-A INPUT -p tcp --destination-port 80 -m iprange --src-range 192.168.1.0-192.168.1.200 -j ACCEPT

27 -A INPUT -p tcp --dport 22 -j ACCEPT

28 #open FTP 29 -A INPUT -m tcp -p tcp --dport 21 -j ACCEPT 30 -A INPUT -m tcp -p tcp --dport 20 -j ACCEPT 31 -A INPUT -m tcp -p tcp --dport 64000:65535 -j ACCEPT

32 -A INPUT -m tcp -p tcp --dport 40000:40500 -j ACCEPT

33 -A INPUT -p tcp --dport 1521 -j ACCEPT

34 #Open Proxy Squid 35 -A INPUT -p tcp -m state --state NEW -m tcp --dport 3128 -j ACCEPT

36 -A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner postfix -j ACCEPT 37 -A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner root -j ACCEPT 38 #-A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner katia -j ACCEPT 39 -A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner alex -j ACCEPT 40 -A OUTPUT -p tcp -m tcp --dport 25 -j DROP

41 -A INPUT -p udp --dport 40543 -j DROP 42 -A OUTPUT -p udp --dport 40543 -j DROP

43 #open pptp VPN server 44 -A INPUT -i eth0 -p gre -j ACCEPT 45 -A INPUT -i eth0 -m tcp -p tcp --dport 1723 -j ACCEPT 46 -A FORWARD -i ppp+ -o eth0 -j ACCEPT 47 -A FORWARD -i eth0 -o ppp+ -j ACCEPT

48 # TEST 49 -A INPUT -p TCP -i eth0 --dport 21 -s 192.168.1.0/24 -m state --state NEW -j ACCEPT

50 -P INPUT DROP 51 #-P FORWARD DROP 52 -P OUTPUT ACCEPT

53 COMMIT 54 # Completed on Tue Mar 25 12:22:54 2014

55 #Tak kak ne otkrwt 3306 na vneshne routere to delaem nat s 64888 na 3306 56 #*nat 57 #:PREROUTING ACCEPT [0:0] 58 #:INPUT ACCEPT [0:0] 59 #:OUTPUT ACCEPT [0:0] 60 #:POSTROUTING ACCEPT [0:0] 61 #-A PREROUTING -d 192.168.0.1/32 -p tcp -m tcp --dport 64888 -j DNAT --to-destination 127.0.0.1:3306 62 #-A POSTROUTING -d 127.0.0.1/32 -p tcp -m tcp --dport 3306 -j SNAT --to-source 192.168.0.1

#387516

ну в смысле с 55 строки всё раскоменчено :)

#387517
"stinggga" написал:
Can't set policy `INPUT' on `ACCEPT' line 84: Bad built-in chain name
"stinggga" написал:
ну в смысле с 55 строки всё раскоменчено ab

А где остальное? Должна быть строка 84 с ошибкой в имени встроенной цепочки правил.

#387519

Вот такая ерунда получается сам не пойму:

text
[root@mail ~]# nl /etc/sysconfig/iptables
     1  # Generated by iptables-save v1.3.5 on Tue Mar 25 12:22:54 2014
     2  *filter
     3  :INPUT ACCEPT [73:7682]
     4  :FORWARD ACCEPT [0:0]
     5  :OUTPUT ACCEPT [80:15706]

6 -A INPUT -s 192.168.0.111 -j ACCEPT

7 -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

8 # pop3 and smtp 9 -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT 10 -A INPUT -p tcp -m tcp --dport 110 -j ACCEPT 11 -A INPUT -p tcp -m tcp --dport 143 -j ACCEPT

12 #open dns 13 -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT 14 #close dns 15 #-A INPUT -p udp --dport 53 -j DROP

16 #open port to connect to MYSQL 17 -A INPUT -m tcp -p tcp --dport 3306 -j ACCEPT

18 #Samba 19 -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 137 -j ACCEPT 20 -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 138 -j ACCEPT 21 -A INPUT -s 192.168.1.0/24 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT 22 -A INPUT -s 192.168.1.0/24 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT

23 #open web from adress 24 -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 25 #-A INPUT -p tcp --destination-port 80 -m iprange --src-range 192.168.1.0-192.168.1.200 -j ACCEPT 26 #-A INPUT -p tcp --destination-port 80 -m iprange --src-range 192.168.1 -j ACCEPT #Razreshit s Rabotw

27 -A INPUT -p tcp --dport 22 -j ACCEPT

28 #open FTP 29 -A INPUT -m tcp -p tcp --dport 21 -j ACCEPT 30 -A INPUT -m tcp -p tcp --dport 20 -j ACCEPT 31 -A INPUT -m tcp -p tcp --dport 64000:65535 -j ACCEPT

32 -A INPUT -m tcp -p tcp --dport 40000:40500 -j ACCEPT

33 -A INPUT -p tcp --dport 1521 -j ACCEPT

34 #Open Proxy Squid 35 -A INPUT -p tcp -m state --state NEW -m tcp --dport 3128 -j ACCEPT

36 -A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner postfix -j ACCEPT 37 -A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner root -j ACCEPT 38 #-A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner katia -j ACCEPT 39 -A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner alex -j ACCEPT 40 -A OUTPUT -p tcp -m tcp --dport 25 -j DROP

41 -A INPUT -p udp --dport 40543 -j DROP 42 -A OUTPUT -p udp --dport 40543 -j DROP

43 #open pptp VPN server 44 -A INPUT -i eth0 -p gre -j ACCEPT 45 -A INPUT -i eth0 -m tcp -p tcp --dport 1723 -j ACCEPT 46 -A FORWARD -i ppp+ -o eth0 -j ACCEPT 47 -A FORWARD -i eth0 -o ppp+ -j ACCEPT

48 # TEST 49 -A INPUT -p TCP -i eth0 --dport 21 -s 192.168.1.0/24 -m state --state NEW -j ACCEPT

50 -P INPUT DROP 51 #-P FORWARD DROP 52 -P OUTPUT ACCEPT

53 COMMIT 54 # Completed on Tue Mar 25 12:22:54 2014

55 #Tak kak ne otkrwt 3306 na vneshne routere to delaem nat s 64888 na 3306 56 #*nat 57 #:PREROUTING ACCEPT [0:0] 58 #:INPUT ACCEPT [0:0] 59 #:OUTPUT ACCEPT [0:0] 60 #:POSTROUTING ACCEPT [0:0] 61 #-A PREROUTING -d 192.168.0.1/32 -p tcp -m tcp --dport 64888 -j DNAT --to-destination 127.0.0.1:3306 62 #-A POSTROUTING -d 127.0.0.1/32 -p tcp -m tcp --dport 3306 -j SNAT --to-source 192.168.0.1

text
[root@mail ~]# vi /etc/sysconfig/iptables
[root@mail ~]# service iptables restart
Сбрасываются правила брандмауэра:                          [  OK  ]
Политика цепочек брандмауэра устанавливается в ACCEPT: filt[  OK  ]
Выгружаются модули                                         [  OK  ]
Применяются правила брандмауэра iptables: iptables-restore v1.3.5: Can't set policy `INPUT' on `ACCEPT' line 83: Bad built-in chain name
#387523
"stinggga" написал:
49  -A INPUT -p TCP -i eth0 --dport 21 -s 192.168.1.0/24 -m state --state NEW -j ACCEPT

почему TCP большими буквами?

"stinggga" написал:


50  -P INPUT DROP
51  #-P FORWARD DROP
52  -P OUTPUT ACCEPT

это вообще уберите, пправила по умолчанию указываются тут:

text

3  :INPUT ACCEPT [73:7682]
4  :FORWARD ACCEPT [0:0]
5  :OUTPUT ACCEPT [80:15706]

кроме того, перед ACCEPT и т.д. пишется -j

#387580

ругань появлется после

text
57  #:PREROUTING ACCEPT [0:0]
    58  #:INPUT ACCEPT [0:0]
    59  #:OUTPUT ACCEPT [0:0]
    60  #:POSTROUTING ACCEPT [0:0]
    61  #-A PREROUTING -d 192.168.0.1/32 -p tcp -m tcp --dport 64888 -j DNAT --to-destination 127.0.0.1:3306
    62  #-A POSTROUTING -d 127.0.0.1/32 -p tcp -m tcp --dport 3306 -j SNAT --to-source 192.168.0.1
#387589

До конца н е пойму, не бейте больно . Подскажите где ошибка. Вроде все ваши рекомендации сделал.
Ошибка

Выгружаются модули [ OK ]
Применяются правила брандмауэра iptables: iptables-restore v1.3.5: Can't set policy `INPUT' on `ACCEPT' line 91: Bad built-in chain name


Код ниже

text
1  # Generated by iptables-save v1.3.5 on Tue Mar 25 12:22:54 2014
     2  *filter
     3  :INPUT ACCEPT [73:7682]
     4  :FORWARD ACCEPT [0:0]
     5  :OUTPUT ACCEPT [80:15706]

6 -A INPUT -s 192.168.0.111 -j ACCEPT

7 -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

8 # pop3 and smtp 9 -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT 10 -A INPUT -p tcp -m tcp --dport 110 -j ACCEPT 11 -A INPUT -p tcp -m tcp --dport 143 -j ACCEPT

12 #open dns 13 -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT 14 #close dns 15 #-A INPUT -p udp --dport 53 -j DROP

16 #open port to connect to MYSQL 17 -A INPUT -m tcp -p tcp --dport 3306 -j ACCEPT

18 #Samba 19 -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 137 -j ACCEPT 20 -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 138 -j ACCEPT 21 -A INPUT -s 192.168.1.0/24 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT 22 -A INPUT -s 192.168.1.0/24 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT

23 #open web from adress 24 -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 25 #-A INPUT -p tcp --destination-port 80 -m iprange --src-range 192.168.1.0-192.168.1.200 -j ACCEPT 26 #-A INPUT -p tcp --destination-port 80 -m iprange --src-range 75.75.454.45 -j ACCEPT #Razreshit s Rabotw

27 -A INPUT -p tcp --dport 22 -j ACCEPT

28 #open FTP 29 -A INPUT -m tcp -p tcp --dport 21 -j ACCEPT 30 -A INPUT -m tcp -p tcp --dport 20 -j ACCEPT 31 -A INPUT -m tcp -p tcp --dport 64000:65535 -j ACCEPT

32 #Tak kak ne otkrwt 3306 na vneshne routere to delaem nat s 64888 na 3306 33 #-t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp --dport 64888 -j DNAT --to-destination 127.0.0.1:3306 34 #-t nat -A POSTROUTING -d 127.0.0.1 -p tcp -m tcp --dport 3306 -j SNAT --to-source 192.168.0.1

35 -A INPUT -m tcp -p tcp --dport 40000:40500 -j ACCEPT

36 -A INPUT -p tcp --dport 1521 -j ACCEPT

37 #Open Proxy Squid 38 -A INPUT -p tcp -m state --state NEW -m tcp --dport 3128 -j ACCEPT

39 -A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner postfix -j ACCEPT 40 -A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner root -j ACCEPT 41 #-A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner katia -j ACCEPT 42 -A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner alex -j ACCEPT 43 -A OUTPUT -p tcp -m tcp --dport 25 -j DROP

44 -A INPUT -p udp --dport 40543 -j DROP 45 -A OUTPUT -p udp --dport 40543 -j DROP

46 #open pptp VPN server 47 -A INPUT -i eth0 -p gre -j ACCEPT 48 -A INPUT -i eth0 -m tcp -p tcp --dport 1723 -j ACCEPT 49 -A FORWARD -i ppp+ -o eth0 -j ACCEPT 50 -A FORWARD -i eth0 -o ppp+ -j ACCEPT

51 #-P INPUT DROP 52 #-P FORWARD DROP 53 #-P OUTPUT ACCEPT

54 COMMIT

55 *mangle 56 :FORWARD ACCEPT [0:0] 57 :INPUT ACCEPT [0:0] 58 :OUTPUT ACCEPT [0:0] 59 :PREROUTING ACCEPT [0:0] 60 :POSTROUTING ACCEPT [0:0]

61 COMMIT 62 *nat 63 :PREROUTING ACCEPT [0:0] 64 :INPUT ACCEPT [0:0] 65 :OUTPUT ACCEPT [0:0] 66 :POSTROUTING ACCEPT [0:0] 67 -A PREROUTING -d 192.168.0.1/32 -p tcp -m tcp --dport 64888 -j DNAT --to-destination 127.0.0.1:3306 68 -A POSTROUTING -d 127.0.0.1/32 -p tcp -m tcp --dport 3306 -j SNAT --to-source 192.168.0.1

#387592

Заработало. Всё тема закрыта. Спасибо

#387614

В чем ошибка была?

Войдите или зарегистрируйтесь, чтобы ответить.