位置: 编程技术 - 正文

Freebsd PF 安装使用详解(freebsd12安装)

编辑:rootadmin

推荐整理分享Freebsd PF 安装使用详解(freebsd12安装),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:freebsd zfs安装,freebsd12安装,freebsd9.3安装教程,freebsd安装pkg,freebsd zfs安装,freebsd安装教程,freebsd9.3安装教程,freebsd安装pkg,内容如对您有帮助,希望把文章链接给更多的朋友!

Freebsd PF 安装使用

FreeBSD下的PF

FreeBSD下的包过滤工具有IPFW,IPF以及PF,它们各有特点。PF原本是OpenBSD下的包过滤工具,FreeBSD开发人员已经把PF移植到了FreeBSD上了。如果要在FreeBSD上使用PF,需如下操作:

1. 编译内核:

  cd /usr/src/sys/i/conf

cp GENERIC LOULAN

编辑 LOULAN加入以下内容

device pf

device pflog

device pfsync

options ALTQ

options ALTQ_CBQ

options ALTQ_RED

options ALTQ_RIO

options ALTQ_HFSC

options ALTQ_CDNR

options ALTQ_PRIQ

options ALTQ_NOPCC

options ALTQ_DEBUG

config LOULAN

make depend&& make && make install && reboot

2. 编写防火墙规则pf.conf

  具体可以参考 man pf.conf ,根据实现需求编写防火墙规则。

pfctl -f pf.conf 应用pf.conf的规则

pfctl -sr   查看访问规则

pfctl -sn  查看NAT规则

pfctl -sa  查看所有PF信息

pfctl -Rf pf.conf  重新加载访问规则

pfctl -Nf pf.conf  重新加载NAT规则

pfctl -Fa -f pf.conf 重新加载所有规则

Freebsd PF 安装使用

要在 FreeBSD 6.2 上使用 PF 防火墙,有二个方式,一个是编译进入核心,另外是以动态模块方式加载。

编译进入核心的方式

#FreeBSD log traffic,如果有使用 pflog,就要编译进核心

device bpf

#启动 PF Firewall

device pf

#启动虚拟网络设备来记录流量(经由 bpf)

device pflog

#启动虚拟网络设备来监视网络状态

device pfsync

以动态模块加载

vi /etc/rc.conf

加入下面四行

#启用 PF

pf_enable="YES"

#PF 防火墙规则的设定文件

pf_rules="/etc/pf.conf"

#启用 inetd 服务

inetd_enable="YES"

#启动 pflogd

pflog_enable="YES"

#pflogd 储存记录档案的地方

pflog_logfile="/var/log/pflog"

#转送封包

gateway_enable="YES"

#开启 ftp-proxy 功能

vi /etc/inetd.conf

把下面这一行最前面的 # 删除

ftp-proxy stream tcp nowait root /usr/libexec/ftp-proxy ftp-proxy

使用 sysctl 做设定(也可以重新开机让设定生效)

sysctl -w net.inet.ip.forwarding=1

vi /etc/pf.conf

#对外的网络卡

ext_if = "sis0"

#对内的网络卡

int_if = "rl0"

#频宽控管

#定义 std_out 总频宽 Kb

#altq on $ext_if cbq bandwidth Kb queue { std_out }

#定义 std_out 队列频宽 Kb,使用预设队列

#queue std_out bandwith Kb cbq (default)

#定义 std_in 总频宽 2Mb

#altq on $int_if cbq bandwidth 2Mb queue { std_in }

#假设频宽足够的话,可以从父队列借用额外的频宽

#queue std_in bandwidth Kb cbq (brrrow)

#对外开放的服务

open_services = "{, }"

#内部私有的 IP

priv_nets = "{ .0.0.0/8, ..0.0/, ..0.0/, .0.0.0/8 }"

# options

#设定拒绝联机封包的处理方式

set block-policy return

#

set optimization aggressive

#纪录 $ext_if

set loginterface $ext_if

# scrub

#整理封包

scrub in all

#nat

#NAT 地址转译处理

nat on $ext_if from $int_if:network to any -> $ext_if

