TMG 2010 使用脚本来导入URL集和域名集
作为一个网管,相信有领导叫你限制员工上网的情况,例如只限制员工访问某些网站。在禁止的网站数量少的时候,添加URL集或者域名集是一件很简单的事情,如果禁止的网站数量多达1500个呢?如果再使用ISA Server的管理控制台来添加,相信你只会无语到极点。放心,在ISA Server 2004中,已经考虑到了这点。利用它提供的编程接口,你可以很轻松的完成这项任务。你只需要将这些域名集或者URL集放在一个文本文件中,然后其他的事情,可以放心的交给脚本去做。
建立导入脚本
下面是一段脚本,这段脚本的功能是导入“urls.txt”文件中的URL集到ISA Server中定义的“Urls”对象中。将下列代码复制到一个文件中,然后另存为 ImportURLs.vbs。
< ------------------Start with the line below this one----------------------- >
Set Isa = CreateObject("FPC.Root")
Set CurArray = Isa.GetContainingArray
Set RuleElements = CurArray.RuleElements
Set URLSets = RuleElements.URLSets
Set URLSet = URLSets.Item("Urls")
Set FileSys = CreateObject("Scripting.FileSystemObject")
Set UrlsFile = FileSys.OpenTextFile("urls.txt", 1)
For i = 1 to URLSet.Count
URLSet.Remove 1
Next
Do While UrlsFile.AtEndOfStream <> True
URLSet.Add UrlsFile.ReadLine
Loop
WScript.Echo "Saving..."
CurArray.Save
WScript.Echo "Done"
< ------------------End with the line above this one----------------------- >
黄色高亮显示的项你可以根据你自己的需要进行替换,
这行:
Set URLSet = URLSets.Item("Urls")
你可以修改Urls为你在ISA Server中建立的URL集;
这行:
Set UrlsFile = FileSys.OpenTextFile("urls.txt", 1)
你可以将urls.txt修改为你的URL集文本文件名。
下面一段脚本将domains.txt文件中的域名集导入到ISA Server中的Domains对象中,将这段代码复制到一个文件中,另存为ImportDomains.vbs。
< ------------------Start with the line below this one----------------------- >
Set Isa = CreateObject("FPC.Root")
Set CurArray = Isa.GetContainingArray
Set RuleElements = CurArray.RuleElements
Set DomainNameSets = RuleElements.DomainNameSets
Set DomainNameSet = DomainNameSets.Item("Domains")
Set FileSys = CreateObject("Scripting.FileSystemObject")
Set DomainsFile = FileSys.OpenTextFile("domains.txt", 1)
For i = 1 to DomainNameSet.Count
DomainNameSet.Remove 1
Next
Do While DomainsFile.AtEndOfStream <> True
DomainNameSet.Add DomainsFile.ReadLine
Loop
WScript.Echo "Saving..."
CurArray.Save
WScript.Echo "Done"
< ------------------End with the line above this one----------------------- >
黄色高亮显示的项你可以根据你自己的需要进行替换,
这行:
Set DomainNameSet = DomainNameSets.Item("Domains")
你可以修改Domains为你在ISA Server中建立的域名集;
这行:
Set DomainsFile = FileSys.OpenTextFile("domains.txt", 1)
你可以将d
使用导入脚本
在使用导入脚本之前,你需要在ISA Server中建立对应的URL集和域名集对象。
执行以下步骤建立名为URLs的URL集:
- 在ISA Server管理控制台,展开服务器,点击防火墙策略;
- 在防火墙策略,点击任务面板上的工具箱,然后点击网络对象标签;
- 在网络对象标签,点击新建,然后选择URL集;
- 在新建URL集规则元素对话框,在名字文本框中输入URLs,然后点击确定;

- 此时,在网络对象的URL集中显示出了新建立的URLs;

下一步我们建立名为Domains的域名集,注意,我们建立这样的名字只是为了和脚本文件中的名字对应。执行以下步骤:
- 在ISA Server管理控制台,展开服务器,点击防火墙策略;
- 在防火墙策略,点击任务面板上的工具箱,然后点击网络对象标签;
- 在网络对象标签,点击新建,然后选择域名集;
- 在新建域名集规则元素对话框,在名字文本框中输入Domains,然后点击确定;

- 此时,在网络对象的域名集中显示出了新建立的Domains;

- 在防火墙策略面板点击应用以保存修改和更新防火墙策略。
现在我们需要建立两个文本文件 urls.txt 和 domains.txt,这是在脚本中使用的默认文件名
在这个例子中,domains.txt 文件包含以下内容:
stuff.com
blah.com
scumware.com
urls.txt 文件包含以下内容:
http://www.cisco.com
http://www.checkpoint.com
http://www.sonicwall.com
接下来,将这两个文件放在那两个脚本文件相同的目录下,我们在此复制到C盘的根目录。
双击 ImportURLs.vbs 文件,你会看见如下的显示“ Saving...”的对话框,点击OK;

根据你导入URL数量的多少,几秒后你会看见如下的对话框,显示导入已经完成,点击 OK。

同样的,双击 ImportDomains.vbs 完成从Domains.txt文件中导入域名集。
如果此时ISA Server控制台已经打开了,关闭它后再次打开(或者在ISA Server管理控制台上点击刷新),此时,你可以在工具箱的网络对象里看见导入的URL集和域名集。


