Windows虚拟主机的权限如何设置

Windows虚拟主机的权限如何设置,第1张

windows 2000虚拟主机基本权限的设置

在这里说一下我以为比较安全的win2000虚拟主机的权限设置方法,仅仅是说下权限设置。

一虚拟主机需要的软件及环境

1Serv-U5011(似乎不安全,但是也未必)

2Mysql数据库

3Mssql数据库

4PcAnyWhere远程控制

5杀毒软件,我一般使用诺顿80

6php5

7ActivePerl58

以上各种软件,除Mssql数据库以为,其他的都应去官方网站下载推荐版本安装。下面开始就是安装设置了,从系统安装完开始。假设系统安装的windows2000高级服务器版,系统分为c盘,d盘和e盘,全部是ntfs格式。

二系统端口设置

虚拟主机,一般同时使用PcanyWhere和终端服务进行控制,终端服务要更改端口,比如修改成8735端口。根据要开放的服务,去设置TCP/IP筛选。为什么不使用本地安全策略了?个人认为TCP/IP筛选比较严格,因为这里是除非明确允许否则拒绝,而本地安全策略是除非明确拒绝否则允许。如果我理解不当,还请指教。TCP/IP筛选设置如下:

TCP端口只允许21,80,5631,8735,10001,10002,10003,10004,10005;IP协议只允许6;UDP端口我没有做过详细测试,不敢乱说,以后测试了再补上。TCP/IP端口里面的10001-10005是设置Serv-U的PASV模式使用的端口,当然也可以使用别的。

本地连接属性里面,卸载所有的其他协议,只留下Internet协议(TCP/IP),顺便把administrator帐号改个复杂点的名字,并且在本地安全策略里面设置不显示上次登陆帐号,对帐号锁定做出合适的设置。然后重新启动计算机,这步设置已经完成。

现在开始安装软件,所有的软件都安装在d盘,e盘作数据备份使用。先安装Serv-U到d:Serv-U,并且汉化顺便破解,嘿嘿。然后依次安装到d盘。现在开始设置权限。首先二话不说,c盘,d盘和e盘的安全里面把Everyone删除,添加改名后的administrator和system,让他们完全控制。

高级里面重置所有子对象的权限并允许传播可继承权限。这样系统所有的文件,目录全部是由改名后的administrator和system控制了,并且自动继承上级目录的权限,下面开始为每个目录设置对应的权限。

运行asp,建立数据库连接需要使用C:Program FilesCommon Files目录下面的文件。在这里,设置C:Program FilesCommon Files权限,加入everyone,权限为读取,列出文件夹目录,读取及运行。还可以使用高级标签进行更加严格的设置,但是我没有做过,不敢胡说。

运行php,需要设置c:winntphpini的权限,让everyone有读取权限即可。如果php的session目录设置为c:winnttemp目录,此目录应该让everyone有读取写入权限。为提高性能,php设置为使用isapi解析,d:php目录让everyone有读取,列出文件夹目录,读取及运行权限。至于phpini的设置,这里我就不说了。第一我不很懂,第二我只讲系统权限设置。

运行cgi,设置d:perl让everyone有读取,列出文件夹目录,读取及运行权限。顺便说下,cgi设置为使用isapi方式解析有利于安全和性能。

现在说下让人头大的Serv-U的设置了。这东西功能确实强大,但是安全性不怎么好,需要我们来改造。最首先的是溢出攻击,5011好象已经没有这个缺陷了。其次是修改ini配置文件,这里已经没有权限修改了,略过不提。据我所知现在唯一的办法就是使用默认的管理帐号和密码添加有写入执行权限的帐号来执行木马了。

把默认帐号密码修改掉就完了,这个东西直接使用editplus之类的编辑器打开ServUDaemonexe和ServUAdminexe修改就可以了。如果懒得麻烦,随便什么语言写个程序都很容易作到。我以前写过一个这样的东西,方便自己设置。现在Serv-U基本上没有什么问题了。

