Возможно вы искали: 'Dr. Daisy Pet Vet'

May 15 2025 19:46:24
  • Как сделать 8Gamers.Ru домашней страницей?
  • Игры
    • База данных по играх
    • Игровые новости
    • Игровая индустрия
    • Обзоры на игры
    • Прохождения игр
    • Гайды к играм
    • Превью о играх
    • Игровые тизеры
    • Игровые арты
    • Игровые обои
    • Игровые скриншоты
    • Игровые обложки
    • Игровые трейлеры
    • Игровое видео
    • Вышедшие игры
    • Ближайшие релизы игр
  • Кино и ТВ
    • База данных по кино
    • Статьи о кино
    • Постеры
    • Кадры из кино
    • Кино трейлеры
    • Сегодня в кино
    • Скоро в кино
  • Комиксы и манга
    • Манга по алфавиту
    • База данных по комиксах
    • Читать онлайн комиксы
    • Читать онлайн манга
    • База персонажей
  • Читы и коды
    • Чит-коды для PC игр
    • Чит-коды для консольных игр
    • Трейнеры
    • Коды Game Genie
  • Моддинг
    • Модификации
    • Карты к играм
    • Программы для моддинга
    • Статьи о моддинге
  • Геймдев
    • Всё о создании игр
    • Список движков
    • Утилиты в помощь игроделу
    • Конструкторы игр
    • Игровые движки
    • Библиотеки разработки
    • 3D-модели
    • Спрайты и тайлы
    • Музыка и звуки
    • Текстуры и фоны
  • Рецензии
    • Игры
    • Кино
    • Аниме
    • Комиксы
    • Мангу
    • Саундтреки
  • Саундтреки
    • Лирика
  • Файлы
    • Патчи к играм
    • Русификаторы к играм
    • Сохранения к играм
    • Субтитры к кино
  • Медиа
    • Видео
    • Фото
    • Аудио
    • Фан-арты
    • Косплей
    • Фото с виставок
    • Девушки из игр
    • Рисунки
    • Рисуем онлайн
    • Фотохостинг
  • Юмор
    • Анекдоты
    • Афоризмы
    • Истории
    • Стишки и эпиграммы
    • Тосты
    • Цитаты
  • Флеш
    • Азартные
    • Аркады
    • Бродилки
    • Гонки
    • Для девочек
    • Для мальчиков
    • Драки
    • Квесты
    • Леталки
    • Логические
    • Мультфильмы
    • Открытки
    • Приколы
    • Разное
    • Спорт
    • Стратегии
    • Стрелялки
Статистика

Статей: 87772
Просмотров: 96111483
Игры
Injustice:  Gods Among Us
Injustice: Gods Among Us
...
Dark Souls 2
Dark Souls 2
Dark Souls II - вторая часть самой хардкорной ролевой игры 2011-2012 года, с новым героем, сюжето...
Battlefield 4
Battlefield 4
Battlefield 4 - продолжение венценосного мультиплеер-ориентированного шутера от первого ли...
Кино
Steins;Gate
Steins;Gate
Любители японской анимации уже давно поняли ,что аниме сериалы могут дать порой гораздо больше пи...
Ку! Кин-дза-дза
Ку! Кин-дза-дза
Начинающий диджей Толик и всемирно известный виолончелист Владимир Чижов встречают на шумной моск...
Обзоры на игры
• Обзор Ibara [PCB/PS2] 18357
• Обзор The Walking ... 18801
• Обзор DMC: Devil M... 19879
• Обзор на игру Valk... 15877
• Обзор на игру Stars! 17764
• Обзор на Far Cry 3 17948
• Обзор на Resident ... 16024
• Обзор на Chivalry:... 17508
• Обзор на игру Kerb... 17981
• Обзор игры 007: Fr... 16619
Превью о играх
• Превью к игре Comp... 17960
• Превью о игре Mage... 14464
• Превью Incredible ... 14721
• Превью Firefall 13479
• Превью Dead Space 3 16334
• Превью о игре SimC... 14730
• Превью к игре Fuse 15442
• Превью Red Orche... 15542
• Превью Gothic 3 16343
• Превью Black & W... 17354
Главная » Статьи » Разное » Настройка сетевого экрана (firewall) в FreeBSD (ipfw freebsd firewall)

Настройка сетевого экрана (firewall) в FreeBSD (ipfw freebsd firewall)

Ключевые слова: ipfw, freebsd, firewall, (найти похожие документы)

