LINUX.ORG.RU
ФорумAdmin

ipbtables открыть несколько портов

 


0

1

Всем привет. Помогите пожалуйста как на vps сервере открыть порты только 80,81,21,1500,27015,27016,5555 и остальные закрыть? так как другие порты мне не нужны прописал там на vps сервере команду iptables -P INPUT DROP что я потом вообще туда попасть не могу кроме как перезагрузить VPS сам поясню на 80 и 81 работает там apache2 и nginx связка стоит. 1500 ispmanger lite работает 27015 и 27016 сервер cs 1.6 5555 самп сервер там работает

Ответ на: комментарий от Lavos

то что думаю если перекрыть порты все кроме этих , меньше атаки будет на мой сервер=)

radikradik
() автор топика

Сначала прописать разрешающие правила, потом поменять полиси на дроп для всех остальных пакетов:

iptables -I INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp --dport 81 -j ACCEPT
...
iptables -I INPUT -p tcp --dport 5555 -j ACCEPT
iptables -P INPUT DROP

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

Ну и не забыть

iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
:) иначе не будут проходить ответы на исходящие соединения.

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

блин))) я уже прописал iptables -P INPUT DROP и все вырубилось:( ща перезагружу напиши пожалуйста с 1 строчки и до конца чтобы я потом мог сам туда зайти на эти порты))

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

Да, --dport <номер порта>.
Для udp поменять -p tcp на -p udp

ddos3
()
Ответ на: комментарий от radikradik
iptables -F INPUT
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp --dport 81 -j ACCEPT
iptables -I INPUT -p tcp --dport 21 -j ACCEPT
iptables -I INPUT -p tcp --dport 1500 -j ACCEPT
iptables -I INPUT -p tcp --dport 27015 -j ACCEPT
iptables -I INPUT -p tcp --dport 27016 -j ACCEPT
iptables -I INPUT -p tcp --dport 5555 -j ACCEPT
iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -P INPUT DROP
ddos3
()
Ответ на: комментарий от radikradik

Странно, у меня все работает. А такая ошибка появляется, если неправильно написать название цепочки (INPUT). Что говорит iptables -nvL?

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

вот

Chain INPUT (policy ACCEPT 1387 packets, 308K bytes)
 pkts bytes target     prot opt in     out     source               destination 
 1387  308K ISPMGR     all  --  *      *       0.0.0.0/0            0.0.0.0/0   

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination 

Chain OUTPUT (policy ACCEPT 1648 packets, 731K bytes)
 pkts bytes target     prot opt in     out     source               destination 
 1648  731K ISPMGR     all  --  *      *       0.0.0.0/0            0.0.0.0/0   

Chain ISPMGR (2 references)
 pkts bytes target     prot opt in     out     source               destination 

radikradik
() автор топика
Ответ на: комментарий от ddos3

может еще есть варианты?)) а то после команды ввода iptables -P INPUT DROP у меня все сразу становится не отвечает и ип в том же числе приходится перезагружать чтобы правила эти сбились)

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

Это сразу после перезагрузки, или после
iptables -F INPUT
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp --dport 81 -j ACCEPT
iptables -I INPUT -p tcp --dport 21 -j ACCEPT
iptables -I INPUT -p tcp --dport 1500 -j ACCEPT
iptables -I INPUT -p tcp --dport 27015 -j ACCEPT
iptables -I INPUT -p tcp --dport 27016 -j ACCEPT
iptables -I INPUT -p tcp --dport 5555 -j ACCEPT
?

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