至于数据库,权限已经不用设置了,直接继承d盘根目录就可以。至于里面的帐号密码该怎么设置,我也懒得说了。

现在最后一点,就是设置c:winntsystem32目录和他下面的一些东西了。很多程序运行需要这里的动态连接库,而且这里文件太多,我也没有弄明白所有的,把目录c:winntsystem32给everyone赋予读取,列出文件夹目录,读取及运行即可。

其实,这样做是不安全的,但是别慌,我们还没有完。在这个目录下面,我们还需要对几个特别程序进行单独的设置。首先就是caclsexe,嘿嘿,先把这个设置了在说别的。这东东是设置权限用的,让它不继承父目录权限,并且让它拒绝任何人访问,因为我们一般不使用这个鸟东西。其他的要设置的程序列表如下:netexe,cmdexe,ftpexe,tftpexe,telnetexe,这几个程序设置成只允许改名后的administrator访问。

现在就想起这么多,这是今天上班空闲时间零零碎碎写的,以后再补充吧。

补充:禁止 非管理员组访问winnt目录 再把需要调用的文件 从winnt弄出来 重新 赋予它读取路径。

从Vista开始,微软就在windows中引入了一项全新的安全功能:UAC(User Account Control,用户帐户控制),旨在提高系统的安全。默认情况下(开启UAC),即使是管理员,登陆系统后也只是默认以标准用户的权限执行一般 *** 作,需要管理员权限执行 *** 作时便会出现“用户账户控制”窗口以请求提升权限。 apps/share/detail/32289637hi/idisk/blog/item/c41023a48efae6e39152ee2dhtml你看一下这两篇文章,主要是uac问题的解决,一个是关闭,一个是临时关闭,你看看采用那个。

鼠标右键该文件,在安全选项下面选中everyone,然后点“编辑”进行权限更改,在完美控制下面打勾,应用确定就ok了。

win10复制代码到记事本保存成reg格式就可以获取权限;

Windows Registry Editor Version 500

[HKEY_CLASSES_ROOT\\shell\runas]

@="获取权限"

"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\\shell\runas\command]

@="cmdexe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

"IsolatedCommand"="cmdexe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

[HKEY_CLASSES_ROOT\Directory\shell\runas]

@="获取权限"

"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\shell\runas\command]

@="cmdexe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"

"IsolatedCommand"="cmdexe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"

再者,在“运行”栏中输入“Secpolmsc”命令打开“安全设置”管理单元,依次展开“安全设置”→“本地策略”,然后进入“安全选项”,双击右侧的“网络访问:让‘每个人’权限应用于匿名用户”项,然后选择“已启用”项。

最后,在文件夹属性的安全选项卡内进行设置。

是否禁止使用了脚本运行,即打开“INTERNET选项”的“安全”选项卡里“自定义级别”,看看“ActiveX空件及服务”禁用的选项。 接着运行 regsvr32 scrrundll最后关键的一步就是看看注册表里的这个位置HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Script Host\Settings

在右边的窗口中是不是有个名为 Enabled的DWORD键值,有的话把它删除或者把值该为 1即可正常运行。 早些年用过DOS系统的用户都知道,MS-DOS *** 作系统允许普通用户编写批处理文件来实现简单的编程。它有效地简化了我们的工作,带给我们许多方便。当时甚至出现了一些专门编写批处理文件的程序员呢。

事实上, *** 作系统除了提供易于 *** 作的使用界面外,还应当有一套内建的Script(脚本)语言才算完整。从某种角度来说,批处理文件可以说就是MS-DOS下的脚本语言。到了Windows时代,虽然Windows系统仍然保留了批处理,但是批处理在Windows中就显得功能过于简单,无法满足用户的需要了——比如修改注册表,批处理能做得到吗?事实上, Windows 98之后的Windows系统,除了保留原来的批处理系统之外,开始加入了对脚本语言的支持,这就是“Windows Scripting Host”,中文译名为“Windows 脚本宿主”,简称WSH。