From: Alexandr Kovalenko <never АТ nevermind.kiev.ua>
Date: Mon, 16 Jan 2004 14:31:37 +0000 (UTC)
Subject: Настройка сетевого экрана (firewall) в FreeBSD

Оригинал: http://uafug.org.ua/projects/faq/firewall.setup/

Настройка сетевого экрана (firewall) в FreeBSD

FreeBSD 4.x и 5.x позволяет настроить сетевой экран (firewall) очень
просто. С помощью сетевого экрана Вы можете защитить как один сервер,
так и всю сеть. Также Вы можете легко включить поддержу трансляции
сетевых адресов (NAT) для того, чтобы компьютеры из Вашей внутренней
сети могли получить доступ к внешней сети используя всего один внешний
IP адрес.

Для этого необходимы три простых шага

1. Во-первых, Вам будет необходимо внести несколько изменений в Ваше
ядро. На самом деле это не так сложно, как звучит на первый взгяд.
Используйте команду su для того, чтобы получить права
суперпользователя, при помощи команды cd перейдите в каталог
/usr/src/sys/i386/conf, скопируйте файл GENERIC в новый файл. Назовём
его, к примеру, ROUTER. Этот файл будет Вашим новым конфигурационным
файлом Вашего ядра. Ниже приведены изменения, которые Вам необходимо
будет внести:

--- GENERIC Sun Jul 6 17:09:42 2003
+++ ROUTER Sun Jul 6 17:11:06 2003
@@ -22,7 +22,7 @@
cpu I486_CPU
cpu I586_CPU
cpu I686_CPU
-ident GENERIC
+ident ROUTER
maxusers 0

#makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
@@ -259,3 +259,9 @@
device aue # ADMtek USB ethernet
device cue # CATC USB ethernet
device kue # Kawasaki LSI USB ethernet
+
+# Enable ipfw and natd.
+options IPFIREWALL
+options IPFIREWALL_VERBOSE
+options IPDIVERT
+options DUMMYNET

2. Другими словами, Вам необходимо будет изменить идентификатор
(ident) ядра и добавить опции для включения сетевого экрана в ядре.
После настройки конфигурационного файла скомпилируйте и установите
новое ядро:

# cd /usr/src
# make buildkernel KERNCONF=ROUTER
# make installkernel KERNCONF=ROUTER
# Enable firewall
firewall_enable="YES"
firewall_type="type"
firewall_quiet="NO"

Переменная firewall_type должна быть установлена в значение "client"
для того, чтобы защитить отдельностоящую машину или в "simple" для
шлюза, защищающего внутреннюю сеть. Если Вам необходимо также
поддержка трансляции сетевых адресов (NAT), добавьте нижеследующие
установки:

# Enable natd.
natd_enable="YES"
natd_interface="fxp0" # your public network interface
natd_flags="-m" # preserve port numbers if possible

3. В-третьих, Вам будет необходимо сделать несколько правок в файле
rc.firewall. Комментарии в нём помогут Вам понять, что необходимо, это
действительно очень просто. Найдите раздел с правилами для Вашего типа
сетевого экрана (firewall), как то: "client" или "simple". В начале
раздела Вы найдете несколько переменных, указывающих Ваши IP адреса,
сетевые интерфейсы и т.д.; заполните их.

Вот и все, по крайней мере для начальной настройки. Перезагрузите
машину и Вы получите настроеный и работающий сетевой экран (firewall).

Важное замечание о исправлении неполадок (troubleshooting)

Сетевой экран (firewall) в FreeBSD спроектирован так, что он безопасен
по умолчанию. Если Вы включите его и не добавите никаких правил, он не
будет пропускать никаких пакетов. Это означает, что, если Вы что-то
сделаете неправильно в Вашем файле конфигурации сетевого экрана
(firewall), Вы можете оказаться в ситуации, в которой не сможете
получить доступ к Вашей машине через сеть для того, чтобы исправить
это. Вам понадобится зайти на машину через системную консоль
(клавиатуру, подсоединённую к машине).

Это случилось со мной один раз во время тестирования. Это не большая
проблема, если Вы понимаете, что происходит. Очень просто исправить
ситуацию, если Вы имеете доступ к консоли; просто отредактируйте файл
/etc/rc.conf, установив firewall_type в значение "open" или просто
закомментируйте строки, относящиеся к firewall и перезагрузитесь. Но
будьте бдительны, если Вы настраиваете Ваш сетевой экран через сеть.

Замечание о FTP

