首页
关于本博客
友情链接
推荐
linux/shell
Search
1
LEDE官方固件安装中文语言包的方法
11,087 阅读
2
LEDE固件踢出弱信号客户端,实现WiFi无缝漫游脚本
9,183 阅读
3
基于CloudFlare API的纯Shell动态DNS(DDNS)脚本
8,153 阅读
4
一次OpenVPN交叉编译笔记
6,664 阅读
5
利用iptables的string模块来屏蔽域名(关键词匹配)
6,111 阅读
study
OpenWrt/LEDE
网络技术
数通
HCNP/CCNP
linux
shell
CentOS
Ubuntu/Debian
php
Linux应用
C#
C/C++
虚拟化
IDC
杂项
MySQL
运维笔记
zabbix
seafile
openvpn
QEMU/KVM
windows
html
nginx
互联网应用
IP地址段汇总
登录
Search
标签搜索
nginx
OpenWrt
openvpn
SSH
seafile
cloudflare
iptables
openssl
linux
letsencrypt
CentOS
反向代理
ftp
openvpn配置模板
vsftpd
seafile网盘
Linux启动脚本
ddns
nas
seafile服务器
自渡
累计撰写
75
篇文章
累计收到
1
条评论
首页
栏目
study
OpenWrt/LEDE
网络技术
数通
HCNP/CCNP
linux
shell
CentOS
Ubuntu/Debian
php
Linux应用
C#
C/C++
虚拟化
IDC
杂项
MySQL
运维笔记
zabbix
seafile
openvpn
QEMU/KVM
windows
html
nginx
互联网应用
IP地址段汇总
页面
关于本博客
友情链接
推荐
linux/shell
搜索到
2
篇与
网络技术
的结果
2024-11-11
OpenWrt低成本企业组网+访问控制+多SSID绑定不同VLAN实例部署
部署背景在一个中小规模企业中,无线网络的合理规划是非常有必要的,最专业(当然也是最费钱)的方案就是使用主流厂家的AC+AP全套解决方案(华为、Cisco、Aruba等),这一套下来少说得几千块,对于有钱的老板是九牛一毛,但对于爱折腾的我,想努力将成本控制到最低😏将低价产品的功能发挥到极致。于是打算网络全部采用openwrt来解决。本案例通过在主网关配置不同VLAN,并经由无线AP透传到网关来实现不同SSID对应不同VLAN的功能,并在网关上配置防火墙,用以隔离内部客户端和访客客户端,保障内部网络安全。网络结构图部署环境及所需的设备网络环境布局从电信处拉得一条200M对等专线办公室10间,会议室1间,每间办公室放置1台无线AP,会议室放置2台无线AP规划3个网段(各自独立VLAN),分别为:有线PC网段、内部无线网络、访客无线网络。设备清单主网关:采用openwrt的X86软路由。由旧主机联想ThinkCentre M4500s-N000烧录openwrt X86固件承担。系统采用OpenWrt 21.02.2无线AP:从淘宝处够得已刷好breed的二手小米的CR660X路由器12台充当AP。综合对比目前的多种设备及openwrt支持情况,CR660X系列是成本较低,且对openwrt支持较好的WIFI6路由器。实测在干扰较小的情况下,2.4GHz可以跑100-200Mbps左右,5GHz可以跑600-800Mbps。交换机:锐捷RG-ES124GD 24口千兆交换机一台、每间办公室配置H3C S2G 8口交换机一台。网段划分VLAN 1 : 172.18.1.0/24 ; 默认VLAN,系统默认生成的网桥“br-lan”,作为有线PC网段,用于连接所有有线设备VLAN 10:172.18.10.0/22 ; 内部无线网络段VLAN 20:172.18.20.0/22 ; 访客无线网络段开始配置主网关网络设备配置将通过命令行和LUCI页面相结合的方式来完成网关设备情况部署外置网卡:因公司服务器都已上云,客户端主要以访问外网为主。因此本软路由仅配置了2个网络接口,一个用于上联电信,一个用于下联交换机并连接客户端。eth0 :上联电信运营商eth1 :下联锐捷RG-ES124GD交换机并布线到各办公室配置外部IP修改/etc/config/network文件config interface 'wan' option device 'eth0' option proto 'static' option ipaddr '120.43.111.130' option netmask '255.255.255.252' option gateway '120.43.111.129' option dns '218.85.152.99 218.85.157.99'配置好3个VLAN及网段、DHCP、防火墙VLAN及网段配置:下联客户端的物理设备为eth1,因此需要配置该网口允许VLAN10和VLAN20通过。这样子设备在收到来自AP传来的带有VLAN TAG标签的数据包,就会将其转发到相应的VLAN端口。通过/etc/config/network配置文件中定义各个VLAN的VID,并设置IP段(为方便管理,局域网内不配置IPV6)#默认VLAN 1 有线PC网段 config interface 'lan' option device 'br-lan' option proto 'static' option netmask '255.255.255.0' option ipaddr '172.18.1.1' #配置VLAN 10 虚拟接口,并允许VLAN10通过 config device option type '8021q' option ifname 'eth1' option vid '10' option name 'eth1.10' option ipv6 '0' #配置VLAN 20 虚拟接口,并允许VLAN20通过 config device option type '8021q' option ifname 'eth1' option vid '20' option name 'eth1.20' option ipv6 '0' #配置VLAN 10(内部无线网络段)的网段 config interface 'VLAN10' option proto 'static' option device 'eth1.10' option ipaddr '172.18.10.1' option netmask '255.255.252.0' #配置VLAN 20(访客无线网络段)的网段 config interface 'VLAN20' option proto 'static' option device 'eth1.20' option ipaddr '172.18.20.1' option netmask '255.255.252.0' DHCP配置:通过编辑修改/etc/config/dhcp文件,分别为VLAN1 VLAN10 VLAN20三个接口配置DHCP服务器config dhcp 'lan' option interface 'lan' option start '2' option limit '250' option leasetime '24h' list dhcp_option '6,218.85.152.99,218.85.157.99' list ra_flags 'none' config dhcp 'VLAN10' option interface 'VLAN10' option start '2' option limit '1000' option leasetime '24h' list dhcp_option '6,218.85.152.99,218.85.157.99' list ra_flags 'none' config dhcp 'VLAN20' option interface 'VLAN20' option start '2' option limit '1000' option leasetime '24h' list dhcp_option '6,218.85.152.99,218.85.157.99' list ra_flags 'none' 防火墙配置:修改/etc/config/firewall以配置不同区域防火墙#配置外网区域防火墙 config zone option name 'wan' option input 'REJECT' option output 'ACCEPT' option masq '1' option mtu_fix '1' list network 'wan' list network 'wan6' option forward 'REJECT' #三个区域的防火墙默认配置 config zone option name 'lan' option input 'ACCEPT' option output 'ACCEPT' option forward 'ACCEPT' list network 'lan' config zone option name 'VLAN10' option input 'ACCEPT' option output 'ACCEPT' option forward 'ACCEPT' list network 'VLAN10' config zone option name 'VLAN20' option input 'ACCEPT' option output 'ACCEPT' option forward 'ACCEPT' list network 'VLAN20' #配置VLAN 10防火墙区域 config zone option name 'VLAN10' option input 'ACCEPT' option output 'ACCEPT' option forward 'ACCEPT' list network 'VLAN10' #配置VLAN 20防火墙区域 config zone option name 'VLAN20' option input 'ACCEPT' option output 'ACCEPT' option forward 'ACCEPT' list network 'VLAN20' #允许三个VLAN通过WAN上网 config forwarding option src 'lan' option dest 'wan' config forwarding option src 'VLAN10' option dest 'wan' config forwarding option src 'VLAN20' option dest 'wan' #配置允许各个VLAN互相通信,但不允许访客VLAN访问其他VLAN config forwarding option src 'lan' option dest 'VLAN10' config forwarding option src 'lan' option dest 'VLAN20' config forwarding option src 'VLAN10' option dest 'lan' config forwarding option src 'VLAN10' option dest 'VLAN20' 开始配置无线AP无线AP: 设备采用的是已刷好breed的CR6608路由器,并刷入openwrt原生固件(22.03.5版本)。新版本openwrt已经移除了原来旧版本中的交换机(swconfig)功能,因此在LUCI页面的“网络”选项中,已经无法通过“交换机”功能来配置VLAN。新版本的openwrt采用了DSA分布式交换机架构,在 DSA 中,每个交换机端口都是一个单独的 Linux 接口。这意味着ip/ifconfig命令将显示接口等lan1,lan2,wan等。因此,可以通过建立网桥的方式来恢复旧版本openwrt的功能,下面是每台CR6608的/etc/config/network的详细配置。#loopback接口的默认配置,无需改变。 config interface 'loopback' option device 'lo' option proto 'static' option ipaddr '127.0.0.1' option netmask '255.0.0.0' #保留lan2接口,作为CR6608的配置接口,以防止出现错误无法连接设备。 config device option name 'br-lan' option type 'bridge' list ports 'lan2' #保留默认网桥br-lan,并仅关联lan2口,与上行配置相同,用于管理设备用。 #仅当终端设备连接lan2接口时,才可通过192.168.12.1地址来管理设备。 config interface 'lan' option device 'br-lan' option proto 'static' option ipaddr '192.168.12.1' option netmask '255.255.255.0' #建立一个名为sw0的网桥,并将wan口加入该网桥组,用于上联交换机、网关设备 config device option type 'bridge' option name 'sw0' option bridge_empty '1' list ports 'wan' #定义sw0.1接口 config device option name 'sw0.1' option type '8021q' option ifname 'sw0' option vid '1' #将wan口定义为dhcp模式,与sw0.1关联,此时wan口模式为untagged,AP将从上级网关获取IP地址,获取的IP地址VLAN标签为1,与有线设备同一网段。 config interface 'wan' option proto 'dhcp' option type 'bridge' option device 'sw0.1' #创建VLAN桥,设置AP从wan口获取IP时不打标签,即获取上级网关的VLAN1,与有线PC同一网段的IP。 config bridge-vlan option device 'sw0' option vlan '1' list ports 'wan' #设置允许VLAN10数据包通过,并会打上VLAN TAG后转发到上级网关。 config bridge-vlan option device 'sw0' option vlan '10' list ports 'wan:t' config interface 'vlan10' option proto 'none' option device 'sw0.10' #设置允许VLAN20数据包通过,并会打上VLAN TAG后转发到上级网关。 config bridge-vlan option device 'sw0' option vlan '20' list ports 'wan:t' config interface 'vlan20' option proto 'none' option device 'sw0.20' 将SSID绑定VLAN编辑/etc/config/wireless来完成SSID的设置并绑定不同VLAN#定义2.4GHz射频卡的设置 config wifi-device 'radio0' option type 'mac80211' option path '1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0' option band '2g' option cell_density '0' option htmode 'HE40' option txpower '20' option channel 'auto' option log_level '1' #定义5GHz射频卡的设置,将信道设为自动 config wifi-device 'radio1' option type 'mac80211' option path '1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0+1' option band '5g' option cell_density '0' option country 'CN' option htmode 'HE80' option log_level '1' option channel 'auto' #定义内部WIFI的SSID为zavierlab.com,密码为12345678,绑定VLAN10。 #如此,连接该SSID的客户段将会被标记为VLAN10的数据,直接透传到主网关,获取到网段为172.18.10.0/22的地址。 #2.4GHz设置 config wifi-iface 'default_radio0' option device 'radio0' option mode 'ap' option ssid 'zavierlab.com' option encryption 'psk2+ccmp' option key '12345678' option network 'vlan10' #5GHz设置 config wifi-iface 'default_radio1' option device 'radio1' option mode 'ap' option network 'vlan10' option ssid 'zavierlab.com' option encryption 'psk2+ccmp' option key '12345678' #定义访客WIFI的SSID为zavierlab.com-Guest,密码为12345678,绑定VLAN20。 #如此,连接该SSID的客户段将会被标记为VLAN10的数据,直接透传到主网关,获取到网段为172.18.20.0/22的地址。 #2.4GHz设置 config wifi-iface 'wifinet2' option device 'radio0' option mode 'ap' option ssid 'zavierlab.com-Guest' option encryption 'psk2+ccmp' option key '12345678' option network 'vlan20' config wifi-iface 'wifinet3' option device 'radio1' option mode 'ap' option ssid 'zavierlab.com-Guest' option encryption 'psk2+ccmp' option key '12345678' option network 'vlan20' 修改AP防火墙编辑/etc/config/firewall以设置CR6608允许通过wan口管理 即在wan对应的zone里,将option input由REJECT改为ACCEPT以确保可以通过AP的WAN口直接管理config zone option name 'wan' option output 'ACCEPT' option masq '1' option mtu_fix '1' option input 'ACCEPT' option forward 'ACCEPT' list network 'wan' list network 'wan6'在主网关中为每一台AP定义静态DHCP方便管理需要记住每台AP的WAN口的MAC地址,本案例将172.18.1.240-172.18.1.252作为AP的IP地址段编辑主网关的/etc/config/dhcp文件,添加如下: config host option name 'AP-01' option ip '172.18.1.240' option mac 'AA:AA:AA:AA:AA:AA' #填入对应的AP MAC地址 config host option name 'AP-02' option ip '172.18.1.241' option mac 'AA:AA:AA:AA:AA:AA' #填入对应的AP MAC地址 ···如此往复配置 总结此组网模式通过在双口软路由上划分不同VLAN,并通过无线AP的不同SSID绑定VLAN的方式实现区域隔离。这也是目前大多数公共WIFI的常见做法,可以完美实现不同用户组的隔离,确保网络安全。该组网需要熟悉网络原理和linux命令,如有类似组网需求的朋友可以参考此案例。有不懂的可以留言博主协助。 😇
2024年11月11日
22 阅读
0 评论
0 点赞
2018-04-26
基于iptables,针对中国移动HTTP劫持,发送RST包屏蔽部分网站的解决办法
原理:在Linux系统的路由器上,通过iptables,或者UNIX,如华为,cisco等设备,使用ACL将中国移动IDS系统和旁路设备返回的虚假数据包丢弃。iptables配置规则丢弃中国移动IDS系统设备返回的RST数据包,解决墙中墙问题。iptables -A FORWARD -p tcp --tcp-flags RST RST -j DROP基于TTL检测,将旁路设备抢答返回的虚假数据包丢弃,解决当下载以.exe、.rar、.zip、.apk等为后缀的文件时,被中国移动通过302重定向至自己网内cache服务器的问题。通过抓包检测,旁路设备返回的虚假302重定向数据包TTL值在20-30内,不同省份可能不同,而真实的服务器TTL大都在40-60左右(Linux)和100-128(Windows)。iptables -A FORWARD -p tcp -m tcp --sport --m ttl --ttl-gt 20 -m ttl --ttl-lt 30 -j DROPiptables其他参数-s 0.0.0.0/0 可自定义源IP-d 0.0.0.0/0 自定义目的IP--ttl-gt TTL大于一个值--ttl-lt TTL小于一个值--ttl-eq TTL等于一个值
2018年04月26日
2,933 阅读
0 评论
0 点赞