The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интернет шлюз на FreeBSD - часть 2 (freebsd gateway nat pf firewall squid proxy)


<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>
Ключевые слова: freebsd, gateway, nat, pf, firewall, squid, proxy,  (найти похожие документы)
From: Alchemist <lipovetskiy@yandex.ru.> Newsgroups: email Date: Mon, 22 Apr 2009 17:02:14 +0000 (UTC) Subject: Интернет шлюз на FreeBSD - часть 2 Предыдущая статья "Интернет шлюз на FreeBSD" оказалась довольно популярной среди, в основном, начинающих системных администраторов. Тем не менее там были недочеты, плюс со временем многое изменилось и появилось желание внедрить что-нибудь другое, возможно более удобное. Основные отличия второй части: использование пакетного фильтра PF вместо связки IPFW + natd + rinetd; использование последнего стабильного релиза FreeBSD-7.1 RELEASE. Приступим... Задача: организовать шлюз, раздающий корпоративной сети Интернет сервисы, пробросить необходимые порты на внутренние серверы с учетом использования диапазона внешних ip адресов. Уточню: шлюз в нашей сети единственный. Установка FreeBSD и сборка ядра для поддержки PF. Устанавливаем FreeBSD в комплектации без иксов, игр и коллекции пакетов. В конце настраиваем сетевые интерфейсы и включаем ssh. После загрузки системы собираем ядро для поддержки PF. Вообще этот шаг можно пропустить в случае если вы не собираетесь использовать всякие очереди, приоретезацию трафика и ограничение скорости. Единственное - при подгрузке правил фаера будет мозолить глаза сообщение о том что в ядре нет поддержки всяких ALTQ... # cd /usr/src/sys/i386/conf/ # cp GENERIC ROUTER Правим конфиг нового ядра: ... cpu I686_CPU ident ROUTER makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols device pf device pflog device pfsync options ALTQ options ALTQ_CBQ # Class Bases Queuing (CBQ) options ALTQ_RED # Random Early Detection (RED) options ALTQ_RIO # RED In/Out options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC) options ALTQ_PRIQ # Priority Queuing (PRIQ) options ALTQ_NOPCC # Required for SMP build ... Собираем и устанавливаем новое ядро: # cd /usr/src # make buldkernel KERNCONF=ROUTER # make installkernel KERNCONF=ROUTER Прописываем в rc.conf: pf_enable="YES" pf_program="/sbin/pfctl" pf_flags="" pf_rules="/etc/pf.conf" pflog_enable="YES" pflog_logfile="/var/log/pf.log" pflog_program="/sbin/pflogd" pflog_flags="" Перезагружаемся для проверки что нигде не ошиблись и смотрим что нам говорит pf: # pfctl -sa Установка DNS сервера. По умолчанию bind уже установлен, нужна только настройка. Нам нужен DNS сервер, который будет держать внутреннюю зоны компании, а запросы к внешним серверам будет перенаправлять на dns серверы провайдера. # cat /etc/namedb/named.conf // Logging: logging { channel syslog { syslog daemon; severity info; print-category yes; print-severity yes; }; category xfer-in { syslog; }; category xfer-out { syslog; }; category config { syslog; }; category default { null; }; }; options { // Relative to the chroot directory, if any directory "/etc/namedb"; pid-file "/var/run/named/pid"; dump-file "/var/dump/named_dump.db"; statistics-file "/var/stats/named.stats"; listen-on { 127.0.0.1; 192.168.0.1; }; disable-empty-zone "255.255.255.255.IN-ADDR.ARPA"; disable-empty-zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA"; disable-empty-zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA"; forwarders { // Форвард на DNS сервера провайдера 135.11.0.77; 135.11.127.77; }; query-source address * port 53; }; zone "." { type hint; file "named.root"; }; // RFC 1912 zone "localhost" { type master; file "master/localhost-forward.db"; }; zone "127.in-addr.arpa" { type master; file "master/localhost-reverse.db"; }; zone "255.in-addr.arpa" { type master; file "master/empty.db"; }; // RFC 1912-style zone for IPv6 localhost address zone "0.ip6.arpa" { type master; file "master/localhost-reverse.db"; }; // "This" Network (RFCs 1912 and 3330) zone "0.in-addr.arpa" { type master; file "master/empty.db"; }; // Private Use Networks (RFC 1918) zone "10.in-addr.arpa" { type master; file "master/empty.db"; }; zone "16.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "17.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "18.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "19.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "20.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "21.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "22.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "23.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "24.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "25.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "26.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "27.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "28.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "29.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "30.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "31.172.in-addr.arpa" { type master; file "master/empty.db"; }; zone "168.192.in-addr.arpa" { type master; file "master/empty.db"; }; // Link-local/APIPA (RFCs 3330 and 3927) zone "254.169.in-addr.arpa" { type master; file "master/empty.db"; }; // TEST-NET for Documentation (RFC 3330) zone "2.0.192.in-addr.arpa" { type master; file "master/empty.db"; }; // Router Benchmark Testing (RFC 3330) zone "18.198.in-addr.arpa" { type master; file "master/empty.db"; }; zone "19.198.in-addr.arpa" { type master; file "master/empty.db"; }; // IANA Reserved - Old Class E Space zone "240.in-addr.arpa" { type master; file "master/empty.db"; }; zone "241.in-addr.arpa" { type master; file "master/empty.db"; }; zone "242.in-addr.arpa" { type master; file "master/empty.db"; }; zone "243.in-addr.arpa" { type master; file "master/empty.db"; }; zone "244.in-addr.arpa" { type master; file "master/empty.db"; }; zone "245.in-addr.arpa" { type master; file "master/empty.db"; }; zone "246.in-addr.arpa" { type master; file "master/empty.db"; }; zone "247.in-addr.arpa" { type master; file "master/empty.db"; }; zone "248.in-addr.arpa" { type master; file "master/empty.db"; }; zone "249.in-addr.arpa" { type master; file "master/empty.db"; }; zone "250.in-addr.arpa" { type master; file "master/empty.db"; }; zone "251.in-addr.arpa" { type master; file "master/empty.db"; }; zone "252.in-addr.arpa" { type master; file "master/empty.db"; }; zone "253.in-addr.arpa" { type master; file "master/empty.db"; }; zone "254.in-addr.arpa" { type master; file "master/empty.db"; }; // IPv6 Unassigned Addresses (RFC 4291) zone "1.ip6.arpa" { type master; file "master/empty.db"; }; zone "3.ip6.arpa" { type master; file "master/empty.db"; }; zone "4.ip6.arpa" { type master; file "master/empty.db"; }; zone "5.ip6.arpa" { type master; file "master/empty.db"; }; zone "6.ip6.arpa" { type master; file "master/empty.db"; }; zone "7.ip6.arpa" { type master; file "master/empty.db"; }; zone "8.ip6.arpa" { type master; file "master/empty.db"; }; zone "9.ip6.arpa" { type master; file "master/empty.db"; }; zone "a.ip6.arpa" { type master; file "master/empty.db"; }; zone "b.ip6.arpa" { type master; file "master/empty.db"; }; zone "c.ip6.arpa" { type master; file "master/empty.db"; }; zone "d.ip6.arpa" { type master; file "master/empty.db"; }; zone "e.ip6.arpa" { type master; file "master/empty.db"; }; zone "0.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "1.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "2.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "3.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "4.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "5.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "6.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "7.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "8.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "9.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "a.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "b.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "0.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "1.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "2.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "3.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "4.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "5.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "6.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "7.e.f.ip6.arpa" { type master; file "master/empty.db"; }; // IPv6 ULA (RFC 4193) zone "c.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "d.f.ip6.arpa" { type master; file "master/empty.db"; }; // IPv6 Link Local (RFC 4291) zone "8.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "9.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "a.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "b.e.f.ip6.arpa" { type master; file "master/empty.db"; }; // IPv6 Deprecated Site-Local Addresses (RFC 3879) zone "c.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "d.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "e.e.f.ip6.arpa" { type master; file "master/empty.db"; }; zone "f.e.f.ip6.arpa" { type master; file "master/empty.db"; }; // IP6.INT is Deprecated (RFC 4159) zone "ip6.int" { type master; file "master/empty.db"; }; zone "domain.local" { type master; file "master/domain.local"; allow-transfer { 192.168.1.225; }; }; zone "0.168.192.in-addr.arpa" { type master; file "master/0.168.192"; allow-transfer { 192.168.1.1; }; }; zone "1.168.192.in-addr.arpa" { type master; file "master/1.168.192"; allow-transfer { 192.168.1.1; }; }; Файлы внутренней зоны: # cat /etc/namedb/master/domain.local $TTL 86400 domain.local. IN SOA ns.domain.local. admin.domain.local. ( 2006240801 ; Serial (YYYYDDMM plus 2 digit serial) 86400 ; refresh (1 day) 7200 ; retry (2 hours) 8640000 ; expire (100 days) 86400) ; minimum (1 day) IN NS ns.domain.local. localhost IN A 127.0.0.1 ns IN A 192.168.0.1 bsd IN A 192.168.0.1 mail IN A 192.168.0.2 pbx IN A 192.168.1.3 .... # cat /etc/namedb/master/0.168.192 $ORIGIN . $TTL 86400 0.168.192.in-addr.arpa IN SOA ns.domain.local. admin.domain.local. ( 2006082401 ; Serial (YYYYDDMM plus 2 digit serial) 86400 ; refresh (1 day) 7200 ; retry (2 hours) 8640000 ; expire (100 days) 86400) NS ns.domain.local. $ORIGIN 0.168.192.in-addr.arpa $TTL 86400 1 PTR bsd.domain.local. 1 PTR ns.domain.local. 2 PTR mail.domain.local. ... Добавляем в rc.conf: named_enable="YES" named_flags="-u bind" Запускаем: /etc/rc.d/named start Установка прокси сервера Squid. # cd /usr/ports/www/squid # make install clean Настраивам конфиг сквида: # cat /usr/local/etc/squid/squid.conf acl all src all acl manager proto cache_object acl localhost src 127.0.0.1/32 acl to_localhost dst 127.0.0.0/8 acl localnet src 192.168.0.0/24 # RFC1918 possible internal network acl Safe_ports port 80 # http acl CONNECT method CONNECT acl flv urlpath_regex -i \.flv$ acl mov urlpath_regex -i \.mov$ acl mp3 urlpath_regex -i \.mp3$ acl wav urlpath_regex -i \.wav$ acl ogg urlpath_regex -i \.ogg$ acl asf urlpath_regex -i \.asf$ acl avi urlpath_regex -i \.avi$ acl mpeg urlpath_regex -i \.mpeg$ acl inet_full src "/usr/local/etc/squid/inet_full" acl deny_domains dstdomain "/usr/local/etc/squid/deny_domains" acl work_time time MTWHF 10:00-18:00 http_access allow manager localhost http_access deny manager http_access deny !Safe_ports http_access allow inet_full http_access deny work_time deny_domains http_access deny avi http_access deny wav http_access deny mp3 http_access deny mpeg http_access deny flv http_access deny mov http_access deny ogg http_access deny asf http_access allow localnet http_access deny all icp_access allow localnet icp_access deny all http_port 3128 http_port 3129 transparent hierarchy_stoplist cgi-bin ? access_log /squid/logs/access.log squid refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern . 0 20% 4320 acl shoutcast rep_header X-HTTP09-First-Line ^ICY.[0-9] upgrade_http0.9 deny shoutcast acl apache rep_header Server ^Apache broken_vary_encoding allow apache cache_mem 256 MB cache_dir ufs /squid/cache 51200 64 512 Резюме по этому конфигу: вырезаем весь мультимедиа контент и запрещаем в рабочее время сайты, лежащие в файле deny_domains. Играничения не касаются тех, кто прописан в файле inet_full. Под сквид у меня отдельный раздел /squid где находится кеш и логи. Дальше создаем необходимые файлы и папки, настриаваем права: # chown -R squid:squid /squid Создаем кэш: # squid -z Прописывем сквид в rc.conf: squid_enable="YES" Запускаем и проверяем: # /usr/local/etc/rc.d/squid start # ps -waux | grep squid squid 854 0,0 0,2 7060 2424 ?? Is 18:50 0:00,00 /usr/local/sbin/squid -D squid 943 0,0 30,5 320404 314888 ?? S 18:50 2:24,12 (squid) -D (squid) squid 944 0,0 0,1 1376 604 ?? Ss 18:50 0:00,94 (unlinkd) (unlinkd) squid 945 0,0 0,1 3308 928 ?? Ss 18:50 0:06,90 (pinger) (pinger) root 3653 0,0 0,1 3336 956 p1 R+ 11:32 0:00,00 grep squid Настройка PF. Итак, у нас сеть за натом и на внешнем интерфейсе у нас несколько реальных ip адресов. Прописываем алиасы для внешних адресов: # cat /etc/rc.conf defaultrouter="135.61.11.222" gateway_enable="YES" hostname="bsd" ifconfig_em0="inet 192.168.0.1 netmask 255.255.254.0" ifconfig_em1="inet 135.61.11.223 netmask 255.255.255.240" ifconfig_em1_alias0="inet 135.61.11.224 netmask 255.255.255.240" ifconfig_em1_alias1="inet 135.61.11.225 netmask 255.255.255.240" ifconfig_em1_alias2="inet 135.61.11.226 netmask 255.255.255.240" ..... Пишем конфиг для PF: # cat /etc/pf.conf # pf.conf # Written By Alchemist 20.03.2009 # http://alchemist-unix.blogspot.com/ ################################################################# ################################################################# # Опции ################################################################# # Интерфейсы ext_if = "em1" int_if = "em0" # IP адреса extnet = "135.61.11.222/28" lannet = "192.168.0.0/24" ext_ip = "135.61.24.223/32" ext_ip_bserv = "135.61.11.225/32" ext_ip_963 = "135.61.11.226/32" ext_ip_pbx = "135.61.11.227/32" bsd = "192.168.0.1/32" mail = "192.168.0.100/32" dc = "192.168.0.2/32" pbx = "192.168.0.3/32" serv1 = "192.168.0.4/32" serv2 = "192.168.0.5/32" terminal = "192.168.0.6/32" root = "192.168.0.10/32" serv3 = "192.168.0.7/32" friends = "{ XXX, XXX }" private_nets= "{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8, 169.254.0.0/16, 192.0.2.0/24, 0.0.0.0/8, 240.0.0.0/4 }" # Порты client_ports = "{ 21, 22, 25, 110, 123, 80, 443, 3128, 3129, 3389,8080, >=49151 }" admin_ports = "{ 5190, 33330:33340 }" pbx_udp = "{ 2727, 4520, 4569, 5036, 5060, 10000:20000 }" pbx_tcp = "{ 5060 }" #------------------------------ # Нормализация #------------------------------ # Определяем политику при блокировке пакетов set block-policy drop # Поведение пакетного фильтра при использовании таблицы состояний set state-policy floating # Логируемый интерфейс set loginterface $ext_if # Максимальное количество записей в пуле отвечающем за нормализацию трафика (scrub) # Максимальное количество вхождений в пул отвечающий за состояние таблицы состояний соединений (keep state) set limit { frags 100000, states 100000 } # Устанавливаем тип оптимизации set optimization normal # Игнорируем фильтрацию на кольцевом интерфейсе set skip on lo0 # Нормализация всего входящего трафика на всех интерфейсах scrub in all #------------------------------ # NAT & RDR #------------------------------ # NAT для Asterisk # Из-за ната Астериск работал с кучей косяков, поэтому пришлось сделать бинат binat on $ext_if inet from $pbx to any -> $ext_ip_pbx # NAT для локалки nat on $ext_if inet from $lannet to any -> $ext_ip # Отправляем локальных интернетчиков на squid. rdr on $int_if proto tcp from $lannet to any port www -> 127.0.0.1 port 3129 # Пробрасываем порты на Asterisk rdr on $ext_if from any to $ext_ip_pbx -> $pbx # Пробрасываем порты на web сервер rdr on $ext_if proto tcp from any to $ext_ip_bserv port www -> $bserv # Пробрасываем порты на почтовый сервер - smtp для всех. rdr on $ext_if proto tcp from any to $ext_ip port smtp -> $mail # Пробрасываем порты на почтовый сервер - pop3 для филиалов. rdr on $ext_if proto tcp from $friends to $ext_ip port pop3 -> $mail # Пробрасываем порты на почтовый сервер - https вебморда для всех. rdr on $ext_if proto tcp from any to $ext_ip port https -> $mail # Пробрасываем порты на виндовый терминальный сервер. rdr on $ext_if proto tcp from any to $ext_ip port rdp -> $terminal # Пробрасываем еще один rdp. rdr on $ext_if proto tcp from any to $ext_ip port 3390 -> $serv3 port 3389 # Пробрасываем порты на root rdr on $ext_if proto tcp from any to $ext_ip port 44444 -> $root port 44444 # Пробрасываем SSH rdr on $ext_if proto tcp from any to $ext_ip port 33330 -> $mail port 22 rdr on $ext_if proto tcp from any to $ext_ip port 33331 -> $pbx port 22 rdr on $ext_if proto tcp from any to $ext_ip port 33332 -> $dc port 22 rdr on $ext_if proto tcp from any to $ext_ip port 33333 -> $serv1 port 22 rdr on $ext_if proto tcp from any to $ext_ip port 33334 -> $serv2 port 22 rdr on $ext_if proto tcp from any to $ext_ip port 33335 -> $pdc port 22 #------------------------------ # Правила фильтрации #------------------------------ # Защита от спуфинга antispoof quick for { lo0, $int_if, $ext_if } # Блокируем всё block log all # Блокируем тех, кто лезет на внешний интерфейс с частными адресами block drop in quick on $ext_if from $private_nets to any # Разрешаем icmp pass inet proto icmp icmp-type echoreq # Разрешаем DNS для локалки pass in on $int_if proto udp from $lannet to $bsd port domain # Разрешаем NTP для локалки pass in on $int_if proto udp from $lannet to $bsd port ntp # Тестовый полный выход для отладки #pass in on $int_if from $lannet to any # Выпускаем Asterisk pass in on $int_if from $pbx to any # Выпускаем почтовик pass in on $int_if proto tcp from $mail to any port smtp # Выпускаем админские сервисы pass in on $int_if proto tcp from $root to any port $admin_ports # Выпускаем клиентске сервисы pass in on $int_if proto tcp from $lannet to any port $client_ports # Разрешаем нашему шлюзу полный выход с обоих интерфейсов pass out on $ext_if proto tcp from any to any pass out on $ext_if proto udp from any to any keep state pass out on $int_if proto tcp from any to any pass out on $int_if proto udp from any to any keep state #------------------------------ # Icoming # # Разрешаем входящий ssh pass in log on $ext_if proto tcp from any to $ext_ip port 33339 flags S/SA synproxy state pass in log on $ext_if proto tcp from any to $mail port 22 flags S/SA synproxy state pass in log on $ext_if proto tcp from any to $pbx port 22 flags S/SA synproxy state pass in log on $ext_if proto tcp from any to $dc port 22 flags S/SA synproxy state pass in log on $ext_if proto tcp from any to $serv1 port 22 flags S/SA synproxy state pass in log on $ext_if proto tcp from any to $serv2 port 22 flags S/SA synproxy state # Разрешаем входящий smtp для всех pass in on $ext_if proto tcp from any to $mail port smtp flags S/SA synproxy state # Разрешаем входящий https pass in on $ext_if proto tcp from any to $mail port https flags S/SA synproxy state # Разрешаем входящий www pass in on $ext_if proto tcp from any to $ext_ip port www flags S/SA synproxy state # Разрешаем входящий ftp pass in on $ext_if proto tcp from any to $ext_ip port ftp flags S/SA synproxy state # Разрешаем входящий pop3 для филиалов pass in on $ext_if proto tcp from $friends to $mail port pop3 flags S/SA synproxy state # Разрешаем входящий rdp pass in log on $ext_if proto tcp from $friends to $terminal port rdp flags S/SA synproxy state # Разрешаем входящий rdp еще на один виндовый сервер pass in log on $ext_if proto tcp from $friends to $serv3 port rdp flags S/SA synproxy state # Проброс на root pass in log on $ext_if proto tcp from any to $root port 4899 flags S/SA synproxy state # Разрешаем входящий Asterisk pass in on $ext_if proto tcp from any to $pbx port $pbx_tcp flags S/SA synproxy state pass in on $ext_if proto udp from any to $pbx port $pbx_udp keep state # Разрешаем входящий www на serv1 pass in on $ext_if proto tcp from any to $bserv port www flags S/SA synproxy state Перед загрузкой проверим правила: # pfctl -nf /etc/pf.conf Если все ок, то загрузим: # pfctl -f /etc/pf.conf Посмотрим правила трансляции: # pfctl -sn Правила фильтрации: # pfctl -sr Посмотрим стстистику по внешнему интерфейсу: # pfctl -si Просомтреть всё скопом можно так: # pfctl -sa При написании статьи использовались следующие материалы: - http://house.hcn-strela.ru/BSDCert/BSDA-course/apc.html - http://www.lissyara.su/?id=1671 - http://www.lissyara.su/?id=1833