это норм все вводится, работает. а Вот если iptables -P INPUT DROP то все конец всему:( слетает все и нужно перезагружаться

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

Если это все нормально ввелось, то вывод iptables -nvL должен быть другой. А пока что он выглядит так, как будто этих команд и не было.

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

а то после команды ввода iptables -P INPUT DROP у меня все сразу становится

До ввода этой команды говоришь

iptables -I INPUT -p tcp --dport 22 -m comment --comment SSH -j ACCEPT
iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
— и ничего не «становится».

dexpl ★★★★★
()

в скрипт запихни и запусти и порты какие тебе нужны сам впиши

iptables -P INPUT DROP
iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT 
iptables -A INPUT -p UDP -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -m multiport --dport 22,80,3000,8000,55555 -j ACCEPT
порты свои сам впишешь

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

вот

Chain INPUT (policy ACCEPT 94 packets, 750K bytes)
 pkts bytes target     prot opt in     out     source               destination 
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:5555
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:27016
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:27015
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:1500
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:21
  100 14272 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:81
  133 13498 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:80

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination 

Chain OUTPUT (policy ACCEPT 435 packets, 1201K bytes)
 pkts bytes target     prot opt in     out     source               destination 
21724   14M ISPMGR     all  --  *      *       0.0.0.0/0            0.0.0.0/0   

Chain ISPMGR (1 references)
 pkts bytes target     prot opt in     out     source               destination

radikradik
() автор топика
Ответ на: комментарий от ttyv0_o

вот что в твоем скрипте мне выводит

./ip.sh
iptables: Bad policy name. Run `dmesg' for more information.
'ad argument `
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.8: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.

radikradik
() автор топика
Ответ на: комментарий от dexpl

вот что пишет

 iptables -I INPUT -p tcp --dport 22 -m comment --comment SSH -j ACCEPT
iptables: No chain/target/match by that name.
root@~# iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables: No chain/target/match by that name.

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

ssh на 22 порту

тогда нужно добавить еще iptables -I INPUT -p tcp --dport 22 -j ACCEPT перед сменой полиси.
И еще неплохо бы добавить iptables -I INPUT -i lo -j ACCEPT

не принимает

это очень странно, должен принимать. Даже не знаю, что тут посоветовать.

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

Что, приняло state наконец?
Если все работает, то можешь теперь эти команды положить в скрипт и засунуть в автозагрузку, чтобы после рестарта сразу все блокировалось как надо.
и покажи еще раз iptables -nvL на всякий случай

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

у меня просто на vps идут 2 ип 1.ип на сайты 2. ип на сервера ну как раз и основной ип не работает почему-то

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

и так же по порту 1500 не работает ispmanger lite :(

radikradik
() автор топика
Ответ на: комментарий от ddos3
Chain INPUT (policy DROP 699 packets, 33865 bytes)
 pkts bytes target     prot opt in     out     source               destination 
  868  174K ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0   
  196 15736 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:22
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:5555
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:27016
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:27015
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:1500
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:21
  238 47501 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:81
  840  198K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:80

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination 

Chain OUTPUT (policy ACCEPT 1203 packets, 249K bytes)
 pkts bytes target     prot opt in     out     source               destination 
 6913 2368K ISPMGR     all  --  *      *       0.0.0.0/0            0.0.0.0/0   

Chain ISPMGR (1 references)
 pkts bytes target     prot opt in     out     source               destination 

он как бы теперь работает=)) ну в ping ип не определяет и сервера не могу запустить:(( как быть? и так же в ispmanger lite по порту 1500 не заходит((

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

Чтобы все заработало, нужно как-то заставить его принять iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT (этого правила я в таблице не вижу). Без этого не будут работать исходящие соединения с самого сервера, что может приводить к разным отказам.
Причин, почему это правило у вас не принимается, я придумать не могу. Может в dmesg что-нибудь будет, но вряд ли.

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

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

radikradik
() автор топика
Ответ на: комментарий от ddos3

это если что в скрипт все

iptables -F INPUT
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp --dport 81 -j ACCEPT
iptables -I INPUT -p tcp --dport 21 -j ACCEPT
iptables -I INPUT -p tcp --dport 1500 -j ACCEPT
iptables -I INPUT -p tcp --dport 27015 -j ACCEPT
iptables -I INPUT -p tcp --dport 27016 -j ACCEPT
iptables -I INPUT -p tcp --dport 5555 -j ACCEPT
iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -I INPUT -p tcp --dport 22 -j ACCEPT
iptables -I INPUT -i lo -j ACCEPT
iptables -P INPUT DROP
?

radikradik
() автор топика

Попробуй вместо

iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
написать
iptables -I INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

Сейчас критерий state считается устаревшим, вместо него рекомендуют использовать conntrack

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