企业服务器安全配置技术.ppt

上传人:牧羊曲112 文档编号:6240727 上传时间:2023-10-09 格式:PPT 页数:67 大小:251.99KB
返回 下载 相关 举报
企业服务器安全配置技术.ppt_第1页
第1页 / 共67页
企业服务器安全配置技术.ppt_第2页
第2页 / 共67页
企业服务器安全配置技术.ppt_第3页
第3页 / 共67页
企业服务器安全配置技术.ppt_第4页
第4页 / 共67页
企业服务器安全配置技术.ppt_第5页
第5页 / 共67页
点击查看更多>>
资源描述

《企业服务器安全配置技术.ppt》由会员分享,可在线阅读,更多相关《企业服务器安全配置技术.ppt(67页珍藏版)》请在三一办公上搜索。

1、网络安全基础,第5章 企业服务器安全配置技术,信息中心 曾派兴,内容提要,企业服务器安全概述基于Windows系统服务器的安全配置基于UNIX/Linux系统服务器的安全配置,5.1 企业服务器安全概述,安全的网络信息系统对于现代企事业单位来说是日常办公和业务应用的支撑体系。很多企事业单位都曾饱尝过网络信息系统遭受黑客攻击的痛苦,都意识到了确保网络信息系统安全的重要性。企事业单位的网络信息系统一旦受到攻击,就可能使整个网络无法正常工作,服务器系统瘫痪,甚至所有的网络数据毁坏或丢失,其损失可能是灾难性的。作为网络信息系统的管理者,应当根据当前安全形式认清网络信息系统中可能存在的安全隐患,加强网络

2、信息系统的安全,确保网络信息系统中服务器的安全。,5.1 企业服务器安全概述,当前,网络信息系统的管理者们虽然都认识到了网络信息系统服务器的安全是至关重要的,但实际上,他们中的大多数往往都以维持服务器稳定、高效地运行作为他们的工作目标,对于服务器的安全性往往考虑得较少(至少对于某些管理员来说是这样的),网络信息系统的安全隐患并没有得到解决。正因为如此,在当前复杂多变的网络信息系统中,确保服务器的安全已经成为网络信息系统管理者的首要任务之一。,5.1 企业服务器安全概述,近十多年来,网络安全产品从简单的防火墙发展到具备报警、预警、分析、审计、监测等功能的网络安全系统,在技术已经取得了巨大的进步,

3、也为政府和企事业在构建网络安全体系方面提供了更加多样化的安全防范策略。但是,网络信息系统面临的威胁却并没有随着技术的进步而有所抑制,反而更加突出,从层出不穷的网络犯罪到日益猖獗的黑客攻击,似乎网络世界正面临着前所未有的挑战。本章从确保服务器安全的角度出发,分别介绍基于Windows和UNIX/Linux环境下的Web和FTP服务器的安全配置。,5.2 基于Windows系统的服务器安全配置,5.2.1 系统安全加固在配置服务器之前,应当首先对系统加固。加固除了运用服务包和安全补丁来修复已知的漏洞之外,还应删除不使用的操作系统的特性及其服务。对系统保护的目标是使系统很难被攻破,使攻击者尝试的成本

4、和努力要大于他可能获得的收获。因此,在加固系统的过程中,应对操作系统的功能、服务、账号及访问权限进行限制,使系统在能够有效运行的前提下获得最高的安全级别,在安全级别和系统可用性之间找到最佳平衡点。,5.2.1 系统安全加固,(1)停止或禁用所有不需要的服务;(2)建立安全的账号和密码服务;(3)修改默认的IIS服务环境,禁用或删除所有不必要的系统内容;(4)修改Windows的其他设置,减少已知的和理论的安全漏洞。,5.2.1 系统安全加固,在Windows 2000 Server系统中一般来说,需要禁用的服务包括Alterter、ClIPBook Server、Computer Browse