<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, netc (??), 10:23, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    забавно, и я тоже делал по лисяре
    спасибо за еще один хороший вроде мануал
    вроде все так отлично и просто и как раз то что неужно на каждый день
     
  • 1.2, goshanecr (??), 10:47, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я вот всё что можно из сервисов сую в chroot... почему бы тут с bind'ом это не сделать? Как ни как а хоть малюсенькая но доп защита.
     
     
  • 2.8, Dorlas (??), 14:22, 22/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    В FreeBSD уже с версий 6.x Bind по умолчанию сразу в chroot стартует:

    freebsd:/root@[16:20]# grep "named" /etc/defaults/rc.conf

    # named.  It may be possible to run named in a sandbox, man security for
    named_enable="NO"               # Run named, the DNS server (or NO).
    named_program="/usr/sbin/named" # Path to named, if you want a different one.
    #named_flags="-c /etc/namedb/named.conf" # Uncomment for named not in /usr/sbin
    named_pidfile="/var/run/named/pid" # Must set this in named.conf as well
    named_uid="bind"                # User to run named as
    named_chrootdir="/var/named"    # Chroot directory (or "" not to auto-chroot it)
    named_chroot_autoupdate="YES"   # Automatically install/update chrooted
                                    # components of named. See /etc/rc.d/named.
    named_symlink_enable="YES"      # Symlink the chrooted pid file

    Остальные сервисы можно запихнуть в Jail-ы (делал неоднократно, работает хорошо (VSFTPD, Samba, Squid, связка FAMP и прочие).

    Потерю производительности при использовании Jail заметить очень трудно - на глаз не видно точно :)

     
     
  • 3.33, goshanecr (??), 11:04, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Остальные сервисы можно запихнуть в Jail-ы (делал неоднократно, работает хорошо (VSFTPD, Samba,
    >Squid, связка FAMP и прочие).
    >
    >Потерю производительности при использовании Jail заметить очень трудно - на глаз не
    >видно точно :)

    А можно попросить поподробней про jail, можно ли как-то автоматизировать создание окружения для jail'а чтобы при обновлении портов, и системы всё это не надо было руками пересобирать (различные библиотеки копировать и т.п. ) или просто как с минимумом трудозатрат это сделать?
    Если не поподробней, то хоть ссылочку бы :)

     

  • 1.3, artemrts (ok), 11:04, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Почитай как правильно алиасы делать.

    http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/configtuning-virtua

     
  • 1.4, artemrts (ok), 11:05, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    И не плохо было бы мир перестроить...
     
  • 1.5, rakis (ok), 11:06, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вот это "makeoptions DEBUG=-g" зачем на "боевом" сервере? :-)
    P.S. pf отлично работает и модулем, пихать его в ядро не обязательно
     
  • 1.6, rm (??), 11:12, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Люди ну хоть кто нибудь ну хоть когда нибудь , написал нормальный анализатор логов Pf,и перевода в человеческий вид? вывод tcpdump не предлагать:), а если еще и веб морда то былабы красота, в идеале нужна статистика по интерфейсам айпишникам и портам?
     
     
  • 2.9, Dorlas (??), 14:25, 22/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Люди ну хоть кто нибудь ну хоть когда нибудь , написал нормальный
    >анализатор логов Pf,и перевода в человеческий вид? вывод tcpdump не предлагать:),
    >а если еще и веб морда то былабы красота, в идеале
    >нужна статистика по интерфейсам айпишникам и портам?

    Меня вот эта штука устраивает: /usr/ports/sysutils/pflogx/

    А вообще как правило нужно вот такое: tcpdump -n -e -i pflog0 'host XXX && port YYY'

    Хватает за глаза.

    И еще очень /usr/ports/sysutils/pftop/ пригождается - например: pftop -f "port 5190" :)

     
     
  • 3.11, Dorlas (??), 15:18, 22/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >> в идеале
    >>нужна статистика по интерфейсам айпишникам и портам?

    Поставьте себе NetAMS - именно статистика по IP и портам :)

     
  • 3.28, rm (??), 10:12, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    /usr/ports/sysutils/pflogx/ -конвертер в xml
    ага этим tcpdump -n -e -i pflog0 'host XXX && port YYY' не насобираться статистику
    pftop -f "port 5190" ну а это вообще онлайн отображение соединение
     
     
  • 4.29, Dorlas (??), 10:20, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >/usr/ports/sysutils/pflogx/ -конвертер в xml
    >ага этим tcpdump -n -e -i pflog0 'host XXX && port YYY'
    >не насобираться статистику
    >pftop -f "port 5190" ну а это вообще онлайн отображение соединение

    Откуда вообще такие мысли - собирать статистику межсетевым экраном - это же не его задачи по дизайну...не для этого он разрабатывался и применяется.

    Нужна статистика - ставьте программу, для этого предназначенную.

    Мне, например, NetAMS и ng_ipacct+perl+mysql хватает за глаза.

    С помощью первого инструмента можно быстро оценить объемы и характер трафика (+ понять, что и куда пошло).

    С помощью второго можно вообще любые данные вытянуть (например сколько ping-ов послал Вася в понедельник с 10 до 12 и куда он их послал...).

     
     
  • 5.31, rm (??), 10:22, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    эх поподробнее бы если можно:)
     
     
  • 6.32, Dorlas (??), 10:26, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >эх поподробнее бы если можно:)

    А что, в Google Вас заблокировали????? :) :): )

    NetAMS:
    http://netams.com/index.html

    ng_ipacct:
    http://www.opennet.ru/base/net/ng_billing_letter.txt.html

    Во второй - можно такие SQL-запросы напридумывать...закачаешься результатам.

    Да и WEB-морду на PHP к этому делу написать не трудно (или Perl-скрипты).

     
  • 3.30, rm (??), 10:20, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    /usr/ports/sysutils/pflogx/ -конвертер в xml
    ага этим tcpdump -n -e -i pflog0 'host XXX && port YYY' не насобираться статистику
    pftop -f "port 5190" ну а это вообще онлайн отображение соединение
     

  • 1.7, NiGeR (?), 13:12, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Например http://www.allard.nu/pfw/
     
  • 1.10, iZEN (ok), 14:41, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Заменить:
    client_ports = "{ 21, 22, 25, 110, 123, 80, 443, 3128, 3129, 3389,8080, >=49151 }"

    На эту (лучше и понятнее):
    client_ports = "{ ftp, ssh, smtp, pop3, ntp, http, https, 3128, 3129, rdp, 8080, >=49151 }"

    И ещё кучу правил можно упростить -- из нескольких сделать одно.

     
  • 1.12, rm (??), 15:35, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    вроде как это редактор файервола , но щас поподробнее изучу
     
  • 1.13, Touch (??), 15:39, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не навязывайте новичкам PF! Потому как потом у них возникает вопрос: а как сделать так чтобы люди из этой "корпоративной" сети могли подключать наружу ВПН. Или, не дай боже, как отфильтровать пакеты по TTL при ДДОС атаке!
     
     
  • 2.15, iZEN (ok), 15:44, 22/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Не навязывайте новичкам PF! Потому как потом у них возникает вопрос: а
    >как сделать так чтобы люди из этой "корпоративной" сети могли подключать
    >наружу ВПН. Или, не дай боже, как отфильтровать пакеты по TTL
    >при ДДОС атаке!

    А что, "ассемблером" ipfw (или IPTABLES в Linux) это сделать легче? :)) Может и легче, но зачем?
    Не нужно множить сущности. Нужно от них максимально абстрагироваться. Мыслить не процедурами, но декларациями.

     
     
  • 3.23, User294 (ok), 02:17, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Не нужно множить сущности. Нужно от них максимально абстрагироваться. Мыслить не процедурами,
    >но декларациями.

    Вы только декларациями и мыслите, при том - громкими :D.А благодаря вашему подходу есть риск через много лет однажды с удивлением узнать что "вон то", при том нужное и полезное, чего так хотелось сделать оказывается уже давно на самом деле было можно.Если немного мозг погреть.Да, айпитаблес - явно дальний родственник брэйнфака, зато умеет наверное почти все :).А если реально вломак думать - ну так есть куча гуйных морд и вебфэйсов для него, там вообще думать в стандартных базовых вещах не надо: вбил айпишники, порты и т.п. в формочку и вуаля.Зато как только потребуются хитрые навороты - тот же айпитаблес с его брэйнфакерским синтаксисом - выручит, после небольшого прогрева мозга, в отличие от многих других.

     

  • 1.14, Fantomas (??), 15:43, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А где настройки ALTQ или зачем собрали это в ядре?
     
     
  • 2.16, Dorlas (??), 16:29, 22/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >А где настройки ALTQ или зачем собрали это в ядре?

    1) ALTQ модулем не подгружается.
    2) Если ALTQ нет в ядре, то каждый раз при загрузке правил PF предупреждает (чувак, у тебя нет ALTQ)

    3) Поэтому многие при сборке ядра сразу его (ALTQ) включают (чтобы не ругался) :)

    4) Правила по настройке есть в статьях Сгибнева (см тут на opennet.ru) или в man pf.conf (аналог - только на English).

    Вот рабочий пример с использованием CBQ:

    altq on ng0 cbq bandwidth 10Mb queue { rsync, ssh, ftp, squid, other }

    queue rsync   bandwidth 1Mb priority 1
    queue ssh     bandwidth 1Mb priority 7 cbq(borrow)
    queue squid   bandwidth 2Mb priority 6 cbq(borrow)
    queue ftp     bandwidth 2Mb priority 3 cbq(borrow)
    queue other   bandwidth 2Mb priority 3 cbq(default,borrow)

    Очереди вешаются на нужные правила (исходящего трафика: FTP, RSYNC, SSH и прочее) :)

    Например:
    pass in on $if_ext_local proto tcp from any to any port 60606 modulate state queue ssh
    pass in on $if_ext_local proto tcp from any to any port 873 modulate state queue rsync
    pass in log on $if_ext_local proto tcp from any to any port 80 modulate state queue other
    pass in on $if_ext_local proto tcp from any to any port {21 20000><21000} modulate state queue ftp
    pass in on $if_ext_local proto tcp from any to any port 63128 modulate state queue squid

     
     
  • 3.21, iZEN (ok), 00:39, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >
    >1) ALTQ модулем не подгружается.
    >2) Если ALTQ нет в ядре, то каждый раз при загрузке правил
    >PF предупреждает (чувак, у тебя нет ALTQ)
    >
    >3) Поэтому многие при сборке ядра сразу его (ALTQ) включают (чтобы не
    >ругался) :)
    >
    >4) Правила по настройке есть в статьях Сгибнева (см тут на opennet.ru)
    >или в man pf.conf (аналог - только на English).

    Да, но пересобирать ядро с ALTQ ради того "чтобы не ругалось" как бы смешно.
    Очереди обслуживания в статье не используются.

     
     
  • 4.24, Dorlas (??), 06:15, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Да, но пересобирать ядро с ALTQ ради того "чтобы не ругалось" как бы смешно.
    >Очереди обслуживания в статье не используются.

    Ну кому-то смешно, а кто-то может просто смотреть в будущее и думать, что такой функционал он через некоторое время будет использовать...

    Особенно смешно будет тем, кому этот функционал понадобится внезапно (а ядро будет не подготовлено) и сервер перезагружать в рабочее время начальство не дает :)

     
     
  • 5.34, iZEN (ok), 15:20, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>Да, но пересобирать ядро с ALTQ ради того "чтобы не ругалось" как бы смешно.
    >>Очереди обслуживания в статье не используются.
    >
    >Ну кому-то смешно, а кто-то может просто смотреть в будущее и думать,
    >что такой функционал он через некоторое время будет использовать...
    >
    >Особенно смешно будет тем, кому этот функционал понадобится внезапно (а ядро будет
    >не подготовлено) и сервер перезагружать в рабочее время начальство не дает
    >:)

    Вы неправы.
    Если в статье не предлагаются решения по шейпингу трафика, то не нужно о нём даже говорить и чего-то куда-то вкомпилировать по принципу "а вдруг понадобится...".
    Профессионализм отличается от делитантизма тем, что профессионал учитывает всё, но убирает всё лишнее и ненужное.

    В данном случае, интернет-шлюз, описанный в статье, можно создать БЕЗ перекомпиляции ядра, подгружая PF модулем. А это сразу же снимает вопросы по обновлению исходников системы и времени компиляции.

     
     
  • 6.35, Dorlas (??), 15:41, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>>можно создать БЕЗ перекомпиляции ядра

    А что - Автор написал, что собирать ядро обязательно и без этого работать не будет?

    Мы тут свободные системы и программы обсуждаем - кто как хочет, так и делает...и даже работать будет :)

    Хотите - подгружайте модулем (я, например, так и использую - ни разу в жизни PF в ядро не вкомпиливал), хотите - компилируйте ядро...

    Я же не виноват, что каждый второй написатель статей вставляет в свои творения описания, как ядро пересобирать...

    >>>Если в статье не предлагаются решения по шейпингу трафика,
    >>>то не нужно о нём даже говорить

    Вы взяли на себя роль цензора? Как вы можете Автору указывать, что он может, а что нет...это его творчество и его право...

     
  • 2.36, Alchemist (ok), 13:08, 24/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >А где настройки ALTQ или зачем собрали это в ядре?

    Очереди не прикручивал. Ядро собрал с запасом на будущее, плюс чтобы алерт глаза не мозолил.

     

  • 1.17, netc (??), 16:43, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Все таки есть предложение!
    Ребят подскажите прав ли я

    Если он пишет правила rdr, то он подразумеваеь, что
    все машины в сети, на которые идет проброс портов имеют в качестве шлюза по умолчанию именно этот корпоративный свеже настроенный free7.1+pf сервер

    Иначе не должны работать пробросы, нужно будет делать  что то типа этого

    nat on $int_if proto tcp from any to $ironws port 3389 -> $int_if

    прав ли я ?

     
     
  • 2.18, artemrts (ok), 17:00, 22/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >Если он пишет правила rdr, то он подразумеваеь, что
    >все машины в сети, на которые идет проброс портов имеют в качестве
    >шлюза по умолчанию именно этот корпоративный свеже настроенный free7.1+pf сервер
    >
    >Иначе не должны работать пробросы, нужно будет делать  что то типа
    >этого
    >
    >nat on $int_if proto tcp from any to $ironws port 3389 -> $int_if
    >
    >прав ли я ?

    Прав.

     
  • 2.19, Dorlas (??), 17:01, 22/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Если он пишет правила rdr, то он подразумеваеь, что
    >все машины в сети, на которые идет проброс портов имеют в качестве
    >шлюза по умолчанию именно этот корпоративный свеже настроенный free7.1+pf сервер
    >Иначе не должны работать пробросы

    Это должно быть очевидно каждому, кто такие вещи настраивает (иначе учите мат-часть)...

     
     
  • 3.25, netc (??), 09:24, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    И все таки to> уважаемый автор

    Пожалуйста не для меня, я лично уже уяснил а для тех, кто еще не успел

    Сделайте ремейк - допишите в начале статьи или перед настройкой pf об основном шлюзе иначе будут и будут продолжаться вопросы в форумах. Причем сделайте это пожирнее - плиз .

     
     
  • 4.37, Alchemist (ok), 13:22, 24/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >И все таки to> уважаемый автор
    >Пожалуйста не для меня, я лично уже уяснил а для тех, кто
    >еще не успел
    >Сделайте ремейк - допишите в начале статьи или перед настройкой pf об
    >основном шлюзе иначе будут и будут продолжаться вопросы в форумах. Причем
    >сделайте это пожирнее - плиз .

    "Задача: организовать шлюз, раздающий корпоративной сети Интернет
    сервисы, пробросить необходимые порты на внутренние серверы с учетом
    использования диапазона внешних ip адресов."
    Имхо такая формулировка более предполагает использование в сети одного шлюза, нежели нескольких. Есть конечно некоторая степень неоднозначности, но она мала. ;)


     
  • 3.26, netc (??), 09:26, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    (иначе учите мат-часть)...

    сколько я порезал, сколько перерезал мануалов ну ни где явного упоминания об основном шлюзе не видел, поэтому будьте любезны объясните:

    под "учите мать часть" вы понимаете

    1. общую образованность и опыт
    2. какую-то определенную статью или мануал

    ?

     
     
  • 4.27, Dorlas (??), 09:42, 23/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >под "учите мать часть" вы понимаете

    По этой фразой я понимаю:

    1) Знание модели OSI (всех 7 уровней)
    2) Изучение протокола IPv4 (в ходе его изучения информация о шлюзе по умолчанию ну просто обязана зашиться в подкорку головного мозга...)


    >сколько я порезал, сколько перерезал мануалов

    Вначале читать нужно не мануалы и статьи типа этой - а учебники по сетям, протоколам и т.д.

    PS: В любом деле логично сначала освоить теорию и потом идти на практику...

     

  • 1.20, jordan (?), 23:31, 22/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    в named.conf можно добавить кментарий для forwarders {   };
    И если есть желание можно упомянуть утилиту pftop.
     
     
  • 2.38, Alchemist (ok), 13:26, 24/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >в named.conf можно добавить кментарий для forwarders {   };

    Согласен, поправил.

     

  • 1.22, Ilya Evseev (?), 01:54, 23/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не проще ли заменить bind на dnsmasq?
    Он способен запускаться без собственных настроек,
    только с /etc/hosts и /etc/resolv.conf
    Использую его везде, где не требуется пересылка зон.
     
     
  • 2.39, Alchemist (ok), 13:28, 24/04/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Не проще ли заменить bind на dnsmasq?
    >Он способен запускаться без собственных настроек,
    >только с /etc/hosts и /etc/resolv.conf
    >Использую его везде, где не требуется пересылка зон.

    Ну тогда напишите нам об этом ;)

     
     
  • 3.40, Ivan_83 (?), 14:38, 16/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    device pfsync - НЕ НУЖЕН Это для горячего резервирования на несколких машинах ... текст свёрнут, показать
     
     
  • 4.41, Alchemist (ok), 15:23, 16/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >synproxy state должна использоватся только в правилах публикации внутренних сервисов наружу

    собственно так и сделано
    >От локал хоста и к локал хосту - вообще keep state можно ставить

    В этой версии PF keep state подразумевается даже там, где он не прописан

    По всему остальному - конструктивно, спасибо.

     
  • 4.42, iZEN (ok), 18:20, 16/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >># Разрешаем нашему шлюзу полный выход с обоих интерфейсов
    >>        pass out on $ext_if proto tcp from any to any
    >>        pass out on $ext_if proto udp from any to any keep state
    >>        pass out on $int_if proto tcp from any to any
    >>        pass out on $int_if proto udp from any to any keep state
    >
    >Тоже ужасно.
    >pass out from (self) to any flags S/SA modulate state # allow
    >out self to anywere - красота.

    % pfctl -nf /etc/pf.conf
    /etc/pf.conf:XY: syntax error

    Лучше так:
    pass out all

     
     
  • 5.43, Ivan_83 (?), 18:58, 16/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>pass out from (self) to any flags S/SA modulate state # allow
    >>out self to anywere - красота.
    >
    >% pfctl -nf /etc/pf.conf
    >/etc/pf.conf:XY: syntax error
    >
    >Лучше так:
    >pass out all

    "pass out quick from (self) to any modulate state"
    Без кавычек, фряха 7 и выше (ниже не тестил).
    В других версиях бсд список поддерживаемых возможностей для пф может отличатся.
    В DragonFlyBSD пф не полный, относительно фряхи.

    В вашем случае траффик вышел, но записи в таблице состояний не создалось и как он будет возвращатся зависит от погоды и правил остальных.
    Более того, с точки зрения скорости вы теряете, ибо пф ответные пакеты всё равно проверяет по таблице состояний, и только после этого пф лезет в правила.

     
     
  • 6.44, iZEN (ok), 12:14, 17/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >>>out self to anywere - красота.
    >>
    >>% pfctl -nf /etc/pf.conf
    >>/etc/pf.conf:XY: syntax error
    >>
    >>Лучше так:
    >>pass out all
    >
    >"pass out quick from (self) to any modulate state"
    >Без кавычек, фряха 7 и выше (ниже не тестил).

    У меня -- ошибка и на этой строчке:
    pass out quick from (self) to any modulate state

    % uname -rsm
    FreeBSD 7.2-STABLE amd64

    >В вашем случае траффик вышел, но записи в таблице состояний не создалось
    >и как он будет возвращатся зависит от погоды и правил остальных.

    man pf.conf
    По умолчанию PF использует "flags S/SA" и "keep state" ВЕЗДЕ, если не указано иное.

    В выводе команды pfctl -s all правило "pass out all" у меня разворачивается в "pass out all flags S/SA keep state".

    >Более того, с точки зрения скорости вы теряете, ибо пф ответные пакеты
    >всё равно проверяет по таблице состояний, и только после этого пф
    >лезет в правила.

    Я в курсе.

     
     
  • 7.45, klim (??), 22:56, 06/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    В роли шлюза - вирт. машина:
    FreeBSD 7.2 +
    Памяти 1 гб
    2 сетевые по 1 гб\сек в бридже
    2 проц. по 2.4 ггц

    Скорость передачи данных через нат не превышает 10 магабайт в секунду.

    Статистика при передаче:
    процессор 30.21% natd (пиковая цифра)
    свободно памяти больше половины
    snmp показывает что на сетевых интерфейсах скорость не больше 10 мегабайт в секунду

    Где узкое место? Как добиться увеличения скорости?

     
     
  • 8.46, artemrts (??), 14:07, 07/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Вот в этом походу и проблема Что за виртуалка или это гипервизор Это име... текст свёрнут, показать
     
     
  • 9.47, klim (??), 13:57, 08/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Гипервизор - VMWare ESXi 4 на Sun Fire X6250 Виртуалка - FreeBSD 7 2 2Gb RAM,... текст свёрнут, показать
     

  • 1.48, Стас (??), 12:03, 10/08/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Доброго времени, сделал по мануалу, все заработало. Только, пожалуй, слишком. Такое чувство что в работе вообще сквид не участвует: комментил его порты, перезапускал, интернет все равно пашет.
    А хочу всего лишь написать правило, которое будет разрешать определенным пользователям доступ в интернет.
    Помогите пожалуйста разобраться. Если можно, то подсткажите как сделать еще авторизацию по логину и пароль
     

    лог модерирования

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Спонсоры:
    Слёрм
    Inferno Solutions
    Hosting by Ihor
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2019 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру