The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Как удалить правило из IPFW"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Как удалить правило из IPFW"
Сообщение от byte emailИскать по авторуВ закладки on 10-Ноя-02, 13:03  (MSK)
Есть вот такой список правил для примера:

01200 allow tcp from 192.168.1.239 to 192.168.1.241
01300 allow tcp from 192.168.1.239 to 192.168.1.241
01400 allow tcp from 192.168.1.239 to 192.168.1.241
01500 allow tcp from 192.168.1.239 to 192.168.1.241

Как из удалить без flush, без использования номера правила.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RE: Как удалить правило из IPFW"
Сообщение от Ilia emailИскать по авторуВ закладки on 11-Ноя-02, 12:07  (MSK)
>Есть вот такой список правил для примера:
>
>01200 allow tcp from 192.168.1.239 to 192.168.1.241
>01300 allow tcp from 192.168.1.239 to 192.168.1.241
>01400 allow tcp from 192.168.1.239 to 192.168.1.241
>01500 allow tcp from 192.168.1.239 to 192.168.1.241
>
>Как из удалить без flush, без использования номера правила.

ipfw flushyt не использовать, ipfw delete NN не использовать...
То-есть, как удалить правило не удаляя его? Никак.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "RE: Как удалить правило из IPFW"
Сообщение от byte emailИскать по авторуВ закладки on 11-Ноя-02, 12:14  (MSK)
>>Есть вот такой список правил для примера:
>>
>>01200 allow tcp from 192.168.1.239 to 192.168.1.241
>>01300 allow tcp from 192.168.1.239 to 192.168.1.241
>>01400 allow tcp from 192.168.1.239 to 192.168.1.241
>>01500 allow tcp from 192.168.1.239 to 192.168.1.241
>>
>>Как из удалить без flush, без использования номера правила.
>
>ipfw flushyt не использовать, ipfw delete NN не использовать...
>То-есть, как удалить правило не удаляя его? Никак.

как в ipchains есть ключ -A добавить правило, -D удалить...
Причём писать можно не только сам номер, но и полностью такое же правило как добавлялось ключом -A.  

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "RE: Как удалить правило из IPFW"
Сообщение от LinaS emailИскать по авторуВ закладки on 11-Ноя-02, 13:57  (MSK)
>>>Есть вот такой список правил для примера:
>>>
>>>01200 allow tcp from 192.168.1.239 to 192.168.1.241
>>>01300 allow tcp from 192.168.1.239 to 192.168.1.241
>>>01400 allow tcp from 192.168.1.239 to 192.168.1.241
>>>01500 allow tcp from 192.168.1.239 to 192.168.1.241
>>>
>>>Как из удалить без flush, без использования номера правила.
>>
>>ipfw flushyt не использовать, ipfw delete NN не использовать...
>>То-есть, как удалить правило не удаляя его? Никак.
>
>как в ipchains есть ключ -A добавить правило, -D удалить...
>Причём писать можно не только сам номер, но и полностью такое же
>правило как добавлялось ключом -A.

а вот так не подойдет?

root@# ipfw show
00050    0      0 deny udp from any to me 137-139
00100 2223 217065 allow ip from any to any
65535    0      0 deny ip from any to any

root@# ipfw delete `ipfw -a l | grep "deny udp from any to me 137-139"|cut -f 1 -d " "`

root@# ipfw show
00100 2223 217065 allow ip from any to any
65535    0      0 deny ip from any to any


  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "RE: Как удалить правило из IPFW"
Сообщение от byte emailИскать по авторуВ закладки on 11-Ноя-02, 14:01  (MSK)
>а вот так не подойдет?
>
>root@# ipfw show
>00050    0      0 deny
>udp from any to me 137-139
>00100 2223 217065 allow ip from any to any
>65535    0      0 deny
>ip from any to any
>
>root@# ipfw delete `ipfw -a l | grep "deny udp from any
>to me 137-139"|cut -f 1 -d " "`
>
>root@# ipfw show
>00100 2223 217065 allow ip from any to any
>65535    0      0 deny
>ip from any to any

Вариант, я вот ещё такую конфигу нашёл
#!/usr/bin/perl

$buffer="$ENV{'QUERY_STRING'}";

if (length($buffer) == 0) {
&PrintHeader;
&PrintFooter;
exit 0;
}

#system("/bin/echo \'$buffer\' \>\>/1111");

($cmd,$ip) = split('&', $buffer);
($temp, $cmd) = split('=', $cmd);
($temp, $ip) = split('=', $ip);
($temp, $temp, $temp, $ruleset) = split('\.',$ip);
$ruleset=$ruleset*100;
if ($ruleset <= 900) {
&PrintHeader;
&PrintFooter;
exit 0;
}
&PrintHeader;

if ($cmd == 2) {
system("/usr/local/bin/sudo /sbin/ipfw add $ruleset deny all from any to $ip via xl0 >/dev/null");
system("/usr/local/bin/sudo /sbin/ipfw add $ruleset deny all from $ip to any via xl0 >/dev/null");
if (&CheckFirewallRules($ruleset) == 1) {
print "<center>Service stopped for $ip.</center>\n";
} else {
print "<center>Operation error! Please, contact system administrator!</center>\n";
}
print "</body>\n";
&PrintFooter;
exit 0;
} else {
system ("/usr/local/bin/sudo /sbin/ipfw delete $ruleset");
if (&CheckFirewallRules($ruleset) == 0) {
print "<center>Service started for $ip.</center>\n";
} else {
print "<center>Operation error! Please, contact system administrator!</center>\n";
}
print "</body>\n";
&PrintFooter;
exit 0;
}

exit 0;

sub GetIP {
return $ENV{'REMOTE_ADDR'};
}

sub CheckFirewallRules($) {
my ($fwrule);

open (FW, "/usr/local/bin/sudo /sbin/ipfw show $_[0]|");
$fwrule=<FW>;
close FW;
if (length($fwrule) !=0) {return 1} else {return 0}
}

sub PrintHeader {
print "Content-type: text/html\n\n";
print "<head>\n";
print "\n";
print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\">\n";
print "</head>";
}

sub PrintFooter {
print "\n";
}

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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