openbsd+pf配置

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情
openbsd+pf配置
初学openbsd+pf,见笑了,不对的请指正
qq:35907960
mail:yanypunix@yahoo.com.cn
openbsd服务器3块网卡
rl0 61.131.58.x 接公网
rl1 192.168.1.0/24 接内网段1
rl2 131.107.3.0/24 接内网段2
有些ip要24小时上网,有些ip限定8小时上网
写了两个脚本
shellpf1+pf1.conf(24小时上网)
shellpf2+pf2.conf(8小时上网)
shellpf1,shellpf2,pf1.conf,pf2.conf四个文件放在/etc/pf目录下
在crontab里定时执行,
文件/etc/pf/pf1.conf的配置如下:
ext_if="rl0" #接公网
192_if="rl1" #接内网段1
131_if="rl2" #接内网段2
192net="{
192.168.1.222/32,
192.168.1.5/32,
192.168.1.132/32,
192.168.1.77/32,
192.168.1.2/32,
192.168.1.8/32,
192.168.1.4/32,
192.168.1.6/32,
192.168.1.28/32,
192.168.1.177/32,
192.168.1.195/32,
192.168.1.45/32,
192.168.1.47/32,
192.168.1.16/32,
192.168.1.249/32,
}"
131net="{
131.107.3.215/32,
131.107.3.216/32,
131.107.3.217/32,
131.107.3.218/32,
131.107.3.219/32,
131.107.3.220/32,
131.107.3.211/32,
131.107.3.43/32,
131.107.3.47/32,
131.107.3.48/32,
131.107.3.174/32,
131.107.3.175/32,
131.107.3.181/32,
131.107.3.194/32,
131.107.3.123/32,
131.107.3.252/32,
131.107.3.253/32,
131.107.3.216/32,
131.107.3.198/32,
131.107.3.17/32
}"
tcp_services="{22,113}"
icmp_types="echoreq"
priv_nets="{127.0.0.0/8,192.168.0.0/16,172.16.0.0/12,10.0.0.0/8}"
set optimization aggressive
scrub in all
nat on rl0 from 192.168.1.0/24 to any -> 61.131.58.x/32
nat on rl0 from 131.107.3.0/24 to any -> 61.131.58.x/32

block all
pass quick on lo0 all
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 inet proto icmp all icmp-type $icmp_types keep states

block in quick on $192_if from 131.107.3.0/24 to any
block out quick on $192_if from any to 131.107.3.0/24
block in quick on $131_if from 192.168.1.0/24 to any
block out quick on $131_if from any to 192.168.1.0/24

pass in on $192_if from $192net to any keep state
pass out on $192_if from any to $192net keep state
pass in on $131_if from $131net to any keep state
pass out on $131_if from any to $131net keep state

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

/etc/pf/pf2.conf如下
ext_if="rl0" #接公网
192_if="rl1" #接内网段1
131_if="rl2" #接内网段2
192net="{
192.168.1.2/32,
192.168.1.8/32,
192.168.1.6/32,
192.168.1.45/32,
192.168.1.47/32,
192.168.1.16/32,
192.168.1.28/32,
192.168.1.249/32,
192.168.1.222/32
}"
131net="{
131.107.3.48/32,
131.107.3.47/32
}"
tcp_services="{22,113}"
icmp_types="echoreq"
priv_nets="{127.0.0.0/8,192.168.0.0/16,172.16.0.0/12,10.0.0.0/8}"
set optimization aggressive
scrub in all
nat on rl0 from 192.168.1.0/24 to any -> 61.131.58.x/32
nat on rl0 from 131.107.3.0/24 to any -> 61.131.58.X/32

block all
pass quick on lo0 all
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 inet proto icmp all icmp-type $icmp_types keep states

block in quick on $192_if from 131.107.3.0/24 to any
block out quick on $192_if from any to 131.107.3.0/24
block in quick on $131_if from 192.168.1.0/24 to any
block out quick on $131_if from any to 192.168.1.0/24

pass in on $192_if from $192net to any keep state
pass out on $192_if from any to $192net keep state
pass in on $131_if from $131net to any keep state
pass out on $131_if from any to $131net keep state

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

/etc/pf/shellpf1如下
pfctl -d
pfctl -e
pfctl -f /etc/pf/pf1.conf

/etc/pf/shellpf2如下
pfctl -d
pfctl -e
pfctl -f /etc/pf/pf2.conf