Freebsd PF 安装使用详解(freebsd12安装)

#ftp-proxy

#ftp-proxy 重新导向

rdr on $int_if proto tcp from any to any port -> .0.0.1 port

#rdr on $ext_if proto tcp from any to ... port -> ... port

#Transparent Proxy Server

rdr on rl0 proto tcp from ...0/ to any -> .0.0.1 port

#阻挡可疑封包在 $ext_if 网卡进出

antispoof log quick for $ext_if

#阻挡所有进出的封包

block all

#开放 loopback

pass quick on lo0 all

#拒绝内部私有 IP 对 $ext_if 网络卡联机

block drop in quick on $ext_if from $priv_nets to any

block drop out quick on $ext_if from any to $priv_nets

#开放对外的 , 埠

pass in on $ext_if inet proto tcp from any to $ext_if port $open_services flags S/SA keep state

#只容许 ...0/ 网段对本机做 埠联机

pass in on $ext_if inet proto tcp from ...0/ to $ext_if port flags S/SA keep state

#开放内部网络对外联机

#pass in on $inf_if proto rcp from any to any queue std_in

pass in on $int_if from $int_if:network to any keep state

pass out on $int_if from any to $int_if:network keep state

#开放对外网络的联机

#pass out $ext_if proto tcp from any to any queue std_out

pass out on $ext_if proto tcp all modulate state flags S/SA

pass out on $ext_if proto { udp, icmp } all keep state

启动 PF,并读取 pf 规则

pfctl -e;pfctl -f /etc/pf.conf

PF 指令的用法

#启动 PF

pfctl -e

#加载 PF 规则

pfctl -f /etc/pf.conf

#检查 PF 语法是否正确 (未加载)

pfctl -nf /etc/pf.conf

#停用 PF

pfctl -d

#重读 PF 设定档中的 NAT 部分

pfctl -f /etc/pf.conf -N

#重读 PF 设定档中的 filter rules

pfctl -f /etc/pf.conf -R

#重读 PF 设定文件中的选项规则

pfctl -f /etc/pf.conf -O

#查看 PF 信息

#显示现阶段过滤封包的统计资料

pfctl -s info

pfctl -si

pfctl -s memory

#显示现阶段过滤的规则

pfctl -s rules

pfctl -sr

pfctl -vs rules

#显示现阶段过滤封包的统计资料

pfctl -vsr

#显示现阶段 NAT 的规则

pfctl -s nat

pfctl -sn

#检视目前队列

pfctl -s queue

#显示现阶段所有统计的数据

pfctl -s all

pfctl -sa

#清除 PF 规则

#清空 NAT 规则

pfctl -F nat

#清空队列

pfctl -F queue

#清空封包过滤规则

pfctl -F rules

#清空计数器

pfctl -F info

pfctl -F Tables

#清空所有的规则

pfctl -F all

#PF Tables 的使用

#显示 table 内数据

pfctl -t ssh-bruteforce -Tshow

pfctl -t table_name -T add spammers.org

pfctl -t table_name -T delete spammers.org

pfctl -t table_name -T flush

pfctl -t table_name -T show

pfctl -t table_name -T zero

过滤扫描侦测软件

block in quick proto tcp all flags SF/SFRA

block in quick proto tcp all flags SFUP/SFRAU

block in quick proto tcp all flags FPU/SFRAUP

block in quick proto tcp all flags /SFRA

block in quick proto tcp all flags F/SFRA

block in quick proto tcp all flags U/SFRAU

block in quick proto tcp all flags P

如果防火墙和 Proxy Server 不在同一台主机

Proxy Server:...

no rdr on rl0 proto tcp from ... to any port

rdr on rl0 proto tcp from ...0/ to any port -> ... port

FreeBSD如何添加硬盘?FreeBSD添加硬盘的方法 FreeBSD添加硬盘在平时的使用中,由于数据的增多,可能会出现单块磁盘不够用的情况。这时,就需要给FreeBSD再增加一块磁盘,分区,格式化,再将分区

