Is This Still The VPN?

VPN Server:PPTPD For Linux
VPN Client:PPTP Client For Linux
Connect/Disconnect Command:pon / poff $Tunnel
Requirement:
MPPE support in kernel
* How to Check:modprobe ppp-compress-18 && echo Success
* How to Install:
a.Prepare the system for kernel package building:
gcc bin86 libc6-dev bzip2 kernel-package kernel-patch-mppe
b.Install, unpack, and clean the kernel source package
make-kpkg clean
c.Copy /boot/config* ./.config
d.Build the kernel package:
make-kpkg
–added-patches mppe
–append-to-version -mppe
–config oldconfig
[–initrd kernel-image](Not Woody Version)
e. When you are prompted for the CONFIG_PPP_MPPE option, type m and press Enter.
f. Don’t forget to reboot.
ServerSide:
/etc/ppp/chap-secret for username & password
/etc/pptpd.conf for remoteip
ClientSide:
/etc/ppp/chap-secret for host & username & password
/etc/ppp/peers/ for tunnel
For Ease:
pptpconfig(GUI):Helper to config the pptp client.
Case Study:
202.*.*.200: VPN Server(VPN:192.168.0.1)(Eth0:172.*.17.1)
202.*.*.233: VPN Client(VPN:172.*.0.35)(It’s mine:()
What is interesting:
Get blocked without the IP assigned by the DHCP Server
So How to make use of the 172.*.0.35?
a.Transfer the DHCP information through the VPN Tunnel(Under Study)
b.iptables & ‘ip route’:
iptables -t nat -A PREROUTING -i eth0 -d 172.*.17.1 -j DNAT –to
172.*.0.35
iptables -t nat -A POSTROUTING -s 172.*.0.35 -j SNAT –to
172.*.17.1
(Client)route add -net 172.*.0.0/16 dev eth*
But I Wonder:
Is This Still The VPN?

假期意识流

意识流

—假期生活乱纪

这个假期不堪回首,单调得可怕,除了4本书之外,记忆中仅存的就全是某大学的研究生会的网站了。网站说来更不堪回首,完全算得上“赶鸭子上架”的典型(我“可爱”的姐在网站“八字还没有一撇”的时候,居然就敢将“网站建设费”挥霍一空,后来备受挫折后,无力还债,于是栽赃到了我的头上- -!)。下面将网站建设过程中的点点滴滴乱纪下来,想到哪里写到哪里,逻辑未免混乱,各位大虾莫要见笑。目的也很简单,让各位看看一个新手眼中的网站建设过程。

1、 研究生会:

因为这个网站,我就已经堂而皇之成为某大学研究生会编制中的一员,这种“海纳百川”的“气势”令我无不拜倒- -!

2、 网站需求:

刚开始的网站需求很“明确”—“美观、大方、展现当代研究生风采”。让我感到在这种“派头”的指导老师手下干起事情来一定比较“自由”,但是后来事实证明我错了,这种指导老师也有开始变“聪明”的时候。

需求增加了一条—“采用最新的Asp.Net技术,并且务必使用SQL Server最新版本”,我在深入理解这条需求之后,对于各个软件、框架的版本甚是犹豫,不知beta版是否也计算在内- -!

3、 美工:

这个我没有发言权,反正阿梅和阿楠看过(因为当时我不会用PS分页- -!)

4、 VS .NET环境:

由于以前习惯于Borland的BCB,于是“疏”在于没RAD就不活了,“密”在于任何东西都希望有根有据,简单明了。对于VC++6.0从未涉猎,因为当时第一印象就觉得不像是拿来编程的,加之MFC的封装没有一定的实力,定会感到极其莫名其妙,那消息映射的编程方式更是使得局势错综复杂,不像VCL里面虽然依然有很多不懂,但至少容易把握过程。

介于上述原因,所以当我观之Visual Studio .NET的时候还是大吃一惊,惊叹微软也终于RAD了一把。于是看了本《C# Primer》上手就干。

但是现实总是残酷的,虽然很多东西感觉用起很顺手,但还是有很多极其不习惯:

首当其冲的就是一个解决方案里面的类、函数等等,不用.h,不用#include好像就能够在各个文件中可见,原因可能是采用namespace的组织方式,但是老是觉得没有#include <*.h>就是不爽(我理想中的世界应该是把文件include过来后,再在namespace里面避免污染,而不要在一个解决方案里面的文件到处都可见似的)。

其次就是所谓的大名鼎鼎的“Code Behind”,这个倒是在很大程度上解决了网页程序设计中的版权问题,并且使代码和外观分离,便于和传统窗口编程靠拢。但是对于新手而言,在不具备驾驭的能力的情况下,无非是场灾难,代码直接生成DLL,不用export,不用声明,只需assembly一下,就可以使用,随便咋看都极其莫名其妙。

介于以上,我终于放弃了使用VS .NET,本来想选择同出Borland之手的C# Builder,但是令人郁闷的是没有找到注册码- -!所以最后我还是选择了以前写ASP程序时候采用的Dreamweaver+EditPlus+MSDN,本来记事本足已,但是少了调试器,要是连行号都看不到,那我还是直接跳楼算了。

5、 风格:

回头看我写的代码,感觉很多地方看起来还是像用ASP写的:P,不过因为毕竟是ASP.NET的东西,还是初步感受了一下ASP.NET的便利,诸如:DataGrid、DataList、Page_Load、还有在连接SQL数据库时候的便利等等等等。

6、 语言:

这个是我最无语的一点,由于C# 是刚学的,所以开始的时候还是在尝试VB,在花了很长时间都没有发现下面代码为什么通不过之后,我还是痛下决心用C# 吧- -!

#region code
<script language=”VB” runat=server>
sub foo(object sender,eventargs e)
{
//----------
}
</script>
#endregion

接踵而来的转化工作,幸好还不算很困难,但确实很烦,下面将我在转化时的主要工作总结一下:

a) 大小写:VB里面的标识符不区分大小写,如:page_load、datagrid也可以通过,但是到了C# 里面就必须区分大小写了(这里是改得最郁闷的了,对照到MSDN一个一个挨到改,想当初写VB Script的时候不偷懒就好了)

