最后的步骤是做代理服务器squid,主要是限制无线客户端的web浏览和即时通讯(如msn)
squid安装方式同DHCP,略
下面是笔者的/etc/squid.squid.conf部分配制(配制文件很长)
http_port 3128 //代理服务器的端口3128
cache_mem128M // cache的大小,大约使用物理内存1/3
cache_dir ufs /var/spool/squid 100 16 256 // 设置缓冲目录和空间大小
acl myclients src 192.168.0.0/24 //客户端范围
acl badurl url_regex –i qq //定义需要过滤的链接,如:qq
acl proxy_time time MTWHF 8:00-18:00 // 允许使用代理服务器的时间
http_access deny all badurl // 拒绝坏的的链接
http_access deny all //拒绝其他的所有连接访问
启动proxy
[root@Jack ~]# /etc/init.d/squid start
在客户端的浏览器里填写代理服务器信息(ip and port)
由于在防火墙脚本里做了web数据到的代理服务器的重定向,所以必须使用代理,才能访问web.
客户端ibookG4尝试访问qq的官方站点 www.qq.com,遭拒绝。测试成功
至此,用于办公环境的无线AP完成。如果希望在下次开机时自动执行,可以把iwconfig配制命令写成shell脚本,chomd 0755, 与fwsh(防火墙),dhcp, squid启动命令,一起添加在/etc/rc.d/rc.local文件中。
总结
Linux AP | 无线网络的 驱动和物理参数设置 | 数据的转发方式 | 安全性 | 配制难易程度 | 扩展性 | 硬件的要求 |
家庭环境 | 相同 | 用brctl做网桥。在数据链路层转发 | 无数据过滤功能, 安全性差 | 简单。可以编写shell脚本 自动执行 | 无
仅仅是网桥 | 低 |
办公环境 | 相同 | 用netfilter做NAT,在IP层做转发 | 强大的数据过滤能力 安全性好 | 复杂。 配制难度大, 测试复杂,对网络知识要求高 | 有 可以集成DHCP PROXY 服务 | 高 对内存 和硬盘(假如做代理)要求高 |
当然,实现AP的方式还有很多,如用Zebra软件配制动态路由。
笔者只是用台式机做了一个无线AP的模型,来讨论linux做AP的可行性。
欢迎大家指教。