5、r、DHCP Client、Directory Replicator、FTPPublishing Service、License Logging Service、Netlogon、Network DDE、Network DDE DSDM、Network Monitor、Plug and Play(disable after all hardware configuration)、Remote Access Server、Remote Procedure Call(RPC)Locator、Schedule、Server、Simple Service、Spooler、TCP/IP Netbios

6、Helper、Telephone Service,在必要时需要禁止的服务包括SNMP Service、SNMP trap、UPS,需要设置为自启动的服务包括Eventlog、NT LM Security Provider,RPC Service、WWW、Workstation、MSDTC。,5.2.1 系统安全加固,1最小权限设置以Web服务器权限设置为例,进行最小权限设置。(1)目录权限设置 C:根目录,给system和administrator用户完全控制权限,将权限继承下去;C:program filesvcommon filessystem,给users组读取、列目录、执行权限;C:w

7、innttemp,给users组读取、写入权限;C:winntsystem32、inetsrv下的除MetaBase.bin外所有文件(不包含目录),给users组列目录、读取、执行权限;C:winntsystem32下的所有非.exe、.com、.msc文件(注意是文件,不包含目录),给users组读取、执行权限;C:winntsystem32dllhost.exe,给users组读取、执行权限。经过上述设置后,只有C:winnttemp目录有写入权限。,5.2.1 系统安全加固,1最小权限设置(2)文件权限设置:去除部分危险命令的system权限,以防止缓冲区溢出等引发安全问题。将cacl

8、s设置为拒绝任何人访问;取消下列命令的system访问权限:at,cmd,cscript,ftp,net,net1,netstat,runas,telnet,tftp,tlntadmn,wscript。,5.2.1 系统安全加固,2设置TCP/IP筛选TCP只开放80、20、21、25、110、1433端口,这些端口分别对应的服务为:Web服务80端口;FTP主动模式20端口;FTP服务21端口;SMTP(Mail服务)25端口;POP3(Mail服务)110端口;MSSQL服务1433端口。,5.2.1 系统安全加固,3设置IP筛选策略IP策略的相关设置如下:(1)允许的策略允许所有IP连接

9、本服务器策略设置和TCP/IP筛选一致。除此之外,可开放本机对外的ICMP。(2)拒绝的策略。禁止任何IP与本服务器(除TCP、UDP外的所有协议)的连接;禁止本服务器与任何IP(除TCP、UDP和ICMP外的所有协议)的连接。另外,还需禁止任何IP对本服务器的TCP 135、137、138、139、445、3389端口的访问,禁止UDP 69端口的访问。,5.2.1 系统安全加固,4修改黑客常用的文件类型的打开方式具体方法是:单击资源管理器“工具”“文件夹选项”菜单,在“文件类型”中将bat、vbs、vbe、reg文件类型修改为默认使用“notepad”打开。,5.2.1 系统安全加固,5关

10、闭无用的服务应关闭的服务有Computer Browser、Help and Support、Messenger、Print Spooler、Remote Registry、TCP/IP NetBIOS Helper。,5.2.1 系统安全加固,6取消危险组件使用regedit将/HKEY_CLASSES_ROOT下的WScript.Network、Shell.Application、键值改名或删除。在Microsoft公司网站上有关于Windows服务器的安全配置指南文件,见http:/ 基于Windows系统的Web服务器安全配置,一般来说,IIS的默认安装存在许多安全漏洞,为了对付目录遍

11、历工具,需要将Web站点内容的根目录放到一个不同于包含该服务器的操作系统或逻辑分区上,若运行多个Web站点,那么应当为每一个Web站点使用一个不同的磁盘或分区。通常,IIS安装时会配置一个默认的Web站点,为了确保Web站点的安全,建议用户不要使用默认的站点,而应当创建一个新的Web站点。,5.2.2 基于Windows系统的Web服务器安全配置,在IIS默认的安装中,系统自动安装以下不必要的文件和目录,比如IISprinters、IISSamples、IIS SDK、Admin Script、MSDAC、IIS Help,这些目录和文件都可以删除。父路径是Windows系统的一个特性,父路径

