Ответы пользователя по тегу ipfirewall
  • Как ipfw (FreeBSD 10) назначить правила?

    RicoX
    @RicoX
    Ушел на http://ru.stackoverflow.com/
    На первый взгляд все правильно, единственное попробуйте в строках
    IpOut=`ifconfig ${LanOut} | grep inet | cut -d " " -f 2`
    IpIn=`ifconfig ${LanIn} | grep inet | cut -d " " -f 2`

    указать полные пути к ifconfig, grep и cut, либо поместите PATH в начале скрипта.
    Ответ написан
    Комментировать
  • Как перенести правило из ipfw в pfctl?

    RicoX
    @RicoX
    Ушел на http://ru.stackoverflow.com/
    1) Как-то так, писал по памяти, не проверял.
    rdr proto tcp from any to 127.0.0.1 port 80 ->  127.0.0.1 port 8080

    2) Скорее всего нельзя, но не уверен, во всяком случаи фаирвол точно не проверяет был ответ или нет.

    По поводу макоси вы ошибаетесь, встроенный веб сервер прекрасно работает на 80 порту:
    tcp46      0      0  *.80                   *.*                    LISTEN
    Ответ написан
    Комментировать
  • Как настроить ipfw под большие нагрузки?

    RicoX
    @RicoX
    Ушел на http://ru.stackoverflow.com/
    Если не считать того что на 8.1 IPFW глючней некуда, то примерно так:
    В /etc/sysctl.conf добавить:
    net.inet.ip.fw.one_pass=1               #пакеты, прошедшие пайпы вылетают из фаервола, и дальше не идут по нему
    net.inet.tcp.blackhole=2                #ядро убивает tcp пакеты, приходящие в систему на непрослушиваемые порты
    net.inet.udp.blackhole=1                #ядро убивает udp пакеты, приходящие в систему на непрослушиваемые порты
    net.inet.icmp.drop_redirect=1           #не обращаем внимания на icmp redirect
    net.inet.icmp.log_redirect=0            #(N) и не логируем их
    net.inet.icmp.maskrepl=0                #не отдавать по icmp маску своей подсети
    net.inet.icmp.icmplim=100
    net.inet.icmp.bmcastecho=0              #(N) защита от SMURF атак
    net.inet.ip.redirect=0                  #(N) не реагируем на icmp redirect
    net.inet.ip.sourceroute=0               #(N) отключение маршрутизации от источника
    net.inet.ip.accept_sourceroute=0        #(N) старый и бесполезный механизм
    net.inet.ip.ttl=226                     #(N)почему бы не поставить ttl побольше было 64 ;)
    net.inet.tcp.drop_synfin=1              #(N)небольшая защита
    net.inet.tcp.syncookies=1               #(N)от доса
    kern.ipc.somaxconn=32768                #(N)увеличиваем размер очереди для сокетов
    kern.maxfiles=204800                    #(N)увеличиваем число открытых файловых дескрипторов
    kern.maxfilesperproc=200000             #(N)кол-во ф.д. на каждоый процесс
    kern.ipc.nmbclusters=524288             #(N)увеличиваем число сетевых буферов
    kern.ipc.maxsockbuf=83886080            #(N)
    kern.random.sys.harvest.ethernet=0      #(N)не использовать трафик и прерывания
    kern.random.sys.harvest.interrupt=0     #(N)как источник энтропии для random'a
    net.inet.ip.intr_queue_maxlen=10240     #(N)размер очереди ip-пакетов
    net.route.netisr_maxqlen=4096


    Если используете еще и dummynet, то
    net.inet.ip.dummynet.io_fast=1          #заставляет dummynet работать побыстрее
    net.inet.ip.dummynet.max_chain_len=2048 #(N)
    net.inet.ip.dummynet.hash_size=65535    #(N)Было 256
    net.inet.ip.dummynet.pipe_slot_limit=2048 #


    Дальше в зависимости от сетевых, для em
    dev.em.0.rx_int_delay=200
    dev.em.0.tx_int_delay=200
    dev.em.0.rx_abs_int_delay=4000
    dev.em.0.tx_abs_int_delay=4000
    dev.em.0.rx_processing_limit=4096

    cat /boot/loader.conf
    hw.em.rxd=4096
    hw.em.txd=4096
    hw.em.max_interrupt_rate=32000

    для igb
    dev.igb.0.rx_processing_limit=4096

    Ядро соберите с HZ побольше.
    Ответ написан
    Комментировать