如何在 Windows Server 2003 中解决服务启动权限的问题
本文介绍如何在 Windows Server 2003 环境中解决服务启动权限的问题。
注意:以下过程由运行 Windows Server 2003 Enterprise Edition 的系统上的 Administrators 组的成员验证。
如果某个服务因登录失败而未启动,系统事件日志中将生成并显示一条类似以下内容的错误信息:
来源:服务控制管理程序
事件 ID:7000
描述:
由于下列错误,%service% 服务启动失败:
由于登录失败而无法启动服务。
将没有可用数据。
来源:服务控制管理程序
事件 ID:7013
描述:
以当前密码登录的尝试因下列错误而宣告失败:
登录失败:用户名未知或密码错误。
将没有可用数据。
如果存在下列一种或多种情况,就可能会出现此问题:
更改了为该服务配置的登录帐户的密码。
注册表中的密码数据已损坏。
撤消了指定用户帐户作为服务登录的权限。
若要解决这些问题,应将服务配置为使用内置系统帐户,更改指定用户帐户的密码,使其与该用户的当前密码匹配,或恢复该用户作为服务登录的权限。本文的以下章节将分别介绍这些方法。
返回页首
配置用户权限
如果撤销了指定用户帐户作为服务登录的权限,请根据您的环境在域控制器或独立的成员服务器上恢复该权限。
域控制器
如果该用户在 Active Directory 域中,请按照下列步骤操作:
单击开始,指向管理工具,然后单击“Active Directory 用户和计算机”。
在控制台树中,右键单击在其中授予作为服务登录的用户权限的组织单位。默认情况下,该组织单位是“域控制器”组织单位。
右键单击所需的容器,然后单击属性。
在组策略选项卡上,单击“默认域控制器策略”,然后单击编辑。
组策略管理器将启动。
展开计算机配置,展开 Windows 设置,然后展开安全设置。
展开本地策略,然后单击用户权限分配。
在右窗格中,右键单击“作为服务登录”,然后单击“添加用户或组”。
在“用户和组名”框中,键入要添加到该策略的名称,然后单击确定。
退出“组策略管理器”,关闭“组策略”属性,然后退出“Active Directory 用户和计算机”Microsoft 管理控制台 (MMC) 管理单元。
返回页首
成员服务器
如果该用户是独立的成员服务器的成员,请按照下列步骤操作:
启动“本地安全设置”MMC 管理单元。
展开本地策略,然后单击用户权限分配。
在右窗格中,右键单击“作为服务登录”,然后单击“添加用户或组”。
在“用户和组名”框中,键入要添加到该策略的名称,然后单击确定。
退出“本地安全设置”MMC 管理单元。
返回页首
配置服务登录信息
配置指定用户帐户的密码,使其与该用户的当前密码匹配。为此,请按照下列步骤操作:
单击开始,指向管理工具,然后单击服务。
右键单击所需的服务,然后单击属性。
单击登录选项卡,更改密码,然后单击应用。
单击常规选项卡,然后单击启动以重新启动该服务。
单击确定,然后关闭服务工具。
返回页首
配置服务以使用内置系统帐户启动
如果使用指定的用户帐户该服务仍不工作,可将该服务配置为使用内置系统帐户启动。为此,请按照下列步骤操作:
单击开始,指向管理工具,然后单击服务。
右键单击所需的服务,然后单击属性。
单击登录选项卡,单击本地系统帐户,然后单击应用。注意:通常不必将服务配置为与桌面交互,因此不必选中“允许服务与桌面交互”复选框。
单击常规选项卡,然后单击启动以重新启动该服务。
关闭“服务”工具。当您试图通过“控制面板”中的“服务”工具打开服务属性时,计算机可能会停止响应,然后可能会出现以下错误信息:
The RPC Server is unavailable
如果远程过程调用 (RPC) 服务因为该服务或依存服务登录失败而未启动,则可能会出现此问题。某些服务有依存服务,这些服务仅在它们 的依存服务先启动的情况下才启动(如 Workstation 服务)。
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弄出来 重新 赋予它读取路径。
为了保证Windows系统的安全稳定,很多用户都是使用NTFS文件系统,因此共享文件夹的访问权限不但受到“共享权限”限制,还受到NTFS文件系统的ACL(访问控制列表)包含的访问权限的制约。下面笔者就以“CCE”共享文件夹为例,介绍如何合理设置“cceuser”用户对“CCE”共享文件夹的访问权限,以此来增强共享文件夹的安全。
1 共享权限设置
在资源管理器中,右键点击“CCE”共享文件夹,选择“属性”,切换到“共享”标签页,点击“权限”按钮,弹出“CCE的权限”设置对话框,点击“添加”按钮,将“cceuser ”账号添加到“组或用户名称”列表框内,这里“cceuser”账号对“CCE”共享文件夹要有读取和写入权限,因此笔者要给该账号赋予“完全控制”权限,最后点击“确定”按钮,完成共享权限设置。
2 NTFS访问权限设置
以上只是设置了“CCE”共享文件夹的共享访问权限,毕竟“CCE”共享文件夹是受“共享访问权限”和“NTFS访问权限”双重制约的,如果NTFS文件系统不允许“cceuser”用户访问共享,也是不行的,并且还要给该账号设置合理的NTFS访问权限。
在“CCE”共享文件属性对话框中切换到“安全”标签页后,首先将“cceuser”账号添加到“组或用户名称”列表框中,接下来还要为该账号设置访问权限。选中“cceuser”账号后,在“cceuser的权限”列表框中选中“读取和运行、列出文件夹目录、读取、修改和写入”项目,最后点击“确定”按钮。
经过以上操作后,就完成了“CCE”共享文件夹的“cceuser”用户的访问权限设置,其它用户的共享文件夹访问权限设置方法是相同的,就不再赘述。
win2008服务器用户权限是共享权限和NTFS权限的累加。二者也有相互制约的作用。
针对某文件夹给该用户的NTFS权限设置完全控制,但只设置了共享、并没有设置共享权限(那么共享权限就是默认的只读权限),那么用户对该文件夹只有只读权限。
1、首先设置共享权限(重点是需要勾选用户“文件夹"的”更改“权限,其次设置NTFS权限:
2、文件夹右键-属性-安全-编辑:
3、添加-输入用户名
检查名称:找到想设置权限的用户名称
4、确定、并查看新添加用户的权限:为添加的用户增加修改的权限:
那要看你是基于什么协议了,如果是Samba,可能没有针对IP的过滤功能,它是针对用户来授予权限的。FTP则是根本用户名和密码,应该也无法区分IP。我所知道的最直接的办法是HTTP协议,你可以在HTTP服务器(软件)中设置访问限制,也可以自己写一个中间件来过滤不符合需要的IP地址。
0条评论