12、允许命令行指令和程序使用“.”来代替子目录。这一特性虽然为系统管理员和程序员提供了一种便利的方法来遍历一个目录结构,但是从安全的角度来看,这个特性也让黑客能够通过编写自动化的代码来遍历磁盘分区的根目录,然后将其他资源改为攻击目标,因此需要禁用父路径。,5.2.2 基于Windows系统的Web服务器安全配置,日志是系统安全策略的一个重要方面,IIS带有日志功能。IIS日志文件属性与Windows 2000 Server日志文件有相似之处,但IIS能够控制日志文件的精确属性,能够记录所有的用户请求。在当前的一些Web服务的入侵中,大多数都是利用网站程序所存在的漏洞来获取Web Shell,然后进

13、入主机的内部进行入侵。这时,可以利用Windows的IIS日志记录黑客入侵的方法和相关操作。,5.2.2 基于Windows系统的Web服务器安全配置,IIS日志的默认目录是%systemroot%system32logfiles,日志文件名是按照日期进行记录的,记录格式采用W3C标准(包括日期/时间/IP地址/访问动作(Get or Post)/被访问地址/访问端口/来访IP地址等)记录。通过访问状态可以知道黑客入侵的情况,例如200299表示访问成功;300399表示需要客户端的反应来满足请求;400499表示客户端及服务器出错(如404和403就是通常所见的资源无法找到和访问被限制)。,

14、5.2.2 基于Windows系统的Web服务器安全配置,由此可知,确保日志的安全能有效提高系统的整体安全性能,但保护日志的安全与审核和检查日志同等重要。另外,还需要保证只有管理员才有权查看这些文件,其他用户不能查看和篡改系统的日志文件。为了保证日志文件的安全,应采取以下措施:,5.2.2 基于Windows系统的Web服务器安全配置,(1)权限设置日志是为了让管理员了解系统安全状况而设计的,因此其他用户没有必要访问,应将日志保存在NTFS分区上,设置为只有管理员和Administrator账户才能访问。,5.2.2 基于Windows系统的Web服务器安全配置,(2)更改存放位置IIS日志默

15、认是保存在%systemroot%system32logfiles下,这对Web站点日志的安全是很不利的,因此最好修改其存放路径在空间相对较大的文件夹中,最好不要放在系统文件夹中。除了日志文件可以进行安全检查之外,还可以通过设置警告进行实时监控和检测。这可以通过Windows 2000 Server性能监控器的计数器功能,定制监控操作系统事件或Web服务事件的自定义规则。当预定义提交满足,这些规则就会触发预定义的动作比如发送一条消息。在日志记录中添加一条记录,启动性能数据日志或允许某个特定程序,故能够标记可能存在的黑客攻击企图。此外,大量登录失败事件,常常暗示着网络攻击的存在,因此可以设置登录

16、失败阈值(比如15次),当登录次数超过这个阈值时,系统就会发出报警。,5.2.2 基于Windows系统的Web服务器安全配置,下面介绍以Windows 2000 Server和IIS 6.0为基础的Web服务器的安全配置。(1)建立新的Web站点 关闭Web站点 创建一个新的Web站点(2)禁用父路径(3)删除不必要的文件目录(4)更改IIS日志文件属性(5)设置Windows 2000 Server和IIS警告,5.2.3 基于Windows系统的FTP服务器安全配置,配置FTP站点属性可分为3级:主站点(master)级、站点(site)级和虚拟目录(virtual directory)

17、级。对主站点上的设置会被站点上的所有新建的FTP站点所继承。关于FTP站点的安全配置措施主要包括用户账号认证、匿名访问控制以及IP地址限制(有些方法和Web站点的安全配置一致)。为了确保FTP站点的安全,一定不要把FTP文件夹与IIS服务器设置在同一个磁盘上。设定了FTP站点的目录后,就可以在目录上设置读取或写入权限。可读权限用于下载文件,可写权限用于上传文件。对于可写的FTP站点不应授予用户读的权限。这是因为如果同时对匿名用户在相同的目录下授予读和写的权限,会让FTP服务器成为中转站,引起不必要的麻烦。因此,应当让具有适当权限的账户对上传文件有读的权限。,5.2.3 基于Windows系统的

