可以从系统控制台执行基本配置和维护任务。可以使用键盘和显示器,串行控制台或使用SSH来使用控制台。访问方法因硬件而异。下面是控制台菜单的外观示例,但根据版本和平台的不同,它可能会略有不同:

*** Welcome to pfSense 2.4.0-RELEASE (amd64) on pfsense ***

 WAN (wan)       -> vmx0       -> v4/DHCP4: 198.51.100.6/24
                                  v6/DHCP6: 2001:db8::20c:29ff:fe78:6e4e/64
 LAN (lan)       -> vmx1       -> v4: 10.6.0.1/24
                                  v6/t6: 2001:db8:1:eea0:20c:29ff:fe78:6e58/64

 0) Logout (SSH only)                  9) pfTop
 1) Assign Interfaces                 10) Filter Logs
 2) Set interface(s) IP address       11) Restart webConfigurator
 3) Reset webConfigurator password    12) PHP shell + pfSense tools
 4) Reset to factory defaults         13) Update from console
 5) Reboot system                     14) Disable Secure Shell (sshd)
 6) Halt system                       15) Restore recent configuration
 7) Ping host                         16) Restart PHP-FPM
 8) Shell

Assign Interfaces(分配接口)

此选项将重新启动“ 接口分配”任务。此菜单选项可以创建VLAN接口,重新分配现有接口或分配新接口。

Set interface(s) IP address(设置接口IP地址)

设置接口IP地址的脚本可以设置WAN,LAN或OPT接口IP地址,但此脚本还有其他有用的功能:

  • 防火墙提示启用或禁用接口的DHCP服务,并设置DHCP IP地址范围(如果已启用)。

  • 如果防火墙GUI配置为HTTPS,则菜单会提示切换到HTTP。这有助于SSL配置无法正常运行的情况。

  • 如果已禁用LAN上的反锁定规则,则脚本将启用防锁定规则,以防用户被锁定在GUI之外。

Reset webConfigurator password(重置webConfigurator密码)

此菜单选项调用脚本以重置admin帐户和密码。密码重置为默认值pfsense

该脚本还采取了一些其他操作来帮助重新进入防火墙:

  • 如果GUI身份验证源设置为远程服务器(如RADIUS或LDAP),则会提示将身份验证源返回到本地数据库。

  • 如果该admin帐户已被删除,则该脚本会重新创建该帐户。

  • 如果admin帐户被禁用,脚本将重新启用该帐户。

Reset to factory defaults(重置为出厂默认值)

此菜单选项可将系统配置恢复为出厂默认值。它会删除任何已安装的插件。

注意

此操作不会对文件系统进行任何其他更改。如果系统文件以不合需要的方式损坏或更改,最佳做法是进行备份,并从安装介质重新安装。

此操作也可以在WebGUI的诊断>出厂默认下使用。

Reboot system(重启系统)

此菜单选项将关闭pfSense防火墙并重新启动操作系统。

此页面上还可能显示一些高级选项,具体取决于硬件支持:

正常重启:

以传统方式执行正常重启。

Reroot:

此选项不执行完全重新启动,而是执行“reroot”样式启动。将终止所有正在运行的进程,重新装入所有文件系统,然后再次运行系统启动序列。这种类型的重启速度要快得多,因为它不会重置硬件,重新加载内核或需要经历硬件检测过程。

重新启动到单用户模式:

这会将防火墙重新启动到单用户模式以进行诊断。防火墙无法从此状态自动恢复,需要控制台访问才能使用单用户模式并重新启动防火墙。SG-1000不提供此菜单选项。

警告

在单用户模式下,根文件系统默认为只读,而未安装其他文件系统。防火墙也没有活动的网络连接。此选项只限高级用户使用。

重新启动并运行文件系统检查:

这将重新启动防火墙并强制执行文件系统检查fsck,运行五次。此操作通常可以纠正防火墙上文件系统的问题。SG-1000不提供此菜单选项。

注意

单用户模式和文件系统检查选项需要输入大写字母以确认操作。这是避免意外激活此选项所必需的。重启和重新引导选项可以大写或小写输入。

此操作也可在WebGUI的诊断>重新启动下进行操作。

Halt system(关闭系统)

此菜单选项可以关闭防火墙,并根据硬件支持暂停或关闭电源。

