Всем доброго дня и настроения!Недавно стал осваивать FreeBsd...
Вопрос в следующем:
Вот содержимое сотворенного мной ipfw#!/bin/sh
ipfw -f flush
# Alul Inrefaces Section
ipfw add deny ip from me to table\(1\)
ipfw add deny ip from table\(1\) to me
ipfw add deny ip from any to any 137,138,139,445 via sk0
ipfw add pass ip from any to any 137,138,139,445 via rl0# Network Aaddress Translation
ipfw add divert natd ip from any to any via sk0# Rdp permission
ipfw add permit tcp from 94.245.133.237 to me 3389
ipfw add permit tcp from 46.48.196.127 to me 3389# Localhost Address
ipfw add pass ip from me to 127.0.0.0/8
ipfw add pass ip from 127.0.0.0/8 to me#ICMP Protocol
ipfw add deny icmp from any to any frag
ipfw add pass icmp from any to any#DNS & NTP request
ipfw add pass gre from any to any
ipfw add pass tcp from any to any 68,873,666,670
ipfw add pass tcp from any 68,873,666,670 to any
ipfw add pass udp from any to any 53,68,123,873,87
ipfw add pass udp from any 53,68,123,873,87 to any
ipfw add pass tcp from any to me dst-port 22
# Primary NAT addresses#HTTP, FTP, SSH, SMTP, POP3, IMAP4 Protocols
#Extrenal Interface Section
ipfw add pass tcp from 10.107.116.3 to any 20,21,22,23,25,80,110,443,666,670#Intrenal Interface Section
ipfw add pass tcp from 192.168.1.66 to any 20,21,22,23,25,80,110,443,666,670#Local NetWork Area
ipfw add pass tcp from 192.168.1.0/24 to 192.168.1.66 20,21,22,80,137,138,139,445,670,666
ipfw add pass udp from 192.168.1.0/24 to 192.168.1.66 20,21,22,80,137,138,139,445
ipfw add pass tcp from 192.168.1.0/24 to any 20,21,22,23,25,110,143,443
ipfw add pass ip from any to any 1025-65535Поднял natd, открыл ssh для удаленного доступа...
проблема заключается в том, что теперь всем можно заходить с любых адресов с внешки, а мне надо только с двух: 94.245.133.237 и 46.48.196.127
где "зарыта" собака, что неправильно написал???Зарнее благодарен. Глеб
> # Rdp permission
> ipfw add permit tcp from 94.245.133.237 to me 3389
> ipfw add permit tcp from 46.48.196.127 to me 3389ipfw add deny tcp from any to me 3389
> где "зарыта" собака, что неправильно написал???
> Зарнее благодарен. Глебудачи
>> # Rdp permission
>> ipfw add permit tcp from 94.245.133.237 to me 3389
>> ipfw add permit tcp from 46.48.196.127 to me 3389
> ipfw add deny tcp from any to me 3389
>> где "зарыта" собака, что неправильно написал???
>> Зарнее благодарен. Глеб
> удачиipfw add deny tcp from any to me 3389
:((((( не помогает..
у меня не отрабатывает это правило...
в natd.conf прописана такая строка
redirect_port tcp 192.168.1.175:3389 3389
на выходе стоит ADSL 2+ D-link модем(IP 10.107.116.1), на нем поднят виртуальный сервер, поднят протокол TCP порт 3389, и server IP adress: 10.107.116.3
Возникает такое подозрение, что все эти пакеты идут мимо ipfw или правила не в том порядке отрабатывают....
ipfw show
00100 0 0 deny ip from me to table(1)
00200 0 0 deny ip from table(1) to me
00300 0 0 deny ip from any to any dst-port 137,138,139,445 via sk0
00400 59321 4870119 allow ip from any to any dst-port 137,138,139,445 via rl0
00500 258602 134986165 divert 8668 ip from any to any via sk0
00600 0 0 allow tcp from 94.245.133.237 to me dst-port 3389
00700 0 0 allow tcp from 46.48.196.127 to me dst-port 3389
00800 0 0 deny tcp from any to me dst-port 3389
00900 164 19852 allow ip from me to 127.0.0.0/8
01000 0 0 allow ip from 127.0.0.0/8 to me
01100 0 0 deny icmp from any to any frag
01200 1204 88434 allow icmp from any to any
01300 0 0 allow gre from any to any
01400 36 9066 allow tcp from any to any dst-port 68,873,666,670,1091
01500 37 6377 allow tcp from any 68,873,666,670,1091 to any
01600 4381 373198 allow udp from any to any dst-port 53,68,123,873,87,1091
01700 4396 1854375 allow udp from any 53,68,123,873,87,1091 to any
01800 7929 548332 allow tcp from any to me dst-port 22
01900 111529 66374853 allow tcp from 10.107.116.3 to any dst-port 20,21,22,23,2 5,80,110,443,666,670,1091
02000 604 128056 allow tcp from 192.168.1.66 to any dst-port 20,21,22,23,2 5,80,110,443,666,670,1091
02100 346 20039 allow tcp from 192.168.1.0/24 to 192.168.1.66 dst-port 20 ,21,22,80,137,138,139,445,670,666,1091
02200 0 0 allow udp from 192.168.1.0/24 to 192.168.1.66 dst-port 20 ,21,22,80,137,138,139,445,1091
02300 2127 144280 allow tcp from 192.168.1.0/24 to any dst-port 20,21,22,23 ,25,110,143,443,1091
02400 431366 218376290 allow ip from any to any dst-port 1025-65535
65535 3368 157568 deny ip from any to anyНужен совет.
Хорошего дня и настроения.
Это правило скорее всего и срабатывает на ваш трафик на 3389.
02400 431366 218376290 allow ip from any to any dst-port 1025-65535Безотносительно вашей проблtмы, оно довольно опасное - много хороших сервисов (и троянов тоже :) сидит на портах выше 1024.
надо понять почему не срабатывают правила
00600 0 0 allow tcp from 94.245.133.237 to me dst-port 3389
00700 0 0 allow tcp from 46.48.196.127 to me dst-port 3389
00800 0 0 deny tcp from any to me dst-port 3389Запустите tcpdump -i sk0 "port 3389" и смотрите трафик до посинения, особенно обращайте внимания на src/dst ip-адрес. Возможно, вы вообще не получаете эти паекты, или ваш ADSL-модем подменяет адреса в пакетах. Вобщем, увидите в tcpdump свои пакеты - сразу поймете какое правило для них нужно. Не увидите - ройте настройки модема.
=================
Кстати, вот такие пары правил тоже в корне неверны.
01400 36 9066 allow tcp from any to any dst-port 68,873,666,670,1091
01500 37 6377 allow tcp from any 68,873,666,670,1091 to anyИспользуйте что-то типа
allow tcp from any to any dst-port 68,873,666,670,1091 setupи правило где-нибудь повыше до всех deny
allow tcp from any to any establishedИначе атакующий может спокойно иметь полный доступ ко всем вашим портам, просто используя у себя как исходящий порт любой из 68,873,666,670,1091
>[оверквотинг удален]
> 01400 36 9066
> allow tcp from any to any dst-port 68,873,666,670,1091
> 01500 37 6377
> allow tcp from any 68,873,666,670,1091 to any
> Используйте что-то типа
> allow tcp from any to any dst-port 68,873,666,670,1091 setup
> и правило где-нибудь повыше до всех deny
> allow tcp from any to any established
> Иначе атакующий может спокойно иметь полный доступ ко всем вашим портам, просто
> используя у себя как исходящий порт любой из 68,873,666,670,1091Доброго дня!
пробовал по вашим рекомендациям,
всё хорошо, только банк-клиент в бухгалтерии по 25 порту и по 110 банку нужны отправка и приём отчетов, хотят программеры банка, чтоб работал telnet по этим портам, иначе нет приёма-передачи платежек.....всё равно спасибо огромное!
> # Network Aaddress Translation
> ipfw add divert natd ip from any to any via sk0sk0, rl0. Что есть внешний, что внутренний?
>> # Network Aaddress Translation
>> ipfw add divert natd ip from any to any via sk0sk0 внешний,
rl0 внутренний .
>>> # Network Aaddress Translation
>>> ipfw add divert natd ip from any to any via sk0
> sk0 внешний,
> rl0 внутренний .--# Network Aaddress Translation
--ipfw add divert natd ip from any to any via sk0
Здесь любой входящий получит от ната новый адрес отправителя--# Rdp permission
--ipfw add permit tcp from 94.245.133.237 to me 3389
--ipfw add permit tcp from 46.48.196.127 to me 3389
Здесь уже внешних адресов не будет и пакет пройдет, скорее всего, по 2400 правилу
>[оверквотинг удален]
>> sk0 внешний,
>> rl0 внутренний .
> --# Network Aaddress Translation
> --ipfw add divert natd ip from any to any via sk0
> Здесь любой входящий получит от ната новый адрес отправителя
> --# Rdp permission
> --ipfw add permit tcp from 94.245.133.237 to me 3389
> --ipfw add permit tcp from 46.48.196.127 to me 3389
> Здесь уже внешних адресов не будет и пакет пройдет, скорее всего, по
> 2400 правилуспасибо всем!!!
разобрался, работает!!!!--ipfw add permit tcp from 46.48.196.127 to me 3389
ipfw add permit tcp from 46.48.196.127 to any 3389
Заработало!