Jump to content

Помогите разобраться с файерволом


Recommended Posts

а вообще на новом Debian реально запустить стг?

Хочется систему дебиан надёжна, стабильна.......

убунту тож ничего просто привык к дебиану

 

Ну так и работайте с ним. В чем проблема-то.

И вообще лучше работать не стой системой, которая новее, а с той, которую лучше знаешь. (Имхо, конечно).

Link to post
Share on other sites
  • Replies 77
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

А что это у вас, батенька, логи в неположенном месте лежат, а?

ssh, другого админа отправить учиться.

я на дебиане так и не смог собрать ядро с ipset

щас попробую установить дебиан и начать всё с начала

Link to post
Share on other sites

я на дебиане так и не смог собрать ядро с ipset

щас попробую установить дебиан и начать всё с начала

Хороших праздников (:

Спасибо и вам всем того же!

Link to post
Share on other sites

# uname -a
Linux router 2.6.32-5-686 #1 SMP Mon Mar 26 05:20:33 UTC 2012 i686 GNU/Linux
root@router:~# ipset --version
ipset v2.5.0 Protocol version 2.
I'm of protocol version 2.
Kernel module is not loaded in, cannot verify kernel version.
root@router:~/# iptables --version
iptables v1.4.8
# modprobe ip_set
FATAL: Module ip_set not found.

Ну и как с этим бороться?

Link to post
Share on other sites

Попробуй :

m-a a-i ipset

Нужно установить module assistant, если его не было и сопутствующие пакеты.

я пробовал так собирать вылазят ошибки

 

Попытался поставить ipset в Debian 6.0 по доке для 5.0, но увы, сборка заканчивается ошибкой.

CC [M]  /usr/src/modules/netfilter-extensions/net/ipv4/netfilter/ip_set.o
/usr/src/modules/netfilter-extensions/net/ipv4/netfilter/ip_set.c:27:27: error: asm/semaphore.h: No such file or directory
make[5]: *** [/usr/src/modules/netfilter-extensions/net/ipv4/netfilter/ip_set.o] Error 1
make[4]: *** [_module_/usr/src/modules/netfilter-extensions/net/ipv4/netfilter] Error 2
make[3]: *** [sub-make] Error 2
make[2]: *** [all] Error 2
make[2]: Leaving directory `/usr/src/linux-headers-2.6.32-5-amd64'
make[1]: *** [binary-modules] Error 2
make[1]: Leaving directory `/usr/src/modules/netfilter-extensions'
make: *** [kdist_build] Error 2
BUILD FAILED!

К счастью, в squeeze есть пакет xtables-addons, контент которого дублирует netfilter-extensions

aptitude install xtables-addons-source xtables-addons-common
m-a -v -t auto-install xtables-addons

И все, можно пользоватся ipset.

Link to post
Share on other sites

Помогите разобраться ещё с iptable ipset

нужно прописать правило запрета всем на исходящий порт 25

а так же сделать всем запрет для нескольких внешних ип

Как можно это реализовать?

 

# Создание правил доступа к Авангард (разрешённые IP адреса)
$IPS -N WHITE iptree
       $IPS -A WHITE 10.0.0.3
#Адреса серверов Авангард страниц:
       $IPS -N SOCIAL iptree
       $IPS -A SOCIAL 212.48.199.125
       $IPS -A SOCIAL 212.48.192.132

# Разрешаем Белому списку посейщать социальные сети
$IPT -t filter -A FORWARD -m set --set WHITE src -m set --set SOCIAL dst -j ACCEPT

# Запрещаем всем не вошедшим в белый список посейщать социальные сети
$IPT -t filter -A FORWARD -m set --set SOCIAL dst -j DROP

 

Вот это почему то непрокатывает :-(

Что я не так делаю?

Link to post
Share on other sites

Не факт что set можно использовать 2 раза для src и dst. Лучше отдельную цепочку создайте, точно заработает.

Link to post
Share on other sites

Помогите разобраться ещё с iptable ipset

нужно прописать правило запрета всем на исходящий порт 25

а так же сделать всем запрет для нескольких внешних ип

Как можно это реализовать?

 

# Создание правил доступа к Авангард (разрешённые IP адреса)
$IPS -N WHITE iptree
	$IPS -A WHITE 10.0.0.3
#Адреса серверов Авангард страниц:
	$IPS -N SOCIAL iptree
	$IPS -A SOCIAL 212.48.199.125
	$IPS -A SOCIAL 212.48.192.132

# Разрешаем Белому списку посейщать социальные сети
$IPT -t filter -A FORWARD -m set --set WHITE src -m set --set SOCIAL dst -j ACCEPT

# Запрещаем всем не вошедшим в белый список посейщать социальные сети
$IPT -t filter -A FORWARD -m set --set SOCIAL dst -j DROP

 

Вот это почему то непрокатывает :-(

Что я не так делаю?

Я бы посоветовал сначала разобраться , что есть iptables и по какому принципу оно работает.

$IPT -t filter -A FORWARD -m set --set SOCIAL dst -j DROP

Для всех пользователей, у которых адрес назначения попадает в список SOCIAL, будут дропаться.

Я бы сделал так :

только 1 правило :

$IPT -t filter -A FORWARD -m set --set SOCIAL src -j DROP

Всем разрешено посещать социал, кроме тех, кто попал в список SOCIAL.

И в сет SOCIAL добавлять тех, кому запрещено.

Link to post
Share on other sites

Помогите разобраться ещё с iptable ipset

нужно прописать правило запрета всем на исходящий порт 25

а так же сделать всем запрет для нескольких внешних ип

Как можно это реализовать?

 

# Создание правил доступа к Авангард (разрешённые IP адреса)
$IPS -N WHITE iptree
	$IPS -A WHITE 10.0.0.3
#Адреса серверов Авангард страниц:
	$IPS -N SOCIAL iptree
	$IPS -A SOCIAL 212.48.199.125
	$IPS -A SOCIAL 212.48.192.132

# Разрешаем Белому списку посейщать социальные сети
$IPT -t filter -A FORWARD -m set --set WHITE src -m set --set SOCIAL dst -j ACCEPT

# Запрещаем всем не вошедшим в белый список посейщать социальные сети
$IPT -t filter -A FORWARD -m set --set SOCIAL dst -j DROP

 

Вот это почему то непрокатывает :-(

Что я не так делаю?

Я бы посоветовал сначала разобраться , что есть iptables и по какому принципу оно работает.

$IPT -t filter -A FORWARD -m set --set SOCIAL dst -j DROP

Для всех пользователей, у которых адрес назначения попадает в список SOCIAL, будут дропаться.

Я бы сделал так :

только 1 правило :

$IPT -t filter -A FORWARD -m set --set SOCIAL src -j DROP

Всем разрешено посещать социал, кроме тех, кто попал в список SOCIAL.

И в сет SOCIAL добавлять тех, кому запрещено.

невариант

запретить надо всем кроме админов

а также не могу запретить всем исходящие на порт 25

Link to post
Share on other sites
Не факт что set можно использовать 2 раза для src и dst. Лучше отдельную цепочку создайте, точно заработает.

подскажите как если не затруднит...

Link to post
Share on other sites
Не факт что set можно использовать 2 раза для src и dst. Лучше отдельную цепочку создайте, точно заработает.

подскажите как если не затруднит...

Сделать 2 цепочки.

Во второй -j перваяцепочка

Link to post
Share on other sites

а также не могу запретить всем исходящие на порт 25

Чо там :

 

$IPSET -F Vports
$IPSET -X Vports
$IPSET -N Vports portmap --from 1 --to 65535
$IPTABLES -t filter -I FORWARD -m set --set Vports dst -j DROP

Ну так и потом :

$IPSET -A Vports 135
$IPSET -A Vports 25
$IPSET -A Vports 139
$IPSET -A Vports 445

Собственно все - на форвард эти порты закрыты.

Link to post
Share on other sites

Админов много ?

# Создание правил доступа к Авангард (разрешённые IP адреса)
$IPS -N WHITE iptree
			$IPS -A WHITE 10.0.0.3
#Адреса серверов Авангард страниц:
			$IPS -N SOCIAL iptree
			$IPS -A SOCIAL 212.48.199.125
			$IPS -A SOCIAL 212.48.192.132

# Разрешаем Белому списку посейщать социальные сети
$IPT -t filter -A FORWARD -s ! $Admin_IP -m set --set SOCIAL dst -j DROP

Как то так для 1 админа.

Link to post
Share on other sites

ipset v4.2: Set already exists
iptables: Chain already exists.
iptables: Chain already exists.
iptables: Chain already exists.
Using intrapositioned negation (`--option ! this`) is deprecated in favor of extrapositioned (`! --option this`).
Bad argument `set'
Try `iptables -h' or 'iptables --help' for more information.

 

Ругаетццо зараза

 

вот что в правилах :

 

# Generated by iptables-save v1.4.8 on Fri May  4 18:11:45 2012
*nat
:PREROUTING ACCEPT [14:1112]
:POSTROUTING ACCEPT [26:6240]
:OUTPUT ACCEPT [26:6240]
:park - [0:0]
-A PREROUTING -s 10.0.0.0/24 -j park 
-A POSTROUTING -o eth2 -m set --match-set FSNAT src -j SNAT --to-source 172.16.0.2 
-A park -m set --match-set authorized1 src -j RETURN 
-A park -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.0.0.1:82 
COMMIT
# Completed on Fri May  4 18:11:45 2012
# Generated by iptables-save v1.4.8 on Fri May  4 18:11:45 2012
*mangle
:PREROUTING ACCEPT [520:102809]
:INPUT ACCEPT [406:70144]
:FORWARD ACCEPT [114:32665]
:OUTPUT ACCEPT [406:114474]
:POSTROUTING ACCEPT [520:147139]
-A FORWARD -d 10.0.0.3/32 -j MARK --set-xmark 0x67/0xffffffff 
-A FORWARD -s 10.0.0.3/32 -j MARK --set-xmark 0x1007/0xffffffff 
COMMIT
# Completed on Fri May  4 18:11:45 2012
# Generated by iptables-save v1.4.8 on Fri May  4 18:11:45 2012
*filter
:INPUT ACCEPT [525:92133]
:FORWARD DROP [24:4110]
:OUTPUT ACCEPT [518:134842]
:ban - [0:0]
:myban - [0:0]
-A INPUT -j myban 
-A FORWARD -m set --match-set FSNATDROP dst,src -j DROP 
-A FORWARD -m set --match-set FSNATDROP src,dst -j DROP 
-A FORWARD -m set --match-set FFIN dst,src -j ACCEPT 
-A FORWARD -m set --match-set FFIN src,dst -j ACCEPT 
-A FORWARD -m set --match-set Vports dst -j DROP 
-A FORWARD -m set --match-set authorized1 src,dst -j ACCEPT 
-A FORWARD -m set --match-set authorized1 dst,src -j ACCEPT 
-A myban -s 11.22.33.44/32 -j DROP 
COMMIT
# Completed on Fri May  4 18:11:45 2012

Link to post
Share on other sites

Выложил конфиг предпускогого запуска стг

тыкните носом что тут не так:-)

#!  /bin/sh
# /etc/init.d/bil
########################################################################
######################## Конфигурация путей ############################
HTB="/etc/init.d/htb" #Путь к шейперу
IPT="/sbin/iptables" # Путь до IPTABLES
IPS="/usr/sbin/ipset" # Путь до IPSET
WAN_IP="172.16.0.2" #IP адрес внешнего интерфейса
IF_WORLD="eth2" #Интерфейс смотрящий в грешный мир
SQL="/etc/init.d/mysql" # Путь до init.d скрипта MySQL
WEB="/etc/init.d/apache2" #  Путь до init.d скрипта Apache2
DHCP="/etc/init.d/dhcp-server" # Путь до init.d скрипта Dhcp3-server
BAND="/etc/init.d/bandwidthd" # Путь до init.d скрипта Bandwindthd
STAR="/usr/sbin/stargazer" # Путь до bin файла stargazer
SOFTD="/etc/init.d/softflowd" #  Путь до init.d скрипта  Softflowd
#Softflowd для разных подсетей
SOFT="/usr/sbin/softflowd -i eth3 -n 127.0.0.1:42111" # Тут указываем интерфейс на котором висят пользователи (eth3)
########################################################################
# Что будет происходить и запускаться при старте: (Конфигурация запуска)
########################################################################
case "$1" in
  start)
echo "###################################################################################"
echo "###################################################################################"
echo "########################### Запускаем Биллинговую систему #########################"
echo "###################################################################################"
echo "###################################################################################"
#Перезапускаем MySql, Apache, Dhcp3-server
#$SQL restart
#$WEB restart
#$DHCP restart
######################################################################################
#Разрешаем хождение пакетов
echo 1 > /proc/sys/net/ipv4/ip_forward
#По умолчанию проходящие пакеты в DROP
iptables -P FORWARD DROP
# Создаём списки для подсети: (10.0)
$IPS -N FFIN ipmap --network 10.0.0.0/24
$IPS -N FSNAT ipmap --network 10.0.0.0/24
$IPS -N FSNATDROP ipmap --network 10.0.0.0/24
# Создаём списки для подсети: (10.128)
#$IPS -N FFIN ipmap --network 10.128.0.0/24
#$IPS -N FSNAT ipmap --network 10.128.0.0/24
#$IPS -N FSNATDROP ipmap --network 10.128.0.0/24
# Создаём списки для подсети: (192.168)
#$IPS -N FFIN ipmap --network 192.168.10.0/24
#$IPS -N FSNAT ipmap --network 192.168.10.0/24
#$IPS -N FSNATDROP ipmap --network 192.168.10.0/24
#Запрет исходящей почты для всех
#iptables -t filter -A INPUT -p tcp --sport 25 -j DROP
#iptables -t filter -A FORWARD -p tcp --sport 25 -j DROP
#iptables -t filter -A FORWARD -p tcp --dport 25 -j DROP
#iptables -t filter -A OUTPUT -p tcp --dport 25 -j DROP

#Закрываем доступ к нужным портам
ipset -F Vports
ipset -X Vports
ipset -N Vports portmap --from 1 --to 65535
$IPT -t filter -I FORWARD -m set --set Vports dst -j DROP
#$IPSET -A Vports 135
$IPSET -A Vports 25
#$IPSET -A Vports 139
#$IPSET -A Vports 445
#Редирект неавторизованных на страничку приветствия и контактов
ipset -N authorized1 ipmap --network 10.0.0.0/24
iptables -A FORWARD -m set --set authorized1 src,dst -j ACCEPT
iptables -A FORWARD -m set --set authorized1 dst,src -j ACCEPT
iptables -t nat -N park
iptables -t nat -A park -m set --set authorized1 src -j RETURN
iptables -t nat -A park -p TCP --dport 80 -j DNAT --to 10.0.0.1:82
iptables -t nat -A PREROUTING -s 10.0.0.0/24 -j park
#Создаём цепочку бана для ненужных ип
#Например банить злостных ботов нарушающих спокоствие сервера
iptables -N ban
iptables -N myban
iptables -A INPUT -j myban
iptables -A myban -s 11.22.33.44 -j DROP
#Запреты авангард доступа
# Создание правил доступа к Авангард (разрешённые IP адреса)
$IPS -N WHITE iptree
						    $IPS -A WHITE 10.0.0.2
#Адреса серверов Авангард страниц:
						    $IPS -N AVANGARD iptree
						    $IPS -A AVANGARD 212.48.199.125
						    $IPS -A AVANGARD 212.48.192.132
   $IPS -A AVANGARD 193.222.109.119
   $IPS -A AVANGARD 193.222.109.113
   $IPS -A AVANGARD 193.222.109.102
# Разрешаем Белому списку посейщать Авангард страницы
$IPT -t filter -A FORWARD -s ! $Admin_IP -m set --set AVANGARD dst -j DROP

# Добавляем наши адреса в NAT таблицу
#(10)
$IPT -t nat -A POSTROUTING -m set --set FSNAT src -o $IF_WORLD -j SNAT --to-source $WAN_IP
$IPT -t filter -I FORWARD -m set --set FFIN src,dst -j ACCEPT
$IPT -t filter -I FORWARD -m set --set FFIN dst,src -j ACCEPT
$IPT -t filter -I FORWARD -m set --set FSNATDROP src,dst -j DROP
$IPT -t filter -I FORWARD -m set --set FSNATDROP dst,src -j DROP


############################################################################################
# Запускаем Bandwindthd
$BAND start
# Запускаем HTB (Шейпер)
$HTB start
# Запускаем прослушку Softflowd для (10)
$SOFT

# Запускаем Stargazer
$STAR
echo "###################################################################################"
echo "###################################################################################"
echo "#################################### Биллинг запущен ##############################"
echo "###################################################################################"
echo "###################################################################################"
 ;;

########################################################################################
########################################################################################
# Что будет происходить при остановке скрипта: (Конфигурация завершения работы биллинга)
########################################################################################
  stop)
echo "###################################################################################"
echo "###################################################################################"
echo "############################# Выключаем систему Биллинга ##########################"
echo "###################################################################################"
echo "###################################################################################"

#Убиваем все процессы старгазера
killall stargazer
#Удаляем правила шейпера
tc qdisc del dev eth3 root #(10)
#Останавливаем softflowd
$SOFTD stop
#Останавливаем Bandwindthd
$BAND stop
#Останавливаем шейпер HTB
$HTB stop

# Чистим правила в таблицах Iptables и удаляем списки IPSET
#(10)
$IPT -F
$IPT -F -t nat
$IPS -F FFIN
$IPS -X FFIN
$IPS -F FSNAT
$IPS -X FSNAT
$IPS -F FSNATDROP
$IPS -X FSNATDROP

# Удаляем конфигурацию доступа к социальным сетям
$IPS -X AVANGARD
$IPS -X WHITE
#Удаляем учётные записи с конфигурацией шейпера.
rm -rf /etc/stargazer/dn/*
echo "###################################################################################"
echo "###################################################################################"
echo "#################################### Биллинг выключен #############################"
echo "###################################################################################"	
echo "###################################################################################"
 ;;
  *)
 echo "Usage: /etc/init.d/billing {start|stop}"
 exit 1
 ;;
esac
exit 0

Link to post
Share on other sites
  • 2 weeks later...

да но неработает

Приходится блочить на сквиде

Вот мне одно интересно : неужели сложно поставить https://www.virtualbox.org/ , поставить туда систему и обкатать все до удачного запуска и потом перенести на рабочую систему, а не мучить пользователей ?

Link to post
Share on other sites

да но неработает

Приходится блочить на сквиде

Вот мне одно интересно : неужели сложно поставить https://www.virtualbox.org/ , поставить туда систему и обкатать все до удачного запуска и потом перенести на рабочую систему, а не мучить пользователей ?

неее!

Если долго мучиться то обязательно что - нибудь получиться!

Пользователи только рады что траф нахаляву прёт пока я тут вожусь настраиваю у всей сети полный доступ в инет даже у тех у кого его небыло.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...