透明Web 代理功能允许客户通过代理服务器间接访问网络,客户端的请求连接到代理服务器,发出访问请求,目标在其他外部网络的文件、或者其他资源,这时代理服务器把该请求到的数据缓存在本地(仅仅针对HTTP 协议),然后再发送给客户端。而这一切对于客户端来说都是透明的(客户端根本不需要设置)
1. 配置ROS路由器重新定向来自客户机器发到80端口的请求,这里我们假设ROS 路由器下面的客户都是连接到ROS 路由的本地网卡LAN 上面(你们自己本地网卡叫什么名字这里就填什么),把这些请求全部转移到ROS 路由器上的WEB PROXY 代理服务器监听的8080端口上面(这里的8080端口可以自己定义):
[admin@MikroTik] >ip firewall nat add in-interface=LAN dst-port=80 protocol=tcp action=redirect to-ports=8080 chain=dstnat
2. 定义本地的DNS服务器地址(这个定义在高级设置2里面会解释有更多功能):
[admin@MikroTik] ip dns set primary-dns=202.103.224.58(你们根据自己的本地的DNS设置)
3. 设置代理服务器和其端口8080(这个端口可以自己改):
[admin@MikroTik] ip web-proxy set enabled=yes port=8080 transparent-proxy=yes
====================================
到这里 WEB-PROXY 透明代理服务器已经设置完成
不过注意的一点是 这个功能目前仅仅针对 HTTP ,HTTPS 和FTP 协议的请求目前无法通过这个协议代理出去
=====================================
简单的应用举例
1、比如我要禁止企业内部所有上网的员工下载MP3 和 MPG 文件
[admin@MikroTik] ip web-proxy access> add url=":/.mp[3g]$" action=deny
通配符解释:
在内容之间必须用引号 " " 来包括
反斜杠 用来分隔1个变量
1个反斜杠+1个点 . =windows 下面的 * 符号 (*号 和 ?的作用和WINDOWS下一样)
变量用 $ 符号结束
中括号 [ 或者 ] 用来替代 反斜杠
2、比如我要禁止企业内部所有的 FTP 协议活动
[admin@MikroTik] ip web-proxy access> add url="ftp://*" action=deny
终端显示出来如下
[admin@MikroTik] ip web-proxy access> print
0 url=":.mp[3g]$" action=deny
1 url="ftp://*" action=deny
3、用DNS的功能屏蔽1些你想屏蔽的网站
一般我们要封掉某个网址,比如 www.123.com ,按常规都是在IP-FIREWALL-FILTER RULES中,添加一个CONTENT=123.com的DROP策略,但这样做不单止在网址含有123.COM的网址屏蔽掉,一些网站页面中含有123.com的字符的,也会被无情地DROP。如果使用了web-proxy 代理服务器,因为启用了ROS的DNS功能,我们可以这样做一条规则把 这个恶意网站屏蔽(或者让他们转到你想他们去的网站)
/ip dns static
add name www.123.com address=127.0.0.1
这里我们就不用整人家了,直接把你想封的网站指向它自己本地的主机就可以了。
相信看到这里大家都对这个功能有所了解了。
如果用了这条规则发现无法访问路由器了
必须在这条规则前加1条
/ip firewall nat add in-interface=LAN dst-port=80 protocol=tcp action=redirect to-ports=8080 chain=dstnat dst-address=!192.168.0.1/32
这里假设你的路由器IP 设置为 192.168.0.1
1. 配置ROS路由器重新定向来自客户机器发到80端口的请求,这里我们假设ROS 路由器下面的客户都是连接到ROS 路由的本地网卡LAN 上面(你们自己本地网卡叫什么名字这里就填什么),把这些请求全部转移到ROS 路由器上的WEB PROXY 代理服务器监听的8080端口上面(这里的8080端口可以自己定义):
[admin@MikroTik] >ip firewall nat add in-interface=LAN dst-port=80 protocol=tcp action=redirect to-ports=8080 chain=dstnat
2. 定义本地的DNS服务器地址(这个定义在高级设置2里面会解释有更多功能):
[admin@MikroTik] ip dns set primary-dns=202.103.224.58(你们根据自己的本地的DNS设置)
3. 设置代理服务器和其端口8080(这个端口可以自己改):
[admin@MikroTik] ip web-proxy set enabled=yes port=8080 transparent-proxy=yes
====================================
到这里 WEB-PROXY 透明代理服务器已经设置完成
不过注意的一点是 这个功能目前仅仅针对 HTTP ,HTTPS 和FTP 协议的请求目前无法通过这个协议代理出去
=====================================
简单的应用举例
1、比如我要禁止企业内部所有上网的员工下载MP3 和 MPG 文件
[admin@MikroTik] ip web-proxy access> add url=":/.mp[3g]$" action=deny
通配符解释:
在内容之间必须用引号 " " 来包括
反斜杠 用来分隔1个变量
1个反斜杠+1个点 . =windows 下面的 * 符号 (*号 和 ?的作用和WINDOWS下一样)
变量用 $ 符号结束
中括号 [ 或者 ] 用来替代 反斜杠
2、比如我要禁止企业内部所有的 FTP 协议活动
[admin@MikroTik] ip web-proxy access> add url="ftp://*" action=deny
终端显示出来如下
[admin@MikroTik] ip web-proxy access> print
0 url=":.mp[3g]$" action=deny
1 url="ftp://*" action=deny
3、用DNS的功能屏蔽1些你想屏蔽的网站
一般我们要封掉某个网址,比如 www.123.com ,按常规都是在IP-FIREWALL-FILTER RULES中,添加一个CONTENT=123.com的DROP策略,但这样做不单止在网址含有123.COM的网址屏蔽掉,一些网站页面中含有123.com的字符的,也会被无情地DROP。如果使用了web-proxy 代理服务器,因为启用了ROS的DNS功能,我们可以这样做一条规则把 这个恶意网站屏蔽(或者让他们转到你想他们去的网站)
/ip dns static
add name www.123.com address=127.0.0.1
这里我们就不用整人家了,直接把你想封的网站指向它自己本地的主机就可以了。
相信看到这里大家都对这个功能有所了解了。
如果用了这条规则发现无法访问路由器了
必须在这条规则前加1条
/ip firewall nat add in-interface=LAN dst-port=80 protocol=tcp action=redirect to-ports=8080 chain=dstnat dst-address=!192.168.0.1/32
这里假设你的路由器IP 设置为 192.168.0.1