WSH本身并不是脚本语言,它是脚本语言的运行环境,WSH支持的脚本语言有JScript(微软版的JavaScript,与真正JavaScript不太一样)和VBScript——这个东东大家一定很熟悉啦,网页上常用。

WSH的脚本引擎(Scripting Engine)有两种方式,一种是Command方式的CScriptexe,另一种是Windows方式的WScriptexe。我们编写的脚本程序(扩展名为“js”和“vbs”的纯文本文件)必须通过这两者之一来加载运行。

虽然WSH支持JScript和VBScript语言,但仍然要配合WSH本身所提供的一些对象,以及对象的属性(Properties)和方法(Method)才能够发挥最大的效用。关于JScript和VBScript的程序设计我们这里就不多说了。我们现在还是把注意力放在WSH的对象上面。事实上,本文涉及的注册表编程就几乎不需要关于VBScript的任何知识,我们只需简单地套用现成的语句就可以了。

WSH中的对象主要有:WScirpt、WshArguments、WshShell、 WshUrlShortcut、WshNetwork、WshSpecialFolders、WshCollection、 WshEnvironment、WshShort等。

每一个对象又都有各自的属性和方法。在这里我们仅就访问注册表所涉及的有关对象的方法和属性略做介绍。

首先是WshShell对象。该对象可用来设置系统环境变量以及修改注册表的数据。要修改注册表的数据,需要使用WshShell对象的三种方法: RegDelete(删除注册表数据)、RegWrite(写入或新建注册表数据)和 RegRead(读取注册表数据)。

通常我们只需要用到前两种方法,它们具体的使用方法如下:

一、RegWrite(写入或新建注册表数据)

新建子主键

语法为:WshShellRegWrite "子主键名\"

例如,我们想新建一个子主键“HKEY_CURRENT_USER\MyReg”,可使用如下的语句:

WshShellRegWrite "HKCU\MyReg\"

说明:子主键名必须以反斜线 (\) 结束,若不小心忘记输入了这个(\),则该方法返回的是键值,即表示你是想在HKEY_CURRENT_USER\下建立了一个名叫MyReg的键值了。这一点一定要十分注意!

注意引号里子主键的开头必须是下列根键名之一:

HKEY_CURRENT_USER(可简写为HKCU)、HKEY_LOCAL_MACHINE (HKLM)、HKEY_CLASSES_ROOT(HKCR)、HKEY_USERS和HKEY_CURRENT_CONFIG

在子主键下建立新的键值(或改写已有的键值的数据)

语法为:WshShellRegWrite "子主键名\键值名","键值的数据","键值的类型"

例如我们想在子主键“HKEY_CURRENT_USER\MyReg” 下新建一个字符串键值KeyValue,设置键值的数据为“str”,可使用如下的语句:

WshShellRegWrite "HKCU\MyReg\KeyValue", "str"

(注:键值为字符串值,可省去"键值类型"的声明)

若所建的为二进制值或DWORD值,数据为“1”,则还必须声明键值的类型,如下:

WshShellRegWrite "HKCU\MyReg\KeyValue",1,"REG_BINARY"

WshShellRegWrite "HKCU\MyReg\KeyValue",1,"REG_DWORD"

注意二进制值和DWORD值的数据不能加引号,而字符串值的数据则必须加引号。

二、RegDelete(删除注册表数据)

删除一个子主键

语法为:WshShellRegDelete "子主键名\"

例如,我们想删除子主键“HKEY_CURRENT_USER\MyReg”,可使用如下的语句:

WshShellRegDelete "HKCU\MyReg\"

删除子主键的某个键值

语法为:WshShellRegDelete "子主键名\键值名"

例如,我们想删除子主键“HKEY_CURRENT_USER\MyReg” 的键值KeyValue,可使用如下的语句:

WshShellRegDelete "HKCU\MyReg\KeyValue"类似于RegWrite,有一个“\”号表示的是删除子主键,没有“\”则表示要删除的是子主键下的键值。

除了WshShell对象外,我们还必须了解一下WScirpt 对象。WScirpt对象即代表Scripting Engine,只要启动Engine就会自动产生此对象。WScript对象提供了创建和读取对象的方法。要使用WSH的其他对象(例如WshShell对象),就必须先用WScript对象的有关方法(CreateObject、GetObject)来创建和读取。

创建对象的语法如下:

WScriptCreateObject(strProgID)

其中strProgID就是我们所要创建的对象的标识名。

例如:我们要使用WshShell对象及其属性和方法,首先就要用WScript对象的方法CreateObject来创建一个WshShell对象,语句如下:

Set WSHShell = WScriptCreateObject("WScriptShell")

举一个例子吧。大家都知道,如果你使用了“开始”菜单中的“运行”,Windows将在列表框里记录下你“作案” 的痕迹。其实这些数据是记录在注册表中HKEY_CURRENT_USER\Software\Microsoft\Windows\

CurrentVersion\Explorer\RunMRU子键下,我们只要把这个子键删除,然后再重新建立,不就可以了吗?

现在我们可以来编写一个脚本了。以VBS为例,我们可以用记事本新建一个文件,然后输入(其中“//”后的文字为注释,不必输入):

//定义对象,要编辑注册表,我们需要使用WSHShell对象及其方法

Dim WSHShell

//对象的方法CreateObject来创建WSHShell对象

Set WSHShell = WScriptCreateObject("WScriptShell")

//然后我们使用WSHShell对象的方法RegDelete来删除 HKEY_CURRENT_USER\Software\Microsoft\

Windows\CurrentVersion\Explorer\RunMRU子键

WSHShellRegDelete "HKCU\Software\Microsoft\

Windows\CurrentVersion\Explorer\RunMRU\"

//最后我们恢复该主键,并在该主键下恢复字符串值“MRUList”,设置其数据为空串

 WSHShellRegWrite "HKCU\Software\Microsoft\

Windows\CurrentVersion\Explorer\RunMRU\MRUList",""

程序到此结束,我们把文件另存为CleanMRUvbs就可以了。现在我们就可以使用Scripting Engine来执行这个程序了。假设我们刚才把这个文件保存在D:\TEMP里,我们就可以使用“开始”菜单的“运行”——Wcriptexe D:\TEMP\CleanMRUvbs。重新启动,怎么样?“运行”里已经是空空如也了吧!

如果我们这样费尽心思地编了程序,最后还是得靠手工来运行,那还不如每次直接用注册表编辑器来 *** 作呢!其实我们完全可以让它在每次开机时自动加载。这么一说,大家肯定都知道了——我们可以使用注册表编辑器,在“HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\

CurrentVersion\Run”子主键下建立一个字符串值 “CleanMRU”,设置其数据为"Wcriptexe D:\TEMP\CleanMRUvbs"。嘿嘿,这样才算大功告成。以后你每次开机,Windows就会自动执行该脚本以清除 “运行”中的历史记录了。

限于篇幅,本文仅仅介绍了WSH有关注册表修改部分的对象的初步使用。我们只要在脚本里加上一些简单的语句,就可以很方便地实现交互性的 *** 作——当然,这就需要大家掌握更多的关于WSH和VBScript的知识。如果感兴趣的话,大家可以到微软网站下载有关WSH和VBScript的帮助文档,URL分别是 >

以上就是关于Windows虚拟主机的权限如何设置全部的内容,包括:Windows虚拟主机的权限如何设置、怎么windows7获取最高系统执行权限、win10 “你需要权限来执行此 *** 作,你需要来自Administrators的权限才能对此文件夹进行更改。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10137133.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存