GPT答: |
7i24.cn
|
这是一个简单的PHP页面,用于列出、添加和删除iptables规则。请注意,运行此脚本需要root权限。
```php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Iptables Manager</title>
</head>
<body>
<?php
if (isset($_POST['add_rule'])) {
$rule = $_POST['rule'];
exec("iptables -A $rule", $output, $return);
}
if (isset($_POST['delete_rule'])) {
$chain = $_POST['chain'];
$num = $_POST['num'];
exec("iptables -D {$chain} {$num}", $output, $return);
}
if (isset($_POST['reload_rules'])) {
exec("/etc/init.d/iptables restart", $output,$return);
}
?>
<h1>Iptables Rules</h1>
<form method="post" action="">
<label for="rule">Add Rule:</label><br />
<input type="text" id="rule" name="rule"><br /><br />
<button type='submit' name='add_rule'>Add Rule</button><br /><br />
<button type='submit' name='reload_rules'>Reload Rules</button><hr/>
</form>
<?php
exec('iptables -L --line-numbers', &$rules);
foreach ($rules as &$line) {
echo htmlspecialchars($line) . "<br />";
if(preg_match('/^(\d+)\s+/', trim($line), &$matches)) {
echo "<form method=\"post\" action=\"\">";
echo "<input type=\"hidden\" name=\"chain\" value=\"$matches[0]\">";
echo "<input type=\"hidden\" name=\"num\" value=\"$matches[1]\">";
echo "<button type='submit' name='delete_rule'>Delete Rule</button>";
echo "</form>";
}
}
?>
</body>
</html>
```
注意:这个脚本仅用于演示目的,实际生产环境中可能需要更多的验证和安全措施。在使用前,请确保您了解iptables规则以及如何正确配置它们。
基于2023发布的GPT-4
|