b) 索引(Item):VB里面使用object(index)就可以索引了,但是到了C#里面索引可必须使用object[index]符号,不过如果你使用Item调用就一致了,不过新手一般都不会那样做。

其他可能还有很多转化工作,不过我倒是幸运的没有碰到。

7、 基本代码组织方式:

由于那个网站大量的都是带图像文本处理,所以基本上前台采用的是把分页后形成的静态页面里面的动态部分挖空,以iframe填充之,iframe的src里面要不就指向list.aspx文件(显示前多少项,以及more按钮),并传入类别、css、行数、列数作为参数控制外观;要不就指向multilist.aspx文件(显示所有内容,以DataGrid进行分页控制),传入的外观控制参数一致。并且二者都接受hot=1参数,若设置了,则排序的方式由order by subdate desc变为order by 点击次数 desc

8、 前台:

前台如前述方式架构,我觉得最有用的就是DataGrid与DataList的基本使用及外观控制,如果实在觉得不方便,新手还是用<ItemTemplate>来得快:),另外在进行数据绑定的时候,我基本上就只用到了下面一条语句:

<%# ((DataRowView)Container.DataItem)["foo"] %>

9、 后台管理:

a)FreeTextBox:

说起后台管理自然想到了熟悉的DormForce Blog的后台,那里的那个输入控件,令人感觉甚爽,在IE里面察看源,发现名字叫做FreeTextBox- -!这个名字实在是…

于是Google后下载了一个,感觉封装得很好,使用也很方便,直接register就可以用了,令我倍感ASP.NET还是很爽的,也对Web Control产生了一丝眷恋。但是问题也出来了,他的“插入图片”按钮令人极其郁闷,只能插入图片URL,而没有提供上传,本来想在FTB控件旁边单独提供一个UploadImg按钮,提供上传然后返回URL,供使用FTB插入之需。

但是在看了“宝玉”的文章后突然发现FTB对于Button提供了接口ToolBarButton,于是可以把上传的工作集成到按钮里面。用宝玉提供的方法,在VS .NET里面“依样画葫芦”很快便搞定了,其实就是直接从ToolBarButton直接继承构造新的Button就可以了。

但是问题是我没有用Code Behind的方式,而且找了半天也没有发现,如果不用Code Behind,把类的定义写在哪里?所以只有自己想办法,看了半天英文版的FTB帮助,终于找到了方法:

<FTB:TOOLBARBUTTON title="插入图片"
runat="server" ScriptBlock="myOpenFunc();" ButtonImage="insertimage" />

