Проект «SnakeProject» Михаила КозловаРегистрация

Навигация
⇒FreeBSD and Nix⇒

⇐CISCO
⇐Voice(Asterisk\Cisco)
⇐Microsoft
⇐Powershell
⇐Python
⇐SQL\T-SQL
⇐1С
⇐Общая
⇐WEB Разработка
⇐ORACLE SQL \ JAVA

FreeBSD: ipfw + таблицы


Малый ликбез по пользованию таблиц в ipfw ОС FreeBSD

 

Листинг файла /etc/rc.conf

firewall_enable="YES"
firewall_script="/etc/rc.firewall"

 

Сам скрипт:

#!/bin/sh
/sbin/ipfw -f flush
/sbin/ipfw table 1 flush
/sbin/ipfw table 2 flush

#block sites
cat /etc/BlockIps | while read ip; do
ipfw table 1 add $ip 1
done

/sbin/ipfw -q add 100 deny ip from "table(1)" to 192.168.1.0/24

#allow users ips
cat /etc/AllowUserIps | while read ip; do
ipfw table 2 add $ip 1
done

/sbin/ipfw -q add 099 allow ip from "table(1)" to "table(2)"

/sbin/ipfw -q add 201 allow all from any to any 22
/sbin/ipfw -q add 202 allow all from any 22 to any
/sbin/ipfw -q add 203 allow all from any to any 21
/sbin/ipfw -q add 204 allow all from any 21 to any
/sbin/ipfw -q add 307 allow all from any to any 80
/sbin/ipfw -q add 308 allow all from any 80 to any
/sbin/ipfw -q add 60000 deny ip from any to any

 

Файл разрешенных AllowUserIps :
192.168.1.3
192.168.1.4
192.168.1.5

 

Теперь добавим данные в файлик запрета:
host vk.com | grep 'has address' | cut -d ' ' -f 4 > /etc/BlockIps 
host odnoklassniki.ru | grep 'has address' | cut -d ' ' -f 4 >> /etc/BlockIps 

 

Перезапускаем ipfw на FreeBSD:
/etc/rc.d/ipfw restart

 

Просмотр таблицы:
ipfw table 1 list

 

Добавление и удаление хоста\сети из таблицы:

ipfw table 1 add 1.1.1.1/32
ipfw table 1 delete 1.1.1.1/32
ipfw table 1 add 1.1.1.1
ipfw tabe 1 delete 1.1.1.1


Комментарии пользователей

Эту новость ещё не комментировалиНаписать комментарий
Анонимам нельзя оставоять комментарии, зарегистрируйтесь!

© Snakeproject.ru создан в 2013 году. При копировании материала с сайта - оставьте ссылку.


Яндекс.Метрика

Goon Каталог сайтов Рейтинг@Mail.ru