18、FTP服务器安全配置,下面介绍以Windows 2000 Server和IIS 6.0为基础的FTP服务器的安全配置。具体操作步骤:(1)单击“控制面板”“管理工具”“Internet服务管理器”,出现管理界面。右键单击“FTP站点”的名称,然后从弹出的菜单中选择“属性”菜单,随即出现“FTP站点属性界面”。,5.2.3 基于Windows系统的FTP服务器安全配置,(2)设置连接数的限制如果站点仅为很少的客户或员工提供FTP服务,就没有必要用无限制的连接,因为它会让拒绝服务攻击变得非常容易。在“限制到”文本框内输入适合于此FTP服务器的限制连接数。在站点上设置好连接数限制后,当达到最大连接数

19、时,系统会提示系统忙的消息。在“连接超时”文本框内输入断开没有活动用户的时间值,就可以避免无用连接长期占有连接数。(3)设置FTP行为日志为了进行系统分析,需要记录FTP行为日志。选定“启用日志记录”复选框即可。为了记录用户的活动,在每个FTP站点的主目录标签中都要启用日志访问选项。FTP服务日志选项和设置方法同Web服务类似。,5.2.3 基于Windows系统的FTP服务器安全配置,(4)设置账号安全为了对FTP服务器进行访问,用户必须先登录。单击“安全账号”选项卡,随即出现“安全账号”管理界面。在该界面上可以控制哪些人可以访问FTP服务器以及谁可以管理它。若FTP站点提供一般的Inter

20、net访问,则选定“只允许匿名连接”,然后选定一个匿名用户访问的账号。默认的匿名账号和IIS Web服务的匿名用户名相同,因此匿名FTP访问的用户要建立一个新的账号。通过使用不同的账号,NTFS文件系统能够控制访问的权限。选定“只允许匿名连接”复选项还可以阻止用户使用非匿名的用户名和口令在毫无安全的FTP传输中连接或被攻击者利用管理员账号得到控制权。如果不选定“只允许匿名连接”复选项,那么每个用户访问FTP站点都必须输入用户名和口令。如果要使用非匿名的连接,必须使用Windows安全策略来强制用户使用可靠的口令。,5.2.3 基于Windows系统的FTP服务器安全配置,(5)设置主目录单击“

21、主目录”选项卡,随即出现“主目录”管理界面。设置站点的主目录和权限时,注意不要选择“另一台计算机上的共享位置”单选项,它会允许用户跳过FTP服务,直接连接到其他服务器,这样会使IIS的安全措施失效。,5.2.3 基于Windows系统的FTP服务器安全配置,(6)设置目录安全单击“目录安全性”选项卡,随即出现目录安全管理界面。在该界面上可以使用基于IP地址的方式限制用户的访问权限。默认的FTP服务器设置使所有IP地址都具有访问权限。例如,分别使用“只允许匿名连接”和“允许IIS控制器密码”策略设置FTP站点,并进行实际连接,分析它们的不同之处;在FTP站点上新建两个虚拟目录,分别设置只读和只写

22、,并进行实际连接的测试。,5.3 基于UNIX/Linux系统的服务器安全配置,5.3.1 基于UNIX/Linux系统的Web服务器安全配置UNIX/Linux系统上最常用的Web服务器是Apache,Apache是开放源代码的Web服务器软件,同其他应用程序一样,Apache服务器也存在安全隐患。Apache服务器的主要安全缺陷是使用HTTP协议来进行拒绝服务攻击、缓冲区溢出攻击以及被攻击者获得root权限缺陷攻击。但是正确维护和配置能够保护Apache服务器免遭黑客的攻击。,5.3.1 基于UNIX/Linux系统的Web服务器安全配置,Apache服务器主要有3个配置文件(位于/usr

23、/local/apache/conf目录下):httpd.conf(是服务器的主配置文件)srm.conf(是Web的资源配置文件)access.conf(是文件的访问权限配置文件)。Apache的默认配置为用户提供了一个良好的模板,基本的配置几乎不用修改,服务器就可以很好地运行。但是默认配置没有提供安全配置的需求,。,5.3.1 基于UNIX/Linux系统的Web服务器安全配置,Apache使用3个指令来配置访问控制:Order用于指定执行允许访问规则和执行拒绝访问规则的先后顺序;Deny定义拒绝访问列表;Allow定义允许访问列表。Order指令有以下两种使用形式:Order Allow