其中的ButtonImage指定名称后会自动从aspnet_client目录调用图片资源,若要更换可以直接替换文件即可,不过注意保持长宽比(不然会很难看的)。另外我感觉aspnet_client这个名字很可疑,可能有特殊的用途,诸如用于客户端的啥子东西,没有敢改名字:(

其中的ScriptBlock直接在FTB生成的Html页面里面加入内容,如上例就生成如下咚咚:

… = new FTBButton(… function(){myOpenFunc();} …)…

myOpenFunc()为调用此FTB控件页面上<script>内定义的函数。藉由此实现runat=server代码对于本机函数的调用,即通常所谓的Response.Write法。

另外,我还需要从本机函数调取runat=server中控件的属性。想了半天,找到了如下的不是办法的办法:

function myOpenFunc(){
var dt=eval('myForm.myDataTable');
var tempurl='../inc/uploadimg.aspx?tab=';
tempurl = tempurl+dt.value;
window.open(tempurl,'_uploadimg','width=300 height=50');
}

其中myForm、myDataTable分别为runat=server里面Form和DropDownList的Id名称,使得本机获得的html页面里的form和select的id为这二者,从而为本机函数的实现提供可能性。

在uploadimg.aspx中只需完成上传文件,调用opener.top.InsertText(…)方法传入图片地址即可,而在myOpenFunc()所在页面中定义InsertText方法完成插入。

b) 编辑区域:

编辑区域的实质,宝玉已经说得比较清楚了,其实就是一个document.designMode设为on的Iframe。因此可以方便的用本机函数进行各种编辑工作以及调用focus()获取焦点。

c) DropDownList的数据绑定:

由于需要,选定一个DropDownList后要对另外一个重新进行数据绑定,实现方式如下:

指定DropDownList的属性OnSelectedIndexChanged=”SelectionChangeFunc” AutoPostBack=”true”,SelectionChangeFunc会传送给一个delegate型别从而起到类似函数指针的作用。

void SelectionChangeFunc(Object sender, System.EventArgs e)
{
myDataClass.DataSource = CreateDataSource(...);
myDataClass.DataTextField = "TextField";
myDataClass.DataValueField = "ValueField";
myDataClass.DataBind();
myDataClass.SelectedIndex = 0;
}
ICollection CreateDataSource(…)
{
System.Data.DataTable myDt = new System.Data.DataTable();
myDt.Columns.Add(new System.Data.DataColumn("TextField", typeof(String)));
myDt.Columns.Add(new System.Data.DataColumn("ValueField", typeof(String)));
...
myDt.Rows.Add(CreateRow("…", "…", myDt));
...
System.Data.DataView myDv = new System.Data.DataView(dt);
return myDv;
}
System.Data.DataRow CreateRow(String Text, String Value, System.Data.DataTable dt)
{
System.Data.DataRow myDr = dt.NewRow();
dr[0] = Text;
dr[1] = Value;
return myDr;
}

d) DataGrid的CommandButton:

column字段:<asp:ButtonColumn HeaderText="Del Button"
Text="Del" CommandName="DelBtn" />

指定DataGrid属性OnItemCommand=”Grid_DelCommand”

通过Grid_DelCommand函数处理所有的CommandButton信息,而Grid_DelCommand函数只需根据CommandName指定的值选择操作即可。

void Grid_DelCommand(Object sender, DataGridCommandEventArgs e)
{
if(((LinkButton)e.CommandSource).CommandName == "DelBtn")
{
...
}
}

这里有两个问题:

其一,好像DataGrid被提交的时候也会调用此OnItemCommand函数,因为当时由于只有一个command,没有用if判断CommandName值的时候,一提交就要出错,而且是在这个函数里面出错的。所以建议就算只有一个command也用if后者select判断一下。

其二,我本来是把<asp:ButtonColumn>定义为“PushButton”的,但是在进行强制类型转换的时候没有找到相应的类型,不管是Button、PushButton都不对,所以只好换用默认的LinkButton才调试通过。

e) DataGrid的分页:

设置DataGrid的

AllowPaging=True
PagerStyle-Mode=NumericPages
PagerStyle-HorizontalAlign=Right
OnPageIndexChanged=”Change_Page_Index”属性

定义下列函数:

void Change_Page_Index(Object sender, DataGridPageChangedEventArgs e)
{
myDataGrid.CurrentPageIndex=e.NewPageIndex;
...
myDataGrid.DataBind();
}
void PagerButtonClick(Object sender, EventArgs e)
{
String arg = ((LinkButton)sender).CommandArgument;
switch(arg)
{
case ("next"):
if (myDataGrid.CurrentPageIndex < (myDataGrid.PageCount - 1))
myDataGrid.CurrentPageIndex ++;
break;
case ("prev"):
if (myDataGrid.CurrentPageIndex > 0)
myDataGrid.CurrentPageIndex --;
break;
case ("last"):
myDataGrid.CurrentPageIndex = (myDataGrid.PageCount - 1);
break;
default:
myDataGrid.CurrentPageIndex = Convert.ToInt32(arg);
break;
}
myDataGrid.DataBind();
}

这里注意的是换了页要重新DataBind()一下。

f) SQL:

不多说了,下面是我觉得常用的函数:

System.Data.DataSet MyQuery(String querystring)
{
String connectionString = @"...";
System.Data.IDbConnection dbConnection = new
System.Data.SqlClient.SqlConnection(connectionString);
System.Data.IDbCommand dbCommand = new
System.Data.SqlClient.SqlCommand();
dbCommand.CommandText = querystring;
dbCommand.Connection = dbConnection;
System.Data.IDbDataAdapter dataAdapter = new
System.Data.SqlClient.SqlDataAdapter();
dataAdapter.SelectCommand = dbCommand;
System.Data.DataSet dataSet = new System.Data.DataSet();
dataAdapter.Fill(dataSet);
return dataSet;
}
int MyDelete(String delString)
{
String connectionString = @"...";
System.Data.IDbConnection dbConnection = new
System.Data.SqlClient.SqlConnection(connectionString);
System.Data.IDbCommand dbCommand = new
System.Data.SqlClient.SqlCommand();
dbCommand.CommandText = delString;
dbCommand.Connection = dbConnection;
int rowsAffected = 0;
dbConnection.Open();
try
{
rowsAffected = dbCommand.ExecuteNonQuery();
}
finally
{
dbConnection.Close();
}
return rowsAffected;
}
int MyInsert(...)
{
String connString = "...";
System.Data.IDbConnection dbConnection = new
System.Data.SqlClient.SqlConnection(connString);
String queryString = "INSERT INTO [...]([...], ...) VALUES (";
queryString +="@..., ...)";
System.Data.IDbCommand dbCommand = new
System.Data.SqlClient.SqlCommand();
dbCommand.CommandText = queryString;
dbCommand.Connection = dbConnection;
System.Data.IDataParameter dbParam_... = new
System.Data.SqlClient.SqlParameter();
dbParam_...ParameterName = "@...";
dbParam_...Value = ...;
dbParam_...DbType = System.Data.DbType.String;
dbCommand.Parameters.Add(dbParam_...);
...
int rowsAffected = 0;
dbConnection.Open();
try {
rowsAffected = dbCommand.ExecuteNonQuery();
}
finally {
dbConnection.Close();
}
return rowsAffected;
}

10、 其他点点滴滴:

a) 去掉图片加链接后外包框:

<img border=0>

b) 去掉IE图片悬停工具栏:

<img galleryimg=”no”>或者<meta http-equiv="imagetoolbar" content="no">

c) 去掉链接点击后的虚线:

<a href="…" onFocus="this.blur()"></a>

d) 使iframe自适应长宽:

<iframe src="..."
onload="this.height =
this.document.body.offsetHeight;this.width=this.document.body.offsetWidth;">
</iframe>

另外千万注意不要漏了</iframe>,网页被撑开了,我查了半天才发现是这个原因。

e) 连续滚动:

一般的marquee会两次滚动间会有一段时间的空白,采用此处的代码可以使得其连续滚动。

上面这些就是这个网站的点点滴滴,没有什么技术含量,只是写篇乱纪,以标明这个颓废的寒假。

Firefox Extension

Adblock v.5
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&id=10&vid=664
广告拦截

Add Bookmark Here 0.5.3
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&id=11&vid=1249

All-in-one Gestures 0.12.4
https://addons.update.mozilla.org/extensions/moreinfo.php?id=12
鼠标手势

FlashGot 0.5.5
https://addons.update.mozilla.org/extensions/moreinfo.php?id=220

Gmail Notifier 0.4
http://nexgenmedia.net/extensions/

Sage 1.3
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&id=77&vid=1147
In the vicinity of RSS

Super DragAndGo 0.2.4
http://superdragandgo.mozdev.org/installation.html
一拉就打开,呵呵

Web Developer 0.8
https://addons.update.mozilla.org/extensions/moreinfo.php?id=60

QuickTabPrefToggle 0.0.4
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&id=353&vid=1132

ieview 0.84
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&id=35&vid=1179

Image Zoom 0.1.7
https://addons.update.mozilla.org/extensions/moreinfo.php?id=139

Disable Targets For Downloads 0.8
https://addons.update.mozilla.org/extensions/moreinfo.php?id=241&vid=635
下载时免得弹出窗口

ConQuery 1.5.2
http://conquery.mozdev.org/installation.html
很多搜索引擎,可结合desktop search配置桌面搜索

Auto Copy 0.3
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&id=383&vid=1247
记住安装后要配置,把text那项去掉,要不然太不科学了

Minimize to Tray 0.0.1
http://minimizetotray.mozdev.org/installation.html
找了很久的

SwitchProxy Tool 1.3.1
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&id=125&vid=1144

Download Statusbar 0.9.2
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&id=26&vid=1272

