391

AlfaStriker, закрыт оказался.

 Консоль:
nmap -P0 192.168.1.33

Starting Nmap 6.00 ( http://nmap.org ) at 2013-07-31 14:33 ALMT
Nmap scan report for 192.168.1.33
Host is up (0.00014s latency).
Not shown: 995 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
53/tcp   open  domain
80/tcp   open  http
111/tcp  open  rpcbind
5432/tcp open  postgresql
MAC Address: 6C:62:6D:75:3B:83 (Micro-Star INT'L CO.)

Nmap done: 1 IP address (1 host up) scanned in 0.19 seconds

Не подскажешь как открыть 1541, 1560:15691 порты для всех сетей, чтобы правила всегда работали, а не пропади после перезагрузки.

392 (02.08.2013 08:09:00 отредактировано AlfaStriker)

Ну как обычно, создаешь файл скрипт

# touch /etc/firewall.sh
# chmod +x /etc/firewall.sh
# vi /etc/firewall.sh
#!/bin/bash
<Сюда правила пихаешь>

Потом в файл rc.local вставляешь строку:

sh /etc/firewall.sh

Но я так понял что у тебя уже скрипт, тогда просто вставляешь в него строчки:

iptables -A INPUT -p tcp -m multiport --dports 1541,1560:15691 -j ACCEPT
iptables -A OUTPUT -p tcp -m multiport --sports 1541,1560:15691 -j ACCEPT

393 (10.08.2013 13:07:44 отредактировано AlfaStriker)

Начальные данные
Имеется сервер шлюз в Интернет (обычный), две карты eth0 и eth1.
eth0 - подключена к провайдеру по Ethernet, IP адрес - 111.222.333.444
eth1 - подключена в локальную сеть, IP адрес - 192.168.10.2
ppp0 - виртуальный интерфейс PPTP по которому пользователи должны выходить в Интернет.
Соответственно адрес локальной сети - 192.168.10.0/24
Адрес VPN сети PPTP - 192.168.160.0/24

ИНТЕРНЕТ пользователи получают по PPTP соединению.....


Вопрос:
Как запретить доступ в Интернет локальной сети  - 192.168.10.0/24
Попутно открыв доступ в Интернет только VPN сети PPTP - 192.168.160.0/24

Вопрос решен:

iptables -t nat -A POSTROUTING -s 192.168.160.0/24 -j MASQUERADE

или

iptables -t nat -A POSTROUTING -j MASQUERADE

394

AlfaStriker⇓ пишет:

Имеется сервер шлюз в Интернет (обычный), две карты eth0 и eth1.

...

AlfaStriker⇓ пишет:

Как запретить доступ в Интернет локальной сети  - 192.168.10.0/24
Попутно открыв доступ в Интернет только VPN сети PPTP - 192.168.160.0/24

Ну сначала рассказать как пользователи его получают. ;_)

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

395

Система CentOS-6.4-x86_64. На VPS при вводе команды:

iptables --table nat --append POSTROUTING --jump MASQUERADE 

Получаю вот что.

iptables --table nat --append POSTROUTING --jump MASQUERADE
FATAL: Module ip_tables not found.
iptables v1.4.7: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

Как инициализировать iptables?

396

в ядре отключен nat.

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст

397

Как его включить?

398 (19.08.2013 20:28:57 отредактировано kisil)

Вам же написало что нужно или инсталировать нужный модуль или обновить ядро вместе с iptables.
Что у Вас за система на VPS

uname -a 

покажыте.

Trouble  in WINDOWS reboot, trouble in UNIX be root.

399

Система CentOS 6.4 64-bit. Виртуализация OpenVZ

uname -a
Linux h411 2.6.32-042stab078.28 #1 SMP Mon Jul 8 10:17:22 MSK 2013 x86_64 x86_64 x86_64 GNU/Linux

400

У меня нубский вопрос (просьба сильно не бить ногами ) bx 
Вообщем как посмотреть какие модули iptables присутствуют в ситеме и какие из них подключены ?
а также как подключить интересующий модуль iptables ?

Спросить - стыд минуты, не узнать - стыд всей жизни

401

Добрый день!

Есть CentOS 6.5. KVM, несколько гостевых ОС.
Есть необходимость прокинуть определенный порт (443) между физическим интерфейсом на сервере и гостевой ОС.
Подскажите, пожалуйста, каким лучше всего правилом это организовать?
Заранее спасибо!

În jur e totul trecător. ©

402

всем привет, только начал осваивать центос, возник вопрос по открытию портов, перечитал всю тему, все перепробывал, но почему то не получаеся откртьы порт.
Мои действия для открытия такие.


[root@localhost zenit]# netstat -nlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      2166/sshd
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      1317/master
tcp        0      0 :::22                       :::*                        LISTEN      2166/sshd
udp        0      0 192.168.40.50:123           0.0.0.0:*                               1236/ntpd
udp        0      0 127.0.0.1:123               0.0.0.0:*                               1236/ntpd
udp        0      0 0.0.0.0:123                 0.0.0.0:*                               1236/ntpd
udp        0      0 fe80::f66d:4ff:feae:48ad:123 :::*                                    1236/ntpd
udp        0      0 ::1:123                     :::*                                    1236/ntpd
udp        0      0 :::123                      :::*                                    1236/ntpd
Active UNIX domain sockets (only servers)

ввожу команду на откртие порта 3389

iptables -I INPUT -p tcp --dport 3389 -m state --state NEW -j ACCEPT

сохраняю изменения

service iptables save

перезапускаю

/etc/init.d/iptables restart

Проверяю открытые порты и не вижу открытых портов.

[root@localhost zenit]# netstat -nlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      2166/sshd
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      1317/master
tcp        0      0 :::22                       :::*                        LISTEN      2166/sshd
udp        0      0 192.168.40.50:123           0.0.0.0:*                               1236/ntpd
udp        0      0 127.0.0.1:123               0.0.0.0:*                               1236/ntpd
udp        0      0 0.0.0.0:123                 0.0.0.0:*                               1236/ntpd
udp        0      0 fe80::f66d:4ff:feae:48ad:123 :::*                                    1236/ntpd
udp        0      0 ::1:123                     :::*                                    1236/ntpd
udp        0      0 :::123                      :::*                                    1236/ntpd

Помогите разобраться, что не так делаю ?

403 (21.01.2014 18:19:28 отредактировано AlfaStriker)

priaz, я в iptables не профи, но по моему команда netstat -nlp проверяет открыла ли порт программа, точнее какие программы слушают определенные порты.
Следовательно надо запустить программу которая слушает 3389 порт.
И еще у вас не хватает этой команды:

iptables -A OUTPUT -p tcp --sport 3389 -m state --state NEW -j ACCEPT

Покажите все ваши правила:

iptables -n -L -v

Проверьте слушается ли 3389 порт на localhost:

telnet 127.0.0.1 3389

404 (21.01.2014 15:22:37 отредактировано priaz)

AlfaStriker пишет:

priaz, я в iptables не профи, но по моему команда netstat -nlp проверяет открыла ли порт программа, точнее какие программы слушают определенные порты.
Следовательно надо запустить программу которая слушает 3389 порт.
И еще у вас не хватает этой команды:

iptables -A OUTPUT -p tcp --sport 3389 -m state --state NEW -j ACCEPT

Покажите все ваши правила:

iptables -nLv

Проверьте слушается ли 3389 порт на localhost:

telnet 127.0.0.1 3389

Сделал

[root@localhost zenit]# iptables -A OUTPUT -p tcp --sport 3389 -m state --state NEW -j ACCEPT
[root@localhost zenit]# iptables -nL
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3389 state                                                                                                                       NEW
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3389 state                                                                                                                       NEW
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:25 state                                                                                                                            NEW
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3389 state                                                                                                                       NEW
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3389 state                                                                                                                       NEW
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:3389
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:3389

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp spt:3389
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp spt:3389
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp spt:3389 state                                                                                                                       NEW 

видимо не ту команду использовал что бы посмотреть открытые порты, но почему тут на отображается 22 порт, который открыт ?
это нормально что у меня одно и то же правило несколько раз дублируется ?
кстати все равно 3389 закрыт

405 (21.01.2014 18:31:09 отредактировано AlfaStriker)

Я так и не понял что вы хотите сделать.
Вы запустили программу которая слушает 3389 порт на вашем сервере/компьютере?
По выводу netstat -nlp не видно вашей программы/демона.

И еще, у вас по умолчанию действие ACCEPT в базовых цепочках (INPUT, OUTPUT, FORWARD). Это значить что все соединения по всем портам разрешены. И то что вы пишите свои правила, это как собаки 5 нога. Так как, все и так работает.

То что правила дублируются, наверно вы два раза ввели одну и туже команду.
Удалите все правила.

22 порт по умолчанию открывается системой, по идее в цепочке RH-INPUT должно стоят правило которое отрывает доступ по нему. Но у вас нет RH-INPUT цепочки, странно.

Порт 3389 используется для RDP, то что вы запускаете команду netstat -nlp  - это не правильно!
Так как вы хотите зайти по RDP с Linux на Windows машину.

406

AlfaStriker пишет:

Я так и не понял что вы хотите сделать.
Вы запустили программу которая слушает 3389 порт на вашем сервере/компьютере?
По выводу netstat -nlp не видно вашей программы/демона.

И еще, у вас по умолчанию действие ACCEPT в базовых цепочках (INPUT, OUTPUT, FORWARD). Это значить что все соединения по всем портам разрешены. И то что вы пишите свои правила, это как собаки 5 нога. Так как, все и так работает.

То что правила дублируются, наверно вы два раза ввели одну и туже команду.
Удалите все правила.

22 порт по умолчанию открывается системой, по идее в цепочке RH-INPUT должно стоят правило которое отрывает доступ по нему. Но у вас нет RH-INPUT цепочки, странно.

Порт 3389 используется для RDP, то что вы запускаете команду netstat -nlp  - это не правильно!
Так как вы хотите зайти по RDP с Linux на Windows машину.

хочу сделать rdp подключение к центосу с винды, для этого открываю порт 3389.
Сейчас появились сомнения возможно ли подключиться по рдп вообще к линуксу? графическая оболочка на центосе стоит.
Если так нельзя что посоветуете для удаленки, VNC?
сарзу извиняюсь за тупые вопросы, со временем их станет меньше надеюсь.

407

Да VNC.

Trouble  in WINDOWS reboot, trouble in UNIX be root.

408

Можно и без графики по ssh нормально управлять линуксом.

Trouble  in WINDOWS reboot, trouble in UNIX be root.

409 (21.01.2014 19:37:24 отредактировано AlfaStriker)

priaz, просто вы неправильно задали вопрос, и это смутило меня. Теперь когда задача ясна, предлагаю вам следующие решения: FreeNX или VNC.
Настройку FreeNX или VNC по ищите в гугле, этого добра хватает.
А на счет фаервола CentOS - у вас открыты все порты, не трогайте iptables.

410

priaz, для простоты -  например iptables может закрыть/открыть порт, но слушает/использует порт уже программа/сервис который может быть запущен или нет.
Соответственно - слушает порт серверная часть, подключается к нему клиент.
Команда netstat -nlp показывает какая программа какой порт слушает.

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

411

kisil пишет:

Можно и без графики по ssh нормально управлять линуксом.

в принципе так и работаю удаленно, но хотелось и в привычном графическом виде юзать.

priaz, просто вы неправильно задали вопрос, и это смутило меня. Теперь когда задача ясна, предлагаю вам следующие решения: FreeNX или VNC.
Настройку FreeNX или VNC по ищите в гугле, этого добра хватает.
А на счет фаервола CentOS - у вас открыты все порты, не трогайте iptables.

Спасибо, затра буду пробовать с Freenx.
Удалю все созданные ранее правила и верну iptables  в первоначльный вид.

priaz, для простоты -  например iptables может закрыть/открыть порт, но слушает/использует порт уже программа/сервис который может быть запущен или нет.
Соответственно - слушает порт серверная часть, подключается к нему клиент.
Команда netstat -nlp показывает какая программа какой порт слушает.

Не знал, что надо запустить приложение с обращением на порт для проверки на открытость.
Спасибо всем за отзывчивость и помощь, раъяснения.Рад, что нашел данный ресурс, буду ковырять дальше.

412

iptables -t nat -A PREROUTING --dst IP_АДРЕС_СЕРВЕРА -p tcp --dport 25340, 27580, 28360, 31540, 32670 -j DNAT --to-destination 10.8.0.6
iptables -t nat -A PREROUTING --dst IP_АДРЕС_СЕРВЕРА -p udp --dport 25340, 27580, 28360, 31540, 32670 -j DNAT --to-destination 10.8.0.6

Можно перечислить в команде порты через запятую, чтобы не писать команду для каждого порта отдельно?

413

если память не подводит, можно  bw

Спросить - стыд минуты, не узнать - стыд всей жизни

414

Критерий     --sport, --source-port
Пример     iptables -A INPUT -p tcp --sport 22
Описание     Исходный порт, с которого был отправлен пакет. В качестве параметра может указываться номер порта или название сетевой службы. Соответствие имен сервисов и номеров портов вы сможете найти в файле /etc/services. При указании номеров портов правила отрабатывают несколько быстрее. однако это менее удобно при разборе листингов скриптов. Если же вы собираетесь создавать значительные по объему наборы правил, скажем порядка нескольких сотен и более, то тут предпочтительнее использовать номера портов. Номера портов могут задаваться в виде интервала из минимального и максимального номеров, например --source-port 22:80. Если опускается минимальный порт, т.е. когда критерий записывается как --source-port :80, то в качестве начала диапазона принимается число 0. Если опускается максимальный порт, т.е. когда критерий записывается как --source-port 22:, то в качестве конца диапазона принимается число 65535. Допускается такая запись --source-port 80:22, в этом случае iptables поменяет числа 22 и 80 местами, т.е. подобного рода запись будет преобразована в --source-port 22:80. Как и раньше, символ ! используется для инверсии. Так критерий --source-port ! 22 подразумевает любой порт, кроме 22. Инверсия может применяться и к диапазону портов, например --source-port ! 22:80. За дополнительной информацией обращайтесь к описанию критерия multiport.

Расширение multiport позволяет указывать в тексте правила несколько портов и диапазонов портов.
Note    

Вы не сможете использовать стандартную проверку портов и расширение -m multiport (например --sport 1024:63353 -m multiport --dport 21,23,80) одновременно. Подобные правила будут просто отвергаться iptables.

Таблица 6-11. Ключи критерия Multiport
Ключ     --source-port
Пример     iptables -A INPUT -p tcp -m multiport --source-port 22,53,80,110
Описание     Служит для указания списка исходящих портов. С помощью данного критерия можно указать до 15 различных портов. Названия портов в списке должны отделяться друг от друга запятыми, пробелы в списке не допустимы. Данное расширение может использоваться только совместно с критериями -p tcp или -p udp. Главным образом используется как расширенная версия обычного критерия --source-port.

http://www.opennet.ru/docs/RUS/iptables/

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

415 (30.03.2014 16:50:05 отредактировано Gentoos)

Как забанить айпи?
То есть:

-A INPUT -p udp --dport 444 -m hashlimit --hashlimit 200/s --hashlimit-mode srcip,dstport --hashlimit-name TEST -j ACCEPT

Если с определенного айпи пакетов больше, чем разрешено в секунду, то бан.

416

Добрался до iptables. Скрутил себе простенький фаерволл, открыл всё, что потребовалось. Почти. Обламываюсь на торрентах.

Для начала сходил в настройки клиента (KTorrent), посмотрел что там. Действую больше наобум, познания не ахти. Открыл порты, указанные в настройках клиента. Запускаю торрент. Ноль реакции. ss показывает запрос на трекер совсем по другому порту. Открыл. Запрос уходит, в списке трекеров статус меняется на «ОК», закачка не начинается. Смотрю в ss. Вижу кучу соединений со статусом SYN-SENT по случайным (я так понимаю) портам, открыть которые вряд ли представляется возможным.

Куда копать дальше? Прошёлся по теме, торренты упоминаются вот в этом посте: iptables Не пойму, как оно будет работать только.

«Я устал, я ухожу.»

417

Vitri пишет:

Добрался до iptables. Скрутил себе простенький фаерволл, открыл всё, что потребовалось. Почти. Обламываюсь на торрентах.

Для начала сходил в настройки клиента (KTorrent), посмотрел что там. Действую больше наобум, познания не ахти. Открыл порты, указанные в настройках клиента. Запускаю торрент. Ноль реакции. ss показывает запрос на трекер совсем по другому порту. Открыл. Запрос уходит, в списке трекеров статус меняется на «ОК», закачка не начинается. Смотрю в ss. Вижу кучу соединений со статусом SYN-SENT по случайным (я так понимаю) портам, открыть которые вряд ли представляется возможным.

Куда копать дальше? Прошёлся по теме, торренты упоминаются вот в этом посте: iptables Не пойму, как оно будет работать только.

Если еще актуально
1) Отключаеш iptables.
2) Запускаеш торренты.
3) В консоле

