The OpenNET Project / Index page

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

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

"iptables закрыть все порты и редирект"  +/
Сообщение от oleggg1 email(ok) on 17-Мрт-17, 08:49 
Помогите, пожалуйста, разобраться с проблемой.
Задача такая:
1. Нужно закрыть все порты кроме 22 и 8080.
2. Нужно сделать перенаправление с 8080 порта на порт 80

Пробовал вот так. Работает только 22 порт.

iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port 80
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -P INPUT DROP

Ответить | Правка | Cообщить модератору

Оглавление

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


1. "iptables закрыть все порты и редирект"  +/
Сообщение от Аноним (??) on 17-Мрт-17, 15:58 
> iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port
> 80
> iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
> iptables -A INPUT -p tcp --dport 22 -j ACCEPT
> iptables -P INPUT DROP

Давно не тыкал iptables, но мне кажется, что вы сначала делаете перенаправление на 80 порт, а потом его же и закрываете. Так что вместо
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
надо
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "iptables закрыть все порты и редирект"  +/
Сообщение от ACCA (ok) on 17-Мрт-17, 22:52 
[...]
> iptables -P INPUT DROP

Поскольку ты ничего не сказал про порт 80, то после REDIRECT он здесь и закончился.

В принципе можно -


  • iptables -t nat -I PREROUTING -p tcp -d eth0.add.ress --dport 8080 -j DNAT --to 127.0.0.1:80
  • iptables -I FORWARD -p tcp -d 127.0.0.1 --dport 80 -j ACCEPT
  • sysctl net.ipv4.ip_forward=1

Вместо этого перевесь сервер на порт 8080 и не морочь никому голову.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "iptables закрыть все порты и редирект"  –1 +/
Сообщение от oleggg1 (ok) on 18-Мрт-17, 09:30 
>[оверквотинг удален]
> Поскольку ты ничего не сказал про порт 80, то после REDIRECT он
> здесь и закончился.
> В принципе можно -
> [ul]
> [li]iptables -t nat -I PREROUTING -p tcp -d eth0.add.ress --dport 8080 -j
> DNAT --to 127.0.0.1:80
> [li]iptables -I FORWARD -p tcp -d 127.0.0.1 --dport 80 -j ACCEPT
> [li]sysctl net.ipv4.ip_forward=1
> [/ul]
> Вместо этого перевесь сервер на порт 8080 и не морочь никому голову.

Если бы можно было перевесить сервер на другой порт, то я бы так и сделал. Задачу нужно решить именно через netfilter. В общем решение такое:

iptables -t mangle -A PREROUTING -p tcp --dport 80 -j DROP
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port 80
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -P INPUT DROP

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "iptables закрыть все порты и редирект"  +/
Сообщение от ACCA (ok) on 20-Мрт-17, 05:35 
> iptables -t mangle -A PREROUTING -p tcp --dport 80 -j DROP
> iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port
> 80
> iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
> iptables -A INPUT -p tcp --dport 80 -j ACCEPT
> iptables -P INPUT DROP

Забывание про порт 22 в iptables - к долгой дороге...

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

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

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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