Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
toxot
- рядовой
- Сообщения: 25
- Зарегистрирован: 2009-07-17 23:04:02
Непрочитанное сообщение
toxot » 2010-04-08 17:46:09
К сожалению не смог найти похоже темы.
Вот написал конфиг для PF
Код: Выделить всё
ext_if="rl0"
int_if="re0"
set skip on lo
scrub in
altq on $ext_if cbq bandwidth 8Mb queue { std } #cut the outbound chanel
altq on $int_if cbq bandwidth 8Mb queue { std } #cut the inbonund chanel
queue std bandwidth 100% cbq(default) #define queue name and bandwidth
nat-anchor "ftp-proxy/*"
nat on $ext_if from !($ext_if) -> ($ext_if:0)
rdr pass on $int_if proto tcp to port ftp -> 127.0.0.1 port 8021
anchor "ftp-proxy/*"
block in queue std
pass out queue std
pass quick on $int_if no state
antispoof quick for { lo $int_if }
pass in on $ext_if proto icmp to ($ext_if)
pass in on $ext_if proto tcp to ($ext_if) port ssh
Цель и собственно идея. Ограничить как входящий так и исходящий канал до 8 мб.
т.к эта сеть будет публичной.
Все работает в тестовом режиме нормально тоесть и загрузка и выгрузка происходит на скорости около 8мб, но это в тестовом варианте. Если на эту сеть подсядет человек 500 то будет ли оно работать. Вообщем хочется критики и советов как это лучше реализовать.
toxot
-
Хостинг HostFood.ru
-
Хостинг HostFood.ru
Тарифы на хостинг в России, от 12 рублей:
https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.:
https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах:
https://www.host-food.ru/domains/
-
toxot
- рядовой
- Сообщения: 25
- Зарегистрирован: 2009-07-17 23:04:02
Непрочитанное сообщение
toxot » 2010-04-21 19:16:28
Тема ап.
Другой вариант конфига. Подскажите пожалуйста, почему в очереди http_in mail_in ssh_in не попадают пакеты?
Код: Выделить всё
ext_if="rl0"
int_if="re0"
local_net = "172.16.0.0/16"
ssh_ports = "{ 22 2022 }"
vpn_ports = "{ 1194 5000 1723 }"
mail_ports = "{ 25 110 143 943 }"
http_ports = "{ 80 443 8080 }"
torrents = "{ 195.82.146.114 195.82.146.116 }"
set loginterface rl0
set skip on lo
scrub in
altq on $ext_if cbq bandwidth 8Mb queue { std_out, mail_out, udp_out, http_out, ssh_out, icmp_out } #shape outgoing
altq on $int_if cbq bandwidth 16Mb queue { std_in, mail_in, udp_in, http_in, ssh_in, icmp_in } #shape incomming
##for ext_if
queue std_out bandwidth 18% priority 2 cbq(default borrow red)
queue mail_out bandwidth 15% priority 5 cbq(borrow red)
queue udp_out bandwidth 10% priority 7 cbq(borrow red)
queue http_out bandwidth 45% priority 7 cbq(borrow red)
queue ssh_out bandwidth 10% priority 6 cbq(borrow red)
queue icmp_out bandwidth 2% priority 6 cbq(borrow red)
##for int_if
queue std_in bandwidth 18% priority 2 cbq(default borrow red)
queue mail_in bandwidth 15% priority 5 cbq(borrow red)
queue udp_in bandwidth 10% priority 7 cbq(borrow red)
queue http_in bandwidth 45% priority 7 cbq(borrow red)
queue ssh_in bandwidth 10% priority 6 cbq(borrow red)
queue icmp_in bandwidth 2% priority 6 cbq(borrow red)
nat on $ext_if from !($ext_if) -> ($ext_if:0) # NAT to wifi network
rdr pass on $int_if proto tcp to port ftp -> 127.0.0.1 port 8021
rdr pass on $ext_if proto tcp from any to $ext_if port 81 -> 172.16.0.2 port 80 #AP-2
rdr pass on $ext_if proto tcp from any to $ext_if port 82 -> 172.16.0.3 port 80 #AP-3
rdr pass on $ext_if proto tcp from any to $ext_if port 83 -> 172.16.0.5 port 80 #AP-5
rdr pass on $ext_if proto tcp from any to $ext_if port 84 -> 172.16.0.6 port 80 #AP-6
pass all
block in quick on $int_if from $local_net to $torrents # Block torrents (Rutracker, etc) servers.
pass in on $ext_if proto icmp to ($ext_if) queue icmp_out # enable ping from INTERNET
pass in on $ext_if proto tcp to ($ext_if) port www # web stat interface
pass in on $ext_if proto tcp to ($ext_if) port {81,82,83,84} # pass to management
pass in on $ext_if proto tcp to ($ext_if) port ssh # management interface
pass in quick on $int_if from $local_net to $int_if
pass out on $int_if proto tcp from !$local_net port $http_ports to $local_net flags S/SA keep state queue http_in
pass out on $int_if proto tcp from !$local_net port $mail_ports to $local_net flags S/SA keep state queue mail_in
pass out on $int_if proto tcp from !$local_net port $ssh_ports to $local_net flags S/SA keep state queue ssh_in
pass out on $int_if proto {tcp udp} from !$local_net port $vpn_ports to $local_net flags S/SA keep state queue ssh_in
pass out on $int_if proto udp all keep state queue udp_in
pass out on $int_if proto icmp all keep state queue icmp_in
pass out on $ext_if proto tcp from $local_net to !$local_net port $http_ports flags S/SA keep state queue http_out
pass out on $ext_if proto tcp from $local_net to !$local_net port $mail_ports flags S/SA keep state queue mail_out
pass out on $ext_if proto tcp from $local_net to !$local_net port $ssh_ports flags S/SA keep state queue ssh_out
pass out on $ext_if proto { tcp udp } from $local_net to !$local_net port $vpn_ports flags S/SA keep state queue ssh_out
pass out on $ext_if proto udp all keep state queue udp_out
pass out on $ext_if proto icmp all keep state queue icmp_out
pass proto gre from any to any no state
toxot
-
Burner
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2009-06-14 7:02:26
Непрочитанное сообщение
Burner » 2010-04-21 23:47:26
toxot писал(а):Тема ап.
Другой вариант конфига. Подскажите пожалуйста, почему в очереди http_in mail_in ssh_in не попадают пакеты?
зачем вы вообще это шейпите?
Burner
-
toxot
- рядовой
- Сообщения: 25
- Зарегистрирован: 2009-07-17 23:04:02
Непрочитанное сообщение
toxot » 2010-04-22 1:23:30
Суть шейпа в том что вайфай общественный и нужно приоритезировать(вроде правильно написал) трафик критичный(шттп ссш и маил) а торренты и прочую муть загнать в узкую и низкоприоритетную очередь. кажется я нашел косяк в конфиге.
local_net = "172.16.0.0/16" вместо.
table <local_net> persist { 172.16.0.0/16 }
видимо по другому пф не понимает... сегодня днем потестим.

toxot