Mozilla Archive Format 0.4.3
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&version=1.0%20&os=all&category=Download%20Tools&numpg=10&id=212
可保存mht等格式

Tab Clicking Options 0.3
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&id=260&vid=1220
其中可配置双击关闭,原来的double click现在好像不能用了,就用这个吧

Focus Last Selected Tab 0.8.1
https://addons.update.mozilla.org/extensions/moreinfo.php?application=firefox&version=1.0%20&os=all&category=Tabbed%20Browsing&numpg=10&id=32

另外:

如果google搜索栏没有办法搜索,总是到google的主页面
则将about:config中“browser.search.param.Google.1.custom”和“browser.search.aram.Google.1.default”的值清空即可。
当然,这样改后,使用的是Google的英文搜索页,但是一样可以搜索中文。如果不习惯,再改[FIREFOR_INSTALLATION]searchpluginsgoogle.src这个文件,

在<input name=”q” user>和

关于大二的电分光盘另类破解

原来好像记得在5come5程序板块看到过破解电分光盘的rar包提供,当时觉得比较好笑,连电分光盘都要开始破解了。

由于当时我也用不上电分光盘,所以就一直没有下下来看看,今天突然听说要交电分电设实验报告了。晕死,才发现它的限制真的很烦,在光盘上不能保存,下到硬盘上运行只要输入了程式,下次运行就要叫破解了,而那些程式又经常改来改去的,不会叫我重新输入吧,天啊!

于是乎到处随便找找破解的,但是随便搜搜,没有搜到,便忍了,因为总觉得他限制的方式应该不会太bt,还是自己看看吧:

首先想到的是文件名,但是直接更改文件名没有问题。

于是又想到文件内容,我直接更改它已有的文件的内容(但保持大小不变),比如13-11.dat,但是即使把1改成0,运行的时候立即要求输入password

另外,如果我直接写入新的dat文件,例如my.dat也会立即要求输入password。

看来仿佛它检查了那些文件内容似的,但是转念一想,它不可能在exe里面把全部的那么多model文件(*.dat)都存下来再比较是否有改动吧。

于是最有可能的方法就是判断文件修改时间了,因为改名、拷贝到硬盘是不改时间的,运行也不更改时间,但是你输入了程式,便必定会更改某个dat的时间,至少到现在判断时间都能够解释通畅。

测试结果也证实了我的想法,输入任意一个dat文件,或者其他后缀的文本型文件,或者更改它已有model的dat文件,只要用touchpro 把时间改为它原来的2003-04-12 7:56就不会要你输入password了。

ps:如果临时不能上网,不能下载touchpro或者电分破解,最简单的方法就是把你要的dat文件写在dc.exe所在目录的上一级目录,然后在按F2调文件的时候输入

../你的文件名字.dat

就行了,或者就不要叫dat了,改成txt也能顺利通过。

电分程序只会检查本级目录的dat文件的日期时间哦,呵呵:)

电设啊…无语

Windows Update Services概述—微软系列讲座3

主讲人:王辉
职业:微软认证讲师—苏州索迪高级培训中心
本次讲座不涉及
WUS Chain

防火墙需求
80 443
WUS可使用自定义端口(若80占用,8530,不可配置)

http://www.microsoft.com/windowsserversystem/content/sus/popper.html

SUS
必须先下载全部补丁,才能下载catelog

只有使用SUSLogView等第三方工具检测用户更新

windowsupdate.log,对域的话用MBSA,不够友好

不能对微软应用、驱动程序分发update

在WUS部署中使用计算机分组

Approve时对某组进行应用:
如:测试组;高危组
内置:All Computers Group;Unassigned Computer
实现分组:
Server-Side Client-Side(使用组策略修改)
WUS数据库

WMSDE=MSDE(WINDOWS)只能在server2003上,连接数目,数据库大小没有限制
MSDE(SQL)可以在2000/server2003上,5个连接数目,数据库2G
SQL SERVER 2000(SP3a)

数据库存放的信息:
WUS服务器配置信息
每个更新的metadata(即catalog)
客户端信息及客户端需要哪些更新

更新分为两部分:
1、metadata
2、文件

磁盘空间:最小6G 建议30G

可以从微软的更新站点下载WUS批准的安装,即从WUS下载catalog,而从微软下载文件,以节约外网带宽

Store update file on WUS/Microsoft

带宽优化
* 自动批准检测和自动批准安装
* 可以按更新类型设定是否对某些类别自动批准/安装
* 批准删除

管理员可以先批准检测,用户可以先收到catalog,然后管理员可以根据用户的选择的报表选定某些批准安装

延时下载更新:即只有批准安装的更新才会下载

一般自动批准检测,再手工批准安装

批准状态:

可以根据计算机组更改批准状态

设置最后期限:(DeadLine)

如果用户过了这个时间还没有安装,则强制安装

如果发现office的更新在客户端无法安装,那么先需要在客户端安装windows installer 3.0

Express installation files
比较差异,生成diff文件,然后更新
节约局域网带宽,浪费广域网带宽,从微软网站下载的文件更大

使用BITS(后台只能传输服务)进行所有文件的传输工作
断点续传、带宽控制(如果目前使用60%带宽,则WUS只使用40%带宽)

强大的report功能
report详尽,并且支持filter
客户端更新状态报告

管理与internet断开的网络
导出与导入:建议使用增量备份
1、比对export和import服务器同步高级选项,保证设置一致
2、复制更新:
* 使用ntbackup备份export服务器存放更新的文件夹,默认为WUSWusContent
* 在import服务器使用ntbackup还原备份,还原时选择“Alternate location”路径不变
3、复制metadata
* 从export服务器数据库导出
* wusutil export c:export.cab c:export.log
* 将metadata导入import服务器
* wusutil import c:export.cab c:export.log

数据库一定要独立(不能一个sql支持多个WUS)

硬件考虑
500客户端以下:
CPU 最小 300MHz 推荐 1G
RAM 最小 256MHz 推荐 1G
DB 最小 WMSDE/MSDE 推荐 WMSDE/MSDE

500客户端以上
CPU 最小 1G 推荐 2G
RAM 最小 1G 推荐 1G
DB 最小 SQLSERVER2K 推荐 SQLSERVER2K

磁盘 最少6G 推荐30G

软件:
IIS5.0
BITS2.0
Server2003:.Net Framwork1.1 SP1
2000:IE6.0SP1
.net Framwork1.1 SP1
SQL Server 2000 Desktop Engine(MSDE2000)
WUS自动配置:ASP.Net version 1.1
WMSDE

selfupdate client
2000sp3
xpsp2
server2003

每隔22个小时检测,可通过组策略调整

下载后会再次确认在服务器是否依然有效且被批准

最新的管理模板(%windir%infwuau.adm)可从sp2中获得

即时检测wuauclt.exe /detectnow

客户端cookie过期,其中包含组成员信息(client side)

远程的SQL Server限制:

前端或后端的服务器都不可以为win2000 server
前端或后端的服务器都不可以为域控制器
后端数据库不可以为wmsde或者msde

实现步骤:

在前端服务器安装WUS
wussetup.exe /F
在后端服务器安装WUS
wussetup.exe /B
在后端服务器设置权限
配置前端服务器使用后端

装后端服务器前一定要先把准备工作做好,如sql服务器、sp等等
wussetup.exe /B /V “CONTENT_LOCAL=1″ CONTENT_DIR=”E:WUS”

local_machinesoftwareMicrosoftWindowsUpdateServicesServerSetupSqlServerName

最后启动WUS服务

灵活利用组策略做网络管理—微软系列讲座2

主讲人:孔文达
职业:微软金牌讲师(有这种职业吗?晕~~)
MSN:[email protected]
EMAIL:[email protected]

随堂笔记(较乱,请见谅!)

[组策略功能]
软件安装
开机、登陆、注销、关机脚本
文件重定向
控制IE属性
控制用户操作系统的诸多属性

[组策略组成(嵌入形式)]
GPO(Group Policy Object)
存储于活动目录数据库中的对象
包括以下两部分:
1、GPC(Container):存储于活动目录数据库,保存版本信息,如是否改变等等,占用空间较小;
2、GPT(Template):存储于SYSVOL文件夹(安装活动目录时创建)中,包含调整的所有内容;
SYSVOL目录包含以下最为重要两个文件:
Default Main Policy
Default Domain Control Policy

[组策略应用]
结构:
Site
Domain
OU
OU…
如果设置冲突,则按如下原则解决:
下级优先:OU>Domain>Site

[组策略的存储]
域控制器选项:
PDC模拟器:第一台DC
活动目录管理单元:当前DC
任何可用域控制器:所有当前有效DC

[组策略四大功能]

1、GPMC—编辑组策略的软件,推荐使用
2、软件安装
只是显示在开始程序里面,并提示新安装了程序,但是只有第一次使用才会进行安装
计算机配置:开机时生效
用户配置:登陆时生效
3、设定开机、登陆、注销、关机脚本
4、文件夹重定向
个人文件夹都存在指定位置了,方便管理,用户文件,即使管理员也不能查看
只能指定如下文件:
Application Data
桌面
我的文档
开始菜单
5、控制用户操作系统的诸多属性
举例:
软件限制策略
删除运行…

WMI筛选器
如:判断C:剩余空间
SELECT * FROM win32_logicaldisk WHERE name = “c” and freespace < 100000000(字节)

注意:组策略可自己扩展

[常用工具]
WMI tools:辅助写WMI筛选器
WinInstallLE:制作msi
DCGPOFix(resource-kit):生成刚才提到的误删除的两个极其重要的默认的policy

[常见问题]
设置了 并且注销重新登陆后依然没有生效?
法一、等待2小时
法二、使用命令gpupdate /force强制客户端和DC同步

SMS在企业中的应用—微软系列讲座1

今天在网上逛,突然发现有关于SMS的在线讲座,想到翔帅叫看看关于SMS的咚咚,顺便进去听了听。中国人讲的,不过ppt和操作系统是英文的:(

感觉还不错,不过就是普通话太差。待会儿我会把我的随堂笔记贴在下面,比较乱,希望大家不要介意哈,一个字,一个字打得哦,连复制都不行(视频),我容易吗我?呜呜…

听完后,感觉要想应用sms,现在还不现实,因为现在网管会整个网络系统还没有采用域来管理,所以如果用SMS的话,只有采用最低效的Network模式(详见笔记),意义不大。

算了,不想说了,感冒阿,太惨了!!!贴!!!

===== 华丽的分界线 =====

SMS在企业中的应用

中科院软件研究所 史震

一、体系架构:

* 操作架构

Based on Windows Server 2003:
Like DNS,DHCP,ISA Server(Security),SQL Server(DataBase),SMS Server

* 应用程序架构

Based on Application Center 2000

* 信息流架构

Based on Exchange2003

二、SMS应用范围:

* Asset Management:Hardware
* Software Distribution:Software
* Security Update:Update(Better than SUS:Not only Server SP,Office SP)
* Remote Computer Support:Remote Help
* Mobility Support:移动用户流量本地化

三、Features of SMS:

* Hardware and software inventory:

Hardware software change
Software inventory
Example:
Forbidden QQ,MSN LIKE Program

* Software Distribution:

Noman setup
活动目录中的组策略只能基于域来分发软件,如果只属于某个工作组则无能为力了

* Software metering:

盗版软件
软件使用信息,使用者,启动、停止时间、频率
Example:
某台计算机安装了Office2000但一直没有使用,或使用特别少,再购买时减少购买Office2003数量

* Remote Tools:

减少时间成本

* Software Update Management:

Test
Distribution
Compared to SUS:
Not only Windows Service Pack
But also Office,SQL,Exchange,RRS Service Pack

四、Administrative Support Features:

* Reporting:

IE Explorer report viewer:
1、软件,硬件资产清单;
2、计算机详细配置、状态
3、分发软件、分布时问题,软件使用情况

Feature:
1、可定制
2、可Filter:

如:没有安装xp SP2的计算机

* Status viewing:

某个组件执行特定活动的特征串

* Performance viewing:

Example:大量广播排查

* Backup and recovery tools:

备份恢复SMS站点

* Remote Control

五、Mixed version Hierarchy Considerations:

Certain operating systems and features are no longer supported

SMS 2.0 ok,SMS 2003 no:

* Windows 3.1,3.1.1,95,Before NT 4.0 sp5 pre,ME,XP Home Edition,PE,
* Novel
* Before Sql 7.0 sp2
* SBS(Small Bussiness Server)
* Alpha CPU System

六、Explaining SMS Hierarchies

SMS Site:

* 管理资源
* 三位代码唯一标示
* 主(父子)、辅站点(子)
* 主:数据库支持,存储数据,SQL Server,管理工具
* 父子信任关系
* 有广域网连接时考虑分层结构

七、Key Components:

* Site Server

* Site System Roles:
Client Access Point
Management Point
Reporing Point
Distribution Point
Server Locator Point

* Site Database

* Advanced Client:2000 later

* Legacy Client:windows98,NT 4.0 SP6

* Client — Site System Roles — Site Server — Database

八、Services that Site System Provide:

*  CAP(Client Access Point): For Legacy Client
Legacy Client通过活动目录AB的查询找到SLP(Server Locator Point),然后找到CAP

* Distribute Point:
安装软件时

*  Management Point:For Advanced Client

* Reporing Point:
直接访问数据库

九、The Role of an SMS Client

* 安装SMS Client Agent

* Key Tasks:

* 接受处理SMS数据指令

* 扫描信息,报告SMS站点服务器

* 安装程序和更新

十、What are Collections?

* 对特定资源的划分

* 创建集合(在服务器端):

* Example:
对All Windows XP System Collection分发XP SP2
创建发现模式—创建Collection(通过模式)

十一、Explaning SMS Site-to-Site Communication

* Consideration for creating multiple site:

Network Performance
Number of resources(数据库宿主主机性能)
Features required by users(SMS2003 plus SMS2.0)
International consideration(语言考虑)
Corporate structure
Domain structure(也可考虑修改不合理的域结构)

* How information flows form site to site:

Management Instructions and Data:From parent to Child
Resource Report and Client data:From Child to parent

十二、Explaining SMS Site:

* What are SMS Site Boundaries?
活动目录站点边界(AD Name)
Legacy:必须位于AD内
Advanced:Mobile,可指定

* 资源搜集模式:
Network网络发现:Based on IP Address,多个LAN,多个站点,信息统一于父站点
AD系统发现:从AD数据库中读取
AD User发现
AD System Group发现
Windows User Domain Account发现
Windows Group Domain Account发现
Heartbeat发现:必须维持联系(一般都要启用)

十三、答疑时间:

1、SMS,MOM(Microsoft Operations Manager)差别?
SMS静态、MOM动态

196 Apache UTF-8 Encoded URL Problem

[现象描述]

当你在IE的浏览器中输入URL地址的时候,IE会以UTF-8对其进行编码(除非在高级设置里面取消选项“总是以UTF-8发送URL”),由此,全面支持国际化语言。
但是对于一般配置的apache服务器,默认并不会支持UTF-8编码的URL,因此当你发送包含中文的URL(例如:http://***.***.***.***/音乐.***)时,会返回 404 Not Found 错误。
一般的解决方法是将发送URL请求中的中文采用URLEncode()进行转换,形成apache能够支持的URL格式(例如:http://***.***.***.***/%D2%F4%C0%D6.***),但是这样解决的问题是,如果下载的是mp3的话,下载链接中包含乱码,可能会导致某些播放器不能正确显示歌名,进而导致不能正确使用迷你歌词。
综上所述,最好的解决方案是使apache支持直接包含中文的URL。

[解决方法]

对于此问题,apache官方并没有发布相应的解决方案,但是在网上却于很早以前已经解决了此问题,方法是使用由第三方发布的一个转换模块,籍由apache提供的第三方模块安装工具apxs安装即可。(ps:其实此模块代码极少,就是做个转换:P,主要是同apache的接口结合比较麻烦)具体步骤描述如下:

1、首先要确保apache服务器在编译的时候安装了apxs,并且configure的时候采用了选项 –enable-so(apache 2.0)或者 –enable-module=so(apache 1.0) (请务必注意版本,如果写错,提示不容易发现,最终会导致没法编入模块)。
采用以上编译选项会使apache支持第三方插件。
另外,如果apche服务器是使用的安装系统时候自带的(以RedHat 9.0为例),则没有apxs这个软件,请先行安装apache-devel软件包,并且此软件包的版本务必与你apache服务器的版本一致。

2、下载并安装mod_utf8软件包(目前版本1.3)
注意选对apache1.*和apache2.*,然后执行:
apxs -a -i -c mod_utf8.c

3、重启apache服务器

当然实际操作过程中,可能会遇到各种各样的问题,因为这个软件包还并不是特别的完美,因此需要具备一定的排错能力,软件包由C语言书写,下载源代码,请点击这里

关于google的网页快照

使用过google的人都有一个感觉,爽!

但是有时也不是那么的爽,比如:虽然所有result下面都有网页快照,但从来都打不开(这样的坏处是:有时候result的连接已经失效了,但是明明看到下面节选里面有自己想要的内容,却看不完,这种问题本来可以通过网页快照解决的)

举个例子:

http://64.233.167.104/search?q=cache:JF2VBe-v3KQJ:a.wholelottanothing.org/+nothing&hl=zh-CN

上面就是一个网页快照的连接(搜nothing显示的第一个链接的网页快照),返回Connection reset by peer

怎么办啊,怎么办?

在网上找了找解决办法

如下:

http://64.233.167.104/search?god=axqd&q=cache:JF2VBe-v3KQJ:a.wholelottanothing.org/+nothing&hl=zh-CN

怎么样,打开了吧,呵呵,不要问我为什么,其实只要url里面不要包含“search?q=”字段就行了,上面再其中嵌入“god=axqd”就是为了把“search?q=”伸开!

以后可以尽情享受google的网页快照功能了吧!

Linux命名

今天startx,找了半天“rpm软件包管理器”,居然没有找到,本想就此作罢,但总觉得不爽,于是乎google,原来在kde下叫作kpackage,一查居然没有装,肯定不可能啊,于是再google,原来现在叫redhat-config-packages(这么长…),于是乎启动,当我看到他标题栏上字的时候,我彻底晕倒了,只见上书六个大字:

“添加/删除程序”