Unix是什么?Unix和Linux有什么区别? 简介unix操作系统,是美国att公司于年在pdp-上运行的操作系统。具有多用户、多任务的特点,支持多种处理器架构,最早由肯汤普逊(kennethlanethompso

AIX上克隆rootvg的操作方法 AIX上克隆rootvg的操作方法AIXRootvg的镜像备份如何克隆rootvg?在实际应用中,经常会遇到系统升级,为了减少停机时间,在AIX中可将rootvg克隆到一新硬盘-替换硬

标签: freebsd12安装

本文链接地址:https://www.jiuchutong.com/biancheng/350529.html 转载请保留说明!

上一篇: FreeBSD下zfs: failed with error 6错误如何解决?

下一篇:FreeBSD如何添加硬盘?FreeBSD添加硬盘的方法(freebsd使用wifi)

  • 新成立的销售公司有哪些
  • 汇算清缴时发现去年的成本少确认了报表怎么填列
  • 超过规定标准的扣除项目金额怎么算
  • 用友取消操作在哪里
  • 外经证错了已经交了税怎么办
  • 冲红的发票要拿回来吗
  • 土增税预缴是按不含税收入算
  • 卷烟批发环节消费税税率
  • 铲车用什么燃油
  • 变更税务登记证需要提供哪些材料
  • 专家咨询费模板
  • 以库存商品抵偿债务
  • 其他应付为负数怎么处理
  • 一次性补缴的社保能全额退吗
  • 差旅费补贴需要缴纳个人所得税吗需要发票
  • 小规模纳税人免税怎么做账
  • 挂靠的工程个人所得税怎么交?
  • 2019年出租车
  • windows10如何设置锁屏时间
  • 光驱弹不出来灯也不亮
  • 在建工程人工费会计分录
  • 其他债权投资发生减值会影响所有者权益总额吗
  • 路由器2.4g和4g有什么区别
  • Windows11预览体验计划空白
  • 库存呆滞品处理方法
  • 股份支付费用是股权激励成本吗?
  • PHP aes (ecb)解密后乱码问题
  • 金银首饰零售业必须为一般纳税人吗
  • 园林绿化企业设立的条件和程序
  • 金融资产的会计处理方法
  • 元宇宙区块链数字货币
  • 遮天传游戏视频
  • 如何使用应用程序
  • 增值税专用发票怎么开
  • 资产减值损失的大幅度变动
  • tempdb数据库能删么
  • 个体工商户转企业政策
  • 车间劳保费计入什么科目
  • 普通发票需要做合同才能开吗
  • 合伙企业需要做工商吗
  • 个体工商户要做账报税吗
  • 宣告分配现金股利和股票股利的区别
  • 对公账户发票和普通发票不一样吗
  • 上级补助收入是指事业单位从主管部门和上级单位取得的
  • 专项应付款和政府补助的区别
  • 无法支付的应付账款为什么计入营业外支出
  • 管理费用借方红字怎么记凭证
  • 开出去的发票没有进项发票怎么核算成本?
  • 发票怎么跨月作废申请
  • 用友软件如何反结账流程
  • 公司购买的车辆
  • 收到是怎么写
  • php连接mysql的步骤代码
  • mysql8.0 主从
  • win7旗舰版系统重装
  • ubuntu注册用户
  • centos7编译c语言
  • centos安装ufw
  • 轻松备份怎么用
  • win8全屏快捷键
  • PACKAGER.EXE - PACKAGER是什么进程 有什么用
  • win7突然变卡顿怎么回事
  • win10资源管理器频繁无响应
  • 批量win10激活码怎么弄
  • node async await
  • python urllib urlopen
  • cocos2dx开发的游戏
  • 摄像头挡住了
  • 请问在javascript程序中
  • python中的
  • 没有实例化是什么意思
  • jquery点击按钮跳转页面
  • python中flask模块
  • JavaScript中的复杂数据类型又称为
  • jQuery Ajax 加载数据时异步显示加载动画
  • 横向对比分析两个人关系的意义
  • pdb settrace
  • 免税证明怎么开?(国税局已回复)
  • 税务局服务大厅办办退税要身份证复印件吗
  • 出口退税申报时闿
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设