crontab如下 /var/cron/tabs/root
# $OpenBSD: crontab,v 1.9 2001/09/11 19:03:55 millert Exp $
# $Id: crontab-nomail,v 1.1 2002/04/15 01:03:20 jmates Exp $
#
# JAM 2002-04-14 Disabled mailings from root.
#
# /var/cron/tabs/root - root's crontab
#
SHELL=/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/etc/pf
HOME=/var/log
#
#minute hour mday month wday command
#
*/10 18 * * * /etc/pf/shellpf2
*/50 7 * * * /etc/pf/shellpf1
#
# sendmail clientmqueue runner
#
# rotate log files every hour, if necessary
0 * * * * /usr/bin/newsyslog
# send log file notifications, if necessary
#1-59 * * * * /usr/bin/newsyslog -m
#
# do daily/weekly/monthly maintenance
30 1 * * * /bin/sh /etc/daily 1>/var/log/daily.out 2>&1
30 3 * * 6 /bin/sh /etc/weekly 1>/var/log/weekly.out 2>&1
30 5 1 * * /bin/sh /etc/monthly 1>/var/log/monthly.out 2>&1
每天7:50执行脚本shellpf1,18:10执行shellpf2

对于mac与ip绑定,可写一脚本,防止有人改ip上网(会改mac地址的除外)
arp -s 192.168.1.4 00:0c:76:84:52:f0 pub
arp -s 192.168.1.5 00:0c:76:2f:dd:2c pub
45、OpenBSD i386内核选项及PF配置示例详解 本文详细介绍了OpenBSD i386架构下的各类内核选项,包括总线、调试、安全、文件系统、网络等多个方面,并结合实例讲解了PF防火墙的配置方法。通过这些内容,读者可以了解如何根据不同的网络需求灵活配置OpenBSD系统,实现安全高效的网络管理。无论是家庭网络还是小型办公室网络,都能找到适用的解决方案。 阅读详情

相关推荐

OpenBSD 不只是服务器系统,它正在改变我对桌面操作系统的看法

长期使用 Linux 的用户,通常都会形成一套固定认知。Linux 代表自由、开放和高度可定制,可以选择 Ubuntu、Fedora、Arch、Debian 等各种发行版,也可以根据自己的需求调整桌面环境、软件包管理方式以及系统配置。但当我真正把 OpenBSD 作为桌面系统使用后,我发现自己对于“操作系统应该是什么样子”这件事,有了新的理解。OpenBSD 并不是一个追求市场占有率的系统,它甚至很少出现在普通用户的选择列表中。

网络技术联盟站 109

OpenBSD 简体中文FAQ最新版本(含PF)

OpenBSD 简体中文FAQ最新版本: 包含:下载安装一系列基本配置与详细的图解,是新手必备的学习宝典;并且还有PF的详细配置解说及图示(偷笑一下~确实很详细很具体),欢迎下载!

OpenBSD环境下负载均衡与安全配置指南

本文深入探讨了在OpenBSD环境下进行负载均衡和系统安全配置的详细步骤和最佳实践。重点介绍了从OpenSSL切换到LibreSSL的必要性,以及如何使用ports系统构建软件包。同时,详细阐述了负载均衡的类型和目标,包括CARP协议和relayd负载均衡器的使用。文章还强调了系统配置的重要性,包括分离应用程序数据和操作系统数据,以及配置PF防火墙保护非必要的TCP/IP端口。最后,讨论了负载均衡与DNS配置的关系,并强调了在系统管理员中普及负载均衡知识的重要性。

weixin_35094083的博客 409

openbsd+pf配置(转)

openbsd+pf配置(转)[@more@]   openbsd+pf配置   初学openbsd+pf,见笑了,不对的请指正   qq:35907960   mail:yanypunix@yahoo.com.cn ...

ciya3282的博客 250

open bsd pf 软件防火墙

Open BSD PF软件防火墙

jekc2008的专栏 1766

探索OpenBSD网络应用栈的极简哲学

本文深入探讨了OpenBSD项目如何通过其网络应用栈简化网络服务的复杂性。从httpd网络服务器到PF数据包过滤器,再到CARP冗余协议,OpenBSD通过减少非必要的功能来提高效率和安全性。文章还分析了OpenBSD栈的限制和局限性,以及它与其他平台的兼容性问题。

weixin_32287387的博客 438

OpenBsd 配置PF防火墙NAT与端口映射

int_if = "em0"ext_if = "em1"scrub in allnat-anchor "ftp-proxy/*"rdr-anchor "ftp-proxy/*"nat on $ext_if from $int_if:network to any -> (em1)rdr on $int_if proto tcp from any to any p...

weixin_33860147的博客 429

OpenBSD firewall using pf

 OpenBSD pf by Hoang Q. Tran OpenBSD firewall using pfby Hoang Q. Tran It is really easy to configure an OpenBSD gateway for a private network. Here are the following steps:Lock down the b

自由之家 1941

pf 线路路由

本文通过规划网络拓扑图,然后进行BSD配置,利用PF实现策略路由。那么在配置的时候要注意什么呢?下面文章将是你有所收获。   1.说明:   此方案适用于可以使用PF做为防火墙的操作系统,包括FREEBSD/OPENBSD/NETBSD。所谓的策略路由就是在服务器同时

逆雪寒的天坑 1086