Настройки сетевого экрана, подобные этим, не дают возможности работать
FTP. На самом деле, это вина FTP. FTP - это старомодный и черезчур
усложнённый протокол, который требует от сервера инициировать обратное
соединение к клиенту. Так как сетевые экраны запрещают открытие нового
соединения извне (кроме некоторых протоколов типа SMTP или ssh), FTP
не работает.

Есть обходное решение - использовать "пассивный" режим работы FTP,
который заставляет проводить работу в обычном режиме клиент-сервер.
Каждый раз, когда Вы будете использовать клиента FTP просто отдайте
команду, которая включает пассивный режим. В новых версиях FTP клиента
Вы можете сделать этот режим режимом по умолчанию при помощи
переменной окружения FTP_PASSIVE_MODE, установленное в значение "yes".
Современные веб-браузеры используют этот режим по умолчанию и/или
позволяют включить его использование по умолчанию в настройках.

Другое обходное решение - избегать использования FTP и использовать
HTTP или scp.

Более сложные темы

Как только Вы настроите сетевой экран, Вы можете найти, что Вас не
устраивают те наборы правил, которые включены в файл rc.firewall. Если
это так, то Вы можете очень просто написать свои собственные. Первое,
что Вы можете сделать, это разрешить соединения ssh. (ssh - это
безопасная замена для telnet/rlogin; Вы можете его найти в базовой
системе или в коллекции портов). В том месте набора правил, где
разрешается соединение для входящей почты, добавьте подобное правило
для ssh путём копирования и последующего изменения номера порта с 25
на 22.

Или Вы можете взять контроль в свои руки и написать совершенно новый
набор правил. Для этой статьи у меня получилось два таких набора:
router-solo и router-net, которые являются улучшеными версиями
стандартных наборов "client" и "simple". Вот что у меня получилось
(комментарии на английском дабы избежать возможных проблем, связанных
с пониманием /bin/sh кириллических символов):
[Rr][Oo][Uu][Tt][Ee][Rr]-[Ss][Oo][Ll][Oo])
############
# ROUTER single-machine custom firewall setup. Protects somewhat
# against the outside world.
############

# Set this to your ip address.
ip="192.168.0.1"

# Allow communications through loopback interface and deny 127.0.0.1/8
# from any other interfaces
setup_loopback

# Allow anything outbound from this address.
${fwcmd} add allow all from ${ip} to any out

# Deny anything outbound from other addresses.
${fwcmd} add deny log all from any to any out

# Allow TCP through if setup succeeded.
${fwcmd} add allow tcp from any to any established

# Allow IP fragments to pass through.
${fwcmd} add allow all from any to any frag

# Allow inbound ftp, ssh, email, tcp-dns, http, https, pop3, pop3s.
${fwcmd} add allow tcp from any to ${ip} 21 setup
${fwcmd} add allow tcp from any to ${ip} 22 setup
${fwcmd} add allow tcp from any to ${ip} 25 setup
${fwcmd} add allow tcp from any to ${ip} 53 setup
${fwcmd} add allow tcp from any to ${ip} 80 setup
${fwcmd} add allow tcp from any to ${ip} 443 setup
${fwcmd} add allow tcp from any to ${ip} 110 setup
${fwcmd} add allow tcp from any to ${ip} 995 setup

# Deny inbound auth, netbios, ldap, and Microsoft's DB protocol
# without logging.
${fwcmd} add deny tcp from any to ${ip} 113 setup
${fwcmd} add deny tcp from any to ${ip} 139 setup
${fwcmd} add deny tcp from any to ${ip} 389 setup
${fwcmd} add deny tcp from any to ${ip} 445 setup

# Deny some chatty UDP broadcast protocols without logging.
${fwcmd} add deny udp from any 137 to any
${fwcmd} add deny udp from any to any 137
${fwcmd} add deny udp from any 138 to any
${fwcmd} add deny udp from any 513 to any
${fwcmd} add deny udp from any 525 to any

# Allow inbound DNS and NTP replies. This is somewhat of a hole,
# since we're looking at the incoming port number, which can be
# faked, but that's just the way DNS and NTP work.
${fwcmd} add allow udp from any 53 to ${ip}
${fwcmd} add allow udp from any 123 to ${ip}

# Allow inbound DNS queries.
${fwcmd} add allow udp from any to ${ip} 53

# Deny inbound NTP queries without logging.
${fwcmd} add deny udp from any to ${ip} 123

# Allow traceroute to function, but not to get in.
${fwcmd} add unreach port udp from any to ${ip} 33435-33524

# Allow some inbound icmps - echo reply, dest unreach, source quench,
# echo, ttl exceeded.
${fwcmd} add allow icmp from any to any icmptypes 0,3,4,8,11

