Итак, задача - динамически обновлять на роутере списки сетей UA-IX и загонять их в таблицу 100 файрвола ipfw...
Для начала перейдем в каталог /usr/local/etc, куда планируем разместить наш скрипт.
# cd /usr/local/etc |
Следующий шаг - загрузка скрипта:
Запускаем скрипт на исполнение и ожидаем завершения:
# sh ua-list.sh UA-IX list update |
Следующей командой проверяем наличие списка сетей в таблице №100 файрвола:
# ipfw table 100 list |
В ответ на консоль должен вывалиться список сетей (более трех тысяч). Если это так - значит все работает. Теперь последний штрих - динамическое обновление. Для этого воспользуемся возможностями планировщика cron:
# echo '# UA-IX update' >> /etc/crontab # echo '59 * * * * root /bin/sh /usr/local/etc/ua-list.sh' >> /etc/crontab # echo '@reboot root /bin/sh /usr/local/etc/ua-list.sh' >> /etc/crontab |
Даем команду cron-у перечитать список заданий:
# killall -HUP cron |
Итак, теперь список сетей будет обновляться каждый час, а также после перезагрузки сервера.
Все работает как надо статья
Все работает как надо статья очень грамотная спасибо автору.
Еще хочу добавить следующее, далее к примеру режем пользователю все кроме UA-IX:
и чтобы правило срабатывало после перезагрузки вписываем аналогично в rc.firewall