Перейти до

Автоматизация обновления файла rules


Рекомендованные сообщения

Написал мне знакомый(itcube.com.ua) небольшой скриптик:

заключается в следующем:

берет список украины по урлу..

очишает /etc/stargazer/rules, записывать правила локальные (сами вводите), и т.д.

потом весь список украины

в конце ставит мир..

 

нужен PHP

запускать /usr/local/bin/php -f /etc/stargazer/rules.php

rules.php - название скрипты - кладем в /etc/stargazer (или в другое место)

 

<?php
####################################################################
# Номера
$name = "rules";

# Расширение записываемых файлов, записывать с точкой. Например .txt;
$extension = "";

# Куда писать (начиная с рута)
$dirToWrite = "/etc/stargazer/";

# Адрес файла ua-list
$listFileAddress = "http://ip.proline.net.ua/lists/ua-ix-prl.lst";
####################################################################

if(($list = @file_get_contents($listFileAddress)) === false)
{
print "There is no connecting in the internet";
exit; # Если интернета нету скрипт завершает работу	
}

$list = explode("\n",$list);

unset($list[0],$list[1],$list[2]);

$filename = $dirToWrite.$name.$extension;

if(($fp = fopen($filename,"w")) === FALSE)
{
print "Can not open a file";
exit; # Если не может создать или открыть и очистить файл скрипт завершает работу
}

fputs($fp,"ALL\t10.0.0.0/8\tNULL\n");

foreach($list as $cur_ip)
{
if(!preg_match("/(\d+.\d+.\d+.\d+)(\/\d+)?/",$cur_ip)) continue;

fputs($fp,"ALL\t$cur_ip\tDIR0\n");
}

fputs($fp,"ALL\t0.0.0.0/0\tDIR1\n");

fclose($fp);
?>

 

можно смело засовывать в cron

©itcube.com.ua

Ссылка на сообщение
Поделиться на других сайтах

ЗЫ если кому-нить надо избавится от навязчивого значка "^M" при переносе файлов с винды в юникс - в помошь

DOS to UNIX

Run the following :

 # perl -pi.bak -e 's/\r\n/\n/g' [file]

It will copy [file] to [file].bak, and edit the original

Ссылка на сообщение
Поделиться на других сайтах

Насчет http://ip.proline.net.ua/lists/ua-ix-prl.lst

Я думаю, народ не особо обрадуют строчки типа

80.90.224.0/21

80.90.224.0/24

Идущие одна за другой.

 

Есть ли мысли по оптимизации скриптом?

Ссылка на сообщение
Поделиться на других сайтах
Насчет http://ip.proline.net.ua/lists/ua-ix-prl.lst

Я думаю, народ не особо обрадуют строчки типа

80.90.224.0/21

80.90.224.0/24

Идущие одна за другой.

 

Есть ли мысли по оптимизации скриптом?

там есть и сокращенный список (что-бы такой фигни небыло) - на 600+ (ip.proline.net.ua) адресов - но туда надо вставить урл на список от своего провайдера..

кроме того в том списке украины отсутствуют ВПН провайдеры..

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...