netstat -apn

и смотриш порты которые пользует торрент клиент.
4) Прописываеш для этих портов правила в iptables.

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

iptables -F # Очищаем все цепочки таблицы filter
# Ко всем пакетам, которые относятся к уже установленным соединениям, применяем терминальное действие ACCEPT — пропустить
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -P INPUT DROP # В качестве действия по умолчанию устанавливаем DROP — блокирование пакета
iptables -P OUTPUT ACCEPT # Разрешаем все исходящие пакеты

http://ru.wikibooks.org/wiki/Iptables#. … 1.82.D1.8B

P.S. Еще открытые порты можно посмотеть 

nmap -p 1-65535 localhost

P.S.S. Я так обычно делаю. Может кому поможет.
Может кому поможет.

Конечно, это работает в Gentoo!

418

Vitri пишет:

Ноль реакции. ss показывает запрос на трекер совсем по другому порту.

вы что там открываете? Входящие, или исходящие?

AntiduPb пишет:

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

facepalm

вот эти правила вы забыли:

    # torrent
    $IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 51413 -j allowed
    $IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 9091 -j allowed

первое 51413 нужно для входящих соединений, второе 9091 (не)нужно для удалённого управления.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

419 (03.06.2014 10:47:41 отредактировано AntiduPb)

AntiduPb пишет:

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

facepalm

??? Можете пояснить
У меня с этим правилами торент отлично качается

Конечно, это работает в Gentoo!

420 (25.06.2014 23:54:57 отредактировано iAlexandre)

Всем привет, подскажите, на VPS  с CentOS нужно открыть порт 5005, например. Как это делается?

iptables -A INPUT -s какой_нужно_писать_IP? -p udp -m multiport  --ports 5005, 8090 -j ACCEPT
iptables -A OUTPUT -d какой_нужно_писать_IP? -p udp -m multiport  --ports 5005, 8090 -j ACCEPT
iptables -A INPUT -s какой_нужно_писать_IP? -p tcp -m multiport  --ports 5005, 8090 -j ACCEPT
iptables -A OUTPUT -d какой_нужно_писать_IP? -p tcp -m multiport  --ports 5005, 8090 -j ACCEPT

Так? И какой IP нужно тут писать?

Либо так?

iptables -I INPUT -p tcp --dport 5005 -m state --state NEW -j ACCEPT
service iptables save