24、,Deny:执行拒绝访问规则之前先执行允许访问规则,默认情况下将会拒绝所有没有明确被允许的客户;Order Deny,Allow:执行允许访问规则之前先执行拒绝访问规则,默认情况下将会允许所有没有明确被拒绝的客户。,5.3.1 基于UNIX/Linux系统的Web服务器安全配置,Deny和Allow指令的后面需要跟访问列表,访问列表可以有以下几种形式:All:表示所有客户;域名:表示域内所有客户;IP地址,可以指定完整的IP地址或部分IP地址;网络/子网掩码:比如;CIDR规范:比如。,5.3.1 基于UNIX/Linux系统的Web服务器安全配置,Apache有基本(Basic)认证和摘要(

25、Digest)认证两种认证类型,摘要认证比基本认证更加安全,但是有些浏览器不支持摘要认证,因此在多数情况下还是使用基本认证。Apache通过认证配置指令配置认证方式,认证配置指令有如下几种形式:AuthName:定义受保护的领域的名称;AuthType:定义所使用的认证方式,如基本认证或摘要认证;AuthGroupFile:指定认证组文件的位置;AuthUserFile:指定认证口令文件的位置。,5.3.1 基于UNIX/Linux系统的Web服务器安全配置,一般情况下,当使用了认证指令配置认证后,还需要为指定的用户或组进行授权。指令Require是为用户或用户组进行授权的,有以下3种格式:R

26、equire user 用户名 用户名:授权给一个或多个用户;Require group 组名 组名:授权给指定的一个或多个组;Require valid-user:授权给认证口令文件中的所有用户。Apache支持两种认证格式:文本格式的认证口令文件和认证组文件、基于数据库的认证口令文件和认证组文件。为了安全起见,认证口令文件一般不要和Web文档存储在同一个目录下。,Linux操作系统和Apache Server Web服务器的安全配置,下面以Linux操作系统和Apache Server为例介绍Web服务器的安全配置。(1)安全运行环境的设置具体操作步骤:系统以Nobody用户运行一般情况下

27、,Apache是由root来安装和运行的。若Apache Server进程具有root用户特权,那么它将给系统的安全带来很大的威胁。可以通过修改httpd.conf文件的选项(如下所示),以Nobody用户运行Apache达到相对安全的目的。user nobodygroup#-1 Server Root目录的权限设置为了确保所有的配置是安全的,需要严格控制Apache主目录的访问权限,使非超级用户不能修改该目录中的内容。Apache的主目录对应于Apache Server配置文件httpd.conf的Server Root控制选项中,应为:server root/usr/local/apach

28、e,Linux操作系统和Apache Server Web服务器的安全配置,SSI(Server Side Includes)的配置在配置文件access.conf或httpd.conf文件中的options指令处加入includes noexec选项,用来禁用Apache Server中的执行功能,避免用户直接执行Apache服务器中的执行程序,而造成服务器系统的公开化。options includes noexec 阻止用户修改系统设置在Apache服务器的配置文件中进行以下设置,阻止用户建立和修改.htaccess文件,防止用户超越规定的系统安全特性。在配置文件httpd.conf中加入

29、以下内容:allowoveride none options none allow from all然后再分别对指定的目录进行适当的配置。,Linux操作系统和Apache Server Web服务器的安全配置,Apache服务器的默认访问特性Apache服务器的默认设置只能保障一定程度的安全,若服务器能够通过正常的映射规则找到文件,那么客户端就可以获得该文件,如http:/localhost/root/将允许用户访问整个文件系统。在配置文件httpd.conf中加入以下内容:order deny,allow deny from all这样,将禁止对文件系统的默认访问。CGI脚本的安全考虑对系

30、统的CGI而言,最好将其限制在一个特定的目录下,如cgi-bin目录下,以便于管理。另外,还应保证CGI目录下的文件是不可写的,避免一些欺骗软件驻留或混迹其中。为了防止异常的信息泄露,需要去除CGI目录下的所有非业务应用的脚本。,Linux操作系统和Apache Server Web服务器的安全配置,(2)用户认证和访问控制具体操作步骤:在/var/www(apache的主页根目录)下建立一个test目录,然后编辑httpd.conf,并添加以下内容:allias/test“/var/www/test”options indexes multiviewsallowoverride authco

31、nfig#进行身份验证(这是很关键的设置)order allow,denyallow from all,Linux操作系统和Apache Server Web服务器的安全配置,(2)用户认证和访问控制 在/var/www/test下创建.htaccess文件,键入以下内容:authname“mywebsite”#描述认证名称authtype basicauhtuserfile/var/www/passwd/.htpasswd#描述口令文件require valid-user or require user mywebsite#是限制所有合法用户还是指定用户 创建apache的验证用户testu

32、ser1和testuser2htpasswd c/var/www/passwd/.htpasswd testuser1htpasswd/var/www/passwd/.htpasswd testuser2第1次创建用户时要用到-c参数,第2次添加用户就不用-c参数,然后将认证口令文件的属性改为nobody。,Linux操作系统和Apache Server Web服务器的安全配置,(2)用户认证和访问控制 重启apache服务,然后访问http:/mywebsite/test。若顺利的话,应该能看到一个用户验证的弹出窗口,这时只要按照要求填写第步创建的用户名和密码即能登录系统。也可以直接在htt

33、pd.conf文件中配置认证和授权。在httpd.conf中添加如下内容:allowoveride noneauthname“mywebsite”authtype basicauhtuserfile/var/www/passwd/.htpasswdrequire valid-userorder allow,denyallow from all然后再创建认证口令文件和添加用户,方法与第步中的一样;重新启动apache服务,同样可以对用户进行认证。,Linux操作系统和Apache Server Web服务器的安全配置,(2)用户认证和访问控制 添加访问控制列表编辑httpd.conf,添加如下内

34、容:sethandle server-statusorder deny,allow/配置访问控制deny from allallow from 192.168.0/允许网段内主机的访问配置认证和授权authtype basicauthname“admin”auhtuserfile/var/www/passwd/.htpasswdauhtggroupfile/var/www/passwd/.htpasswdgrprequire group adminsatisfy all/all表示访问控制和认证授权两类指令均起作用,any表示任一条件满足即可,Linux操作系统和Apache Server W

35、eb服务器的安全配置,(2)用户认证和访问控制 创建认证组文件,使用命令vi/var/www/passwd/.htpasswdgrp,添加如下内容:admin:testuser1 testuser2保存、退出,然后修改文件的属主为apache。重启httpd服务:service httpd restart。在客户端浏览器检测配置,在网段上检测主机的访问结果;不是网段上的主机和没有admin身份的用户不能访问。,Linux操作系统和Apache Server Web服务器的安全配置,(3)日志管理apache日志主要有错误日志和访问日志两种类型,可以通过日志配置指令进行配置,主要配置指令有:er

36、rorlog(指定错误日志的存放路径)、loglevel(指定错误日志的记录等级)、logformat(为一个日志记录格式命名)和customlog(指定访问日志存放路径和记录格式)。错误日志的配置相对简单,只要说明日志文件的存放路径和日志记录等级即可,默认日志配置为:errorlog logs/error_logloglevel warn日志记录等级的主要情况如表5-2所示。,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,VSFTPD是一个基于GPL发布的类UNIX系统的FTP服务器软件,其全称是Very Secure FTP Deamon,在安全性、速度和稳定性都有着不俗