警告

我们强烈反对从正在运行的系统中切断电源。断电前关机始终是最安全的选择。

此操作也可在 WebGUI的诊断>关闭系统下使用。

Ping host

此菜单选项运行一个脚本,该脚本尝试联系主机以确认是否可通过连接的网络访问该主机。该脚本提示用户输入IP地址,然后向目标主机发送三个ICMP回应请求。

该脚本显示测试的输出,包括接收的数据包数,序列号,响应时间和丢包百分比。

ping给定IPv4地址或主机名时,以及ping6给定IPv6地址时, 命令将会使用该脚本。

Shell

此菜单选项启动命令行shell。Shell非常有用且非常强大,但也有可能非常危险。

注意

大多数pfSense用户不需要接触shell,甚至不用知道它的存在。

复杂的配置任务可能需要在shell中工作,并且一些故障排除任务更容易通过shell去完成,但总是有可能对系统造成不可挽回的损害。

经验丰富的FreeBSD用户可能会非常熟悉,但是pfSense系统上没有很多命令,因为为了安全性和大小限制,FreeBSD操作系统的不必要部分都被删除了。

以这种方式启动的shell使用tcsh,并且唯一可用的其他shell是sh。虽然也可以安装其他shell,但我们不建议或支持使用其他shell。

pfTop

此菜单选项调用pftop显示防火墙状态的实时视图以及它们已发送和接收的数据量。它可以帮助查明当前使用大量带宽的会话,还可以帮助诊断其他网络连接问题。

Filter Logs(筛选日志)

“ 筛选日志”菜单选项以原始格式实时显示防火墙日志条目。原始日志每行包含的信息远多于WebGUI中的日志视图(“ 状态”>“系统日志”,“ 防火墙”选项卡),但并非所有这些信息都易于阅读。

说明

有关日志的简化控制台视图的实时详细信息,可以使用以下shell命令:

clog -f /var/log/filter.log | filterparser.php

Restart webConfigurator(重新启动webConfigurator )

重新启动webConfigurator将重新启动运行WebGUI(nginx)的系统进程。在极少数情况下,该进程可能已停止,重新启动它将恢复对GUI的访问。

如果GUI没有响应且此选项无法恢复访问,请在使用此菜单选项后调用菜单选项16以重新启动PHP-FPM

PHP shell + pfSense工具

PHP shell是一个功能强大的实用程序,它在正在运行的系统的上下文中执行PHP代码。与普通Shell一样,使用它也有潜在危险。这主供熟悉PHP和pfSense代码库的开发人员和有经验的用户使用。

Playback Scripts(执行脚本)

PHP Shell有几个回放脚本可以自动执行简单的任务或启用对GUI的访问。

这些脚本在PHP shell中运行,如下所示:

pfSense shell: playback scriptname

它们也可以从命令行运行:

# pfSsh.php playback scriptname
changepassword

此脚本更改用户的密码,并在帐户属性被禁用或过期时提示重置帐户属性。

disablecarp / enablecarp 

这些脚本禁用和启用CARP高可用(性)的功能,并将停用CARP类型的虚拟IP地址。此操作不会在重新启动后持续存在。

disablecarpmaint / enablecarpmaint 

这些脚本禁用并启用CARP维护模式,这使CARP保持活动状态但降级此单元,以便其他节点可以进行控制。此维护模式将在重新启动后持续存在。

disabledhcpd

此脚本从防火墙中删除所有DHCP配置,有效禁用DHCP服务并完全删除其所有设置。

disablereferercheck

此脚本禁用浏览器HTTP_REFERER强制执行HTTP_REFERER检查 。如果浏览器会话触发此保护,这可以帮助访问GUI。

enableallowallwan

此脚本将允许IPv4和IPv6的所有规则添加到WAN接口。

警告

请谨慎使用此选项,这是在LAN无法使用的情况下获取对防火墙WAN接口上的服务的临时措施。一旦添加了允许的访问规则,应该删除此脚本添加的规则。

enablesshd

此脚本启用SSH守护程序,与控制台菜单选项或GUI选项相同。

externalconfiglocator

此脚本将config.xml在外部设备(例如U盘)上查找文件,并将其移动到位以供防火墙使用。

gatewaystatus

