<?php
/**
* 工具文件
* 目的在:修改一个防火墙的ip
* 前提:文件中有一句 -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -s 117.89.152.141 -j ACCEPT
* 前提2:存在一个文件例如/home/iptables.bak
*
* 调用示例
* php change_ip.php 202.111.11.1
*
*/
if (count($argv) <= 1 ) {
echo "请带上新的ip参数:例如 ipchange 222.222.222.22\n";
exit;
}
$arg = $argv[1];
$filename = '/home/iptables.bak';
$content = file_get_contents($filename);
$old_ip = preg_replace('/^.+3306\s+-s\s+(\d+\.\d+\.\d+\.\d+)\s+.+$/s','$1',$content);
$content = preg_replace('#'. $old_ip .'#', $arg, $content);
file_put_contents($filename, $content);
//system('iptables-restore '.$filename);
echo $filename .': '. $old_ip . ' => ' . $arg."\n";
php统一改防火墙配置里的ip
最新推荐文章于 2024-05-18 17:48:10 发布