37、的表现,下载地址为ftp:/。在安全性方面,VSFTPD针对程序的权限来设计,以一般身份启动服务,对Linux系统的使用权限较低;在吉比特以太网(Gigabit Ethernet)上,VSFTPD的速度可以达到86MB/s;在稳定性上更是优秀,资料表明,完全工作24h,传输数据达2.6TB,平均并发连接为1500用户,峰值达4000用户,而这些还是在单机上实现的。,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,VSFPD在UNIX/Linux系统下主要的配置文件有3个:/etc/Vsftpd/Vsftpd.conf(是主要配置文件)/etc/Vsftpd.ftpuser(指定

38、了哪些用户不能访问FTP服务器)/etc/Vsftpd.user_list(指定的用户是在Vsftpd.conf中设置了userlist_enable=yes。当userlist_deny=yes时不能访问服务器;当userlist_enable=yes和userlist_deny=no时,仅仅Vsftpd.user_list指定的用户才能访问服务器)。,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,在默认情况下,VSFTPD在ReadHat Linux操作系统的访问控制功能为:允许匿名用户和本地用户登录;匿名用户的登录名为ftp或anonymous,口令为E-mail地址;

39、匿名用户不能离开匿名服务器目录/var/ftp,且只能下载不能上传;本地用户的登录名为本地用户名,口令为本地用户口令;本地用户可以离开自己的主目录切换至有访问权限的其他目录,并且在权限允许的情况下进行上传和下载;在/etc/Vsftpd.ftpusers登录的用户禁登录。,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,值得注意的是,虚拟用户只能访问为其提供的FTP服务,不能像本地用户那样可以登录系统而访问系统的其他资源;本地用户登录FTP访问,容易暴露外界服务器的用户情况。因此,使用虚拟用户能够提高系统的安全性。传统的FTP服务器采用如下方法来实现虚拟用户:在本地建立普通用户

40、账号并设置密码,将其登录Shell设为不可登录,由操作系统对用户进行认证。VSFTPD不采用该方式,而是通过建立独立的口令库,用PAM进行认证,更加安全和灵活。,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,(1)允许匿名用户上传 编辑/etc/Vsftpd/Vsftpd.conf,将#anon_upload_enable=yes和#anon_mkdir_write_ enable=yes前的#去掉,同时write_enable=yes有效,编辑完成后退出。创建匿名上传目录,在/var/ftp/pub/内创建只写目录,使用如下命令:mkdir/var/ftp/pub/uplo

41、ad接下来,改变权限使匿名用户看不到目录中的内容,使用如下命令:chmod 730/var/ftp/pub/upload 重新启动FTP服务器,命令为service Vsftpd restart,并使用客户端进行测试(主要测试匿名用户能否上传文件)。,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,(2)设置访问控制若要限制指定的本地用户不能访问,其他本地用户可以访问,编辑/etc/Vsftpd/Vsftpd.conf,添加下面的内容:userlist_enable=yeseuserlist_deny=yesuserlist_file=/etc/Vsftpd.user_list

42、再在文件/etc/Vsftpd.user_list中编辑不能访问FTP的用户。,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,(2)设置访问控制若要限制指定的本地用户可以访问,而其他用户不可访问,编辑/etc/Vsftpd/Vsftpd.conf,添加下面的内容:userlist_enable=yeseuserlist_deny=nouserlist_file=/etc/Vsftpd.user_list再在文件/etc/Vsftpd.user_list中编辑能访问FTP的用户。,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,(2)设置访问控制VSFTPD通过

43、tcp_wrapper实现对主机的访问控制,tcp_wrapper是使用/etc/hosts.allow和/etc/hosts.deny进行访问控制。/etc/hosts.allow是允许访问表,/etc/hosts.deny是禁止访问表,但/etc/hosts.allow也允许使用deny表示拒绝。因此,也可以只使用/etc/hosts.allow进行配置,配置的格式为Vsftpd:主机列表:setenv Vsftpd_load_conf 配置文件名其中,“Vsftpd”表示对VSFTPD实施访问控制,“setenv Vsftpd_load_conf 配置文件名”表示当前遇到主机表中的主机访