# Everything else is denied and logged.
${fwcmd} add deny log all from any to any
;;

[Rr][Oo][Uu][Tt][Ee][Rr]-[Nn][Ee][Tt])
############
# ROUTER network custom firewall setup. The assumption here is that
# the internal hosts are trusted, and can do anything they want.
# The only thing we have to be careful about is what comes in over
# the outside interface. So, you'll see a lot of "in via ${oif}"
# clauses here.
############

# Set these to your outside interface network and netmask and ip.
oif="fxp0"
onet="217.20.160.0"
omask="255.255.255.0"
oip="217.20.160.1"

# Set these to your inside interface network and netmask and ip.
iif="fxp1"
inet="192.168.0.0"
imask="255.255.255.0"
iip="192.168.0.1"

# Allow communications through loopback interface and deny 127.0.0.1/8
# from any other interfaces
setup_loopback

# Stop spoofing
${fwcmd} add deny log all from ${inet}:${imask} to any in via ${oif}
${fwcmd} add deny log all from ${onet}:${omask} to any in via ${iif}

# Stop RFC1918 nets on the outside interface
${fwcmd} add deny log all from any to 10.0.0.0/8 via ${oif}
${fwcmd} add deny log all from any to 172.16.0.0/12 via ${oif}
${fwcmd} add deny log all from any to 192.168.0.0/16 via ${oif}

# Stop draft-manning-dsua-03.txt (1 May 2000) nets (includes RESERVED-1
,
# DHCP auto-configuration, NET-TEST, MULTICAST (class D), and class E),
# RFC 3330 nets on the outside interface
${fwcmd} add deny log all from any to 0.0.0.0/8 via ${oif}
${fwcmd} add deny log all from any to 169.254.0.0/16 via ${oif}
${fwcmd} add deny log all from any to 192.0.2.0/24 via ${oif}
${fwcmd} add deny log all from any to 198.18.0.0/15 via ${oif}
${fwcmd} add deny log all from any to 224.0.0.0/4 via ${oif}
${fwcmd} add deny log all from any to 240.0.0.0/4 via ${oif}

# Network Address Translation. This rule is placed here deliberately
# so that it does not interfere with the surrounding address-checking
# rules. If for example one of your internal LAN machines had its IP
# address set to 192.168.0.2 then an incoming packet for it after being
# translated by natd(8) would match the `deny' rule above. Similarly
# an outgoing packet originated from it before being translated would
# match the `deny' rule below.
case ${natd_enable} in
[Yy][Ee][Ss])
if [ -n "${natd_interface}" ]; then
${fwcmd} add divert natd all from any to any via ${natd_interface}
fi
;;
esac

# Stop RFC1918 nets on the outside interface
${fwcmd} add deny log all from 10.0.0.0/8 to any via ${oif}
${fwcmd} add deny log all from 172.16.0.0/12 to any via ${oif}
${fwcmd} add deny log all from 192.168.0.0/16 to any via ${oif}

# Stop draft-manning-dsua-03.txt (1 May 2000) nets (includes RESERVED-1,
# DHCP auto-configuration, NET-TEST, MULTICAST (class D), and class E),
# RFC 3330 nets on the outside interface
${fwcmd} add deny log all from 0.0.0.0/8 to any via ${oif}
${fwcmd} add deny log all from 169.254.0.0/16 to any via ${oif}
${fwcmd} add deny log all from 192.0.2.0/24 to any via ${oif}
${fwcmd} add deny log all from 198.18.0.0/15 to any via ${oif}
${fwcmd} add deny log all from 224.0.0.0/4 to any via ${oif}
${fwcmd} add deny log all from 240.0.0.0/4 to any via ${oif}

# Allow anything on the internal net
${fwcmd} add allow all from any to any via ${iif}

# Allow anything outbound from this net.
${fwcmd} add allow all from ${onet}:${omask} to any out via ${oif}

# Deny anything outbound from other nets.
${fwcmd} add deny log all from any to any out via ${oif}

# Allow TCP through if setup succeeded.
${fwcmd} add allow tcp from any to any established

# Allow IP fragments to pass through.
${fwcmd} add allow all from any to any frag