掌握网络流量控制与负载均衡:从PF到Relayd

本文深入探讨了在OpenBSD环境下,如何通过PF(Packet Filter)和Relayd实现网络流量控制和负载均衡。内容包括了配置PF过滤规则、管理状态表、以及设置Relayd来重定向流量并执行更高级别的协议检查。文章还介绍了一些实际案例,例如如何允许特定流量通过服务器群,以及如何调整PF的最大状态值以适应高负载的环境。此外,文章详细解释了Relayd的四个主要组件和配置文件/etc/relayd.conf的结构,为读者提供了全面的网络管理和流量分配策略。

weixin_28235889的博客 399

freebsd 打造双 wan 线路 网关

1.说明: 此方案适用于可以使用PF做为防火墙的操作系统,包括FREEBSD/OPENBSD/NETBSD。所谓的策略路由就是在服务器同时连接了两个ISP线路,实现从那个网卡进来的数据包请求,返回给CLIENT时还从那个网卡出去。 2.试验拓扑: 见贴图 图中的『3接口路由器』可以用WIN2K或LINUX系统启动IP转发替代。 3.OPENBSD网络设置: Fx

逆雪寒的天坑 3529

【网络工具】pfctl(待补充QNX&Linux)

PF 从 /etc/pf.conf 中读取配置信息。

CHENDONGHAO1105的博客 838

FreeBSD pf

http://www.freebsdchina.org/forum/topic_24641.html防火墙技术: PFOpenBSD数据包过滤 张文通 翻译 唐 亮 本文版权与原文英文版保持完全一致,鉴于译者水平有限,错误之处难免,请读者自己认真鉴别。 -------------------------------------------------------------...

weixin_34366546的博客 170

OpenBSD&PF之基本防火牆設定

OpenBSD & PF 之基本防火墙设定 说明:OpenBSDPF 基本防火牆啟動及 /etc/pf.conf 設定檔範例研究,我在想 OpenBSD 是不是天生開發出來,就是要擔任防火牆的角色,裝完 OpenBSD 後即可啟用 NAT 及 firewall 的能力,並不需要再去編譯 Kernel 即可使用。Setp 1.開機自動啟動:#vi /etc/rc....

weixin_34310785的博客 223

[OpenBSD] OpenBSD 4.3 下利用 pf + relayd 实现负载均衡和防火墙功能

http://bbs.chinaunix.net/viewthread.php?tid=1100748一,OpenBSD-4.3安装和准备安装方法精化贴上很多,这里不作重复介绍。准备设备:BSD服务器一台、负载均衡测试服务器3台、压力测试服务器2台BSD服务器选购了Lenovo R515 1U机架式服务器CPU:4核 *2内存:1G *4硬盘:73G 1.5K转速 * 3 (...

weixin_33964094的博客 326

The Book of PF: A No-Nonsense Guide to the OpenBSD Firewall

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。http://blog.csdn.net/topmvp - topmvpOpenBSDs stateful packet filter, PF, offers an amazing feature set and support across the major BSD platform

TopMVP 790

Telegraf pf 输入插件:采集 FreeBSD/OpenBSD pf 防火墙状态与计数器

本文围绕 Telegraf 的 `pf` 输入插件展开,介绍它如何通过 `pfctl -s info` 命令采集 FreeBSD / OpenBSD pf 防火墙的状态表计数(State Table)与各类错误/匹配计数器(Counters),输出统一的 `pf` measurement。读完本文,你将掌握该插件的完整配置方式(含 `use_sudo` 权限方案与 sudoers 配置)、全部 1

gitblog_00053的博客 183

linux 访问远程mysql数据库_Linux下启用MySQL数据库远程访问

打开3306端口需要将TCP端口3306开启,使用iptables或者BSD的pf 防火墙Linux下iptables的例子/sbin/iptables -A INPUT -i eth0 -p tcp –destination-port 3306 -j ACCEPT或者如果你只需要允许特定的服务器,ip为10.5.1.3,可以这样:/sbin/iptables -A INPUT -i eth0 -...

weixin_42362931的博客 220

SSLsplit部署完全手册:支持FreeBSD、OpenBSD、Linux、Mac OS X的终极指南

SSLsplit是一个强大的透明SSL/TLS拦截工具,专为网络取证、应用安全分析和渗透测试而设计。本文将为您提供全面的SSLsplit部署指南,涵盖FreeBSD、OpenBSD、Linux和Mac OS X四大操作系统平台。无论您是安全研究人员、系统管理员还是网络工程师,这份手册都将帮助您快速掌握SSLsplit的安装、配置和使用技巧。🚀 ## 📋 SSLsplit核心功能概述 SSL

gitblog_00062的博客 430
上一篇: Freebsd系统日志与备份
下一篇: 用rsync实现网站镜像和备份
freebyu
博客等级 码龄23年 1粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值