如果导入的时候已经有相同的URL或者域名,ISA Server并不会建立重复的项,会保留原来的项。
omains.txt修改为你的URL集文本文件名。
TMG 2010 使用脚本来导入URL集和域名集的更多相关文章
- 测试必备技能系列1 :通过mysql命令进行脚本数据导入
老徐,分享测试项目中实际能解决问题的干货! 今日分享: 如何通过mysql命令行,导入mysql脚本文件数据? ----- 解决实际的问题: 工作过程中,经常需要导入mysql脚本文件 很多同 ...
- PL/SQL将sql脚本数据导入Oracle
PL/SQL将sql脚本数据导入数据库: 1.首先,使用plsql登录到需要导入数据的数据库.在[tools]--[Import tables] 2.选择第二个[SQL Inserts],在下面,点击 ...
- Linux 用 shell 脚本 批量 导入 csv 文件 到 mysql 数据库
前提: 每个csv文件第一行为字段名 创建的数据库字段名同csv 文件的字段名 1. 批量导入 多个 csv 文件 for file in ./*.csv;do mv $file tablename. ...
- 源泉书签,助您管理海量收藏。www.yuanquanshuqian.com 今日更新:支持了导入url为js代码的书签
源泉书签,助您管理海量收藏.www.yuanquanshuqian.com 今日更新:支持了导入url为js代码的书签
- LUA中将未分类数据分为测试集和训练集
require 'torch' require 'image' local setting = {parent_root = '/home/pxu/image'} function list_chil ...
- 机器学习入门06 - 训练集和测试集 (Training and Test Sets)
原文链接:https://developers.google.com/machine-learning/crash-course/training-and-test-sets 测试集是用于评估根据训练 ...
- 斯坦福大学公开课机器学习:advice for applying machine learning | model selection and training/validation/test sets(模型选择以及训练集、交叉验证集和测试集的概念)
怎样选用正确的特征构造学习算法或者如何选择学习算法中的正则化参数lambda?这些问题我们称之为模型选择问题. 在对于这一问题的讨论中,我们不仅将数据分为:训练集和测试集,而是将数据分为三个数据组:也 ...
- 【ML入门系列】(一)训练集、测试集和验证集
训练集.验证集和测试集这三个名词在机器学习领域极其常见,但很多人并不是特别清楚,尤其是后两个经常被人混用. 在有监督(supervise)的机器学习中,数据集常被分成2~3个,即:训练集(train ...
- Rancher2.0导入本地RKE Kubernetes集群图解
简要说明: 使用RKE工具在192.168.3.161机器上,创建包含两个节点的Kubernetes集群,(192.168.3.162和192.168.3.163).RKE会自动在/home/用户 ...
随机推荐
- String类的substring方法
下列程序的输出是什么? class A { public static void main(String[] a) { String v = “base”; v.concat(“ba ...
- Python 获取Kmeans聚类结果每一类的数据
获取聚类结果中每一类的数据,该数据类型是DataFrame 思路:获取clf_KMeans的标签,我这里是聚三类,标签就是0,1,2 将Label转成Series类型,再筛选出指定标签的res0,我筛 ...
- 基于RedHat6.5的Greenplum环境配置
安装Greenplum的时候遇到了很多坑,在此记录下 欢迎园友补充问题,共同研究解决! 安装说明 1.环境说明 操作系统:Red hat 6.5 64 位 2.配置规范 2.1基本说明 greenpl ...
- “System.OutOfMemoryException”类型的异常在 mscorlib.dll 中发生,但未在用户代码中进行处理
“System.OutOfMemoryException”类型的异常在 mscorlib.dll 中发生,但未在用户代码中进行处理 这个原因肯定不是因为程序内部的逻辑错误,或者别的什么情况. 想想,肯 ...
- AutoResetEvent和ManualResetEvent理解
AutoResetEvent和ManualResetEvent用于多线程之间代码执行顺序的控制,它们继承自WaitHandle,API相同,但在使用中还是有区别的. 每次使用时虽然理解了,但由于没有去 ...
- HTML骨架详解
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Groovy中的操作符重载
操作者 方法 a + b a.plus(b)中 a - b a.minus(b)中 a * b a.multiply(b)中 a ** b a.power(b)中 a / b a.div(b)中 a ...
- SqlServer 2005升级至SqlServer 2008 解析Json 字符集问题
如果你数据库是通过sqlserver 2008以上版本创建的请绕过: 客户以前用的是sqlserver2005 创建的数据库.后来升级到 sqlserver 2008 . 有个业务用到了json查询 ...
- Thymeleaf学习记录(3)--语法
语法: 标准表达式语法 简单表达: 变量表达式: ${...} 选择变量表达式: *{...} 消息表达式: #{...} 链接网址表达式: @{...} 字面 文本文字:'one text','An ...
- 原型链中的prototype、__proto__和constructor的关系
先来看一张图,这张图可以说是围绕以下代码完整的描述了各对象之间的关系.接下来我们来看看如何一步步画出这张图. function Foo(){}; var foo = new Foo(); 首先,明确几 ...