本文摘要在 pfSense 中使用 PHP Shell 可以直接配置 config.xml 文件,无需使用 Web 管理界面。该工具还支持快速部署 pfSense 或执行特殊设置,官方文档称为 pfSsh.php。一、访问 pfSsh.php进入 pfSsh.php 的方法有两种:通过 SSH 连接到 pfSense 控制台,或直接在防火墙配置界面操作。要启用 SSH,可在 pfSense Web 界面中...
在 pfSense 中使用 PHP Shell 可以直接配置 config.xml 文件,无需使用 Web 管理界面。该工具还支持快速部署 pfSense 或执行特殊设置,官方文档称为 pfSsh.php。
一、访问 pfSsh.php
进入 pfSsh.php 的方法有两种:通过 SSH 连接到 pfSense 控制台,或直接在防火墙配置界面操作。要启用 SSH,可在 pfSense Web 界面中进入 系统 → 高级选项 并开启相应选项。

建议禁止使用密码登录,只使用证书登录。使用 Xshell 等工具登录到后台的界面如下:

选择第 12 个选项进入 PHP Shell。
二、pfSsh.php 的示例命令
以下是一些示例命令,展示如何使用 Shell。每个输入都是正常的 PHP 代码,且必须使用 exec; 来完成。
1、显示 DHCP 设置

2、设置域

3、执行常规的 Shell 命令
在 PHP Shell 中,还可以通过在命令前添加 ! 来执行常规的 Shell 命令:

4、“记录”和“播放”命令
使用 pfSsh.php,你可以“记录”多个命令并在以后“播放”。这些会话对于重复任务非常有用。例如:

这些条目保存在 /etc/phpshellsessions/ 下,并且可以在必要时进行编辑。
现在可以按以下方式播放“录音”:

或直接从根 Shell 执行:

三、结论
pfSsh.php 是使用脚本自动执行 pfSense 命令或进行自定义的强大工具。如果管理多个防火墙或需要反复进行某些设置,它可以节省大量工作量。例如,你可以将所有设置(即 PHP 代码)打包到一个文件中,保存在 /etc/phpshellsessions/ 下并执行它们,或将输出直接转发到 pfSsh.php:

觉得内容不错?我要