linux中使用curl通过pfsense captive portal 认证

使用网络ping检测,每次发两个icmp包,如果检查某个公网IP不通时,则执行pfsense portal认证。

#!/bin/sh
while :
do
ping -c 2 baidu.com
[ $? -ne 0 ] && curl -d "auth_user=$user&auth_pass=$password&accept=Continue&zone=whitelist" -v http://192.168.1.1:8002/index.php\?zone=whitelist

sleep 10
done
 nohup portal_auth.sh >/tmp/auth.log 2>&1 &

 

wr703n openwrt 改8M flash

前些天没事发现wr703n能刷openwrt,于是就将其从他人手上回收回来了。

按网上说的刷完openwrt之后,开装luci却发现no enough space left。原来flash容量太小了,刷完openwrt之后仅剩200多k的可用空间。

于是将原来的flash提取了出来,直接烧到新的8M flash上去,然后重新通电,以太网口还是正常工作的,但是wifi却用不了。

http://blog.sina.com.cn/s/blog_776596a50101kbvg.html说到,art信息丢失所以wifi不可用了。按照此文,重新合并rom文件。

因为改的flash大小不一样,只是生成art前文件大小有所变动,另自己早用dd生成文件时,发现若使用单位为M的话,似乎生成的文件大小不正确,故使用字节为单位。

一、在原来的flash上刷好openwrt并登录,备份mtd分区:

#cd /tmp

#cat /dev/mtdblock0 > uboot.bin

#cat /dev/mtdblock4 > art.bin

#cat /dev/mtdblock5 > firmware.bin

备份完的三个文件,可以直接合成为4M flash可用的固件:cat uboot.bin firmware.bin art.bin > wr703n.bin

二、合成8M flash可用固件:

首先生成一个内容为全0xFF 4M大的文件:

tr ‘\000’ ‘\377’ /dev/zero dd of=0xFF_4MB.bin bs=1024 count=4096

然后再合成8M flash可用固件:

cat uboot.bin firmware.bin 0xFF_4MB.bin art.bin > wr703n_8M.bin

最后直接将合成的文件用编程器刷进8M flash,换上flash。

关于配置,参考http://blog.csdn.net/qinpeng_zbdx/article/details/8570488

pfsense 中编辑dnsmasq配置

之前在想自己写一些host进pfsense中,发现每次保存完之后,若是重启了dns forwarder,hosts文件就会重启回默认状态。

网上搜了个文章,可以通过dnsmasq配置来解决。

pfsense 默认文件系统是只读的,所以通过ssh登录之后,首先要将系统挂载为可写:

#mount -uw /

然后创建一个/usr/local/etc/dnsmasq.conf文件,添加内容定义dnsmasq配置文件的路径:

#echo “conf-dir=/usr/local/etc/dnsmasq.d” >/usr/local/etc/dnsmasq.conf

创建目录并新增配置文件:

#mkdir /usr/local/etc/dnsmasq.d

#vi /usr/local/etc/dnsmasq.d/test.conf

添加内容如:

address=/test.com/192.168.1.11

address.com/.test.com #支持通配符*,如address=/*.test.com/192.168.1.11

在内网机器上配置DNS为pfsense地址,通过ping test.com来验证是否生效,记得重启pfsense dns forwarder服务使配置生效。。

link:http://thomasloughlin.com/pfsense-dnsmasq-advanced-setup/