此脚本打印当前网关状态和统计信息。它还有一个可选参数brief,该参数仅打印网关名称和状态,省略地址和统计数据。

generateguicert

此脚本为防火墙创建新的自签名证书,并将其激活以在GUI中使用。这在以前的证书无效或无法使用的情况下非常有用。它还使用防火墙主机名和其他自定义信息填写证书详细信息,以便更好地识别主机。

gitsync

此复杂脚本将PHP和其他脚本源与pfSense github存储库中的文件同步。在开发快照中最有用的是从最近的提交中获取最新的修改。

警告

使用此脚本可能会有危险。建议在开发人员或支持代表的指导下使用。

如果脚本在没有任何参数的情况下运行,它将打印一条如何使用帮助消息。更多信息可以在pfSense Doc Wiki上找到。

installpkg / listpkg / uninstallpkg 

这些脚本以与GUI类似的方式与pfSense插件系统连接。这些主要用于调试插件问题,比较config.xml插件数据库中的信息。

pfanchordrill

此脚本以递归方式搜索pf锚点并打印它找到的任何NAT或防火墙规则。这可以帮助跟踪relayd负载均衡器等区域中的意外行为,这些区域依赖于GUI中不可见的锚点中的规则。

pftabledrill

此脚本打印所有pf表的内容,其中包含防火墙别名中使用的地址以及用于bogon的网络阻塞,snort和GUI / SSH锁定等功能的内置系统表。此脚本对于检查是否在任何表中找到特定IP地址非常有用,而不是单独搜索。

removepkgconfig

此脚本从运行中删除所有插件配置数据的痕迹 config.xml。如果插件具有已损坏的设置或者使插件处于不一致状态,则此功能非常有用。

removeshaper

此脚本将删除ALTQ流量管理器设置,如果管理器器配置阻止加载规则或其他方法不正确并阻止防火墙正常运行,则此设置非常有用。

resetwebgui

此脚本将重置窗口小部件,仪表板列,主题和其他GUI相关设置的GUI设置。如果GUI无法正常运行,它可以将GUI(尤其是仪表板)返回到稳定状态。

restartdhcpd

此脚本停止并重新启动DHCP守护程序。

restartipsec

此脚本重写并重新加载strongSwan的IPsec配置。

svc

此脚本可控制在防火墙上运行的服务,类似于与Status> Services中显示的内容。

该命令的一般形式是:

playback svc <action> <service name> [service-specific options]

动作可以是stopstartrestart

服务名称是“ 状态”>“服务”下的服务名称。如果名称包含空格,请将名称括在引号中。

具体的服务选项取决于服务,它们是用来唯一标识具有多个实例,如OpenV-P-N的或入网网络门户项服务。

例子:

  • 停止miniupnpd:

    pfSsh.php playback svc stop miniupnpd
  • 重启ID为2的OpenV-P-N客户端:

    pfSsh.php playback svc restart open*** client 2
  • 为区域“MyZone”启动Captive Poral流程:

    pfSsh.php playback svc start captiveportal MyZone

Upgrade from console(从控制台升级)

此菜单选项运行pfSense-upgrade脚本以将防火墙升级到最新的可用版本。这在操作上与从GUI运行升级相同,并且需要有效的网络连接才能连接更新服务器。

Enable/Disable Secure Shell (sshd)(启用/禁用安全Shell(sshd))

此选项可切换Secure Shell Daemon的状态sshd。此选项与WebGUI中用于启用或禁用SSH的选项相同,但可从控制台访问。

Restore recent configuration(恢复最近的配置)

此菜单选项启动一个脚本,该脚本列出并恢复配置历史记录中的备份。这类似于在的GUI中的“诊断”>“备份/还原”,“ 配置历史记录”选项卡历史记录

此脚本可以显示最后几个配置文件,以及配置中所做更改的时间戳和描述,进行更改的用户和IP地址以及配置修订。如果最近的配置错误意外删除了对GUI的访问,则此功能尤其有用。

Restart(重启) PHP-FPM

此菜单选项停止并重新启动处理PHP进程的守护程序 nginx。如果GUI Web服务器进程正在运行但无法执行PHP脚本,请调用此选项。与Restart webConfigurator一起运行此选项可获得最佳结果。

翻译自pfsense book