# Allow inbound ftp, ssh, email, tcp-dns, http, https, pop3, pop3s.
${fwcmd} add allow tcp from any to ${oip} 21 setup in via ${oif}
${fwcmd} add allow tcp from any to ${oip} 22 setup in via ${oif}
${fwcmd} add allow tcp from any to ${oip} 25 setup in via ${oif}
${fwcmd} add allow tcp from any to ${oip} 53 setup in via ${oif}
${fwcmd} add allow tcp from any to ${oip} 80 setup in via ${oif}
${fwcmd} add allow tcp from any to ${oip} 443 setup in via ${oif}
${fwcmd} add allow tcp from any to ${oip} 110 setup in via ${oif}
${fwcmd} add allow tcp from any to ${oip} 995 setup in via ${oif}

# Deny inbound auth, netbios, ldap, and Microsoft's DB protocol
# without logging.
${fwcmd} add deny tcp from any to ${oip} 113 setup in via ${oif}
${fwcmd} add deny tcp from any to ${oip} 139 setup in via ${oif}
${fwcmd} add deny tcp from any to ${oip} 389 setup in via ${oif}
${fwcmd} add deny tcp from any to ${oip} 445 setup in via ${oif}

# Deny some chatty UDP broadcast protocols without logging.
${fwcmd} add deny udp from any 137 to any in via ${oif}
${fwcmd} add deny udp from any to any 137 in via ${oif}
${fwcmd} add deny udp from any 138 to any in via ${oif}
${fwcmd} add deny udp from any 513 to any in via ${oif}
${fwcmd} add deny udp from any 525 to any in via ${oif}

# Allow inbound DNS and NTP replies. This is somewhat of a hole,
# since we're looking at the incoming port number, which can be
# faked, but that's just the way DNS and NTP work.
${fwcmd} add allow udp from any 53 to ${oip} in via ${oif}
${fwcmd} add allow udp from any 123 to ${oip} in via ${oif}

# Allow inbound DNS queries.
${fwcmd} add allow udp from any to ${oip} 53 in via ${oif}

# Deny inbound NTP queries without logging.
${fwcmd} add deny udp from any to ${oip} 123 in via ${oif}

# Allow traceroute to function, but not to get in.
${fwcmd} add unreach port udp from any to ${oip} 33435-33524 in via ${oif}

# Allow some inbound icmps - echo reply, dest unreach, source quench,
# echo, ttl exceeded.
${fwcmd} add allow icmp from any to any in via ${oif} icmptypes 0,3,4,8,11

# Broadcasts are denied and not logged.
${fwcmd} add deny all from any to 255.255.255.255

# Everything else is denied and logged.
${fwcmd} add deny log all from any to any

(c) 2003, Alexandr Kovalenko <never АТ nevermind.kiev.ua>

$Id: index.html,v 1.12 2003/07/07 09:13:28 never Exp $

Original revision: 1.9
508 Прочтений •  [Настройка сетевого экрана (firewall) в FreeBSD (ipfw freebsd firewall)] [08.05.2012] [Комментариев: 0]
Добавил: Ukraine Vova
Ссылки
HTML: 
[BB Url]: 
Похожие статьи
Название Добавил Добавлено
• Настройка сетевого экрана (firewall... Ukraine Vova 08.05.2012
Ни одного комментария? Будешь первым :).
Пожалуйста, авторизуйтесь для добавления комментария.

Проект входит в сеть сайтов «8Gamers Network»

Все права сохранены. 8Gamers.NET © 2011 - 2025

Статьи
Рецензия на Pressure
Рецензия на Pressure
Чтобы обратить на себя внимание, начинающие маленькие разработчики, как правило, уходят в жанры, ...
Рецензия на Lost Chronicles of Zerzura
Рецензия на Lost Chron...
Игры, сделанные без любви и старания, похожи на воздушный шар – оболочка есть, а внутри пусто. Lo...
Рецензия на The Bridge
Рецензия на The Bridge
«Верх» и «низ» в The Bridge — понятия относительные. Прогуливаясь под аркой, можно запросто перей...
Рецензия на SimCity
Рецензия на SimCity
Когда месяц назад состоялся релиз SimCity, по Сети прокатилось цунами народного гнева – глупые ош...
Рецензия на Strategy & Tactics: World War 2
Рецензия на Strategy &...
Название Strategy & Tactics: World War II вряд ли кому-то знакомо. Зато одного взгляда на ее скри...
Рецензия на игру Scribblenauts Unlimited
Рецензия на игру Scrib...
По сложившейся традиции в информационной карточке игры мы приводим в пример несколько похожих игр...
Рецензия на игру Walking Dead: Survival Instinct, The
Рецензия на игру Walki...
Зомби и продукция-по-лицензии — которые и сами по себе не лучшие представители игровой биосферы —...
Обратная связь | RSS | Донейт | Статистика | Команда | Техническая поддержка