44、问本FTP服务器时,使用配置文件对主机进行访问控制。,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,例如,若要进行这样的配置“拒绝主机访问,允许内的主机以最大传输速度进行传输,对其他主机的访问限制为每个IP的连接数为1,最大传输速率为16kbit/s”,其操作过程如下:首先编辑/etc/Vsftpd/Vsftpd.conf文件,添加如下内容:tcp_wrapper=yeslocal_max_rate=16000anon_max_rate=16000lax_per_IP=1,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,然后编辑/etc/hosts.allow

45、文件,添加如下内容:Vsftpd:192.168.0.0/24:setenv Vsftpd_load_conf/etc/Vsftpd/Vsftpd_tcp_wrap_confVsftpd:192.168.1.0/24:deny 再编辑/etc/Vsftpd/Vsftpd_tcp_wrap_conf,添加如下内容:local_max_rate=0anon_max_rate=0lax_per_IP=0然后重新启动服务程序。,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,(3)配置虚拟用户的FTP服务器 生成虚拟口令库文件首先生成ftppass.txt文件,内容如下:virtual

46、_user1cuitzsbvirtual_user2i12345678t在ftppass.txt文件中,奇数行为用户名,偶数行为口令,即virtual_user1的口令为cuitzsb,virtual_user的口令为i12345678t。然后使用命令db_load产生口令库文件。db_load T t hash f ftpass.txt/etc/Vsftpd/Vsftpd_login.dbchmod 600/etc/Vsftpd/Vsftpd_login.db,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,(3)配置虚拟用户的FTP服务器 生成VSFTPD的认证文件编辑/e

47、tc/pam.d/Vsftpd.vu,添加如下内容:auth required/lib/security/pam_userdb.so db=/etc/Vsftpd/Vsftpd_loginaccount required/lib/security/pam_userdb.so db=/etc/Vsftpd/Vsftpd_login 建立虚拟用户要访问的目录,并设置权限:useradd d/home/ftpsite/virtualchmod 700/home/ftpsite,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,(3)配置虚拟用户的FTP服务器 修改VSFTPD主配置文件

48、/etc/Vsftpd/Vsftpd.conf,添加如下内容:listen=yesanonymous_enable=nolocal_enable=yeswrite_enable=noanon_upload_enable=noanon_mkdir_write_enable=noanon_other_write_enable=nochroot_local_user=yesftpd_banner=This Ftp Server is virtual user only.guest_enable=yesguest_userbame=virtualpam_service_name=vsftp.vu,5.

49、3.2 基于UNIX/Linux系统的FTP服务器安全配置,(3)配置虚拟用户的FTP服务器 虚拟用户的权限分配在VSFTPD主配置文件/etc/Vsftpd/Vsftpd.conf中添加如下内容:user_config_dir=/etc/Vsftpd_user_confmkdir/etc/Vsftpd_user_conf/创建虚拟用户的配置文件存放路径在目录下为每个用户建立配置文件,文件名同用户名。virtual_user1用户具有浏览目录和下载权限,其配置文件内容为anon_world_readable_only=no;virtual_user2用户具有浏览目录、上传、下载、文件改名和删除

50、的权限等。anon_world_readable_only=nowrite_enable=yesanon_upload_enable=yesanon_other_write_enable=yes,5.3.2 基于UNIX/Linux系统的FTP服务器安全配置,(3)配置虚拟用户的FTP服务器 重启VSFTPD,并进行测试。账户virtual_user1的测试结果应满足只能下载不能上传;账户virtual_user2的测试结果应能满足既能上传也能下载。,课后习题中的几个软件,附5-1.X-ScanX-Scan是Xfocus小组编写的一个基于Windows平台的扫描软件,提供了图形界面和命令行两种

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号