Page 1 of 6 123 ... LastLast
Results 1 to 15 of 86

Thread: Вопросы по iptables и модулям ядра

  1. Question Вопросы по iptables и модулям ядра

    Quote Originally Posted by ryzhov_al View Post
    Перед пунктом 4.2 How-To выполнить:
    Code:
    $ cd ./broadcom/src/linux/linux-2.6
    $ make menuconfig
    и включить нужные модули. После окончания сборки модули будут в составе готового архива модулей.
    СПАСИБО, ryzhov_al

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



    Компилирование модулей ядра
    а конкретно md.ko md-mod.ko linear.ko

    keywords: как скомпилировать модуль ядра компиляция модуля module compile raid md.ko md-mod.ko linear.ko

    Введение.

    Поменял роутер с dir-32 на rt-n16. Еще на dir-320, я поразился неродной прошивке на основе linux. Хоть и пользуюсь linux уже 10 лет, все равно остаюсь чайником - прогресс несется. Могу про себя сказать, что я уверенный пользователь linux.

    От dir-320 остался usb-hub, а у меня как раз есть 2 флешки на 8гб, надо признаться медленные на запись - тестил в windows xp/victoria. Возникла потребность в одном пространстве больше, чем 8гб, для того, чтобы положить на них torrent. Мой torrent client на роутере transmission. Погуглив немного, оказалось, что мне поможет утилита mdadm и режим linear. ipkg сказал, что mdadm есть в пакетах для роутера, я улыбнулся и установил. Переразбил флешку на 2 раздела - sda1(ext3), sda2(пространство для массива). Попросил mdadm собрать массив коммандой:

    Code:
    mdadm --create /dev/md0 --level=linear --force --raid-devices=1 /dev/sda2
    mdadm сказал, что нет такого устройства. Погуглив оказалось, что мне нужен драйвер md.ko для ядра.
    Полез в пакет драйверов от моей прошивки - драйвера нет.
    Искал просто сам бинарный драйвер - никто не выложил.
    Гуглил интернет, обыскал весь wl500g.info на предмет компиляция модуля ядра.
    Нашел чудный линк
    http://code.google.com/p/wl500g/wiki...CustomFirmware
    Еле-еле собрал прошивку, пару мест в этом howto. Скрипт, на выходе дает дополнительные модули + готовую прошивку(!) Очень это меня поразило. Все пакеты заняли 800МБ, а я в свое время пожадничал место для юбунты, поэтому пришлось вспоминать, как монтировать луп-девайсы, которые лежат в windows разделе. У моего старенького ноутбука заняло 25 минут, скомпилировать прошивку и модули. Но, в папке модулей md.ko не оказалось.
    Опять гуглил интернет, обыскал весь wl500g.info на предмет компиляция модуля ядра.
    По итогам, не нашел ничего конкретного. Самое конкретное, что попалось это вот это высказывание:

    Code:
    Поскольку никакой конфигурялки при сборке нет, а мне нужен дополнительный модуль (cdc_ether), то я поступил так: собрал прошивку, потом пошел в директорию с ядром, и через make menuconfig включил нужное мне. После чего пересобрал прошивку вновь.
    Вот это чистая удача. Решил написать свое mini-howto для тех ребят, кому понадобится собрать модули ядра для mips, входящие в основное ядро.

    У меня стоит asus rt-n16 прошивка 1.9.2.7-rtn-r2775, простенький usb hub Defender Quadro и две флешки от adata(a-data rb3 8gb и a-data pd16 8gb, обе после ремонта). Была еще A-Data C702 8gb, жалко потерял - самая быстрая на запись, что когда либо держал в руках. Ноутбук acer 5315 и ubuntu 10.10

    КАК СОБРАТЬ МОДУЛЬ

    Будем собирать md модули для ядра 2.6.22.19

    Основная инструкция вот тут
    http://code.google.com/p/wl500g/wiki...CustomFirmware

    1.Берем компьютер с ubuntu10.10 на борту и загружаемся

    2.Устанавливаем пакеты через Система->Администрирование->Менеджер Пакетов Synaptic
    Code:
    	build-essential
    	libncurses5-dev (у меня их два разных почему-то, с одним не работало, пришлось установить и второй)
    	gawk
    	g++ (их было много разных установил просто с таким именем)
    	flex
    	bison
    	zlib1g-dev
    	subversion
    3. Открывает окно консоли Приложения->Стандартные->Терминал

    4. Проверяем что хвает места в домашней директори (800мб). Пишем команды в консоль без знака $(доллара) и жмем enter.
    Code:
    $ df -h
    /dev/sda7             962M  389M  525M  43% /home
    У меня осталось 525Мб - не хватит места для компиляции, я монтирую луп девайс, а Вы читайте дальше.

    5. Создаем директорию в домашней папке compile и переходим в нее
    Code:
    $ mkdir ~/compile && cd ~/compile
    6. Проходим по ссылке
    http://code.google.com/p/wl500g/wiki...CustomFirmware
    и скачиваем из интернета прям в эту директорию
    hndtools-mipsel-uclibc-4.3.5-3.tar.bz2 (там еще лежат разные версии, мне помогла эта)
    и ядро linux-2.6.22.19.tar.bz2

    7. Выполняем команды:

    создаем цепочку директорий
    Code:
    $ mkdir -p broadcom/src/linux
    распаковываем код ядра
    Code:
    $ tar -C broadcom/src/linux -jxvf linux-2.6.22.19.tar.bz2
    делаем ссылочку
    Code:
    $ ln -sf ~/compile/broadcom/src/linux/linux-2.6.22.19 broadcom/src/linux/linux-2.6
    распаковываем Toolchain
    Code:
    $ tar -vxjf hndtools-mipsel-uclibc-4.3.5-3.tar.bz2
    добавляем путь к Toolchain (если закроете окно консоли, путь сотрется, нужно будет повторить команду)
    Code:
    $ export PATH=$PATH:~/compile/hndtools-mipsel-uclibc-4.3.5/bin
    получаем исходники прошивки
    Code:
    $ svn checkout http://wl500g.googlecode.com/svn/branches/rt-n/ ~/compile/broadcom/src/1.9.2.7-rtn
    8. Сборка и компиляция

    переход в папку 1.9.2.7-rtn
    Code:
    $ cd ~/compile/broadcom/src/1.9.2.7-rtn
    сборка
    Code:
    $ make kernel ; make
    у меня появилось:
    Code:
    Sources prepared for compilation
    переходим в подготовленную папку с исходниками
    Code:
    $ cd ../linux/linux-2.6
    выбираем что компилировать
    Code:
    $ make menuconfig
    Дальше по меню, мне нужно было
    Device Drivers -> Multi-device support (RAID and LVM)->пробел->RAID support_пробел(чтобы буква М появилась рядом)->Linear (append) mode(M)
    Жмем пробел у тех пунктов, что нужны, чтобы у них появились буквы М, это значит, что скомпилируется отдельным модулем
    Когда все выбрали, что надо, жмем на пункт exit до вопроса
    Do you wish to save your new kernel configuration?
    жмем yes

    переход в gateway
    Code:
    $ cd ../../gateway
    просим скомпилировать только модули
    Code:
    $ make kernel-modules
    Дальше модули компилируются под общую гребенку. На моем стареньком ноутбуке процесс занял 8мин.
    После окончания компиляции переходим обратно
    Code:
    $ cd ../linux/linux-2.6
    и ВУАЛЯ
    забираем нужные модули
    Code:
    $ find -name *.ko
    На этом все. Рад, если помогло.

  2. #2

    Question Вопросы по iptables и модулям ядра

    Почему не кто не хочет ответить на вопрос о ДДОС как можно зашитить раутер.
    Подскажите правила iptables для раутера прошивка от олега одна из последних.
    Не уж так сложно помочь.


    Вот что я нашел.
    iptables -N syn-flood
    iptables -A INPUT -i eth0 -p tcp --syn -j syn-flood
    iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN
    iptables -A syn-flood -j DROP


    Лимит на 20 запросов в секунду для интерфейса eth0
    iptables --new-chain car
    iptables --insert OUTPUT 1 -p tcp --destination-port 80 -o eth0 --jump car
    iptables --append car -m limit --limit 20/sec --jump RETURN
    iptables --append car --jump DROP


    iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN SYN -m limit --limit 100/sec -j ACCEPT
    iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN SYN -j DROP


    iptables -N SECURITY
    iptables -A SECURITY -p tcp --syn -m limit --limit 5/s -j RETURN
    iptables -A SECURITY -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 5/s -j RETURN
    iptables -A SECURITY -p udp -m limit --limit 5/s -j RETURN
    iptables -A SECURITY -p icmp -m limit --limit 5/s -j RETURN
    iptables -A SECURITY -j DROP

    iptables -A SECURITY -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -m limit --limit 1/sec -j RETURN
    iptables -A SECURITY -p udp -m limit --limit 5/sec -j RETURN
    iptables -A SECURITY -p icmp -m limit --limit 5/sec -j RETURN

    Многие из них одно и тоже ..... подскажите что где .... и чего не хватает

  3. #3
    Quote Originally Posted by Ghost_SS View Post
    Почему не кто не хочет ответить на вопрос о ДДОС как можно зашитить раутер.
    Подскажите правила iptables для раутера прошивка от олега одна из последних.
    Не уж так сложно помочь.
    Может просто включить в веб-морде???
    Internet Firewall -> Enable Dos protection
    tempik aka Mirage-net

  4. #4
    Quote Originally Posted by tempik View Post
    Может просто включить в веб-морде???
    Internet Firewall -> Enable Dos protection
    Нет не получится слишком жесткие правила. Сервера видят зайти не могут.

  5. #5
    Join Date
    Mar 2011
    Location
    Moscow
    Posts
    248
    Quote Originally Posted by Ghost_SS View Post
    Добрый день. У меня проблема ДДОСят.. раутер RT-N16, прошивка 1.9.2.7-rtn-r4405, хочу реализовать защиту на рауторе не прибегая к доп машине на линухе. Подскажите правила.
    RT-N16 - это и есть "машина на линухе".

    Для начала нужно определить тип атаки (флуд канала, флуд стека, флуд прикладных сервисов) и понять, что именно следует защитить. Ясность в эти вопросы поможет внести, например, википедия.
    WL500gp 1.9.2.7-d-r2624, Optware.

  6. #6

    ДДОС зашита на рауторе.

    Quote Originally Posted by don-pedro View Post
    RT-N16 - это и есть "машина на линухе".

    Для начала нужно определить тип атаки (флуд канала, флуд стека, флуд прикладных сервисов) и понять, что именно следует защитить. Ясность в эти вопросы поможет внести, например, википедия.
    Подскажи как это посмотреть, в раутере, как настроить логи, что в них искать, на какие пакеты смотреть, тежко с нуля это все смотреть... тем более времени нету, а сервера падают, пинг скачет и т.д....
    Заранее спасибо. Я просто не знаю, с чего начать.. но думаю с логов..... но как их записать и какое правило писать для лога чтобы она нормальные пакеты не писало, ну наверное по количеству соединений отсеять.


    RT-N16 - это и есть "машина на линухе". - именно по этому брал.
    В линухах я новичок могу по мануалам сделать, но как я понял для готовых решений нужно патчить ядро, точнее для iptables+ раутер онли рид почти везде, да еще момент на старом дире 320 можнобыло штатный фтп настроить для просотра root (корневой директории прошивки) и лазить через аклпад и редактировать потом просто прошивал и норм. А тут странно не получается.

  7. #7
    sysctl почему данная программа отсутствует в ядре прошивки?.... или я ее не нашел?

    Увеличение очереди «полуоткрытых» TCP-соединений:

    # sysctl -w net.ipv4.tcp_max_syn_backlog=1024

    Уменьшение времени удержания «полуоткрытых» соединений:

    # sysctl -w net.ipv4.tcp_synack_retries=1

    Включение механизма TCP syncookies:

    # sysctl -w net.ipv4.tcp_syncookies=1

    Конкретно эти настройки интересуют.

  8. #8
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Ghost_SS
    По соображениям места во флэше и отсутствия полноценного /etc + rc.init.d
    Используйте прямую запись в /proc/net/

    Если уж полезли в такие дебри, придётся вам почитать по настройкам ядра сильно побольше. В частности, в 2.6.22 syncookies реализованы не полностью.

  9. #9
    Quote Originally Posted by lly View Post
    Ghost_SS
    По соображениям места во флэше и отсутствия полноценного /etc + rc.init.d
    Используйте прямую запись в /proc/net/

    Если уж полезли в такие дебри, придётся вам почитать по настройкам ядра сильно побольше. В частности, в 2.6.22 syncookies реализованы не полностью.
    Лезу туда от безысходности.... дома как хобби развивал игровой портал, теперь пришло время когда меня стали замечать и не всегда это добрые люди. Вот и сижу уже неделю под ДОС или ДДОС времени не было. На мои посты не кто четко не отвечает. Иди читай и т.д. ну как бы получается я читаю а тут пишу так для развлечения. Пока по теме не кто не ответил.
    Да и еще, если флеш 32 мб на RT-N16 то зачем урезать функционал? проц мощный памяти тоже достаточно. Так смысл?
    Подскажите какой прошивкой лучше прошить RT-N16 для полного функцианала iptables
    Last edited by Ghost_SS; 21-07-2012 at 09:52.

  10. #10

    Question Вопросы по iptables и модулям ядра

    Господа, пытаюсь сделать следующее
    Code:
    iptables -I FORWARD -s 192.168.1.3 -m string --string "vk.com" --algo kmp --to 65535 -j DROP
    он мне отвечает
    Code:
    iptables: Invalid argument. Run `dmesg' for more information.
    Code:
    dmesg |tail
    sd 0:0:0:0: [sda] Write Protect is off
    sd 0:0:0:0: [sda] Mode Sense: 23 00 00 00
    sd 0:0:0:0: [sda] Assuming drive cache: write through
    sd 0:0:0:0: [sda] Assuming drive cache: write through
     sda: sda1
    sd 0:0:0:0: [sda] Attached SCSI removable disk
    Adding 262136k swap on /opt/.swapfile.  Priority:-1 extents:1 across:262136k
    vlan2: add 01:00:5e:40:98:8f mcast address to master interface
    vlan2: dev_set_allmulti(master, -1)
    vlan2: dev_set_allmulti(master, 1)

    Code:
    lsmod |grep xt_
    xt_hl                   1440  0
    xt_length               1088  0
    xt_dscp                 1504  0
    xt_HL                   1984  0
    xt_connlimit            3616  0
    xt_DSCP                 2048  0
    xt_quota                1408  0
    xt_CLASSIFY              896  0
    xt_webstr               3856  0
    xt_recent               8400  0
    xt_iprange              1440  0
    xt_multiport            1696  0
    xt_string               1312  0
    Что не так?
    ASUS RT-N15U

  11. #11
    Quote Originally Posted by AndreyUA View Post
    Что не так?
    зачем велосипед, когда все есть внутри?
    https://code.google.com/p/wl500g/sou...wall_ex.c#1000

  12. #12
    Quote Originally Posted by theMIROn View Post
    зачем велосипед, когда все есть внутри?
    https://code.google.com/p/wl500g/sou...wall_ex.c#1000
    А для отдельного айпи?
    Даже дело не в этом. Что не так? И где посмотреть, что не так?
    ASUS RT-N15U

  13. #13
    А мне такую штука надо. Кто знает почему не пашет?

    ссылка на скрипт фаирвола круто... может стоило не отвечать вопросом на вопрос. Хотя бы номер строки.


    -А INPUT -p udp -m udp -m string --hex-string "|FFFFFFFF56|" --algo kmp -j DROP
    Last edited by Ghost_SS; 09-08-2012 at 09:47.

  14. #14
    Quote Originally Posted by Ghost_SS View Post
    А мне такую штука надо. Кто знает почему не пашет?

    ссылка на скрипт фаирвола круто... может стоило не отвечать вопросом на вопрос. Хотя бы номер строки.


    -А INPUT -p udp -m udp -m string --hex-string "|FFFFFFFF56|" --algo kmp -j DROP
    Ссылка с номером строки, смотрите внимательно
    Code:
    #ifdef WEBSTRFILTER
            if (nvram_match("url_enable_x", "1") && nvram_invmatch("url_date_x", "0000000")) {
    
                    timematch_conv(timef, "url_date_x", "url_time_x");
                    for (i = 0; i < nvram_get_int("url_num_x"); i++)
                    {
                            memset(nvname, 0, sizeof(nvname));
                            sprintf(nvname, "url_keyword_x%d", i);
                            filterstr = nvram_safe_get(nvname);
                            if (strncasecmp(filterstr, "http://", strlen("http://")) == 0)
                                    filterstr += strlen("http://");
                            else
                            if (strncasecmp(filterstr, "https://", strlen("https://")) == 0)
                                    filterstr += strlen("https://");
                            if (*filterstr)
                            {
                                    fprintf(fp,
                                            "-I FORWARD -p tcp %s -m webstr --url \"%s\" -j REJECT --reject-with tcp-reset\n",
                                            timef, filterstr);
                            }
                    }
            }
    #endif
    ASUS RT-N15U

  15. #15
    -А INPUT -p udp -m udp -m string --hex-string "|FFFFFFFF56|" --algo kmp -j DROP так все таки хекс как?... умеет он или нет?

    пишет не найдет фаил iptables .. как подключить к ip тейблес необходимые библиотеки, что бы он --hex-string команду понимал.

    хотелось бы чтобы string \hex-string \hashlimit работали.

    второй раз поднимаю этот вопрос, а в ответ тишина.

    П.С. не надо бездумных коментов. Кто точно знает как сделать отпишитесь.
    Last edited by Omega; 23-09-2012 at 22:38. Reason: 2 posts merged

Page 1 of 6 123 ... LastLast

Similar Threads

  1. Настройка IPTables
    By _Denis_ in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 531
    Last Post: 11-11-2016, 06:57
  2. Как добавить модули ядра?
    By Boiler in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 57
    Last Post: 18-08-2016, 19:26
  3. Вопросы по работе IPTV (EMF & WMF)
    By theMIROn in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 119
    Last Post: 29-03-2015, 13:18
  4. Вопросы по перепрошивке dir-320
    By gweri in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 344
    Last Post: 29-10-2011, 10:36

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •